APP下载

基于最少Sigma点的水下动态目标定位算法改进研究*

2023-06-05王苏慧王黎明韩星程叶泽甫朱竹君

舰船电子工程 2023年1期
关键词:无迹滤波噪声

王苏慧 王黎明 韩星程 叶泽甫 朱竹君

(1.中北大学信息探测与处理山西省重点实验室 太原 030051)(2.山西格盟中美清洁能源研发中心有限公司 太原 030000)

1 引言

随着人工智能、信息融合以及水下通信等技术的飞速发展,利用各类传感器进行水下探测已成为可能[1]。因此,水声传感器网络的研究(Underwater Acoustic Sensor Network,UASN)受到了我国极为广泛的关注,其中,大多数用于处理水下监测领域中的目标定位和跟踪问题。许多高质量的传感器大量部署在受监测水域中,通过传感器间的信息交互来监控领域内的水下目标,目标位置是由传感器节点构成的网络来获得,以满足水下目标协同定位要求[2]。然而,UASN 在水下复杂环境中仍面临着噪声干扰、计算量大等挑战。

水下环境噪声是影响水声通信的原因之一,其主要包括海水波浪噪声、鱼群运动噪声和水下航行器噪声等。为了最大限度地减小噪声干扰就需要运用滤波算法不断地做信息融合信号处理,以达到对目标准确状态的估计[3],这些滤波算法主要有无迹Kalman滤波(Unscented Kalman Filter,UKF)和扩展Kalman 滤波(Extended Kalman Filter,EKF)[4]等。针对自主式水下机器人合作定位过程中存在的噪声协方差矩阵未知问题时,HUANG 等[5]提出了一种新的自适应扩展Kalman 滤波器,该方法具有明显更好的定位精度,但计算复杂度略高;针对潜艇在隐蔽攻击中利用EKF 对敌舰目标进行跟踪定位时存在滤波精度低、误差大甚至出现发散的问题,SUN 等[6]将UKF 应用在潜艇对敌舰的跟踪定位中并与EKF 相比较,结果证明UKF 提高了定位精度并解决了滤波发散及计算复杂度高的问题。随着滤波算法定位精度的提升,研究人员将注意力转向了基于UKF 的优化算法设计。针对在等梯度声速和噪声测量条件下水下目标的定位问题,YAN等[7]提出了一种基于一致性的UKF 定位算法来解决定位优化问题,但该类算法采用的平均一致策略是一种近似逼近方式,就此问题,LIU等[8]提出了一种基于有限时间最大一致性的分布式Kalman 滤波器算法,其中最大一致性策略可以避免近似逼近,实现精确一致。此外,水下传感器节点一般都是采用蓄电池进行供电,那么当传感器节点的电池能量耗尽后,更换电池的过程十分困难,为延长水声传感器网络的寿命,需要降低网络能耗[9]。就此问题,在无迹变换(Unscented Transformation,UT)方法中,计算量与Sigma 点的数量成正比[10],进而可以通过减少Sigma 点的数量节省网络能耗。CHANG等[11]提出了一种具有最少Sigma 点的分布式无迹Kalman 滤波器,减小了计算量进而降低了能量损耗,但该方法是一种近似逼近的过程。因此,水声传感器网络除了要考虑到目标定位的噪声干扰外,还要特别注意网络能耗问题[12]。

综合以上研究现状,为了在最大限度减少噪声干扰并降低传感器网络能耗的基础上提高定位精度,本文采用具有最少Sigma 点集的无迹变换技术,并对传感器网络获取的目标信息采用最大一致处理策略,引入虚拟向量避免节点同值问题,进一步改进为基于最大一致的最少Sigma 点无迹Kalman 滤波算法。最后将该方法用于对水下动态目标进行定位。

2 目标及传感器模型建立

在水下动态目标定位过程中,目标做匀速直线、匀加速等运动,将状态方程描述为

式中,xk∈ℝn是时间k的状态向量,Φ为状态转移矩阵,G为过程噪声驱动矩阵,qk-1~N(0,Qk-1)是时间k-1 时的过程噪声,目标在k-1 时刻的位置和速度用状态矢量表示。

水声传感器网络由N个节点构成且坐标位置为(xi,yi),则传感器节点的观测方程为

其中,∈ℝm是时间k的第i个测量向量,hi(·) 表示系统的非线性和第i个测量输出,表示时间k时第i个节点的测量噪声,理想情况下为零均值的高斯白噪声。

