基于GWO和PSO协同优化的DV-Hop定位算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于GWO和PSO协同优化的DV-Hop定位算法
作者:朱子行陈辉
来源:《现代信息科技》2022年第03期
摘要:無线传感器网络具有感知和处理信息的能力,只有当被测网络内节点的位置已知时,节点传递给用户的信息才有意义。针对DV-Hop定位中传统最小二乘法不可避免的精度低的缺点,引入粒子群算法(PSO)和灰狼优化器(GWO)来估计未知节点位置。粒子群算法具有个体记忆的特点,采用粒子位置更新代替灰狼个体位置更新,使灰狼算法在优化上具有可记忆性。仿真数据表明,改进后的算法可以有效降低节点定位误差,实现更高的定位精度。
关键词:无线传感器网络;DV-Hop;灰狼优化器;粒子群算法
中图分类号:TN934 文献标识码:A文章编号:2096-4706(2022)03-0088-04
DV-Hop Positioning Algorithm Based on GWO and PSO Collaborative Optimization
ZHU Zihang, CHEN Hui
(Anhui University of Science & Technology, Huainan 232001, China)
Abstract: Wireless sensor networks have the ability to sense and process information, and the information passed by the nodes to the user is meaningful only when the location of the nodes within the network under test is known. In view of the inevitable shortcoming of low precision of the traditional least squares method in DV-Hop (distance vector-hop) localization, the Particle Swarm optimization (PSO) and the Gray Wolf Optimizer (GWO) are introduced to estimate unknown node positions. The Particle Swarm optimization has the characteristics of individual memory, and the particle position update is used to replace the gray wolf individual position update, so that the gray wolf algorithm has memory in optimization. The simulation data show that the improved algorithm can effectively reduce the node positioning error and achieve higher positioning accuracy.
Keywords: wireless sensor network; DV-Hop; Grey Wolf Optimizer; Particle Swarm optimization
0 引言
无线传感器网络(Wireless Sensor Network, WSN)作为信息获取的重要技术随着网络信息的快速发展得到了广泛使用[1]。近些年来,WSN在城市建筑,路况交通,医疗军事,森林农田[2]等领域具有广阔的应用前景。识别网络节点的位置是无线传感器网络中的一个重要步骤,在不知道节点位置的情况下收集的信息大多是无意义的。在应用WSN时,传感器节点通常采用随机部署,特别是对于大规模网络。因此,每个节点的位置信息是不可或缺的。一种解决方案是在每个节点上安装一个GPS或北斗定位模块来获取它们的位置信息,这不仅成本高,而且不实用,因为传感器节点的功耗会大大增加,每个节点的生命周期显著缩短。此外,在室内或者密集环境中,定位模块的性能会下降。另一种解决方案是使一部分节点装有定位模块(锚节点)和利用一些定位技术来估计未知节点的位置。
目前,WSN定位技术根据是否需要硬件辅助测量节点间的距离分为基于测距和非测距两大类[3]。基于测距的定位算法主要包括AOA、TOA、TDOA和RSSI等。非测距的经典定位算法主要包括质心定位、APIT、DV-Hop等。非测距算法对相邻锚节点的最小数量有严格的要求,锚节点数目越多越容易获得更高的定位精度[4]。DV-Hop(Distance Vector-Hop)由于它的算法实现简单,不需要提供额外硬件设备,引起了国内外众多厂商、学者的关注。该算法的核心原理是通过平均跳距和最小跳数的乘积来近似传感器节点之间的距离,因此难以达到某些应用所要求的定位精度。本文提出一种改进的DV-hop定位算法,引入粒子群协同灰狼算法代替最小二乘法对未知节点坐标进行估计,实验结果证明可以有效降低定位误差,提高定位稳定性。
1 传统DV-Hop定位算法
1.1 未知节点定位过程
DV-Hop定位是一种基于距离矢量路由机制的非测距定位算法[5]。该算法是由NICULESCU D.和NATH B在2003年提出的,根据节点间的距离选择最佳路径进行定位。无线传感器网络包含两种节点:信标节点(Anchor Node, AN)和未知节点(Unknown Node,UN)。DV-Hop算法步骤为:
(1)求节点之间的最小跳数。每个节点通过距离矢量路由交换原理接收到从ANi发送的数据包。在数据包广播过程中,邻居节点收到数据包时,包内跳数值增加1并转发出去。如果节点接收到来自同一个信标节点的数据包,保留较小跳数值的数据包。
(2)计算ANi的平均每跳距离:
(1)
式中hij是ANi和ANj之间的最小跳数值。(xi,yi),(xj,yj)分别是ANi,ANj的坐标。AN依据公式(1)得到平均跳距后,把自身的平均跳距广播给其他节点。邻居节点接收信息后将跳数加1并继续广播(如果收到多个节点广播的信息,只接收第一个到达的信息),然后通过公式(2)来计算出自身和AN之间的距离:
(2)
其中hui是ANi到UNu的最小跳数,Hopsizei为ANi所在路径的平均跳距。
(3)求出UN和AN之间的距离后通过最小二乘法来估计未知节点的位置。设UNm的坐标为(x,y),ANi的位置是(xi,yi),UNm到ANi的距离为di则:
(3)
为了使方程组线性化,将式(3)转换为AX=B的方程。A,B,X由下式得出:
(4)
最后根据最小二乘法我们得到未知节点的位置为:
(5)
1.2 误差分析
1.2.1 跳数不精确问题