APP下载

一种提高水下目标被动定位性能的两步定位法

2022-12-30刘树东梁婷蓉

天津城建大学学报 2022年6期
关键词:定位精度全局校正

刘树东,梁婷蓉,王 燕,张 艳

(天津城建大学 计算机与信息工程学院,天津 300384)

随着国家对海洋开发、海洋工程及海防技术的重视程度逐年提高,基于水下传感网络(Underwater Wireless Sensor Networks,UWSNs)的水下定位技术被越来越多的学者关注.水下定位技术在海洋资源勘探、军事侦察、水下目标监测与跟踪、防灾、导航等领域都有着广泛的应用前景[1-2].

当未知目标移动到目标海域或者目标海域有事件发生时,UWSNs中的传感器节点将接收到相应的声信号,定位系统通过对声信号进行分析,获得到达时间[3](Time of Arrival,TOA)、到达角[4](Direction of arrival,DOA)、接收信号强度[5](Received Signal Strength,RSS)、多普勒频移[6]等信息进行目标定位.相对于主动定位,被动定位具有隐蔽性好、耗能少、安全系数高的特点[7].在被动定位系统中,通过任意两个传感器节点都可以获得到达时间差[8](Time difference of arrival,TDOA),基于TDOA的定位方式简单易实现.

目前,针对TDOA被动定位中的非线性方程组求解依然是水下定位技术的研究热点.学者们基于最小二乘(Least Sqaure,LS)[9]提出改进算法,包括Chan算法[10]、加权整体最小二乘法[11]、迭代约束加权最小二乘法[12]等实现目标定位,但是此类算法存在矩阵奇异和结果发散的问题,且由于非线性运算多致使其闭型解仅在噪声足够小的情况下才有效.近年来,研究者又将智能优化算法应用到非线性方程组求解中,Kenneth等[13]提出直接利用粒子群优化算法进行TDOA无源定位,该算法在噪声足够小的情况下能够获得比LS算法更准确的目标位置估计值;Rosic等[14]提出遗传算法与牛顿迭代相结合,该算法利用牛顿法对遗传算法获取的初始全局最优解进行改善;陈涛等[15]提出了利用樽海鞘群算法进行定位,此算法比基于粒子群的算法定位精度更高;Jiang等[16]将莱维飞行机制与布谷鸟搜索算法相结合提出一种基于TDOA的定位算法,该算法定位效果较直接使用粒子群算法进行搜索有明显的提升;马一鸣等[17]利用Chan算法改进哈里斯鹰算法的初始种群,然后通过哈里斯鹰算法求解TDOA非线性方程,提高了算法收敛速度;林云航等[18]首先通过入侵杂草算法获得目标初始解,然后利用初始解和改进加权最小二乘算法获得粗略解及精确解;唐菁敏等[19]通过设计自适应感知概率模型平衡乌鸦搜索法的局部搜索和全局搜索能力,提高了目标的估计精度.此类算法在求解非线性位置方程时均需要在全局范围内不断迭代寻找最优解,因此相比于最小二乘类算法虽然定位精度有所提高但耗时较长.

针对上述问题,本文提出了一种提高水下目标被动定位性能的两步定位法.该算法分为2步:第1步,线性化到达时差方程组估计初始目标位置;第2步,引入鲸鱼优化算法[20](Whale Optimization Algorithm,WOA)校正初始目标位置.校正过程中,针对水下定位场景设置WOA中的适应度函数;通过初始估计值限制种群范围,避免无效的全局搜索,减少定位时间;采用不同的位置更新策略对初始目标位置不断进行校正,得到最终目标位置的估计值.实验仿真结果表明,基于改进鲸鱼优化算法(Improved Whale Optimization Algorithm,IWOA)的两步定位法(T-IWOA)比其他算法具有更高的目标定位精度,且更接近克拉美罗下限(Cramer-Rao Lower Bound,CRLB),提高了水下目标被动定位的性能.

1 基于TDOA的被动定位模型

1.1 定位场景

本文提出的算法应用在的水声传感器网络中(如图1所示).在该场景中,已知锚节点的位置信息,当未知目标进入水下传感器网络区域时,锚节点感知到未知目标的辐射信号,将信号存储转发到具有计算能力的汇聚节点.汇聚节点关联不同锚节点接收到的波形得到到达时间差信息,最终通过定位算法得到目标位置.