测量由连接着的无向图G=(V,ε)中相互通信的传感器网络进行处理,其中V={v1,v2,…,vN}是传感器节点的非空集合,ε∈V×V是传感器之间传递信息的通信信道的集合,并且定义节点i的邻居用Ni={j|(j,i)∈ε} 表示。在节点i的邻居中,入邻居由表示,出邻居由表示,入邻居数量由入度决定,出邻居数量由出度决定,传感器节点i的入邻居和出邻居如图1所示。

图1 入邻居和出邻居定义图

在传感器网络中,节点i采集的测量信息与入邻居传递的数据进行融合,再将融合后的数据传递给出邻居。本文将采用最大一致策略实现此过程,最大一致的基本思想是对于无线传感器网络的各个节点i,在每一个迭代周期内得到最大的状态值,可用如式(3)表示:

其中V表示节点i的集合,xi()0 代表各节点的初始值。

3 无迹变换与最少Sigma点

为解决水下动态目标定位过程中噪声干扰导致定位精度低以及传感器网络能耗问题,本文采用基于最大一致的最少Sigma 点无迹Kalman 滤波算法予以解决。本节简单介绍无迹变换方法与最少Sigma点集。

3.1 无迹变换

UKF 的精髓就是利用UT 来近似概率密度函数,UT 可以有效地计算滤波增益K、过程噪声qk和测量噪声的协方差矩阵Qk和Rk,进而实现UKF的递推运行[13]。

假设有非线性变换z=f()x,状态向量x是一个n维随机向量,已知它的期望xˉ和方差P的情况下,通过下面的UT 变换可以得到2n+1 个Sigma点x和相应的权重ω。然后,计算z的统计特性。

3.1.1 基于时间步长选择2n+1个Sigma点

式(4)中,n是非线性系统状态的维数,κ为调节参数,用于控制每个采样点到期望值的距离,并且是矩阵P平方根的第i列。

3.1.2 计算每个采样点的权重

其中,m是期望,c是协方差,λ=a2(n+κ)-n是用于减少总预测误差的缩放参数;参数a的选择决定了采样点的分布状态;κ是比例参数,其值通常取0 或3-n;参数β≥0 代表经过非线性函数处理后得到的新样本点的分布情况。

3.2 最少Sigma点集

假设X∈ℜn是一个随机向量,它的期望为Xˉ且协方差矩阵PXX>0,对于i=1,…,n,给定的参数矩阵υ:[υ1…υn]T∈ℜn,υi≠0,可以得到点集{χi,ωi} 和{γi,ωi|γi=f(χi)}如下所示:

由上可证:

1){χi,ωi} 的期望值μx:=等于X的期望值;

2){χi,ωi} 的协方差矩阵(χi-μx)·(χi-μx)T等于X的协方差矩阵。

4 最大一致最少点UKF

传统的UKF 算法削弱了水下噪声的影响,但在采样时为2n+1 个Sigma 点,计算量较大,且已有研究提出的UKF 优化算法均采用平均一致策略,可以得到所有节点状态值的平均值,实现渐近收敛,定位精度较低。为解决此问题,本文将UT方法与最少Sigma 点集相结合,把计算量减少为n+1 个采样点,并将最大一致策略应用在传感器节点的测量信息上进行最大值的选择,实现精确一致。经过改进得到的基于最大一致的最少Sigma点无迹Kalman 滤波算法,用于减少传感器节点计算量从而降低网络能耗并提高定位精度。

本文使用SSUKF 表示非平方根形式的最少点UKF。根据式(4)~(10),得到Sigma点及其权重:

预测状态:

预测测量值:

修正状态的估计值:

然后,将算法进一步改进为最大一致形式,具体步骤如下:

步骤1:对于传感器网络中的每个节点i∈N,获取其测量值并计算误差协方差矩阵:

步骤2:初始化

步骤3:传感器节点i与其邻居节点进行信息交互,运用最大一致性进行信息融合,并且令,col(·)表示列运算,col(X)=

1)对于i=0,1,…,N-1 时循环,传感器节点之间进行信息融合迭代。

当l=0,1,…,-1时循环(假设每个传感器都知道网络直径)

2)令变量ξki=bik+δik,其中δik表示一个小的随机向量,使等式在bik=bkj时对于i≠j,ξki≠ξkj,避免了节点同值问题。在每次数据融合后获得最大的bik值,将bik对应的分量值进行求和运算,由此求出更新值。

在等待传感器网络的各个节点发送并接收到相应的信息后,根据

步骤4:状态初步估计值

