APP下载

基于卷积神经网络与长短期记忆神经网络的弹丸轨迹预测

2023-11-27郑志伟管雪元傅健马训穷尹上

兵工学报 2023年10期
关键词:弹丸弹道轨迹

郑志伟, 管雪元*, 傅健, 马训穷, 尹上

(1.南京理工大学 瞬态物理国家重点实验室, 江苏 南京 210094; 2.南京理工大学 能源与动力工程学院, 江苏 南京 210094;3.上海航天电子技术研究所, 上海 201108)

0 引言

弹丸研制阶段的飞行实验中,常采用弹载黑匣子[1]或者弹载遥测系统[2]来获取弹丸的各项飞行参数,为弹丸性能的测试、改进以及评估提供数据支撑。弹载黑匣子需要在弹丸飞行结束后回收弹丸,这给实验增加了时间和人力成本,且在高过载发射环境或落地点不合适,常会发生黑匣子故障的情况,因此实验中采用弹载遥测技术获取飞行参数,是比较好的保存实验数据方式。但是,在遥测数据时,由于地球曲率以及无线信道中传输可能造成轨迹数据缺失,因此需要通过轨迹预测补齐缺失数据。

针对非线性轨迹预测问题,传统的方法有线性化模型和扩展卡尔曼滤波(EKF)理论。文献[3]通过线性化6自由度刚体弹道模型,得到了线性弹道模型,并在不同条件下进行了弹道仿真实验对比,结果表明线性弹道模型能满足工程精度要求。文献[4]通过蒙特卡洛法解算155 mm旋转弹的飞行弹道及落点,结果表明线性弹道模型可以更好地预测弹丸轨迹,但是线性化之后的6自由度弹道模型仍需获得较多的弹道参数,这增加了线性弹道模型预测的难度。文献[5]基于质点弹道模型建立了EKF参数辨识模型,并根据模型辨识出气动参数用于后续轨迹预测。线性化模型和EKF算法往往要根据不同的初始条件和目标类型预先建立复杂的动力学模型,且在适用场景上有诸多限制,难以满足不同环境下的轨迹预测的需求。针对上述问题,基于深度学习的轨迹预测方法可以通过大量的轨迹数据建立非线性轨迹预测模型。

随着计算机技术和人工智能的不断发展,深度学习逐渐被各行各业运用起来,目前,在图像处理、机器翻译、语音识别、人机游戏等各行各业都已取得丰硕成果[6-9]。同时,越来越多的研究人员将深度学习运用于轨迹预测,预测方法大多使用特殊的网络对历史轨迹进行学习,推断运动模型,进而预测未来轨迹。文献[10]采用长短期记忆(LSTM)神经网络预测四维运动轨迹,通过时间窗口和重复划分预处理轨迹数据,并使用1阶差分法消除轨迹的增长趋势,降低了预测的滞后性,但未考虑更多的气象、飞行规划等因素。文献[11]将卡尔曼滤波(KF)理论和LSTM神经网络结合预测飓风轨迹,通过 one-hot编码方式预处理数据,并对预测出的异常值进行了筛选,预测结果优于改进后的LSTM神经网络模型,但由于训练特征不足,预测误差还是很大。文献[12]针对飞行轨迹预测中稀疏路径和气道共享的问题,提出约束LSTM神经网络模型,实验证明所提模型优于传统的预测模型,但未考虑飞行航线严重偏离和紧急迫降的情况。文献[13]将卷积神经网络(CNN)运用于轨迹实时预测,改进无人作战飞机飞行动力学模型,通过模型仿真得到大量轨迹数据样本,并对不同结构的网络模型进行轨迹预测实验得到最优模型,结果表明CNN模型的轨迹预测能力较LSTM神经网络模型和循环神经网络(RNN)模型更好,但是对于横偏方向的预测精度较低。文献[14]提出了一种基于注意力机制的多信息融合卷积神经网络(MI-CNN),相较于传统的基于LSTM神经网络行人轨迹预测,提高了预测精度和效率,但对于交汇和复杂道路上行人轨迹的预测效果一般。文献[15]提出深度前馈神经网络(DNN)和LSTM神经网络的混合模型,利用DNN预测精度高和LSTM神经网络预测范围广的特点,提高了飞行轨迹预测精度和民航飞行的安全性,但是未将一些隐性的特征纳入模型训练,例如天气因素等。文献[16]提出CNN和LSTM神经网络结合的车辆轨迹预测模型,采用网格搜索算法优化模型的超参数并与门控循环单元(GRU)神经网络模型、LSTM神经网络模型和CNN模型对比,证明了所提模型的优越性,但是在处理多车信息时仍然不足。文献[17]提出一维卷积神经网络(1DCNN)和LSTM神经网络结合的航空轨迹预测模型,有效地提取了轨迹的时空特征。相较于单一的BP神经网络模型和LSTM神经网络模型有更好的预测精度和更短的预测时间,但是所提模型只能短期预测目标,且训练数据来源于同一条航线上,应用范围有限。