图1 水声传感网络

1.2 问题模型

目标位置到参考锚节点与锚节点间的距离差表示为:

利用广义互相关法对汇聚节点得到的波形做广义互相关运算,测得的锚节点si到目标u的时间与锚节点s0到目标u的时间之间的差值为(i=1,2,…,N-1),相应的测量距离差为Δdˆ0,i.

式中:τi为锚节点si到目标u的时间与锚节点s0到目标位置u的时间之间的真实差值;ni为时延误差,服从均值为0,方差为σd2的高斯分布;c为水中声速.则又可表示为:

所以,可以利用最大似然法来估计目标位置,最大似然函数表示为:

为了避免函数存在不可导、无解的情况,本文利用鲸鱼优化算法对问题进行求解.该算法模拟了座头鲸用随机或最佳搜索代理捕食猎物的行为,并使用螺旋式方程模拟了座头鲸的气泡网围捕攻击猎物机制.整个算法过程控制参数较少,在探索和开发之间具有良好的平衡能力.

通过等式(1)-(5)可以构造以下优化模型,从而得到目标位置

2 水下目标被动定位两步法

本文所提T-IWOA算法分为两步.首先,根据测得的时延值线性化TDOA观测方程,得到初始目标位置估计值;然后,针对性地对影响位置更新使用的控制变量进行改进,利用改进的捕食策略对初始目标位置进行局部校正和全局校正,直到得到最优的空间目标位置为止.

2.1 初始定位

根据1.2可以得到N-1个非线性方程,其中第i个方程为:

因为该方程是非线性方程,所以先对该方程线性化,第i个和第i+1个等式分别为:

式(10)和式(11)相减可得:

将式(12)写成矩阵形式,可得:

其中H=[h2,h3,…,hN-1],W=[w2,w3,…,wN-1],hi和wi分别表示为:

2.2 精确定位

使用改进鲸鱼优化算法对初始位置进行校正,实现精确水下定位.鲸鱼优化算法包含开发阶段和探索阶段,这2个阶段分别表示算法的全局搜索能力和局部搜索能力,所以使用IWOA算法对初始位置进行局部校正和全局校正.只有这2种校正能力之间达到良好的平衡,算法才能快速收敛于全局最优解,获得最优目标位置.

在基本鲸鱼优化算法中迭代次数为0时,X位置为随机.为了减少寻优时间,加快算法收敛速度,根据初始目标位置限制种群X取值范围,上限为:lb=δ,下限为:lb=uˆ0-δ,其中δ为扰动项.

2.2.1 开发阶段——局部校正

开发阶段,座头鲸利用气泡网攻击捕食,在缩小种群范围的同时,沿螺旋路径向猎物移动.水下定位过程中,将座头鲸的这种行为总结分解为2种位置更新策略:收缩包围和螺旋移动,这2种策略均是利用目前最佳的目标位置更新下一代候选目标位置.假设在局部校正初始目标位置时采用上述2种位置更新策略的概率分别为50%,则目标位置更新的表达式为:

当p<0.5时,采用收缩包围位置更新策略局部校正位置.A表示系数,X*表示迭代数为t时的最优解目标位置向量,X表示目标位置向量.为了提高局部搜索能力、收敛精度和收敛速度,引入惯性权值ω,ω的更新公式如下:

式中:t为当前迭代次数,max_iter为最大迭代次数.利用余弦函数在0到π/2的性质,ω从1到0,从而改变当前位置对更新位置的影响.

式中:C表示系数;r为0~1之间的随机数.设定A的值在区间[-1,1]上,k的值从2线性地减小到0.随k值的减小,A的变化范围也在不断缩小,候选目标位置也不断向最优目标位置的更新靠拢.

当p≥0.5时,采用螺旋移动位置更新策略局部校正位置.根据候选目标位置和当前最优目标位置之间的距离,在两者之间建立一个螺旋方程来模拟座头鲸的螺旋运动,以更新目标位置.螺旋方程为:

式中:D'=‖X*(t)-X(t)‖表示当前候选目标位置和当前最优目标位置之间的距离;b为描述螺旋移动的常数;l为区间[-1,1]上的随机数.

