APP下载

Elman网络辅助SINS/GNSS组合导航方法研究

2022-12-16吴有龙白钲皓

弹箭与制导学报 2022年5期
关键词:卡尔曼滤波滤波神经网络

张 琨,程 玉,吴有龙,陈 帅,白钲皓

(南京理工大学自动化学院,南京 210094)

0 引言

基于微机电系统(micro-electro-mechanical system, MEMS)的捷联惯性导航(strap-down inertial navigation system, SINS)/全球定位(global navigation satellite system, GNSS)组合导航系统具有高可靠性、低功耗、小尺寸等特点,可为小型无人机、制导炸弹与车辆等提供低成本的导航方案[1]。然而GNSS接收机易受地形地物遮挡而无法正常工作[2]。组合导航系统进入纯惯导模式,由于MEMS惯性器件测量精度低,解算误差随时间积分累积,定位精度迅速下降。

在不增加其他导航传感器的前提下,为解决微惯性测量单元(miniature inertial measurement unit, MIMU)漂移导致的导航精度发散问题,文献[3]采用BP(back propagation)神经网络模拟GNSS的信息,进行信息融合。文献[4]采用径向基函数神经网络(radial basis function neural network, RBFNN),以IMU信息作为网络输入,Kalman滤波的误差估计作为网络输出。文献[5]采用RBFNN结合自适应卡尔曼滤波提高系统鲁棒性。文献[6]利用自适应神经模糊推理系统(adaptive network fuzzy inference system, ANFIS)对SINS误差特性进行建模。

然而上述网络均输入前馈式网络,网络输出仅由当前输入和权重决定,而与网络先前的输出结果无关,丢失了时间信息。文献[7]将MIMU当前时刻与前一时刻的信息作为网络输入,GNSS相邻时刻的增量作为网络输出,构建BP网络。文献[8]使用循环神经网络(recurrent neural network, RNN),构建SINS速度位置信息的时间序列样本,引入时间维度有效提高了SINS的精度。但RNN容易导致“梯度消失”和“梯度爆炸”现象。文献[9]结合了卷积神经网络和门控循环单元神经网络,从MIMU信号中提取空间特征并跟踪其时间特征。对姿态、比力、角速率和GNSS位置增量之间的关系进行建模。但网络层数复杂。

综上,文中提出一种基于Elman神经网络和自适应卡尔曼滤波的SINS/GNSS伪松组合导航方法,以MIMU输出的角速度、比力,惯性解算的姿态、速度信息作为网络输入,以GNSS在相邻时间段内的位置增量作为输出。利用Elman神经网络内部的一步延迟算子存储内部网络隐藏层状态,并反馈给网络输入,以达到记忆的目的。引入改进的自适应卡尔曼滤波(adaptive Kalman filter, AKF)减小滤波器估计不准确导致的累积误差以增强信息融合的鲁棒性。

1 SINS/GNSS松组合导航模型

SINS/GNSS松组合导航误差状态量共15个,定义为:

(1)

系统的状态方程[10]为:

(2)

式中:Maa,Mav,Map,Mvv,Mvp,Mpv,Mpp参数参考文献[10];O3表示3×3的0矩阵。

GNSS信号有效时,利用GNSS的信息对SINS解算的速度、位置信息进行补偿,量测向量Z定义为[11]:

(3)

式中:VSINS,PSINS分别为SINS解算的速度、位置;VGNSS,PGNSS分别为GNSS的速度、位置。

2 基于改进Elman的误差校正方法

2.1 改进Elman神经网络结构

Elman神经网络结构共4层:输入层、隐藏层(中间层)、承接层和输出层(见图1)[12]。

图1 Elman神经网络模型

传统的Elman网络中,承接层仅用来记忆隐藏层单元上一刻的输出值。当网络中存在异常离群输入时,此时承接层记录了错误的隐藏状态值,从而引入了部分预测误差。为提高网络的可靠性,改进的Elman结构中引入自反馈因子α,即当前承接层所含的信息不仅包含上一时刻隐藏层的信息,还包含上一时刻承接层的信息,增强了承接层的惯性与抗干扰能力,提高网络的鲁棒性。

改进的Elman网络承接层的数学模型为:

xc(k)=αxc(k-1)+(1-α)x(k-1)

(4)

式中:k代表时刻;xc(k)表示承接层k时刻的状态;x(k)表示隐藏层k时刻的状态;α为自反馈因子,取值范围为[0,1]。

Elman的隐藏层的激活函数选用sigmoid函数,输出层激活函数选用线性传输函数。

2.2 OSINS-ΔPGNSS预测模型

传统OSINS-δPSINS模型中,由于MIMU本身存在测量误差,导致SINS解算误差发散,以SINS和GNSS位置误差作为真值来训练,网络真值标签引入SINS误差项,存在一定缺陷。为此选用改进的OSINS-ΔPGNSS预测模型,以GNSS相邻时间段内的位置增量为训练目标,不仅提高了训练标签的质量,也方便了后续数据的归一化处理。

根据比力方程[10]得知,在时间间隔t范围内,惯性解算的位置增量ΔPSINS为:

(5)

图2 改进的Elman辅助组合导航系统框图

如图2中向下的黑色虚线所示,GNSS失锁时,Elman预测得到当前时刻的位置增量,通过积分操作,累计得到预测位置信息,继续提供修正量保证组合导航不间断进行,抑制纯惯性导航的发散。

2.3 自适应卡尔曼滤波模型构建

Elman网络的预测精度直接影响后续的滤波估计,且GNSS伪位置的协方差不可知,采用传统的卡尔曼滤波算法可能会导致滤波发散[14]。Sage-Husa自适应滤波对过程噪声Q和量测噪声R的递推更新中,难以保证Q,R的半正定性和正定性[15]。