本文的具体工作包括:选取6自由度弹道模型并通过弹道仿真得到大量弹丸飞行轨迹样本;通过1阶差分和滑动窗法预处理数据;设计并训练CNN-LSTM模型直到模型预测精度满足要求为止;将所提模型与LSTM模型、GRU模型以及BP模型在同一数据集下做轨迹预测实验;由评价指标对4种模型的预测结果进行评估,得出结论。

1 目标数学模型及轨迹数据库建立

基于深度学习的弹丸轨迹预测需要大量的轨迹观测数据,但是真实弹丸飞行数据较少且难以大量获得,因此需要先建立一个仿真弹丸轨迹数据集。在研究弹丸飞行轨迹时,采用非线性6自由度弹道模型,它是描述弹丸空中运动最常用的方法。当所有的气动力、气动力矩和初始条件都给定时,它能准确地描述旋转稳定弹和非旋转稳定弹的弹道和飞行动力学现象[18]。

1.1 非线性6自由度弹道模型

非线性6自由度弹道模型[19]由12个非线性微分方程组成,分别为位置变量(x,y,z)、姿态角(φ,γ,φ)、弹体速度(u,v,w)和弹体转速(p,q,r),x、y、z分别是地面坐标系下弹丸位置的3个分量,φ、γ、φ分别为滚转角、俯仰角和偏航角,u、v、w分别为速度在弹体坐标系下的3个分量,u为速度的轴向分量,v和w为侧向分量,p、q、r分别为弹体坐标系下弹丸转速的3个分量。为降低问题复杂度,不考虑地球曲率的变化,将地面坐标系设为惯性坐标系,并在地面坐标系建立其运动方程组:

(1)

(2)

(3)

(4)

式中:Fx、Fy、Fz分别为弹丸在弹道坐标系下沿x轴、y轴和z轴的气动力分量;m为弹丸质量;g为重力加速度;I为惯性矩阵;Mx、My、Mz分别为弹丸在弹体坐标系下沿x轴、y轴和z轴的气动力矩的3个分量。相关坐标系的定义与力和力矩的定义见文献[19]。

1.2 数据集的建立

由1.1节中6自由度非线性弹道方程组,采用四阶龙格库塔法求解,设定解算步长为0.01 s,通过不同的射角和速度解算得到多组弹道,以构建大量训练样本,建立轨迹数据集。若弹丸真实轨迹与数据集中的轨迹相似度高,则轨迹预测精度高。该方法的优点是训练出的网络具有一定的通用性,可用于不同弹种的弹道预测。本文仅以155 mm弹丸为例进行预测(弹体结构参数见文献[20]),分析 155 mm弹丸结构特征数的分布特性。外弹道仿真所需的气动参数由牛顿迭代法[21]辨识真实弹丸飞行实验中的遥测数据得到。

为了使训练集尽可能覆盖弹丸出现的轨迹,设定弹道仿真实验初始速度和发射角如表1所示,同时设定初始滚转角φ=0°,初始偏航角φ=0°,弹丸初始射程x=0 m,初始高度y=0 m,初始横偏z=0 m。 弹丸初始转速q=0 rad/s、r=0 rad/s,弹丸初始轴向转速nx可以由初始速度得出,如式(5)所示:

(5)

式中:v0为初始速度;η为炮管缠度,η=20;D为弹径,D=0.155 m。

表1 弹丸轨迹采样参数Table 1 Sampling parameters of projectile trajectory

表1显示了外弹道仿真初始速度和发射角参数的设置,由表1可知,通过不同的射角和初始速度共得到744条不同的轨迹。在实际中弹丸飞行实验中,位置信息和速度信息较容易获得,因此将各条轨迹的时间、射程、高度、横偏以及速度数据保存形成轨迹数据库。仿真轨迹如图1所示,图1中曲线的发射角为40°,初始速度为900 m/s。

图1 仿真轨迹Fig.1 Simulated trajectories

2 CNN-LSTM弹丸轨迹预测模型

2.1 CNN简介

CNN是由Lecun等[22]提出的具有深度结构的前馈神经网络,其总体结构如图2所示。

图2 CNN总体结构Fig.2 Overall CNN structure

图2中,CNN由卷积层、池化层和全连接层组成。CNN的核心是卷积层的卷积计算,它充分利用数据矩阵相邻区域的信息,通过卷积核的权值共享和稀疏连接,大大缩减了模型参数的数量。在CNN中,一维卷积可以提取序列数据的空间特征,常用于处理序列数据、自然语言等。

池化层也称作采样层,它通过获取池化窗口的最大值或者平均值创建新的特征映射,实现了特征压缩,并在一定程度上可以避免过拟合,提高网络的抗干扰能力。池化窗口的的长度设置与步长相同,因为在每个池化步骤中,池化窗口都不能重叠。最后,将提取出的抽象特征通过全连接层合并、激活函数输出。

2.2 LSTM神经网络简介

LSTM神经网络由RNN进化而来,于1997年由Hochreiter等[23]引入,它通过添加了一个记忆神经元来存储长期状态,并且该神经元可以决定哪些状态被遗忘或者保留,从而解决RNN梯度消失或者梯度爆炸的问题。LSTM神经单元结构如图3所示。

图3 LSTM神经单元结构Fig.3 LSTM neural unit structure

图3中,LSTM的输入由上一时刻网络的输出ht-1和上一时刻存储单元的状态值Ct-1以及当前时刻网络的输入xt组成;LSTM的输出由当前时刻存储单元的状态值Ct和当前时刻网络的输出ht组成;ft、it、ot分别为遗忘门、输入门和输出门。LSTM的更新可分为以下步骤:

首先,ft决定从Ct-1中遗忘什么信息,用于控制历史信息对存储单元状态值的影响,计算公式如下:

ft=σ(Wf·[ht-1,xt]+bf)

(6)

式中:σ为sigmoid激活函数;Wf和bf分别为遗忘门权重矩阵和偏置矩阵。

其次,it决定什么信息被保留在Ct中,用于控制当前输入对存储单元状态值的影响,计算公式如下:

it=σ(Wi·[ht-1,xt]+bi)

(7)

式中:Wi和bi分别为输入门权重矩阵和偏置矩阵。

再次,将ft与it相结合,在决定要遗忘和保留的信息后,更新存储单元,并计算Ct,计算公式如下:

(8)

(9)

最后,由ot控制Ct传到ht,计算公式如下:

ot=σ(Wo·[ht-1,xt]+bo)

(10)

ht=ot·tanh (Ct)

(11)

式中:Wo和bo分别为输出门的权重矩阵和偏置矩阵。

2.3 CNN-LSTM轨迹预测模型

CNN更适合于空间扩展,可以有效地提取轨迹数据的空间维数特征,而LSTM具有长短期记忆功能,可以用于处理时间序列数据。结合CNN和LSTM二者的优点,提出了一个能有效挖掘数据时空特征的CNN-LSTM轨迹预测模型。