2.2.2 探索阶段——全局校正

此阶段与开发阶段不同之处在于收缩包围中系数向量|A|≥1,使用随机选择的方式更新位置,允许全局探索,实现对初始位置的全局校正.

式中:Xrand为从当前种群中选择的随机位置.

3 仿真实验及分析

本文的仿真实验在64位的Windows10,MATLAB 2019a平台上进行.仿真实验中,设只有一个目标,此目标在定位过程中处于静止状态.蒙特卡洛仿真实验的次数为1 000.在二维场景下,本文采用8个锚节点,锚节点坐标设置为(-1 000,-1 000)m、(-1 000,1 000)m、(1 000,-1 000)m、(1 000,1 000)m、(-2 000,-2 000)m、(-2 000,2 000)m、(2 000,-2 000)m、(2 000,2 000)m,目标位置为(1 500,0)m.仿真时假设TDOA测量误差服从均值为0方差为σd2的高斯分布.实验中对本文算法、两相线性算法(G)[7]、经典Chan算法[10]、基于樽海鞘群算法(SSA)[15]的定位算法、基于基本鲸鱼优化算法(WOA)[20]的定位算法进行比较.若无特殊说明,T-IWOA、SSA、WOA算法的种群数为30,迭代次数为200.

本文采用均方误差(MSE)作为定位精度评价指标.

通常根据均方误差是否接近CRLB来评估定位算法的性能,其计算公式为:

式中:d(u)=[Δd0,1,Δd0,2,…,Δd0,N-1].

3.1 不同测量误差对定位精度的影响

不同测量误差下,本文算法与其他定位算法估计目标位置、位置x方向以及位置y方向的MSE曲线及相应的CRLB曲线如图2—4所示.由图2结果可知,在本次仿真实验所选取的误差范围内,T-IWOA算法及其对比算法均没有出现当时间测量误差方差达到某一值时定位精度迅速降低的现象,算法的位置均方误差随着误差方差的增加平稳增大.T-IWOA、SSA、WOA定位算法估计目标位置的MSE曲线明显低于Chan算法和G算法,且更接近CRLB曲线,表明T-IWOA、SSA、WOA的定位精度要高于Chan算法和G算法.这是由于Chan算法和G算法为解析算法,在解决非线性最优化问题引入了噪声项的平方.对于T-IWOA、SSA和WOA算法,在误差范围为-70~-60 dB时,WOA算法表现较差,其余误差范围内三种算法估计目标位置的MSE曲线相差较小,可忽略不计.

图2 位置均方误差变化曲线

由图3可见,随着TDOA测量误差方差的增大,T-IWOA算法及其对比算法估计目标位置x方向的MSE平稳增大,其中T-IWOA、SSA、WOA、Chan算法的MSE曲线几乎完全重合,而G算法估计目标位置x方向的精度明显低于这4种算法.T-IWOA算法及其对比算法估计目标位置y方向的MSE曲线(如图4所示),由图4可知,T-IWOA算法依然表现最优,SSA算法次之.

图3 位置x-方向均方误差变化曲线

图4 位置y-方向均方误差变化曲线

通过对T-IWOA、SSA、WOA算法进行1 000次蒙特卡洛仿真实验所需的时间进行比较,发现T-IWOA所耗时间最短,如表1所示.虽然T-IWOA、SSA、WOA算法均是利用最大似然法来进行位置搜索,但是T-IWOA算法分为2步,算法第1步估计的粗略目标位置为第2步中利用鲸鱼种群位置更新策略寻找全局最优解奠定了基础,加快了算法收敛的速度,减少定位所需的时间,提高了定位性能.

表1 时间性能比较

3.2 不同基于智能优化定位算法的收敛性能分析

