APP下载

一种基于双向GRU的UAV飞行轨迹预测方法

2022-03-17张宗腾汪文峰

电光与控制 2022年3期
关键词:双向轨迹神经网络

张宗腾,张 琳,汪文峰,滕 飞,张 搏

(1.空军工程大学防空反导学院,西安 710000;2.中国人民解放军95835部队,新疆 马兰 741000)

0 引言

随着无人机(UAV)在军事领域的应用拓展,其实际作战效果在近期亚阿冲突中也得以显现。为有效应对UAV所带来的威胁,利用已知历史位置数据实现其飞行轨迹的精准高效预测,对于打赢未来智能信息化战争具有重要意义。

为提升飞行轨迹的预测精度,国内外学者进行了大量的研究。文献[1]提出了基于二阶马尔可夫链的轨迹预测模型,引入DBSCAN聚类算法使其轨迹特征获取的效率和质量得以提升,并实现了对多个时间间隔移动对象的位置预测;文献[2]利用遗传算法对运输机起飞上升和着陆下降段的轨迹预测模型进行改进,提升了模型预测精准度;文献[3]为解决轨迹预测的不确定性问题将高斯过程与贝叶斯模型相结合,并采用Cholesky分解算法减少模型运算量以满足预测实时性需求;文献[4]构建了基于Elman神经网络的空战轨迹预测模型,采用空战训练测量仪(ACMI)所记录数据加以验证,与传统粒子滤波算法相比,预测误差进一步缩小。这些研究虽然在一定程度上实现了飞行轨迹预测模型的构建和优化,但其目标数据集相对较小。随着监测飞行轨迹的数据量不断增加,建立大数据下的时序预测模型以提高飞行轨迹预测的准确性和稳定性仍是一个亟待解决的问题。

自从HINTON团队在2012年的ImageNet大赛中使用深度学习方法获得冠军以来,越来越多的学者开始关注和应用深度学习方法,并在自然语言处理、语音识别、图像理解等领域[5-8]取得突破性的成果。鉴于深度学习在处理时序、大数据方面的优势,一些学者也将其应用于轨迹预测领域。文献[9]利用长短时记忆(Long Short-Term Memory,LSTM)神经网络对现实场景中的行人运动轨迹进行预测,并实现了检测异常事件的功能;文献[10]提出一种基于深度学习的混合架构,将卷积神经网络(Convolutional Neural Network,CNN)与LSTM相结合,分别提取轨迹的空间、时间维度特征,以实现高精度的轨迹预测;文献[11]采用门控循环单元(Gated Recurrent Unit,GRU)建立船舶轨迹预测模型,由于GRU作为LSTM的一种变体且具有结构简单、参数少、训练时间短等特点,其预测效果优于LSTM。但是GRU只考虑序列中的正向信息,不考虑逆向信息,而在大多数情况下,考虑逆向信息可以提高模型的预测精度。

为此,本文提出了一种基于双向GRU的UAV飞行轨迹预测方法,可有效分析轨迹坐标点之间的潜在相互关联和影响,从而实现UAV轨迹的准确预测。

1 问题描述

针对UAV飞行轨迹预测问题,在实战环境中,其运动轨迹具有连续性和交互性特点,且在给定的时间范围内由一系列离散时序数据构成,并遵循一定的规律。在惯性坐标系OXYZ中,假设UAV飞行轨迹Tr由大量离散的经纬高三维坐标点组成,具体可表示为

(1)

式中:Tri为第i条UAV飞行轨迹;(xi j,yi j,zi j)为第i条UAV飞行轨迹在j时刻的坐标值;m为第i条UAV飞行轨迹所含轨迹点数量。

同时,假设UAV在X,Y,Z轴的运动是相互独立的,以X轴为例(Y,Z轴同理),其真实运动轨迹数据集为

X1={x1,x2,x3,…,xn}

(2)

式中,第i条轨迹xi={xi1,xi2,xi3,…,xim}。设UAV在X轴上预测得到的运动轨迹数据集为

(3)

(4)

式中,f为预测模型函数映射关系。

2 基于双向GRU的UAV飞行轨迹预测模型

2.1 门控循环单元

门控循环单元作为循环神经网络(Recurrent Neural Network,RNN)的变种,具有处理时间序列数据的“记忆”功能,它采用链式结构,将上一时刻的“记忆”状态和当前时刻的状态作为输入,通过内部循环单元获得新的网络输出。由于传统RNN在每个时间节点重复相同的操作,使其计算深度增大,并面临着梯度爆炸、梯度消失和无法处理长期依赖等问题。为解决这些问题,文献[12]在1997年提出了LSTM。与RNN相比,该网络同样具有链状结构,但是其神经元循环模块拥有更多的参数、结构更复杂且不容易收敛。为了克服LSTM的缺点,文献[13]在2014年将LSTM简化处理并提出了GRU(如图1所示),使其计算速度得到进一步提升。

