当前位置: 首页 > 专利查询>中山大学专利>正文

一种基于改进布谷鸟搜索算法的WSN节点定位方法技术

技术编号:19069249 阅读:223 留言:0更新日期:2018-09-29 15:20
本发明专利技术提供了一种基于改进布谷鸟搜索算法的WSN节点定位方法,其包括:初始化布谷鸟搜索算法的参数;构建目标函数,利用寻找目标函数的最小值,得到盲节点的位置;步长控制因子a的值随着迭代的进行逐渐减小;计算步长控制因子a,利用levy飞行过程更新鸟窝位置;判断更新后的布谷鸟个体是否超出无线传感器区域;计算鸟窝的适应度;比较得出最佳适应度;判断新的鸟窝位置是否超出无线传感器区域;判断是否达到最大迭代次数,输出全局最佳适应度及对应的鸟巢位置等步骤。本发明专利技术的方法具有更快的收敛速度和更高的收敛精度,适用于无线传感器网络定位系统。

【技术实现步骤摘要】
一种基于改进布谷鸟搜索算法的WSN节点定位方法
本专利技术属于室内外定位领域,具体涉及一种适合WSN的节点定位方法,特别是一种基于改进布谷鸟搜索(CuckooSearch,CS)算法的WSN节点定位方法。
技术介绍
在无线传感器网络(WirelessSensorNetwork,WSN)的众多实际应用中,获取WSN节点位置信息可以帮助人们对WSN节点采集的信息作出恰当的决策。比如,WSN被应用于监测环境变化、人们的健康状况、智能交通以及大型场馆建筑等信息时,如果不知道传感器节点的位置信息,我们将无法对监测的信息做出及时、有效的决策。虽然GPS(GlobalPositioningSystem)与BDS(BeidouNavigationSatelliteSystem)已经发展成熟,由于其体积大、功耗高以及成本高等因素,并不适用于经常被大规模部署在峡谷或者室内等信号遮蔽区域的WSN。因此我们急需找到一种适合WSN自身特点的节点定位方法。目前,常用的WSN节点定位方法是由GPS/BDS定位或者预先设置一些信标节点,然后通过测量未知节点与信标节点之间的距离、角度或者连接度信息,根据传统数学计算方法(比如线性规划、最小二乘法、最大似然估计法等)求解非线性方程组或者利用启发式算法(比如遗传算法、模拟退火算法、粒子群优化算法、布谷鸟搜索算法等)优化目标函数来计算未知节点的坐标。然而随着WSN规模的扩大,传统数学计算方法在解算非线性方程组时存在计算复杂度高、定位误差比较大等缺点,这样无疑会加大WSN节点的能量消耗,缩短WSN节点寿命周期;模拟退火算法、遗传算法、粒子群优化等启发式算法虽然降低了计算复杂度,但存在收敛速度慢,容易陷入局部最优以及参数比较多等缺点,这样不仅会增加WSN节点的能量消耗,同时也会增大定位误差。相对于其他启发式智能优化算法而言,布谷鸟搜索算法简单易行,参数少,在WSN节点定位中逐渐受到青睐。“求解无线传感器网络定位问题的线性规划算法(王珊珊等,计算机研究与发展,2009,46(5):705-712)”一文提出了利用节点RSSI值和经验的无线信号传输模型推导出所有可通信节点之间相对关系,基于线性规划算法定位WSN节点。针对节点之间二次约束的规划问题,该文把节点之间的距离当作几何约束关系,并利用矩形近似圆形将其转化为线性规划问题。相对于凸规划定位算法,这种算法降低了计算复杂性和计算量,但是增加了定位误差,同时随着WSN规模的增大,计算复杂度呈线性增加。“WirelessSensorNetworkLocalizationBasedonCuckooSearchAlgorithm(GoyalS等,WirelessPersonalCommunications,2014,79(1):223-234)”一文提出利用布谷鸟算法实现WSN节点定位,主要思想:使用RSSI测距方式测量未知节点到信标节点之间的距离,从而得到一个非线性方程组,然后利用布谷鸟搜索算法对该非线性方程组进行逐步迭代,最后得到达到一定迭代次数或者一定精度的最优解,即未知节点的坐标。该算法能有效的抑制测距误差对定位的影响,提高节点的定位精度,具备很好的实用性,但是并没有通过调节布谷鸟搜索算法中的参数来增加布谷鸟种群的多样性、加快全局寻优速度。“AdaptiveCuckooSearchAlgorithmforUnconstrainedOptimization(OngP,TheScientificWorldJournal,2014,(2014-9-14),2014,2014(9):943403)”一文提出一种自适应布谷鸟搜索算法解决无约束优化问题,其主要创新点:利用布谷鸟个体适应度的大小来调节levy飞行步长控制因子a,从而加快寻找最优解的速度。这与本专利技术通过利用布谷鸟个体的适应度来调节Pa,并且提出levy飞行步长控制因子随着迭代的进行线性递减,同时限制每一个布谷鸟个体的范围,从而提高定位精度和收敛速度有本质区别。“逐维改进的布谷鸟搜索算法(王李进等,软件学报,2013(11):2687-2698)”一文提出了一种基于贪婪的逐维改进的布谷鸟搜索算法,其主要思想:在偏好随机游动中引入逐维改进策略来避免维间干扰,同时改写偏好随机游动的步长更新方式,增加搜索方向,以便有效利用单维的信息加强算法的局部搜索能力,从而提高解的质量。这种算法能够利用进化的单维信息引导当前进行局部搜索,从而获得高质量的解并提高算法的收敛速度,但是对WSN节点定位而言,这种贪婪的算法将会加大计算量,导致WSN节点的寿命周期变短。
技术实现思路
本专利技术的目的是针对以上要解决的技术问题,提供一种能够优化WSN节点定位,以实现快速获取高精度的节点位置信息的WSN节点定位方法。为了实现以上目的,本专利技术提供了一种基于改进布谷鸟搜索算法的WSN节点定位方法,其包括如下步骤:步骤1:初始化布谷鸟搜索算法的参数,即种群大小n、步长控制因子α的最大值amax与最小值amin、布谷鸟鸟蛋被巢主鸟发现的最大概率Pamax与最小概率Pamin、最大迭代次数N_itertotal、布谷鸟搜索范围Xmax、Xmin。其次,初始化鸟窝的位置,在搜索空间内随机产生n个鸟窝位置xi(x1,x2)(i=1,2,...,n),每一个鸟窝位置代表一个坐标;根据构建的目标函数,公式(4)计算每一个鸟窝的适应度,找到初始全局最优位置,并保留至下一代;步骤2:构建目标函数;在无线传感器网络定位中,锚节点不断地广播自身的位置,假设在二维平面中,如果某盲节点(即未知节点)探测到多于三个锚节点即启动定位;盲节点与锚节点之间的距离采用基于接收信号强度的对数正态模型估计,假设距离估计误差服从均值为0,方差为σ2的高斯分布,且方差与实际距离成正比:σ2=γ2*d2(1)其中,γ为可调参数,d为实际距离,那么估计值与真值之间的关系可表示为:ω表示估计误差。根据测距误差,建立目标函数:利用寻找目标函数的最小值,得到盲节点的位置;步骤3:所述步长控制因子a的值如公式(5)所示随着迭代的进行逐渐减小,从而提高布谷鸟搜索算法的全局寻优速度和精度,即迭代开始时,设置a取最大值,且a随着迭代的进行逐渐减小,α=αmax-(N_iter/N_itertotal)×(αmax-αmin)(5)其中,amax表示a的最大值,amin表示a的最小值,N_iter表示当前迭代次数,N_itertotal表示总的迭代次数;步骤4:基于公式(5)计算步长控制因子a,利用levy飞行过程更新鸟窝位置,生成xi(t+1),如公式(6)所示:其中,xi(t+1)代表第i个鸟窝在t+1代的位置;xi(t)代表第i个鸟窝在t代的最优解;a代表步长控制因子;为点对点乘法;其中u和v均为服从正态分布的随机变量,即σv=1;步骤5:判断更新后的布谷鸟个体是否超出无线传感器区域,如果x维度和/或y维度超出了无线传感器区域,将利用相应维度的最大范围和最小范围进行限制;步骤6:计算位置更新后每一个鸟窝的适应度,并与上一代产生的鸟窝的适应度进行对比,利用适应度较好的鸟窝位置代替适应度较差的鸟窝位置;步骤7:比较得出当前所有鸟窝的最佳适应度;步骤8:利用每一个布谷鸟的适应度调节Pa,如公式(本文档来自技高网
...

【技术保护点】
1.一种基于改进布谷鸟搜索算法的WSN节点定位方法,其特征在于包括如下步骤:步骤1:初始化布谷鸟搜索算法的参数,即种群大小n、步长控制因子α的最大值amax与最小值amin、布谷鸟鸟蛋被巢主鸟发现的最大概率Pamax与最小概率Pamin、最大迭代次数N_itertotal、布谷鸟搜索范围Xmax、Xmin。其次,初始化鸟窝的位置,在搜索空间内随机产生n个鸟窝位置xi(x1,x2)(i=1,2,...,n),每一个鸟窝位置代表一个坐标;根据构建的目标函数,公式(4)计算每一个鸟窝的适应度,找到初始全局最优位置,并保留至下一代;步骤2:构建目标函数;在无线传感器网络定位中,锚节点不断地广播自身的位置,假设在二维平面中,如果某盲节点探测到多于三个锚节点即启动定位;盲节点与锚节点之间的距离采用基于接收信号强度的对数正态模型估计,假设距离估计误差服从均值为0,方差为σ2的高斯分布,且方差与实际距离成正比:σ2=γ2*d2   (1)其中,γ为可调参数,d为实际距离,

【技术特征摘要】
1.一种基于改进布谷鸟搜索算法的WSN节点定位方法,其特征在于包括如下步骤:步骤1:初始化布谷鸟搜索算法的参数,即种群大小n、步长控制因子α的最大值amax与最小值amin、布谷鸟鸟蛋被巢主鸟发现的最大概率Pamax与最小概率Pamin、最大迭代次数N_itertotal、布谷鸟搜索范围Xmax、Xmin。其次,初始化鸟窝的位置,在搜索空间内随机产生n个鸟窝位置xi(x1,x2)(i=1,2,...,n),每一个鸟窝位置代表一个坐标;根据构建的目标函数,公式(4)计算每一个鸟窝的适应度,找到初始全局最优位置,并保留至下一代;步骤2:构建目标函数;在无线传感器网络定位中,锚节点不断地广播自身的位置,假设在二维平面中,如果某盲节点探测到多于三个锚节点即启动定位;盲节点与锚节点之间的距离采用基于接收信号强度的对数正态模型估计,假设距离估计误差服从均值为0,方差为σ2的高斯分布,且方差与实际距离成正比:σ2=γ2*d2(1)其中,γ为可调参数,d为实际距离,那么估计值与真值之间的关系可表示为:ω表示估计误差。根据测距误差,建立目标函数:利用寻找目标函数的最小值,得到盲节点的位置;步骤3:所述步长控制因子a的值如公式(5)所示随着迭代的进行逐渐减小,从而提高布谷鸟搜索算法的全局寻优速度和精度,即迭代开始时,设置a取最大值,且a随着迭代的进行逐渐减小,α=αmax-(N_iter/N_itertotal)×(αmax-αmin)(5)其中,amax表示a的最大值,amin表示a的最小值,N_iter表示当前迭代次数,N_itertotal表示总的迭代次数;步骤4:基于公式(5)计算步长控制因子a,利用levy飞行过程...

【专利技术属性】
技术研发人员:夏林元程静吴东金
申请(专利权)人:中山大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1