主动声呐目标实时航迹解算算法仿真研究
2018-12-20高貂林徐娜侯晓迁
高貂林,徐娜,侯晓迁
(海鹰企业集团有限责任公司,江苏 无锡 214061)
0 引言
航向航速是海上目标的重要特征,能准确获取目标的航向航速信息对于海上目标的跟踪和识别具有非常重要的意义。目标的航向航速解算方法已得到广泛的研究[1-4],特别是利用发射周期内收到的跟踪信息对目标航向航速解算的方法研究较多,而对每一秒目标航向航速的解算研究较少。由于航迹解算的过程中需要用到目标的方位、距离,声呐检测到的目标方位、距离越精确,航迹解算误差就越小。主动声呐是声呐自主发射声信号,并通过检测目标发射回波精确获取目标的方位及距离,而被动声呐往往只能获取目标的方位,无法获取目标距离,因此,本文只研究主动声呐目标实时航迹解算算法的仿真。由于水中声速较低,主动声呐的发射周期往往需要花费几秒甚至几十秒的时间,而主动声呐对目标的搜索、跟踪等处理都是按发射周期进行的,目标信息刷新率较低。且在实际情况中,目标航向航速的解算是较为复杂的过程,本舰与目标的运动轨迹除受声呐自身固有的探测误差影响外,还受到海况和水流等诸多外在因素的影响,这些因素都会导致本舰与目标在某时刻偏离其预定运动轨迹,会使滤波器发散,导致航迹解算误差增大。
针对上述目标实时航向航速解算的困难,本文提出一种采用无迹卡尔曼滤波(UKF)与野值剔除相结合的方法来预测目标每一秒的位置信息,进而解算出目标每一秒的航向航速,相较于传统的无迹卡尔曼滤波方法[5]和已有的抗野值卡尔曼滤波方法[6-9],提高了滤波精度和目标信息刷新率,达到提高系统目指解算效率,缩短系统反应时间的目的。
1 目标航迹解算算法
目标航迹解算算法是根据声呐设备以扫描周期为间隔输出的目标舷角、与本舰距离信息作为参考信息来预测目标在未来每一秒的方位、距离、航向和航速等信息。其解算过程分为3个部分:一是采用卡尔曼滤波器预测目标每一秒的位置信息;二是野值的判断、剔除;三是利用预测目标的位置信息解算出目标的航速和航向信息。算法基本流程如图1所示。由于目标航迹解算算法的计算间隔为1 s,与声呐的扫描时间间隔不相等。因此,在进入滤波算法之前需要判断算法的输入值,如果当前时刻有声呐设备输出的目标最新方位、距离信息,则将其作为算法的输入值,用来消除上一时刻目标航迹解算的误差,校正目标的准确位置;如果当前时刻无声呐设备输出的目标最新方位、距离信息,则使用上一时刻(前1 s)的预测值作为航迹解算算法的输入值。
1.1 无迹卡尔曼滤波(UKF)
(1)
(2)
式中:λ为控制参数,且有λ=α2(m+k)-m;α通常取为小的正值;β描述x的分布信息,对于高斯噪声来说,β最优值为2。
通过z=f(x)对上述2n+1个西格玛点进行非线性变换,并计算的均值和协方差,可得:
xi=f(ξi)i=0,1,…,2m
(3)
(4)
(5)
由此可见,非线性函数的均值估计和方差估计可以通过UT变换实现,来得到状态估计。
以式(5)作为非线性系统模型,则基于UT变换的UKF算法过程如下:
1)初始化。
(6)
(7)
2)计算Sigma样点即选取UT变换的变量。
(8)
3)时间更新。
xk丨k-1=f(xk-1,wk-1)
(9)
(10)
(11)
yk丨k-1=h(xi,k丨k-1)
(12)
(13)
4)测量更新。
(14)
(15)
(16)
(17)
(18)
1.2 野值判断、剔除
实际系统中,信号除了带有随机误差外,还会混入特定干扰信号。如果干扰信号动态分布特性接近随机误差分布特性,一般可以等同于随机误差,不会对滤波造成较大的影响,并能被有效滤除。如果干扰信号动态分布特性明显异于随机误差,超过了允许范围,使得测量值受到较大干扰,无法较为准确地表达目标可能的位置信息,此时的测量值可认为是野值。野值导致较大的测量误差,甚至可以使得滤波过程发散、计算溢出等。因此,在收到测量值进入滤波处理之前,要对测量值进行合理性检验。合理的予以保留,不合理的判为野值予以滤除。由于滤波算法必须为等间隔采样,不能漏采数据,剔除野值后必须用一个合理的值来补充。通常采用一个估计值作为该时刻的测量值。
野值判断、剔除的方法很多,本文采用新息判别法。根据滤波系统新息统计特性的变化,能够动态检测测量数据中是否存在野值。当滤波器处于最佳状态时,新息序列为白噪声序列,均值为零。新增加的样本点所带来的新息以线性组合对UKF滤波估计产生影响,当样本点为正常时,新息会对滤波器估计值以滤波器的增益kk进行正确的修正,滤波器处于最佳状态;当样本点为野值时,新息也以滤波器的增益kk对当前值进行错误的“修正”,此时的新息严重偏离白噪声,滤波器工作在非最佳状态,可能造成滤波发散。野值判别、剔除处理过程如下:
1)野值判断。
令新息:
(19)
当滤波器稳定时,新息的标准偏差为σ,且:
σ=
(20)
可以给出观测值yk的每一个分量是否为野值的定义及辨识方法。判别式子为
丨(ek)i丨≤Cσi,i
(21)
式中:σi,i为新息标准偏差对角线上的第i个元素;(ek)i为ek的第i个分量;C一般取3或者4。如果式(21)成立,则可认为(yk)i为正常观测量,反之,则认为(yk)i为野值。该判别方法的特点是计算量小,便于实时在线处理。更为重要的是,通过该方法可以清楚地判明观测值中的哪些分量超出了极限误差,从而可以有针对地改进事先假定的目标运动状态模型、噪声统计特性模型等,达到提高滤波精度的目的。
2)野值剔除。
1.3 求解目标航向航速
声呐载体(舰船)配备有GPS和惯性导航系统,能实时得到声呐载体自身的地理坐标及对地航向航速。结合卡尔曼滤波器输出的每一秒目标相对声呐载体的位置信息Mk(Rk,αk),可推导出目标每一秒的地理坐标,经过一段时间的对目标的持续观测可以估计出目标的绝对航向和航速。
2 算法仿真
假设声呐扫描周期为10 s,预测周期为1 s,目标做匀速直线运动。按照目标航迹解算算法的基本流程(图1),利用MATLAB软件进行算法仿真验证。
在仿真中,设定目标做匀速直线运动,初始方位为45°,初始距离为6 000 m,距离测量值加入均值为0、标准差为160 m的白噪声,方位测量值加入均值为0,标准差为1.7°的白噪声以模拟声呐实际探测误差。设定航速分别为4 kn、6 kn、8 kn、10 kn、12 kn,航向分别为45°、90°、135°、180°、225°,并在每条航迹中加入3个野值。以航速8 kn,航向45°的航迹为例,用本文方法解算出来的航迹图如图2所示。
各航路UKF算法趋于稳定后,计算目标航向、航速的二阶原点矩误差。其结果如图3、图4所示。
由图2可以看出,不加野值点剔除前,UKF滤波器虽然也可以收敛,但是,目标的运动轨迹会随着野值点的出现而发生变化,而加入野值点剔除后,目标的运动轨迹与目标的实际运动相一致,不会随着野值点的出现而发生变化。
由图3可以看出,目标航向与目标初始位置的夹角等于0或180°时,目标航向和航速的解算误差最小;随着目标航向与初始方位的夹角逐渐远离0时,目标航向和航速解算误差增大;靠近180°时,解算误差减小。随着目标航速的增加,目标航向的解算误差逐渐减小。造成这种现象的可能原因:当目标低速时,周期间的目标位置变化较小,此时目标位置的随机误差会对目标航向解算产生更大的影响。
由图4可以看出,随着目标航速、航向与初始位置的夹角的变化,目标航速解算误差无明显变化规律。
3 结束语
本文在实验室条件下,开展了基于UKF方法的目标航迹解算算法的理论仿真验证工作,给出了不同条件下的误差分析结果。设定本舰静止、目标匀速直线运动,通过距离上加入均值为0、标准差为160 m,方位上加入均值为0、标准差为1.7°的白噪声模拟声呐实际探测误差,并在仿真过程中随机加入了3个野值点。在声呐对目标稳定跟踪(目标距离不小于3 000 m)情况下,在目标航速不低于8 kn时,目标航向解算误差(二阶原点矩)在7°范围以内、航速解算误差(二阶原点矩)在1 kn以内。本文仿真过程未考虑目标的轨迹运动情况和跟踪稳定性差异等对解算结果的影响,后续需进一步验证本算法的可行性,并优化完善该算法。