?

基于卷積神經網絡與長短期記憶神經網絡的彈丸軌跡預測

2023-11-27 02:15鄭志偉管雪元傅健馬訓窮尹上
兵工學報 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控制的二維彈道修正彈仿真
消除彈道跟蹤數據中伺服系統的振顫干擾
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合