为此构建一种基于新息序列的自适应因子,通过适当提高系统先验预测协方差,在观测噪声变化的情况下,保证滤波增益的稳定性,提高滤波器的跟踪能力,当网络出现异常预测时,降低此次估计误差的影响,提高系统鲁棒性。

设系统的状态空间模型为[10]:

(6)

系统新息的估计误差及其理论值分别为[16]:

(7)

定义系统预测误差指标为:

(8)

分析可知,系统正常工作时,估计误差与理论值接近,Δuk≈1,当系统存在离群观测值时,此时系统新息序列的估计误差rk较大,Δuk较大,可能导致滤波器的发散。通过构造自适应因子,提高系统估计协方差矩阵P,加强滤波器的跟踪能力。

构造的自适应因子为:

在不考虑阻尼的情况下,在式(58)中令右边项为零,同时令那么可以得到一个以ω为特征值为特征向量的特征值问题,即

(9)

式中,c为常量,取值范围为1~1.5。

选取arccsc函数,该函数正区间值域为[0,π/2],呈单调递减趋势,当c位于1.5时,λk≈1正好与其边界值对应。

基于自适应因子改进的滤波预测过程为:

(10)

与KF相比,AKF在实际复杂环境中具有对系统初始信息较低的灵敏度、对实际状态具有较强的鲁棒性等优点,使其既能抑制线性误差,又能有效抑制随机误差。

3 实验与结果分析

3.1 实验设备与条件

通过车载实验对提出的算法进行验证,实验平台如图3所示,实验MIMU选取MSI3200G,其更新率为200 Hz,主要性能指标如表1所示。参考系统选择Novatel公司的SPAN-KVH1750,其水平速度、位置精度分别为0.02 m/s和1 m;垂直速度、位置精度分别为0.01 m/s和0.6 m;利用参考系统1 Hz的位置信息作为GNSS训练值。

图3 实验设备图

表1 实验系统性能指标

跑车地点选择南京市玄武区,沿绕城高速行驶1 500 s左右,跑车实际运动轨迹如图4所示。系统开始工作在SINS/GNSS松组合模式,800 s处断开GNSS信息。利用断开前500 s的数据训练神经网络;GNSS失锁后,系统通过Elman辅助惯性导航提升导航性能。

图4 跑车运动轨迹

为提高网络的预测精度,避免训练过程的参数的交叉耦合,采用双网络并行结构,分别对纬度、经度进行预测。

考虑到两传感器数据异步问题:MIMU数据、速度、姿态角等SINS信息为200 Hz,GNSS增量信息为1 Hz,1 s内对应的惯性数据量十分庞大,且信息冗余度高,训练时将1 s内惯性数据按每10组间隔选取,构建训练样本。输入层的特征维度很大,隐藏层的神经元个数选择60,训练方式采用trainscg。

3.2 不同算法对比分析结果

为验证所提算法的可行之处,以参考系统的组合数据为基准,对比SINS,BP+KF,Elman+AKF在GNSS信号失锁时间内的定位精度。

图5~图8为GNSS失锁期间的速度、位置误差,从图中可知,Elman+AKF辅助的组合导航系统在GNSS信号失锁时间段内,误差优于SINS和BP+KF。在对惯性传感器误差补偿后,卫星导航信号失锁180 s内,SINS解算误差迅速发散,东向的速度、位置最大误差分别为0.48 m/s和70 m;北向的速度、位置最大误差分别为0.85 m/s和75 m。

图5 东向速度误差

图6 北向速度误差

图7 东向位置误差

图8 北向位置误差

BP+KF在东向的抑制效果相对北向效果较好,整体对纯惯导的解算误差有一定的抑制效果,Elman+AKF的收敛效果更为显著,其东向的速度、位置最大误差分别为0.28 m/s和23 m;北向的速度、位置最大误差分别为0.41 m/s和30 m。主要是Elman预测值还引入上一时刻的隐藏状态,同时,AKF根据系统新息的比重变化动态调整系统噪声,进而调整滤波增益,在网络预测误差累计较大时,降低该观测的比重,提高滤波的稳定性,抑制导航误差快速发散。

表2更直观地表明,BP+KF以及Elman+AKF辅助的组合导航系统在卫导信号中断的情况下与纯惯导系统相比较,在导航性能方面均有提高,通过实验数据进一步验证,Elman+AKF的预测效果更优,北向速度、位置相较于纯惯导精度分别提高了34%和46%,东向速度、位置精度分别提高了46%和53%。

表2 位置和速度误差的统计特性对比

4 结束语

提出一种基于改进Elman神经网络和自适应卡尔曼滤波的SINS/GNSS伪松组合导航方法,利用Elman内部的一步延迟算子存储隐藏层状态,并反馈给网络输入,以达到记忆的目的。根据系统预测残差,构造自适应因子实时调整先验预测协方差。在GNSS失锁后抑制了惯性导航误差的快速发散,有效提高了纯惯导的定位精度。

猜你喜欢

卡尔曼滤波滤波神经网络
神经网络抑制无线通信干扰探究
基于神经网络的中小学生情感分析
卡尔曼滤波在信号跟踪系统伺服控制中的应用设计
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
基于序贯卡尔曼滤波的OCT信号处理方法研究
基于神经网络的拉矫机控制模型建立
基于模糊卡尔曼滤波算法的动力电池SOC估计
基于自适应Kalman滤波的改进PSO算法
RTS平滑滤波在事后姿态确定中的应用
基于线性正则变换的 LMS 自适应滤波