基于虚拟力的单个移动锚节点无线传感器网络定位算法*
2015-03-26高文根陈其工李云飞
高文根,陈其工,江 明,李云飞
(安徽工程大学 安徽检测技术与节能装置省级实验室,安徽 芜湖241000)
0 引 言
无线传感器网络(WSNs)是一种自组织的分布式网络,网络中的节点相互独立,节点中获得的数据必须在融合数据或者事件发生位置的信息的基础上才具备实际意义。因此,在无线传感器网络的节点部署、网络覆盖、目标跟踪以及其他应用中,有效的节点位置信息都起着至关重要的作用[1~3]。因此,更加有效确定更高精度的节点位置的信息成为无线传感器网络领域的基础问题之一[4,5]。
从运算方式角度,无线传感器网络定位算法可以分为[5~7]分布式和集中式。分布式定位算法主要依靠节点之间的信息传递和相应的数学模型,节点完成自身节点定位。集中式定位算法是节点将相应的信息传递至中心节点,由中心节点完成定位工作[8]。从定位方法角度,无线传感器网络定位算法可以分为免测距定位和测距定位。免测距定位方法主要依靠网络间的通信来完成定位,主要包括DVHop、质心算法等[9];测距定位方法依靠节点配备相应的硬件设备,测得节点之间的距离或者角度的信息来完成节点的定位。
文献[10]提出了五种虚拟力模型,都存在虚拟力为零的情况,导致移动锚节点失去牵引,不再移动,定位过程结束。同时,由于未知节点完成定位前和定位后,对移动锚节点虚拟力权重不变,导致节点可能出现局部死循环。为了解决上述问题,本文提出锚节点的状态变量由卡尔曼滤波器控制和生成,并在锚节点能量受限和移动锚节点遍历整个网络条件下,进行了算法的验证。仿真结果表明:该算法有效地提高了节点定位精度与网络覆盖率,且节点能耗低。
1 虚拟力模型
假设锚节点与未知节点之间会产生一种虚拟力,在虚拟力的牵引下,使锚节点移动到更合适的位置,为未知节点提供定位信息。在无线传感器网络中,常见的虚拟力模型主要有四种[10]。
在现有的四种虚拟力模型中,均存在虚拟力为零的情况,可能会导致在锚节点感知范围内的零虚拟力区域的出现,即锚节点在此刻的位置或附近,与其他节点之间的虚拟力为零。在零虚拟力区域内的锚节点丧失虚拟力牵引,不再移动。而且,上述四种虚拟力都不具备对节点的本身属性进行加权的特性,即对于已完成位置定位的节点,其作用在锚节点的虚拟力,在一定程度上需要被弱化;否则,可能带来移动锚节点在局部区域进入循环移动,直到能量耗尽。
结合以上的分析,本文提出新的虚拟力模型,如下
其中,We1,We2为节点的加权矩阵,其结构如下
式中 ka1为虚拟力的调节参数,ka2在未知节点没有完成定位之前,其值是零,在完成定位后,为了弱化相应的斥力或者引力,会更新ka2值。式(2)中的ke1,ke1亦具同样作用。
同时,引入边界的虚拟力,即
式中 Ak,B 分别为移动锚节点的位置信息和边界信息,d为移动锚节点到边界的横向和纵向距离。
2 算法描述
对于单个移动锚节点,可将其位置信息作为卡尔曼滤波的观察目标,将虚拟力的作用效果作为卡尔曼滤波器中的系统控制量,可以实现位置节点的定位,并且对移动传感器的状态进行实时的控制。
2.1 模型描述
根据前面的描述,对于移动锚节点的第k 个位置的状态为
系统的测量方程为
其中,X(k)为移动锚节点的移动到第k 个位置的状态,W(k),V(k)均为高斯白噪声,X(k)的初始状态为X(0),在受限范围内随机生成。
包括第k 时刻的移动速度、横向移动系数和纵向移动系数,即
式中 α,β 分别为横向移动方向、纵向移动方向。
U(k)为在第k 时刻的作用在锚节点上的虚拟力产生的状态控制量,且
在测量方程中,Y(k)描述的是移动锚节点的第k 时刻与第k-1 时刻的之间位置变动的信息,因此
为了进一步观测移动锚节点的位置
同样,Z(k)为锚节点在第k 时刻的位置信息,其初始值Z(0),即锚节点的初始位置,在监测区域内随机部署
推导可得到
由式(5)、式(6),可以得到
从式(6)、式(12)中可以看出:对于锚节点的移动状态、到达的位置,都可以通过卡尔曼滤波器进行实时的控制和调节。
2.2 位置定位
假设移动锚节点和未知节点之间的距离是可测的,例如:RSSI,AOA。在未知节点获得三个或者三个以上的与移动锚节点的距离,就可以采用三边测距法进行定位计算。假设未知节点获得的i(i≥3)个锚节点的坐标和对应的距离分别为(xi,yi),di。根据Pythagoras 定理,可以得到
推导可以得到
3 仿真结果与分析
仿真实验是在100 m×100 m 的区域进行,在监测区域内部署100 个位置节点,分别探究了在移动锚节点全定位的情况和移动锚节点在受限能量(正常能量的50%)情况下的移动和定位以及未知节点的能量消耗。
如图1 所示,该定位算法的定位误差要远低于DVHop,说明该算法具有较高定位精度。
图1 在全定位下的未知节点随通信半径变化的定位误差Fig 1 Localization error of unknown nodes with communication radius change with all nodes to be located
结合图2、图3,移动锚节点活动较为频繁的区域,很明显该区域的未知节点的剩余能量会相对较低,但在整个能量系统中,定位过程所消耗的能量所占的比例还是很低的。因为在移动锚节点移动到该区域后,与该区域内未知节点进行相互通信,导致该区域的未知节点能量消耗增多。图4表明:移动锚节点具有较高的覆盖率。
图2 在全定位下的锚节点移动路径图Fig 2 Mobile path of anchor node with all nodes to be located
图3 在全定位下的未知节点的剩余能量图Fig 3 Surplus energy of unknown nodes with all nodes to be located
图4 在全定位下的移动锚节点的覆盖率图Fig 4 Coverage rate of mobile anchor node with all nodes to be located
如图5 是能量受限条件下移动锚节点的移动路径;图6表明:移动锚节点仍覆盖了大部分未知节点。
图5 在能量受限下的移动锚节点的移动路径Fig 5 Mobile path of mobile anchor node with limited energy
图6 在能量受限下的移动锚节点的覆盖率Fig 6 Coverage rate of mobile anchor node with limited energy
综上仿真和分析,该定位算法在定位精度、网络剩余能量、网络的覆盖率等方面具有较好的性能,充分体现了该算法的有效性。
4 结 论
本文提出一种基于虚拟力的单个移动锚节点的定位算法,移动锚节点的状态变量由虚拟力作用产生,且经过卡尔曼滤波器进行调节和控制,有效地避免移动锚节点进入零虚拟力区域和局部死循环。仿真结果表明:在全定位条件还是能量受限条件下,该算法有较高的定位精度,且对于整个网络的能量消耗很小,提供很高的覆盖率。
[1] 刘志兴,刘 强.基于贝叶斯估计与虚拟力导向混合遗传算法的无线传感网络定位方案[J].控制与决策,2013,28(6):889-903.
[2] 王建平,徐 恒,李奇越.基于卡尔曼滤波的矿井移动节点定位算法研究[J].电子测量与仪器学报,2013,27(2):120-126.
[3] 胡炜薇,胡 冀,应智花.基于一个移动锚节点的无线传感器网络节点定位算法[J].系统仿真学报,2010,20(4):978-982.
[4] 张正勇,孙 智,王 刚,等.基于移动锚节点的无线传感器网络节点定位[J].清华大学学报,2007,47(4):534-537.
[5] 李洪峻,卜彦龙,薛 晗,等.面向无线传感器网络节点定位的移动锚节点路径规划[J].计算机研究与发展,2009,46(1):129-136.
[6] 崔焕庆,王英龙,周传爱.应用三个移动锚节点的非测距定位方法[J].山东大学学报,2011,30(1):53-57.
[7] Patro R K.Localization in wireless sensor with mobile anchors[C]∥Proceeding of 23rd IEEE Convention of Electric and Electronic Engineers,Israel,2004:22-24.
[8] Hidayet Aksu,Demet Aksoy,Ibrahim Korpeoglu.A study of localization metrics:Evaluation of position errors in wireless sensor networks[J].Computer Networks,2011,55(15):3562-3577.
[9] Woo S.Application of WiFi-based indoor positioning system for labor tracking at construction sites:A case study in Guangzhou MTR[J].Automation in Construction,2010,20(1):3-13.
[10]胡 淼,陶正苏.一种基于可移动锚节点的DV-Hop 改进定位算法[J].电子设计工程,2011,19(24):98-101.