基于[t]分布变异的飞蛾加权质心定位算法

来源:期刊VIP网所属分类:应用电子技术发布时间:2019-12-25浏览:

  摘 要: 针对现有无线传感器网络中基于RSSI定位算法受外部环境影响,在恶劣环境下定位精度低的问题,提出一种基于[t]分布混合变异飞蛾加权质心定位算法。首先对接收到的信号值进行RSSI测距,然后对RSSI测距的值利用改进后的四点加权质心定位算法得到预估计的坐标值,最后利用[t]分布混合变异的飞蛾扑火算法对预估计坐标的值和损耗模型参数进行优化并得到最终定位坐标。仿真结果表明,该算法比传统的RSSI定位算法、RR?WCL算法和PSO?GSA算法有更高的定位精度。

  关键词: 无线传感器网络; 算法改进; 权值构造; 参数优化; [t]分布变异; 高斯变异

电子科技文摘

  0 引 言

  无线传感器网络作为一种运用于目标追踪的全新的信息获取和处理技术,在与定位相关的研究领域有着非常广阔的发展应用前景。在地理环境监测、军事侦察、智能医疗相关的技术领域中,无线传感器网络更是作为其主要的支撑技术[1]。

  在无线传感器网络中,目前所提出的定位算法分为基于距离测量和无需距离测量的定位算法。基于距离的定位算法是根据测量到的距离或者角度值的信息进行定位,主要有到达时间(Time of Arrival,TOA)、到达时间差(Time Difference of Arrival,TDOA)、到达角度(Angel of Arrival,AOA)等方法。无需距离测量的定位算法是根據网络连通性等信息实现节点定位,其主要方法有接收信号强度(Received Signal Strength Indication,RSSI)、质心定位算法、DV?Hop定位算法等。与基于距离的定位算法相比,无需距离测量的定位算法不需要测量节点之间的距离。基于RSSI测距技术因低成本、不需要额外硬件支持而广泛应用于室内的无线混合定位中[2?3]。

  对于基于RSSI的加权质心的混合定位算法,许多学者为了提高定位精度在权值构造上和引入优化算法两方面对整体定位算法进行优化。文献[4]提出一种RR?WCL算法,该算法较传统加权质心定位算法在权值构造方面以未知节点到锚节点距离的比值作为权重来表示相应锚节点对未知节点的影响程度。文献[5]提出了一种基于PSO?GSA优化的加权质心定位算法,利用PSO?GSA优化算法对未知节点的坐标和定位模型参数进行整体优化。文献[6]在采集RSSI的优化过程中采用卡尔曼滤波器,并在最后用锚节点的相关信息对四点质心定位算法的结果进行误差补偿。

  本文提出一种基于[t]分布混合变异的飞蛾扑火的四点加权质心定位算法,即tMFO?FWCL算法。在加权定位计算过程中利用新的权值构造策略初定位,然后利用这些初步定位坐标通过[t]分布混合变异的飞蛾算法进行优化。仿真结果表明,该算法较传统的加权质心定位算法、文献[4?5]和一般的飞蛾扑火定位算法在定位精度上有显著提升。

  1 加权质心定位算法的改进

  1.1 RSSI测距

  RSSI测距是基于测距定位的第一个步骤,利用未知节点接收到的锚节点的RSSI通过相应的信号传播模型对距离作估算。由于信号的发送天线存在方向性的问题,使得不同传输路径因环境不同进而导致了信号传播的不规则性[7]。信号的传输方式并非是理想的向四周扩散的圆形模型。目前主要的传输模型有RIM模型、DOI模型和Logarithmic Attenuation模型。

  Logarithmic Attenuation模型是一种最典型的不规则信号传播模型,具体表达式如下:

  式中:[PRd]是距离发送节点[d] m的位置接收到的信号强度的均值,单位为dBm;[Xσ~N(0,σ2)]是信号强度的衰减部分,是一个服从标准正态分布的随机变量。

  1.2 三角加权质心定位算法

  确定了进行定位的节点坐标后,就可以进行加权定位。设三个圆心[A],[B],[C]的坐标分别为[(x1,y1)],[(x2,y2)],[(x3,y3)],对应的加权权值分别为[ω1],[ω2],[ω3],通过RSSI所得到的三个圆心到未知节点的距离分别为[d1],[d2],[d3]。通常情况下,将锚节点到未知节点通过衰减模型所换算的距离的倒数作为权值,具体的加权质心定位算法公式如下:

  式中权值更加充分地利用节点测量信号强度和传播模型的信息,并且完善了权值的决定权,防止了过度修正[8]。

  1.3 改进的四点加权质心定位算法(FWCL)

  传统加权质心定位算法由于权值构造的不合理性往往使得定位误差较大。本文在文献[9]的基础上对于质心定位公式进行了改进。

  在节点选择中,将得到的RSSI值根据相应的衰减模型计算出未知节点到各个锚节点的距离。按照距离值从大到小的顺序筛选出该未知节点所接收到的RSSI值最大的4个值。对于不能找出最近的4个锚节点的未知节点,暂不进行定位。

  对于上面能够找出最近的4个锚节点的未知节点,对这4个锚节点通过[C34]进行排列组合分成4组,对于每组中的3个锚节点利用改进的加权质心定位算法求出用于下一步定位的定位节点。改进加权质心定位公式如下:

  式中:[xi],[yi]为上步骤以[C34]排列组合后其中一组的3个锚节点以锚节点坐标为圆心,以通信半径为半径所画出3个圆的交点的坐标值,如图1所示。

  式中:[l]为对锚节点进行分组的4组中某一组的3个锚节点距离未知节点的距离;[n]由文献[9]的结论将权重修正系数设为4。

  对每一个分组利用式(3)最终得到4个初步定位坐标值,再次利用这4个初步定位坐标值代入到传统质心定位算法,得到改进的四组点加权质心定位的坐标值,完成第一轮定位。

  在对区域内可以進行定位的未知节点完成了首轮估计后,将定位后的未知节点纳入到锚节点中,对上面所提到的不能满足质心定位条件的未知节点重新定位,依次重复直到对该区域内所有的节点都完成定位。

  2 基于[t]分布变异的飞蛾扑火算法

  为了解决质心定位算法的本身局限性和传播模型中[η]值受环境因素的影响这两个问题,本文在改进加权质心定位算法的权值构造的基础上,利用[t]分布混合变异的飞蛾扑火算法(tMFO)对定位结果坐标和[η]值进行优化。

  2.1 MFO算法

  MFO算法是一种新型的仿生群智能优化算法,该算法对飞蛾横向定位的方式进行模拟,并仿照飞蛾螺旋飞行的轨迹方式,利用螺旋函数模型对其进行更新进而对结果进行优化。由于其算法的易实施性和自身的鲁棒性,MFO算法被广泛应用到实际的最优化问题中[10]。

  在MFO算法中,飞蛾作为候选解。飞蛾的位置矢量作为问题的变量。飞蛾通过改变位置矢量来实现在指定维数中的移动,其中飞蛾矩阵用[M]表示:

  式中:[n]为飞蛾的数量;[d]为维数。相应的适应度矩阵为:

  除了飞蛾矩阵,MFO算法中还需要有与飞蛾矩阵所对应的火焰矩阵。火焰矩阵通常用[F]表示,具体表达式类比于飞蛾矩阵分别表示为[F]和[OF]。

  飞蛾和火焰均为候选解,它们的区别在于每次迭代中位置的更新方式。在解空间中,飞蛾是移动的实际主体,火焰为目前获得的最优值,可以作为搜索完成的标志。

  完成初始化后,使用下面的公式来更新飞蛾的位置:

  式中:[Fj]表示第[j]个火焰;[Mi]表示第[i]个飞蛾;[S]是螺旋线函数,其表达式如下:

  上述螺旋线模拟了飞蛾的飞行路径,并确定了飞蛾相对于火焰的下一个位置。其中:[Di]表示第[i]个飞蛾到第[j]个火焰的距离;[t]为[?1,1]的随机数;[b]为常数。[Di]的计算方法如下:

  为了使算法以较快的速度收敛,利用自适应火焰数量更新机制,在迭代的过程中自适应地减少火焰数目。

  式中:[N]为火焰数量的最大值;[T]为最大迭代次数;[l]为当前迭代次数。

  2.2 [t]分布混合变异

  [t]分布的曲线具有左右对称的特点,并受自由度参数[n]的影响。当[n=1]时,[t]分布的曲线与柯西分布曲线一致;当[n]>30时,[t]分布曲线与正态分布开始重合;当[n]趋于无穷时,[t]分布曲线和高斯分布曲线开始接近。

  飞蛾算法搜索时采用螺旋线波动模拟搜索模式,其螺旋线的相位采用随机游动的方式进行更迭,但是这种搜索方式在靠近极值点的情况时易受极值点干扰,最终导致被极值点吸引进而影响最终定位结果。而上述的[t]分布随着自由度的变换可以在柯西分布和高斯分布之间切换,高斯分布具有很好的全局开发能力;柯西分布具有很好的局部开发能力[11],因此可以利用[t]分布混合变异对飞蛾算法进行改进。本文对飞蛾的状态进行[t]分布变异:

  式中:[?]为点乘;[tIteration]是以MFO算法迭代次数为自由度的[t]分布。式(13)表示在当前飞蛾个体空间的位置上增加了[t]分布随机干扰项[M?tIteration],利用当前种群的信息来进行变异,并利用算法的迭代次数作为当前变异的[t]分布的自由度。较一般的MFO算法,基于[t]分布混合变异的飞蛾扑火算法利用[t]分布的特点,通过自由度的调整很好地兼顾了高斯分布和柯西分布的优点,进而将算法的全局探索能力和局部探索能力进行了很好的整合。

  推荐阅读:《电子科技文摘》坚持为社会主义服务的方向,坚持以马克思列宁主义、毛泽东思想和邓小平理论为指导,贯彻“百花齐放、百家争鸣”和“古为今用、洋为中用”的方针,坚持实事求是。

期刊VIP网,您身边的高端学术顾问

文章名称: 基于[t]分布变异的飞蛾加权质心定位算法

文章地址: http://www.qikanvip.com/yingyongdianzijishu/49904.html