在种群规模为30、迭代次数为1 000、σ2d=10-6的条件下,T-IWOA、SSA和WOA三种算法的收敛性能比较如图5所示.从图5可以看出,3种算法最后均收敛于相同的值,但是三者收敛于全局最优解的收敛情况是不同的.由于T-IWOA算法采用前后两式相减法粗略估计目标位置,同时利用此结果限制初始种群范围,所以在迭代初期适应度值较小,并且在迭代次数接近100时适应度值稳定不变.而WOA算法和SSA算法没有对初始种群进行有效的限制,迭代初期适应度值较大,但是WOA算法收敛速度快,几乎和T-IWOA算法同时达到收敛于全局最优解.SSA算法收敛分为4个阶段:迭代初期收敛速度较慢;在迭代次数接近200时,收敛速度加快,适应度值快速下降;然后迭代次数为200~400时,适应度值基本保持不变;迭代次数位于400~600之间,SSA算法又进行了缓慢的收敛,最终收敛于全局最优解.

图5 收敛性能

3.3 不同定位算法的定位率分析

为了验证T-IWOA算法在TDOA定位中的定位成功率,分别在1 500 m×1 500 m和2 000 m×2 000 m的正方形区域内随机产生100个坐标位置作为未知目标,统计T-IWOA、G、Chan、WOA以及SSA算法对100个不同位置定位的准确率,如图6和图7所示.图中,五角星表示锚节点,白色圆圈表示成功定位的目标,黑色圆圈表示未成功定位的目标,即在MSE>20 m2.由图6可知,当随机生成目标位置位于1 500 m×1 500 m的正方形区域内时,T-IWOA、G、Chan、WOA以及SSA算法的定位准确率分别为97%、90%、26%、61%、97%,其中T-IWOA和SSA算法定位准确率最高,G算法次之,Chan算法定位准确率最低.由于TIWOA算法是G算法和WOA算法融合改进后的两步定位法,所以T-IWOA算法定位准确率较G算法和WOA算法均有所提升.

图6 100个随机目标下不同算法的定位效果(1 500 m×1 500 m)

图7为当随机生成目标位置位于2 000 m×2 000 m的正方形区域内时每种算法的定位情况示意图,TIWOA、G、Chan、WOA以及SSA算法的定位准确率分别为90%、72%、18%、59%、89%.对比图6和图7的定位准确率发现,由于图7中随机目标位置可能会大量随机分布在锚节点附近的边界区域,所以5种定位算法的定位准确率均有所下降.但是T-IWOA算法成功定位目标数最多,SSA算法次之.

图7 100个随机目标下不同算法的定位效果(2 000 m×2 000 m)

3.4 不同锚节点数量下的性能比较

为了验证不同锚节点数对T-IWOA算法影响,图8给出了在固定锚节点个数为4~10时的定位精度变化情况.根据图8所示实验结果可知,当锚节点数为4时,定位性能不稳定;当锚节点数大于等于5时,算法的定位误差随着测量误差的增加平稳增加,并且随着水下传感网络中锚节点数量的增加,定位精度提高.从TDOA定位原理可知,增加锚节点可以获得更多的声源信息,锚节点数量越多,双曲线越多,定位越准确.但是随着锚节点数目的增加,定位均方误差减小的速度变慢.实际应用中,应考虑锚节点成本和定位精度之间的平衡.

图8 不同锚节点数目下MSE的比较

4 结语

本文通过一种基于TDOA两步定位算法来求解非线性位置方程,从而提升水下目标被动定位的性能.该算法首先设计用于限制初始化种群的线性化TDOA定位模型,获得初始目标位置估计值,然后将改进鲸鱼优化算法应用在到达时间差定位的非线性问题求解中,对初始值进行局部校正和全局校正.仿真结果验证了在同等噪声条件下,相比于Chan算法、G算法和WOA算法,本文算法定位精度更高,更接近克拉美罗下限,并且通过对随机目标位置定位实验仿真,证明本文算法具有较强的鲁棒性;相比于SSA算法,虽然2种定位算法的定位精度不相上下,但是本文算法的收敛速度快,且定位所耗时间要低于SSA算法.综上所述,本文算法的定位性能要优于其他定位算法.下一步,将在三维场景中考虑传感器节点位置误差,进一步提高定位性能.

猜你喜欢

定位精度全局校正
基于改进空间通道信息的全局烟雾注意网络
Galileo中断服务前后SPP的精度对比分析
劉光第《南旋記》校正
GPS定位精度研究
GPS定位精度研究
建立在校正系统上的强大实力Sonance所能士i12
落子山东,意在全局
记忆型非经典扩散方程在中的全局吸引子
在Lightroom中校正镜头与透视畸变
机内校正