360 likes | 501 Views
基于矢量的无线传感器网络节点定位综合算法. 汇报人: XXX. 目录. 1 引言. 2 基于校正矢量和粒子群优化的节点定位综合算法. 本文目录结构. 3 算法仿真实验及结果. 4 总结. 引言. 1 引言. 已知基站发送端发射功率,在接收节点测量接收功率,计算信号的传播损耗; 使用信号衰减模型将传播损耗转化为距离。. RSSI (Received signed Strength Indicator) 算法. Range-based. TDOA (Time Difference of Arrival) 算法.
E N D
基于矢量的无线传感器网络节点定位综合算法 汇报人:XXX
目录 1 引言 2基于校正矢量和粒子群优化的节点定位综合算法 本文目录结构 3 算法仿真实验及结果 4 总结
1引言 已知基站发送端发射功率,在接收节点测量接收功率,计算信号的传播损耗; 使用信号衰减模型将传播损耗转化为距离。 RSSI(Received signed Strength Indicator)算法 Range-based TDOA(Time Difference of Arrival)算法 在节点上安装超声波收发器和RF收发器,记录两种不同信号在两个节点中的传播时间差; 由传播时间差计算得到距离。
1引言 锚节点每隔一段时间向邻节点广播一个信号(自身ID 和位置信息)。当未知节点接收到来自不同锚节点的信号数量超过某一个值后,则确定位置为这些锚节点所组成的多边形的质心。 质心定位算法 Range-free DV-HOP 定位算法 计算未知节点与锚节点的最小跳数;根据估算距离公式,计算未知节点和锚节点的实际距离;利用三边测量法计算位置信息
1引言 RSSI算法 TOA算法 DV-HOP算法 凸规划定位算法 TDOA算法 质心定位算法
基于校正矢量和粒子群优化的节点定位综合算法基于校正矢量和粒子群优化的节点定位综合算法
2基于校正矢量和粒子群优化的节点定位综合算法2基于校正矢量和粒子群优化的节点定位综合算法 2.1 位置校正矢量(LCV) 位置校正矢量 2.2 分簇计算校正步长 校正步长 2.3 簇边缘附加矫正 位置校正值
2.1 位置校正矢量 未知节点通过DV-hop算法得到自身的估计位置,将其与邻居节点估计位置之间的距离记为“计算距离”。 而通过RSSI等测距方法得到的与邻居节点间的距离记为“测量距离”。
2.1 位置校正矢量 引入位置校正矢量的目的就是通过调整节点的位置,尽可能缩小计算距离与测量距离之间的差别,因此LCV的每个分量是沿着未知节点到某个邻居节点的方向,分量的大小为对应的计算距离与测量距离的差值。 图1 位置矫正矢量图
2.1 位置校正矢量 固定节点的位置校正矢量
2.1 位置校正矢量 假设节点S通信范围内有N个邻居节点,节点自身的估计位置为PS=(xs, ys), N个邻居节点的估计位置为Pi=(xi, yi) ,节点S与第i个邻居节点的计算距离为dci 节点S获得的N个测距值为dmi,i=1,2,⋯,N。节点S与第i个邻居节点的差异值的大小可以表示为ui
2.1 位置校正矢量 节点S与第i个邻居节点位置校正矢量的矢量方向表示为 因此,节点S的合成LCV为
2.1 位置校正矢量 图2 位置矫正矢量图 (实线为节点实际位置,虚线为节点估计位置)
2.1 位置校正矢量 移动节点的位置矫正矢量
2.1 位置校正矢量 对于移动节点,初始位置估计方法: 移动节点Sm在tk+1时刻的初步估计位置等于其在tk时刻的定位结果的基础上加上
2.1 位置校正矢量 Y 假设节点密度不变 0 X S S tk tk+1 图3 移动节点的初始定位
2.1 位置校正矢量 移动节点用距离变化值代替距离值构建LCV(位置校正矢量),过程如下: tk时刻 tk+1时刻 Sm与第i个邻居节点的计算距离为 Sm与第i个邻居节点的计算距离为 测量距离为 测量距离为 差异值表示为:
2.1 位置校正矢量 节点Sm与第i个邻居节点位置校正矢量的矢量方向表示为 因此,节点S的合成LCV为
2.1 位置校正矢量 LCV矢量的合成方法与固定节点相同。 图2 位置矫正矢量图 (实线为节点实际位置,虚线为节点估计位置)
2.2 分簇计算矫正步长 由于每个未知节点同时调整自身的位置,因此LCV只能给出节点位置的调整方向,而沿这个方向移动的距离(将其称之为校正步长)需要通过另外的方法来计算。 为了避免集中式算法,同时兼顾节点的能耗,考虑使用分簇的计算方式来获取校正步长。考虑到算法的尽可能简单化和锚节点的计算通信能力比较强,就将每个锚节点作为簇头,未知节点以自身的当前估计位置为准,加入距离最近的锚节点所在的簇。
2.2 分簇计算矫正步长 问题描述 分簇后,以 为目标来计算簇内节点的校正步长。位置校正矢量的作用是使簇内所有邻居节点之间经过位置校正后,计算距离与测量距离差值的总和最小化,因此求校正步长的问题可以描述为一个多元函数最小化问题。 簇内网络整体位置最优化
2.2 分簇计算矫正步长 假设簇内有N个未知节点,它们的估计位置分别为Pi=(xi, yi) ,LCV分别为,i=1,2,⋯,N,待求步长为step,step是一个由stepi组成的N维向量。 问题的目标函数可以表示为 其中, 为簇内节点i、j之间的距离测量值 为簇内节点之间的实际距离 R为节点的通信半径
2.2 分簇计算矫正步长 N维向量值最小
2.2 分簇计算矫正步长 粒子群算法 粒子群优化(PSO)算法是一种新颖的演化算法, PSO的优势在于简单而又功能强大。它属于一类随机全局优化技术, PSO算法通过粒子间的相互作用在复杂搜索空间中发现最优区域。 参数只需要最简单的设置: PSO粒子的长度等于簇内未知节点的个数 每一维分量对应一个节点的校正步长 目标函数作为适应度函数
2.3 簇边缘附加矫正 簇内节点的相对位置的最优化并不意味着全局网络所有节点的位置实现了最优化,有可能存在簇整体平移或者簇间距离误差反而增大的问题。因此考虑对簇与簇之间的位置进行调整。
2.3 簇边缘附加矫正 由簇的每个边缘节点查找所有不属于本簇但是在自身通信半径内的邻居节点。利用它们之间的计算距离和测量距离构建附加位置校正矢量。 首先用range—free算法计算锚节点的估计位置,然后求其与锚节点真实位置的误差。再利用锚节点与邻居节点的测距值构建位置校正矢量,将误差距离值除以位置校正矢量模值作为附加校正步长。 簇内所有边缘节点都采用这个附加校正步长。每个簇的边缘节点都通过上述的过程调整自身的位置,以此减小簇与簇的相对位置误差,避免陷入局部最优化。 步长:
3 算法仿真及结果分析 仿真环境:MATLAB 区域:边长为100的正方形 节点数:随机布置了100个未知节点 节点通信半径:20 网络的连通度:约为10 测量距离:真实距离加上一个误差不超过10%的高斯随机变量
3 算法仿真及结果分析 锚节点数为16个,锚节点比例为13.8%。 图4 DV-hop定位结果
3 算法仿真及结果分析 在如上参数的条件下,DV-hop算法仿真的定位误差为39.34%。
3 算法仿真及结果分析 粒子群算法的初始粒子数为20个,粒子群算法的更新次数是10次。图5是以DV-hop为基础的基于LCV和粒子群优化的节点定位综合算法的仿真实验。 图5 基于LCV的节点定位综合算法的定位结果
3 算法仿真及结果分析 图6 算法循环次数与锚节点计算时间以及定位误差的关系
4 总结 在DV-hop算法的基础上,本文结合测距技术和改进的粒子群优化算法,提出了一种基于位置校正矢量的节点定位综合算法,并将其应用于移动节点。仿真实验证明在不明显增大通信和计算损耗的前提下,该算法相比于DV-hop的定位误差可以下降75%,达到小于10%的误差,已经具有实际的应用价值。