步骤5:更新状态估计及其协方差

本文所提算法是将传统UKF中n维系统上2n+1 个Sigma 点改进为n+1 个Sigma 点,通过减少Sigma 点数量从而减小节点计算量来降低传感器能量损耗,并利用最大一致性来融合传感器节点间获取到的目标测量信息,实现信息的精确一致,提升目标定位的精度并节省传感器网络能耗。

5 仿真验证

5.1 参数设置

本文部署三个传感器节点来定位目标,传感器节点间拓扑关系如图2所示。图中双向箭头表示两节点间信息进行融合并可以把融合后的信息传递给对方,单向箭头表示融合后的信息由节点1 传递给节点3。

图2 传感器节点间通信拓扑图

根据本文所提算法对各传感器节点获取的目标测量信息进行融合处理,设定目标的初始位置为(1000,50)m,初始速度为(0.3,-0.1)km/s,采样周期为1s,做20 次测量,且状态转移矩阵Φ、过程噪声驱动矩阵G表示如下:

过程噪声qk具有协方差矩阵Qk,测量噪声rki具有协方差矩阵Rk,具体表示如下:

5.2 结果及分析

为验证本文所提算法优势,采用提出的基于最大一致的最少Sigma 点无迹Kalman 滤波算法与传统UKF 算法对目标位置进行估计,得到轨迹比较如图3所示。此外,图4~图6示出了两种算法分别在三个传感器节点应用时的偏差值对比。

图3 目标轨迹比较图

图4 传感器节点1偏差对比图

图5 传感器节点2偏差对比图

图6 传感器节点3偏差对比图

由图3可知,本文所提算法轨迹与目标真实轨迹的重合度更高,相比之下传统UKF 轨迹偏离真实轨迹较远,定位效果较差。由图4~图6可知,本文所提算法应用在各传感器节点的偏差值整体均小于传统UKF 的偏差值且随着测量次数增加基本稳定在0~5m 之间,传统UKF 偏差值波动幅度较大且基本保持在高位。为了更好地衡量偏差值的整体水平,将每次实验偏差的平均值定义为

由此可得两种算法分别在三个传感器节点应用时的平均偏差值对比如图7所示。由图可知,传统UKF 算法最大平均偏差值达到7.29m;本文所提算法的平均偏差值更小,最大平均偏差值仅为2.87m,定位精度更高。

图7 传感器节点间平均偏差对比图

由于本文所提算法将传统无迹Kalman 滤波n维系统上的2n+1 个Sigma 点改进为n+1 个Sigma点,计算量有所减少,因此对两种算法进行测试分别得到每个采样周期内各算法的计算时间,如图8和图9所示。

图8 本文所提算法计算时间图

图9 传统UKF计算时间图

由图8可知,随着测量次数增加每个采样周期内本文所提算法计算时间稳定在4.5×10-3s以下,且最大值约为0.0043s;由图9可知,随着测量次数增加每个采样周期内传统UKF 计算时间波动幅度较大且高于4.5×10-3s,最大值达到0.0665s,虽然呈现下降趋势但仍保持在高位,总体来看本文所提算法计算时间小于传统UKF计算时间。

6 结语

本文研究了基于水声传感器网络的动态目标定位场景中降低网络能耗并提高定位精度的问题,提出了一种基于最大一致的最少Sigma点无迹Kalman 滤波算法。该算法以传统UKF 为基础采用UT方法以及最少Sigma 点集对其进行改进,减少了传感器计算量,并引入最大一致策略对传感器节点的测量信息进行融合,实现了测量信息的精确一致,提高了定位精度。仿真实验结果表明,在对目标位置进行估计时,本文所提算法所得轨迹与目标真实轨迹重合度更高且偏差整体水平更小,在提升定位精度的同时减小了计算时间,降低了传感器网络能耗,验证了本文所提改进算法的有效性与实用性。

猜你喜欢

无迹滤波噪声
噪声可退化且依赖于状态和分布的平均场博弈
无迹卡尔曼滤波在电线积冰观测数据处理中的应用
控制噪声有妙法
基于无迹卡尔曼滤波的行波波头辨识
应用RB无迹卡尔曼滤波组合导航提高GPS重获信号后的导航精度
RTS平滑滤波在事后姿态确定中的应用
基于线性正则变换的 LMS 自适应滤波
一种基于白噪声响应的随机载荷谱识别方法
车内噪声传递率建模及计算
基于随机加权估计的Sage自适应滤波及其在导航中的应用