节点定位是完结传感器网络运用的条件,操控节点定位差错成为确保网络正常运转的要害。选用根据测距的定位算法,能够到达杰出的精度,但需求丈量设备,不适合能量受限的无线传感器网络。本文剖析了常用的非测距定位算法,并在此根底上提出了一种改善的根据序列的非测距定位算法,以进步无线传感器网络定位算法的功能。
导言
无线传感器网络具有布置灵敏、便于信息获取和传输等特征[1],得到很多运用。由于无线传感器网络节点一般选用低功耗设置以处理长时作业状态下能量补给困难的问题,其节点定位技能不同于全球卫星定位系统(Global Positioning System,GPS)定位技能。假如选用根据测距的定位算法,能够到达杰出的精度,但要求额定的物理丈量设备,硬件本钱和功耗偏高,不适合于大规模无线传感器网络。根据非测距的定位算法,由于不需求丈量传感器节点之间的物理间隔或视点,在实践中具有更佳的实用性,因而成为研讨热门。
现在根据非测距的算法有DVHop(Distance VectorHop)算法[2]、Centroid算法[3]、APIT算法[4]、SBL(SequenceBased Localization)算法[5]。SBL算法是一种运用接纳信号强度RSSI来收集信标节点序列,经过区域区分完结节点定位的非测距定位算法。该算法比照RSSI信号的强弱取得待定位节点与不同信标节点之间间隔的相对巨细,具有复杂度低、定位精度高、健壮性强的特色。可是SBL算法不能充分运用一跳规模以外的信标节点和不知道节点的信息等,本文经过剖析一跳规模以外的节点信息,在相同条件下进步了算法的定位精度,仿真试验标明 ASBL(Advanced SequenceBased Localization)算法相关于SBL算法在功能上有大幅的进步。
1 模型化
在无线传感器网络中,节点分为两类:信标节点和不知道节点。信标节点所占份额较小,能够获悉本身的准确方位,不知道节点运用信标节点的方位信息经过某种算法来确认本身方位。如图1所示,区域中有A、B、C三个信标节点,在A和C中垂线的上侧区域中恣意一点与A、C的间隔关系为DA 《 DC,同理在中垂线下侧区域有DC 《 DA。不同的中垂线彼此穿插把网络地点区域切割成更小的独立区域,每个独立区域到信标节点的间隔排序是仅有的,这个排序序列称为该独立区域的签名序列。假如一个待定位节点在DB《 DA ∩DB 《 DC∩DA 《 DC区域中经过RSSI丈量各个信标节点的信号强度,那么得到的信号强度应该是SB 》SA 》SC,待定位节点以为自己测得的定位序列为B-A-C。
图1 区域区分和求签名序列
两个序列之间的匹配类似度选用斯皮尔曼相关系数[6](Spearman‘s Rank Order Correlation Coefficient)和肯德尔等级相关系数[6](Kendall’s Tau)来衡量。给定两个序列U={ui}和V={vi},1≤ i≤n,其间n表明信标节点的个数,ui和vi表明序列中的信标节点的方位。用ρ表明斯皮尔曼相关系数,用τ表明肯德尔等级相关系数,则有:
其间,nc表明两个序列中先后顺序共同的节点对的数目,nd表明两个序列中先后顺序不共同的节点对的数目,ntu和ntv别离表明两个序列的内部关系数。
ρ和τ的值都介于-1和1之间。两个彻底相同序列的ρ和τ的值为1,彻底不相关的两个序列的ρ和τ的值为0,两条相逆的序列的ρ和τ的值为-1。SBL算法取ρ和τ值最大的序列作为匹配序列。如图2所示,待定位节点经过式(1)的匹配算法与“签名序列表”中的序列进行匹配,能够得出自己地点的区域,以该区域的质心作为自己的坐标。
图2 匹配勘探序列完结定位
2 ASBL算法
ASBL算法的待定位节点只能接纳到通讯半径规模内的信标节点的RSSI值,无法充分运用通讯半径外的信标节点信息来定位。当网络中信标节点增多时,理论上被切割区域并没有发挥作用。
如图3所示,S表明待定位节点,最中心的虚线规模表明S经过RSSI序列进行开始定位之后或许的待定位区域。A表明在S通讯规模内的信标节点,B表明2跳规模的信标节点,C和D表明三跳规模的信标节点。别离做AB、AC和AD之间的平分线,AB和AC之间的平分线穿越S的待定位区域,能够缩小待定位区域的面积,当信标节点D坐落三跳规模边际时,AD之间的平分线刚好与待定位区域的边际相切,未能穿越待定位区域。因而,在均匀分布的网络中,间隔待定位节点跳数越小的信标节点关于待定位节点的定位帮忙越大,跟着跳数的添加,三跳规模以外的的信标节点不能对待定位节点的定位供给有用的方位信息。在实践中,待定位节点宣布的定位问询信息的跳数上限设置为6即可,既能最大化地运用多跳信标节点的方位信息,又不会耗费过多的能量用于通讯。
图3 不同跳数的信标节点之间的中垂线
如图4所示,一跳的信标节点能给待定位节点供给大致的待定位区域,二跳信标节点一般情况下能将待定位区域的面积缩小75%左右,三跳及三跳以外的信标节点能在二跳的根底上持续将待定位区域面积缩小20%左右。
图4 不同跳数的信标节点对定位的帮忙
3 仿真验证
本文运用Java言语开发了一个仿真渠道,剖析查验ASBL算法的各种功能指标。设置传感器节点随机布置在200 m×200 m的区域内,节点的通讯半径默以为30 m,表1中的数据是仿真渠道的各项参数信息。
表1 仿真渠道默许参数信息
3.1 节点密度对定位精度的影响
本组仿真中,将节点随机布置,信标节点密度设为10%,节点数量在100~500之间改变,节点通讯半径掩盖不规则度为0,其他参数坚持不变。经过图5能够看出,跟着节点密度的增大,各算法定位精度都有所进步,当节点到达400个时,各算法功能趋于稳定。由于能够运用一跳规模外的信标节点和不知道节点帮忙定位,ASBL算法定位精度比DV-Hop算法进步25%左右,比APIT算法进步15%左右,比SBL算法进步12%。
图5 节点密度对定位精度的影响
3.2 节点通讯半径对定位精度的影响
设置节点总数为300个,信标节点密度为10%,节点通讯半径从10~50 m递加,其他参数依照默许设置,重复10次仿真。由图6能够看出,通讯半径为10 m时,ASBL算法的定位精度要比SBL算法高75%,这是由于ASBL能充分运用一跳规模外的信标节点。通讯半径为50 m时,ASBL算法的定位精度比SBL算法仅高1.4%,这是由于当节点通讯半径添加时,本来坐落一跳规模外的信标节点此时会坐落一跳规模内。
图6 节点通讯半径对定位精度的影响
结语
非测距的定位技能以所需传感器节点能量少、硬件简略,成为现在无线传感器网络定位技能的首要研讨方向。本文提出了ASBL算法,针对SBL算法作了改善,以进步算法杰出的适应性和健壮性。恰当的定位算法是无线传感器网络正常作业的根底,针对非测距定位算法的研讨将 会朝着下降能量耗费和进步定位精度的方向开展,然后极大地进步网络的生存能力和作业效率。