图1 门控循环单元结构图Fig.1 Structure diagram of gated recurrent unit

在GRU中,主要通过更新门zt和重置门rt来控制和更新模型状态,即更新门zt决定前一时刻的状态信息被代入到当前状态中所占比重;重置门rt确定遗忘历史状态信息的程度,从而控制信息的流动以确保重要时序数据传递下去。其内部关系函数如下

rt=σ(Wrxt+Urht-1)

(5)

zt=σ(Wzxt+Uzht-1)

(6)

(7)

(8)

当重置门rt关闭并接近于0时,会忽略掉历史信息,可以更有效地捕获短期有价值信息;同时,如果更新门zt接近于1,会把历史信息传递下去,可以帮助GRU“记忆”长期信息。

2.2 双向GRU神经网络

典型的GRU结构通常沿序列传输方向进行单向传播,每次计算只与过去时刻信息相关。但在某些情况下,为了获取到更深层次的信息,需要在建立模型时考虑到未来时序数据的反馈,并利用该反馈信息对模型进行修正。因此,建立如图2所示的双向GRU神经网络,可进一步分析轨迹向量之间的相关性,更加准确、全面地提取运动特征。

图2 双向GRU结构图Fig.2 Structure diagram of bidirectional GRU

该模型的基本思想是:对于每个训练序列,分别在前向和后向建立两种循环神经网络模型,将两种模型的隐藏层节点连接到同一个输出层。这种数据处理方法可以为输出层输入序列中的每个时间点提供完整的历史和未来信息。在图2中,对每个GRU神经单元进行双向处理:GRU1为前向GRU;GRU2为后向GRU。

2.3 UAV飞行轨迹预测模型

UAV飞行轨迹数据是时变、非线性的且受多种因素影响,无法简单地用线性关系来表示和预测。但神经网络在预测复杂非线性时变序列方面具有明显的优势。因此,本文建立了基于双向GRU的UAV飞行轨迹预测模型,以预测UAV未来飞行变化趋势。

为保证预测结果的可信度和准确性,本文参考文献[4]设定采样时间间隔为0.25 s,取前8个轨迹点数据作为网络输入,预测输出第9个轨迹点坐标值;同时,文献[14-15]对比了三维坐标一次性预测和分开预测的精度,本文将采用3个结构相同的网络分别预测X,Y,Z轴坐标,并以此组合作为下一时刻UAV飞行预测位置。因此,以UAV飞行轨迹X1为例,其预测模型结构设计如图3所示。

图3 UAV飞行轨迹预测模型结构图Fig.3 Structure diagram of UAV trajectory prediction model

其主要步骤如下所述。

1) 获取训练数据。利用飞行动力学模型对UAV飞行轨迹进行仿真,对获取到的轨迹数据进行空间重构和归一化处理,构建输入样本用以训练预测模型。

2) 建立双向GRU网络模型。确定双向GRU网络结构,设置训练迭代次数、学习率等网络参数,并选取适当的激活函数、优化算法、损失函数等。

3) 训练双向GRU网络模型。依据所选的优化算法对网络模型参数进行优化,建立UAV飞行轨迹预测模型。

4) 预测UAV飞行轨迹。对预测输出数据反归一化处理,并利用评价函数对预测结果进行可视化分析和评价。

3 实验仿真与分析

本文实验仿真环境配置为:Windows7(64位)操作系统、Intel(R) Core(TM) i7-8750H 2.20 GHz处理器、16 GiB内存、4 GiB显存。同时,利用Python 3.7程序设计语言,以及Jupyter Notebook软件下的Tensorflow和Keras模型框架进行模型开发。

3.1 实验数据集

本文所使用的数据集来自UAV飞行动力学模型,并且在惯性坐标系OXYZ中,为简化问题复杂程度做出以下假设:1) 忽略地球曲率变化、公转、自转的影响;2) 使用推力、升力和滚转角等3个控制量来操控;3) 不考虑攻角和侧滑角影响;4)速度方向和机体方向近似重合。其动力学方程式为[16]

(9)

式中:(x,y,z)表示UAV飞行轨迹坐标;v,θ,φ,μ分别为UAV的飞行速度(标量)、航迹角、航向角、滚转角;g表示重力加速度,一般取9.8 m/s2;nx,nz分别表示UAV切向过载和法向过载。