CNN-LSTM轨迹预测模型的参数如表2所示,其中None表示批处理大小。模型的核心是一维CNN和LSTM神经网络。在轨迹预测模型中,采用两层相同的一维卷积来提取数据的空间维数特征。在每层CNN中,卷积核数量为10,长度为2,激活函数为Relu,padding方式为valid。池化层采用最大池化的方式,池化窗口长度为2。之后,将处理后的数据发送至LSTM模块。在此模块中,采用两层输出神经元数均为30的LSTM挖掘数据的时间维数特征,第1层LSTM将return_sequences参数置为True,第2层为False。每层LSTM增加Dropout层来防止网络过拟合。最后,将CNN和LSTM处理后的数据经全连接层(Dence)处理后输出。

表2 CNN-LSTM模型参数Table 2 CNN-LSTM model parameters

3 轨迹预测仿真实验

仿真实验基于Python语言和Pycharm平台以及Tensor Flow的Kears框架,实验全程使用NVIDIA GeForce RTX 3060显卡进行网络训练。轨迹预测仿真实验的整个过程如图4所示。

图4 轨迹预测的实验流程Fig.4 Experimental flow of trajectory prediction

图4中,轨迹数据使用1.2节中6自由度弹道仿真实验得到744条弹道轨迹,对轨迹数据进行预处理之后,选取其中的700条轨迹作为训练集,剩余44条轨迹作为测试集,并从训练集中选取70条轨迹作为验证集。区别于静态、离线的模型训练方式,通过误差判别机制和模型训练相结合动态地调整模型参数的权重。首先,将训练集输入网络进行训练,然后使用所得模型对验证集进行预测,并计算预测值与实际值的误差。如果误差不满足误差判别机制的要求,则继续训练网络直至满足要求为止。最后,使用满足要求的模型对测试集进行预测。

3.1 数据预处理与评价指标选取

为了消除数据的增长趋势同时降低模型预测的滞后性,对原始轨迹数据采用1阶差分的方式:

Δft=f(t+1)-f(t)

(12)

式中:Δft表示f(t)在t时刻的1阶差分;f(t)分别表示t时刻x、y、z、v的值。

弹丸轨迹预测是一个有监督的学习问题,需要将轨迹数据分为训练样本和标签。下一步以单步预测为例,介绍样本的构造方法,如图5所示。

图5 监督样本构造Fig.5 Structurally supervised sample

图5中,表格的行表示时间步长,列表示训练特征。从第1个轨迹点开始,按时间顺序向下走,选择前10个时刻射程、高度、横偏、速度的1阶差分信息为训练样本1,预测下一个时刻(图中标签1)中射程、高度和横偏的差分信息,可以得到每个训练样本的尺寸大小是10×4,而每个标签的尺寸大小为1×3。之后,从第2个轨迹点开始,采用相同的方法来选择训练样本。

轨迹数据在进入模型之前需要进行归一化处理,归一化公式为

(13)

式中:un为经过归一化的数据样本;u为原始数据样本;umax为样本中的最大值;umin为样本中的最小值。

使用平均绝对误差(MAE)来评估CNN-LSTM轨迹预测模型的有效性。评价指标计算公式如下:

(14)

式中:n为总时间点数;Pi表示时刻i的预测轨迹;Ri表示时刻i的实际轨迹。MAE的值越小,表示预测的轨迹与实际的轨迹越接近,模型的预测精度越高。

3.2 对比模型的结构参数

对比模型的结构参数如表3所示,其中分别列出了LSTM模型、GRU模型、BP模型的结构参数(LSTM模型分别由两层神经元数量均为50的LSTM层组成,并在每层LSTM后增加Dropout层防止模型过拟合,GRU模型和BP模型的结构类似)。

表3 对比模型的结构参数Table 3 Comparison of structural parameters of different models

3.3 各模型预测结果分析

实验采用BP模型、LSTM模型、GRU模型和CNN-LSTM模型在同一数据集上进行了轨迹预测实验。4个模型在训练时均使用自适应估计(Adam)优化器,使用均方误差(MSE)损失函数。

图6 轨迹的1阶差分预测Fig.6 Prediction of first-order deflection of trajectories

