论文部分内容阅读
随着海洋资源潜力的不断显露,各领域学者对其的开发与研究在不断深入,相关技术也在迅猛发展。其中,如何精确定位水下目标节点就是亟待解决的问题之一。目前,水下节点定位分为静态与动态两种,二者的区别在于待定位节点的运动与否。水声信号传播时延较高导致集中式定位算法具有短时效的缺点,故水下定位通常采用分布式定位方案,然而分布式逐级定位误差累计又会影响到节点的定位误差。因此,本文旨在通过提升定位精度,解决逐级定位的累计误差,达到水下节点精准定位的效果。首先,本文提出一种面向水下静止节点的定位方法,针对三维空间节点定位精度低以及算法复杂度高的问题,提出一种面向非完全序列的水下三维传感网定位算法。该算法区别于传统基于序列定位算法,考虑更切实际的信标节点通信范围非全网覆盖的情况。利用3D Voronoi图对三维定位空间进行区域划分,并确定虚拟信标节点以及其阶次序列,根据由信号强度所得的未知节点序列与信标节点序列的阶次相关系数得到“最邻近”信标节点并构建最邻近序列表;然后设计针对非等长序列相似度的算法并利用该算法得到未知节点的非完全序列与最邻近序列表中各序列的阶次相关系数;最后将该阶次相关系数作为权重实现对未知节点位置的加权估计。仿真实验以信标节点比例、通信半径、节点总数以及网络规模作为变量对NFSL与DV-Hop和质心算法的定位精度进行比较,大量仿真结果证明了该算法的有效性,且其定位精度随信标节点数量的增加而大幅提高。其次,针对水下无线传感网中由于网络拓扑结构变化导致的静态定位算法准确率下降问题,本文提出一种面向水下移动节点的基于非完全序列的蒙特卡罗动态定位算法。该算法将静态定位结果作为动态定位的依据,根据未知节点接收到的信号强度序列构造一跳及两跳锚节点盒子;接着通过静态算法预估未知节点位置以获得粒子每个周期的运动范围,结合锚节点盒子构造采样盒子并在区域内采样;然后将一跳锚节点和两跳锚节点的通信半径约束关系以及未知节点在不同时刻接收到锚节点的信号强度值与变化量作为滤波条件,计算滤波后粒子的RSD值并将其作为权重;最后,利用加权平均的方法得到未知节点的位置坐标,实现水下传感网中移动节点的定位。综上,本文对三维水下静态与动态节点定位问题进行了研究,提出了对应的NFSL与INFS-MCL定位算法,大量仿真结果证明了所提两个算法的定位效果均良好,与传统定位算法相比分别提高了约23%与33%的定位精度。