同时,为提高模型预测准确度且最大限度地涵盖不同的空中飞行姿态,设置该三自由度仿真模型飞行速度v的取值区间为[30 m/s,100 m/s];航迹角θ的取值区间为[-40°,40°];滚转角μ的取值区间为[-45°,45°]。

由此,本文利用该仿真模型随机生成10段UAV飞行轨迹。其中:每段轨迹前2000个坐标点作为预测模型训练输入样本;后100个坐标点作为预测模型测试样本,以验证模型算法的有效性。并且在将飞行轨迹输入模型之前,需对数据做归一化处理,以提升模型预测准确率和稳定性,具体算式为

(10)

式中:Xmax,Xmin分别表示X轴坐标的最大值、最小值;SX表示X轴坐标的归一化值。Y,Z轴归一化方法同上。

3.2 模型参数确定

本文根据实验样本特点及预测时效性要求,选用双隐层的神经网络,以避免网络欠拟合、梯度消失或爆炸等问题,并达到较好的训练效果。其中,输入层节点数为8,输出层节点数为1,激活函数为ReLU,学习率为0.001。

为寻找到一组合适的参数使得损失函数最小,在基于梯度下降的传统优化算法中学习率一般保持不变,导致模型运算效率较低,因此本文采用了一种自适应学习率的Adamax优化算法。该算法为Adam算法的变种,其学习率的上限设置更为简单,具体算式为

(11)

式中:wt表示需要优化的参数;ft(wt)为目标函数;mt,Vt分别表示一阶和二阶动量;η为学习率;β1,β2表示超参数。

图4 不同训练次数下的训练误差Fig.4 Training error under different training times

图5 不同隐藏层神经元数量下的训练误差Fig.5 Training error under different numbers of hidden layer neurons

由图4可知,迭代次数等于15后,训练误差和验证误差基本稳定,因此设置迭代次数等于15可以满足模型预测要求。由图5可知,当隐藏层神经元数量为13时,网络的均方误差值最小,因此设置隐藏层神经元数量为13。

3.3 预测结果分析

根据所确立的模型参数和网络结构,建立基于双向GRU的UAV飞行轨迹预测模型。利用仿真随机生成10组轨迹数据检验模型的应用效果,具体实验预测结果如表1所示。由表1可知,在预测的10组数据中,X轴的预测平均绝对误差最小为0.88 m、最大为4.43 m;Y轴的预测平均绝对误差最小为0.97 m、最大为4.26 m;Z轴的预测平均绝对误差最小为0.91 m、最大为4.82 m。因此,本文所提方法可较好地解决UAV飞行轨迹预测精度问题。

表1 轨迹预测实验结果Table 1 Experimental results of trajectory prediction

同时,为进一步验证双向GRU的优势且更直观地表现预测结果,本文选取RNN和GRU神经网络模型,利用轨迹变化较频繁的轨迹7进行预测对比。其模型参数与双向GRU模型参数保持一致,具体预测结果如图6、图7所示。

图6 轨迹7预测结果Fig.6 Prediction results of Trajectory 7

图7 轨迹7模型预测误差和用时Fig.7 Prediction error and running time of Trajectory 7 model

从图6、图7(a)可看出,双向GRU模型在UAV飞行轨迹预测中,与RNN,GRU神经网络相比,其预测轨迹与原始轨迹重合度更高、预测误差更小,可较好地反映UAV飞行趋势。但由于X轴和Z轴曲线变化较剧烈,造成其预测效果劣于Y轴。

从图7(b)可看出,虽然双向GRU模型预测平均用时较长(耗时4.2 ms),但与另外两种方法预测平均用时相近,且UAV在此时间段内一般移动距离很短。因此,基于双向GRU的UAV飞行轨迹预测模型具有较好的时效性。

4 结束语

本文为解决UAV飞行轨迹预测问题,主要做了如下工作:1) 提出了一种基于双向GRU的UAV飞行轨迹预测方法,对运动轨迹时间序列进行预测;2) 利用UAV飞行动力学模型仿真所得到的运动轨迹,确定了预测模型网络结构,并与RNN和GRU模型相对比,双向GRU模型具有较好的预测效果且预测用时较短,具有一定的实际应用价值。在今后的工作中,将对双向GRU模型网络神经元权重的初始化做进一步的研究和优化,以达到更快的收敛速度及更好的预测稳定性。

猜你喜欢

双向轨迹神经网络
双向度的成长与自我实现
解析几何中的轨迹方程的常用求法
基于递归模糊神经网络的风电平滑控制策略
降低寄递成本需双向发力
用“双向宫排除法”解四宫数独
轨迹
轨迹
神经网络抑制无线通信干扰探究
基于神经网络的中小学生情感分析
完善刑事证据双向开示制度的思考