付茂洺,陳紀(jì)宗
(中國民用航空飛行學(xué)院,廣漢 618307)
互聯(lián)網(wǎng)的高速發(fā)展,也對民航空中交通管理系統(tǒng)的智能化提出的新要求。歐洲和美國的SERSAR和NextGen均采用了基于航跡(trajectory based operation,TBO)的運行理念。該模式下通過飛機(jī)飛行時間和軌跡的準(zhǔn)確預(yù)測,有效降低飛行航路的不確定性,同時提高航空運行的安全,以及在飛機(jī)出現(xiàn)故障時計算有效的故障發(fā)生時間和可能進(jìn)行迫降的地點,對后續(xù)救援工作提供有力的幫助。
國內(nèi)外學(xué)者對航跡預(yù)測的研究方法主要有:
基于參數(shù)估計的方法,該類方法需要獲取飛機(jī)在飛行過程中的各類數(shù)據(jù)。文獻(xiàn)[1]通過仿真實驗?zāi)P蛯︼w行階段的軌跡特征生成4D飛行軌跡。文獻(xiàn)[2]提出基于飛行時間、耗油量等指標(biāo)構(gòu)建預(yù)測模型,實驗結(jié)果表明可以提升TBO的魯棒性。雖然對航跡預(yù)測做出了重要貢獻(xiàn),但大多數(shù)研究都是在理想情況下實現(xiàn),很少考慮現(xiàn)實環(huán)境對飛行軌跡的影響。此外,大量參數(shù)數(shù)據(jù)也都大多涉及商業(yè)隱私性,不易獲取,一旦數(shù)據(jù)出現(xiàn)不完整,預(yù)測精度將大打折扣。
為了解決上述問題,基于無參數(shù)估計方法應(yīng)運而生,該類方法是建立在假設(shè)情況下的預(yù)測方法。文獻(xiàn)[3]提出直接根據(jù)目標(biāo)機(jī)的歷史位置預(yù)測未來位置。文獻(xiàn)[4]提出MIEKF有效減少預(yù)測模型的誤差,提高預(yù)測系統(tǒng)的魯棒性,以及穩(wěn)定性和實時性。文獻(xiàn)[5]提出基于混合方法的軌跡預(yù)測,對歷史軌跡數(shù)據(jù)分析建模,在保證準(zhǔn)確性的基礎(chǔ)上保持長期穩(wěn)定性。無參數(shù)模型需要大量的建模分析,但內(nèi)部網(wǎng)絡(luò)結(jié)構(gòu)相對簡單,因此可能導(dǎo)致模型的魯棒性不足,如果數(shù)據(jù)中存在冗雜數(shù)據(jù)可能會對預(yù)測結(jié)果影響較大。
本文在現(xiàn)有的經(jīng)緯軌跡數(shù)據(jù)基礎(chǔ)上,以LSTM模型為主體,通過學(xué)習(xí)歷史軌跡與下個位置之間的關(guān)系,建立深度學(xué)習(xí)模型,從而預(yù)測將來可能出現(xiàn)的位置。可用于解決空域沖突、緊急救援等,本文使用的數(shù)據(jù)是來自某機(jī)場交通管理系統(tǒng)中某航班從國內(nèi)機(jī)場A到國內(nèi)機(jī)場B的歷史飛行數(shù)據(jù)。
LSTM是循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural Network,RNN)的變體,能解決普通RNN梯度爆炸或梯度消失的問題,適用于時間序列數(shù)據(jù),它的下個時間周期輸入是上個時間周期的輸出。LSTM模型具有獨特的記憶模塊,可以減緩數(shù)據(jù)信息的丟失速度,LSTM單元包括輸入門、輸出門、遺忘門以及輸入節(jié)點等,內(nèi)部結(jié)構(gòu)如圖1所示。
圖1 LSTM內(nèi)部網(wǎng)絡(luò)圖
在當(dāng)前時刻從輸入層輸入的信息會首先經(jīng)過輸入門,輸入門的開關(guān)決定當(dāng)前時刻的信息是否輸入到記憶細(xì)胞中,計算公式為:
式(1)中,w是輸入門的權(quán)重矩陣,b是輸入門的偏置項。
用于決定當(dāng)前時刻是否有信息從記憶細(xì)胞輸出。
當(dāng)前時刻的記憶細(xì)胞中的值都會經(jīng)歷一個是否被遺忘的決策,這些決策都由遺忘門決定。
W是遺忘門的權(quán)重矩陣,[,x]表示把兩個向量連接成一個更長的向量,b是遺忘門的偏置項,是sigmoid函數(shù),如果輸入的維度是d,隱藏層的維度是d,單元狀態(tài)的維度是d(通常d=d),則遺忘門的權(quán)重矩陣W維度是d*(d+d)。事實上,權(quán)重矩陣W是由兩個矩陣拼接而來的:一個是W,它對應(yīng)的輸入項,其維度為d*d;另一個是W,它對應(yīng)的輸入項X,其維度為d*d。W可以寫為:
信息傳遞的順序是先進(jìn)入輸入門,觀察是否有信息輸入;再由遺忘門判斷是否遺忘記憶細(xì)胞里的內(nèi)容;最后經(jīng)過輸出門,判斷是否將當(dāng)前時刻的數(shù)據(jù)進(jìn)行輸出。流程如圖2所示。
圖2 LSTM單元結(jié)構(gòu)
通過三道門之后,使得LSTM可以保留有用的特征,而拋棄作用較小的特征,從而增大記憶長度,提高長時間序列問題的處理能力。
分析目標(biāo)航班的數(shù)據(jù)后,使用LSTM神經(jīng)網(wǎng)絡(luò)建立預(yù)測模型,預(yù)測過程主要分為:數(shù)據(jù)預(yù)處理、模型訓(xùn)練、預(yù)測與真實值對比分析。
首先對航班軌跡數(shù)據(jù)進(jìn)行篩選,以前四個經(jīng)緯度判斷第五個經(jīng)緯度是否發(fā)生較大偏差,對數(shù)據(jù)中的冗雜和缺失進(jìn)行平滑處理,以保證整個航線的準(zhǔn)確度。數(shù)據(jù)處理判斷公式如下所示:
2.1.1 配置訓(xùn)練集與測試集
模型數(shù)據(jù)集由訓(xùn)練集與測試集組成,訓(xùn)練集用于訓(xùn)練模型;測試集用于檢測驗證模型的準(zhǔn)確度。本文設(shè)定用前九個位置數(shù)據(jù)預(yù)測下個位置,則輸入后劃分訓(xùn)練集和測試集數(shù)據(jù)如表1所示。
表1 示例數(shù)據(jù)集
2.1.2 數(shù)據(jù)歸一化
為了降低數(shù)據(jù)取值范圍對網(wǎng)絡(luò)最終準(zhǔn)度的影響,需要把輸入數(shù)據(jù)歸一化到[0,1]區(qū)間內(nèi)。本文采用min-max進(jìn)行歸一化,公式如下所示:
其中為各個維度的最大值,為各個維度的最小值,x為歸一化后的數(shù)據(jù),歸一化可以盡可能消除數(shù)量級對最終預(yù)測的影響,且不會破壞數(shù)據(jù)集原本的內(nèi)在聯(lián)系。使用歸一化后的數(shù)據(jù)作為輸入數(shù)據(jù)則預(yù)處理基本完善。
LSTM預(yù)測模型主要分為三層,分別是輸入層、隱藏層、輸出層。預(yù)測模型如圖3所示。
圖3 LSTM預(yù)測模型
對經(jīng)過上一節(jié)處理后的數(shù)據(jù)按照10∶1劃分,采用大小為的窗口進(jìn)行分割數(shù)據(jù),以X的,二維坐標(biāo)位置信息做數(shù)據(jù)標(biāo)簽。隱藏層的和分別作為LSTM細(xì)胞的狀態(tài)與輸出。故模型的預(yù)測輸出Y 可用如下公式表達(dá):
經(jīng)過訓(xùn)練模型迭代訓(xùn)練,直到損失函數(shù)值收斂,即可得到最終的LSTM預(yù)測模型。再將模型的輸出經(jīng)過反歸一化處理,得到真實的經(jīng)緯度坐標(biāo)值,即可得到具有參考意義的二維坐標(biāo)。
時間窗口的選擇:LSTM模型最終的性能會受到輸入時序長度的影響,過長或過短的序列意味著記憶單元會記憶多余冗雜特征或無法記憶關(guān)鍵特征。經(jīng)多次反復(fù)實驗后,本文在實驗中選擇十個時刻的軌跡特征來預(yù)測下一時刻,也就是說時間窗口等于十時為模型的最佳大小。
拋開時間窗口,合適的超參數(shù)同樣對模型的性能有巨大的影響,本文模型超參數(shù)主要包括:學(xué)習(xí)率alpha(簡寫為α),模型LSTM隱藏層的層數(shù),隱藏層中神經(jīng)元個數(shù),訓(xùn)練集單次輸入個數(shù)Batch_Size(簡寫為B),防止過擬合Droput,模型總迭代次數(shù)epoch(簡寫為E),損失函數(shù)均方誤差計算(簡寫為MSE,并設(shè)置起始值為0.0075,最小值為0.0001),優(yōu)化器Adam,輸入序列長度μX10的一維矩陣。參數(shù)設(shè)置如表2所示,網(wǎng)絡(luò)模型訓(xùn)練結(jié)果如表3所示。
表2 參數(shù)設(shè)置
表3 網(wǎng)絡(luò)模型訓(xùn)練結(jié)果
本實驗的航班軌跡是來自某機(jī)場交通管理系統(tǒng)中某航班從國內(nèi)機(jī)場A到國內(nèi)機(jī)場B的歷史飛行數(shù)據(jù)。數(shù)據(jù)時間間隔為1~10 s不等,經(jīng)過上一節(jié)數(shù)據(jù)清理以及歸一化后,總計10000條位置數(shù)據(jù)。將該航班軌跡按10∶1劃分后分別作為訓(xùn)練集和測試集,經(jīng)過反復(fù)實驗并調(diào)優(yōu)后,隨機(jī)選取該機(jī)場另外10個航班用于測試模型的精度與誤差分析。本文的實驗設(shè)備如表4所示。
表4 實驗設(shè)備
通過模型預(yù)測當(dāng)前飛機(jī)位置為(,),實際飛機(jī)位置為(,)。使用均方誤差(MSE)來評估預(yù)測精度,將經(jīng)緯度轉(zhuǎn)換為弧度后,用Haversine公式計算球面兩點間的距離,MSE以及Haversine公式如下所示:
變形轉(zhuǎn)化為可以計算的公式,則有:
MSE公式中,y是真實值,y是預(yù)測值,為樣本個數(shù),為當(dāng)前系數(shù)。
Haversine公式中,是任意兩點之間的中心角,是球面兩點直接的球面距離,是球體的半徑,和表示兩點的維度;和表示兩點的經(jīng)度。預(yù)測過程如圖4所示。
圖4 LSTM模型預(yù)測過程
為了驗證當(dāng)前模型對不同航班的預(yù)測效果,取同一機(jī)場的9個航班數(shù)據(jù),對數(shù)據(jù)集按照10∶1劃分為訓(xùn)練集和測試集,按照上節(jié)所述步驟進(jìn)行訓(xùn)練,并預(yù)測飛行軌跡,計算預(yù)測軌跡和真實軌跡之間的誤差,結(jié)果如表5所示,9個航班軌跡以及預(yù)測軌跡如圖5所示。
表5 預(yù)測誤差
圖5 航班預(yù)測
本文通過對航班航跡飛行數(shù)據(jù)研究,在航跡數(shù)據(jù)的基礎(chǔ)上,結(jié)合時間序列方法,提出了基于LSTM模型的短期航班航跡預(yù)測方法。在真實數(shù)據(jù)的基礎(chǔ)上,使用LSTM模型進(jìn)行航跡預(yù)測,大量實驗證明了LSTM模型算法的有效性。
本文的航跡預(yù)測算法仍存在一些不足。例如現(xiàn)在只能對較短航班航跡進(jìn)行預(yù)測,且時間采樣間隔較小,對于連續(xù)跨間隔的航跡經(jīng)緯度預(yù)測仍需要多次迭代實現(xiàn),且有一定概率導(dǎo)致偏離正確航跡,使得誤差在迭代中變大。因此,下一步將考慮多個模型組合使用,比如ARIMA、注意力機(jī)制等,提高算法模型精度。同時也會引入更多特征,比如高度、轉(zhuǎn)向、飛行姿態(tài)等來降低模型誤差。