从测试集中选择一条完整的轨迹曲线,得出各模型的单步预测结果,如图6所示。图6(a)、图6(b)、图6(c) 3图分别为射程、高度、横偏的1阶差分预测结果。从图6(a)、图6(b)和图6(c)中可以看出4个模型的预测轨迹和实际轨迹保持相同的趋势,CNN-LSTM模型的曲线最贴合实际轨迹,LSTM和GRU模型次之,BP模型预测精度最差。

4个模型的MAE预测指标如图7和表4所示。图7中不同特征的MAE指标是由反差分后的预测结果和实际值通过式(14)得到,表4中的不同模型的综合MAE值为该模型下不同特征MAE值的均值。图7中,4个模型的MAE指标均小于0.1 m,表明数据差分处理后确实能降低预测滞后性。

图7 各特征的MAE指标Fig.7 MAE indicators for each feature

表4 模型评估参数

CNN-LSTM模型对于射程和高度的预测精度最高,两特征的MAE指标分别为0.029 3 m和 0.042 8 m。对于横偏的预测,LSTM模型的精度最高,横偏MAE指标达到了0.001 0 m。表4展示了不同模型的综合MAE指标,CNN-LSTM模型的平均预测误差最低,仅为0.025 2 m,BP模型的预测误差远高于LSTM和GRU模型,说明LSTM和GRU模型更适合处理序列数据。

3.4 在线预测与误差分析

采用训练好的模型进行轨迹在线预测时,使用过去10个点的信息预测当前点的信息。然后,使用预测点的前9个点和预测点作为输入预测新的轨迹点,迭代直到最终满足要求为止。实验方法是从一条轨迹中平均地选取10次输入输出,每次输入 10个轨迹点,预测接下来的100和300个轨迹点,由于轨迹点的采样时间是0.01 s,即预测接下来1 s和 3 s的轨迹。之后通过预测结果与实际轨迹计算误差得出MAE指标。两种情况下各个模型的累计预测平均误差如图8和表5所示。从图8(a)和表5中可知,CNN-LSTM模型对于射程和高度的平均预测误差最低,分别为3.54 m和4.58 m,综合MAE为2.814 m。图8(b)中,由于累计误差随时间点数从 1 s增长到3 s而逐渐增加,CNN-LSTM模型对于射程、高度和横偏的平均绝对预测误差分别增长为14.83 m、20.77 m和0.75 m,综合误差为12.116 m,仍然满足精度要求。

图8 累计预测误差Fig.8 Cumulative prediction errors

表5 累计预测综合评估

4 结论

本文针对弹丸轨迹预测问题建立弹丸运动模型与弹丸轨迹数据库,提出CNN-LSTM轨迹预测模型,并将所提模型与LSTM模型、GRU模型、BP模型在同一数据集下进行轨迹预测实验。通过实验结果得出以下主要结论:

1) 相对于LSTM模型、GRU模型、BP模型,CNN-LSTM模型的平均预测误差仅为0.025 2 m,低于其他3种模型,表明CNN-LSTM模型能更准确地预测弹丸飞行轨迹。

2) 各个模型对于横偏方向的预测精度最高,CNN-LSTM模型、LSTM模型、GRU模型、BP模型在横偏方向的平均绝对误差值分别为0.001 8 m、0.001 1 m、0.001 0 m和0.008 5 m。

3) 相对于BP模型,LSTM和GRU模型的预测误差较小,更适合处理序列数据预测问题,并且在样本量较少的情况下,GRU模型的预测精度更高。

4) CNN-LSTM模型对1 s和3 s内的平均累计预测误差分别在4 m和15 m以内,能够满足预测精度要求。

由于累计预测误差随着时间点数增长而增大,可以考虑对原始数据降采样,降低预测点数,提高预测精度。

猜你喜欢

弹丸弹道轨迹
超高速撞击下球形弹丸破碎特性仿真研究
弹道——打胜仗的奥秘
神秘的『弹丸』
轨迹
轨迹
一维弹道修正弹无线通信系统研制
轨迹
进化的轨迹(一)——进化,无尽的适应
基于PID控制的二维弹道修正弹仿真
消除弹道跟踪数据中伺服系统的振颤干扰