?

基于注意力機制的CNN-LSTM模型的航跡預測

2023-12-27 07:18周志崇曹明松胡延達
空軍工程大學學報 2023年6期
關鍵詞:航空器航跡注意力

王 堃,周志崇,曲 凱,曹明松,胡延達

(1.93886部隊,烏魯木齊,830001;2.空軍工程大學空管領航學院,西安,710051;3.陜西師范大學計算機科學學院,西安,710119)

空中交通管理(air traffic management,ATM)的一項重要職能是對航空器在空中飛行時的航路、高度、速度、起降等行為進行指導和控制,確保航空器在空中飛行過程中的安全和有序。其目標是對航空器進行安全有效的管理并致力于在空域管理系統中提供最優的空域容量[1]。完成上述目標要求管制員對航空器進行排序和分離,管制員通常使用決策支持系統(decision support systems,DST)監視每架航空器的狀態,并解決飛行沖突[2]。為了確??沼蚝娇掌髅芏仍诎踩秶鷥?管制員使用DST從其他監視系統中獲得的未來空中交通流量信息執行流量管理決策,這些監視系統功能的核心是軌跡預測。軌跡預測是在給定航空器狀態和環境信息的前提下,預測航空器未來的位置。不準確的軌跡預測會對ATM和DST的性能產生負面影響,例如,會降低管制員扇區內最大航空器容量,增加沖突的數量和系統負擔,增加因躲避其他航空器而導致的燃料消耗,更多燃料消耗會導致環境污染。因此,軌跡預測效果對DST的性能表現尤為重要。目前,ATM正朝著基于軌跡的運行模式(trajectory-based operations,TBO)發展[3]。

由于空中交通量的不斷增大及航空資源的日益短缺,ATM系統在航空交通管理中面臨巨大壓力[4]。盡管之前的軌跡預測精度已經能夠在一定程度上應對空中交通環境,但是面臨日益擁堵的空域,還需要提高軌跡預測的精度以應對復雜的空中交通狀況。利用詳細的數據并使用先進的方法才能讓ATM系統自動化、智能化地做出決策,進而打造出安全、有序和高效的空中交通環境[5]。

伴隨深度學習的不斷發展,其在自動駕駛[6]、機器人控制[7]、視頻監控[8]等領域具有廣泛的應用,并且表現優異。深度學習同樣可以用于軌跡預測,其中包括預測物體、人或車輛等在未來幾秒或幾分鐘內的運動軌跡[9-11]。使用深度學習進行軌跡預測的好處在于不僅可以從大量歷史數據中學習軌跡的運動規律和特征,提高預測的準確度,而且可以更好地應對復雜場景。

隨著人工智能和大數據研究的不斷發展,機器學習的方法逐漸成為航跡預測不可或缺的方法。該方法的優點在于只需要對過去的航跡進行處理,更多地依賴于航跡的相似性,可以將輸入與輸出的維度進行重構[12]。

機器學習方法初期使用回歸模型進行航跡預測。文獻[13]針對航空器中短期的軌跡預測問題,提出一種新方法。該方法基于局部線性泛函回歸,其中涉及局部化、數據預處理和利用小波分解求線性回歸。此方法不使用任何航空和物理參數,只使用了過去航空器的軌跡。文獻[14]提出利用航空器航線數據和氣象數據,對航空器進行排序和合并的軌跡預測方法。該方法使用歷史航跡信息訓練模型以達到預測飛行時間的目的。模型的輸入分別為航空器的地面速度、航空器的類型、航空器到達航信起點處的高度、高空風、地面風。該模型用于檢查沖突和跑道吞量,并且可以通過該模型對連續下降航空器之間的初始距離間隔進行判斷。

上述回歸模型也存在問題,即每次建立飛行模型都需要使用大量的航跡數據。隨著循環神經網絡在序列預測上的優勢逐漸顯現,長短期記憶網絡(long-short-term memory,LSTM)作為循環神經網絡的變體,其在處理時序問題上有著優異的表現,因此經常被應用于時序預測問題中。航跡預測方面,也逐漸采用該網絡進行軌跡預測[15]。文獻[16]通過LSTM網絡模型對航空器的軌跡進行預測。LSTM通過門結構使得當前預測任務中包含過去序列的信息。LSTM中使用滑動窗口保持了長序列中相鄰狀態的連續,有利于航跡預測精度的提高。該方法分別對三維航跡和四維航跡分別實驗,其性能表現優于馬爾科夫模型和加權馬爾科夫模型。文獻[17]將蟻獅優化算法與LSTM網絡相結合,利用蟻獅優化算法的優點對LSTM網絡的閾值和初始權值進行優化,提高了預測結果的精度和模型的收斂速度,有效避免了算法陷入局部最優解,提高了LSTM的性能。通過與BP神經網絡和LSTM神經網絡的對照實驗表明,算法的航跡預測能力更強。文獻[18]提出了基于“當前”統計模型的機動目標模糊自適應濾波算法(fuzzy adaptive CSAF,FACSAF),該算法既不存在突變問題,也沒有加速度區間限制。仿真結果表明,在預測精度方面效果較好。文獻[19]利用不同的深度學習模型,對飛行器航跡從不同角度進行預測。一方面,通過深度前饋神經網絡(deep neural networks,DNN)對實際航跡與目標航跡之間經緯度之間的偏差進行預測。另一方面,通過LSTM對未來幾個時刻的飛行軌跡做長期預測。DNN模型對單步范圍的預測結果更加準確,LSTM雖然預測的精度不如DNN,但是卻可以實現多步預測,通過2個模型的結合,使得算法在航跡預測及飛行安全方面具有更好的效果。此外,模型的不確定性采用貝葉斯方法進行表征。

由于機器學習方法在航跡預測方面表現優異,本文也將在下面的章節中采用機器學習方法對航空器軌跡進行實時預測。

1 基于注意力機制的CNN-LSTM模型

4D(航班的三維空間位置和時間)航跡預測是指在空中交通控制系統中,通過對航空器航跡進行預測和規劃,使得不同航班的飛機能夠在同一時空上安全地交錯飛行。

卷積神經網絡(convolutional neural networks,CNN)與LSTM相結合的網絡模型在4D航跡預測任務中表現優異,但是該模型的泛化能力較差,無法關注航跡數據中最重要的部分,容易受不相關信息的影響;該模型的魯棒性不強,容易受到航跡數據中噪聲和變化的影響。

受文獻[20]的啟發,本文提出了基于注意力(Attention)機制的CNN-LSTM模型,即CNN-LSTM-Attention,與文獻[20]提出的模型重名。本模型受到了其將Attention機制結合到LSTM想法的啟發,因此采用相同的命名。該模型首先使用一維卷積對航跡數據的多維度特征進行提取,從而減少輸入特征的數量。然后利用卷積層獲取的多維度時序數據作為LSTM的輸入,通過LSTM提取上下文的信息。最后借用注意力機制的基本思想,即幫助學習網絡權重分布[21],為不同時序節點的輸出賦予權重,以聚焦關鍵航跡信息,達到提高預測模型泛化能力和魯棒性的效果。下面將對模型的整體架構和超參數設定進行介紹。

1.1 模型整體框架

基于注意力機制的CNN-LSTM模型是由CNN網絡、LSTM網絡和注意力機制組合而成的,如圖1所示。輸入層是通過構造數據樣本,將時序數據構造成矩陣格式,輸入CNN網絡中;CNN層中使用卷積操作對輸入的數據進行降維和特征提取。LSTM層將提取到的特征以時序數據的形式輸入LSTM網絡;注意力層對 LSTM網絡隱藏層輸出使用注意力機制進行加權平均計算;輸出層是通過全連接層輸出最終的預測軌跡。

圖1 基于注意力機制的CNN-LSTM網絡結構

1.2 模型的輸入與輸出

本模型使用航跡數據作為模型的輸入。某一時刻t的位置以時間(t)、橫軸坐標(x)、縱軸坐標(y)、豎軸坐標(z)、正北風速(windy)和正東風速(windx)這6個特征進行表示。t時刻航空器狀態表示Xt,如式(1)所示。模型的輸出是未來時刻的時間(t)、橫軸坐標(x)、縱軸坐標(y)和豎軸(z)作為模型的輸出。t+1時刻,模型的輸出Yt+1,表示為式(2)。將6個連續時刻的航跡特征數據X(t-5),…,X(t-1),X(t)作為模型的輸入,將t+1時刻的航空器位置及時間Y(t+1)作為模型的輸出,如式(3)所示。

X(t)={t,x,y,z,windx,windy}

(1)

Y(t+1)={t,x,y,z}

(2)

Y(t+1)=f({X(t-5),…,X(t-1),X(t)})

(3)

1.3 模型的訓練流程

CNN層通過一維卷積對航跡進行降維和特征提取。具體過程如下:首先是卷積操作,由于模型采用的一維卷積,卷積核將按照單一的方向進行卷積。然后,使用ReLU函數進行激活。最后經過最大池化將所得向量輸入多層LSTM中。本文設計的模型共有3層LSTM,并在每層LSTM后都設置了dropout避免過擬合。dropout是一種常用的正則化技術,可以用于減少過擬合現象,提高模型的泛化能力。上一層LSTM輸出的隱藏狀態作為下一層LSTM的輸入,以此類推,最后一層輸出的隱藏狀態將會傳遞給注意力層進行加權計算。注意力機制可以提高重要時刻航跡點對最終結果的影響,提升模型預測的精度。將多層LSTM中最后一層的隱藏狀態Hi作為注意力層的輸入,對輸入向量做加權求和。使用一個全連接層進行訓練,設置激活函數為tanh,得到隱藏狀態的分數為Si,如式(4)所示。全連接層的輸出Si使用softmax函數進行歸一化,得到隱藏狀態的權重αi,αi代表每一個時間步對預測結果的重要性,計算公式如式(5)所示。注意力訓練過程表示如下:利用得到的權重與隱藏狀態向量進行加權求和得到最終的輸出Ci,如式(6)所示。

Si=tanh(WHi+bi)

(4)

αi=softmax(Si)

(5)

(6)

2 數據預處理

本節將介紹4D航跡預測的數據集構造工作。首先,對航空軌跡數據進行介紹和數據預處理,數據預處理包括去除重復點、去除離機場過遠的點和建立三維坐標系表示航空器的位置、補齊缺失數據點等操作。其次,對模型的訓練樣本和標簽進行定義,最后,將數據進行歸一化操作后,完成數據的預處理。

2.1 制作數據集

由于目前的航空軌跡數據集中航跡數據缺乏明確的分類,并且航跡多為高空航跡,缺乏進離場航空器軌跡,故本文將對所需的數據集進行制作。例如,使用來自某機場的真實航跡數據,數據中包含機場中多架航空器的航跡及航行過程中的天氣狀況。數據集中包含了96 d的有效航跡數據。數據集中的航跡數據是通過ADS-B設備得到航空器精確位置和時間戳,氣象數據是通過機場自動天氣觀測系統獲得的,通過時間戳的匹配,將氣象數據附加到航跡數據后面。得到原始數據后,還需要對原始數據預處理以達到訓練模型的要求。預處理包括刪除沒有位置信息的壞點;去除航空器標識和位置信息相同的重復點;去掉距離跑道頭或跑道尾超過5 km并且高度在1.8 km以上的點;建立三維坐標系,將數據轉換為坐標點,其中左邊原點位于跑道尾,x軸指向跑道;在上述坐標系中,對飛速沿著跑道和垂直于跑道進行分解;對于缺失的數據點,采用三次線性插值法補充缺失點;處理后的數據以7∶3的比例被劃分為訓練集和測試集。航跡數據格式,如表1所示。

表1 航跡數據展示

其中x、y、z表示的是航空器在以跑道末端為原點的三維坐標系中的位置,其中x軸與跑道平齊。Windx和Windy分別表示x軸方向和y軸方向的風速。本文制作的數據集以3維坐標的形式記錄航空器位置,可以更好地挖掘3個維度的特征;數據集中具有風速信息,可以更好地探究環境對航跡預測影響;數據集均為進離場航班,可以更好地研究進離場航空器航跡的特點。

2.2 數據樣本構造方法

本實驗使用的數據包含時間、橫軸坐標、縱軸坐標、豎軸坐標、橫軸方向風速、縱軸方向風速共6個特征。構造數據樣本時,將所有時間步的6個軌跡數據造成一個二維矩陣,矩陣的行數為樣本的總個數,列數為特征數6。模型選用6個時間步的數據對下一時間步中的時間、橫軸坐標、縱軸坐標和豎軸坐標進行預測。參照CNN在處理圖像數據的方法,采用6×6的滑動窗口在矩陣上由上至下滑動,如圖2所示,滑動步長為1,其中滑動窗口中的數據作為訓練樣本?;瑒哟翱诘南乱恍兄械臅r間、橫軸坐標、縱軸坐標、豎軸坐標作為標簽。依次類推,直到標簽到達最后一行為止。

圖2 樣本構造示意圖

2.3 樣本歸一化處理

歸一化是一種用于訓練深度神經網絡的技術。它的目的是將輸入數據進行歸一化處理,使得網絡在訓練過程中更加穩定、收斂更快、避免梯度消失等問題。本文采用離差標準化的方式將航跡樣本數據歸一化[22]。離差標準化(min-max scaling)是一種常見的數據標準化方法,用于將數值型的數據縮放到一個固定的區間范圍內,通常是[0,1]或[-1,1]。本文采用的離差標準化公式如式(7)所示:

(7)

反歸一化是一種將標準化后的數據轉換回原始數據的方法。在訓練模型時,通常需要將輸入航跡樣本數據進行歸一化處理,以提高模型的訓練效果。但是,在使用模型對新的航跡樣本進行預測時,需要將預測結果進行反歸一化,以得到原始數據的結果。反歸一化的方法與歸一化的方法相對應。如果歸一化是將原始數據縮放到[0,1]的范圍內,那么反歸一化就是將標準化后的數據恢復到原始的航跡數據范圍內。本文反歸一化的公式如式(8)所示:

(8)

3 實驗與結果分析

3.1 模型訓練

本文模型基于TensorFlow框架實現,實驗所采用的硬件環境為:Intel Xeon E5-2630 V4處理器,64 GB內存,NVIDIA TITAN XP GPU顯卡。將模型的超參數設置如下:

3.1.1 輸入層參數設置

設置輸入數據的參數,其中包含批處理大小、時間窗的設置和特征數。本模型將批處理大小設置為128,時間窗口設置為6,特征數設置為6,一條航跡樣本可以用6×6的實數矩陣R6×6進行表示,R6×6中第i個時間步的航跡向量記為xi。

3.1.2 CNN參數設置

航跡樣本數據在CNN中會經過卷積、池化操作。本模型對航空軌跡數據采取一層一維卷積進行處理,其中卷積核的大小為3,數目為32,滑動步長設為1。進行一維卷積時,依次選取R6×6中第i個時間步到第i+2個時間步的二維矩陣進行卷積操作。激活函數選用ReLU。經過一維卷積的提取,得到6×1形狀的特征圖,共有32個卷積核,最終得到32個特征圖。對所得特征圖進行最大池化,池化窗口大小為2,步長為2,最終得到32個3×1形狀的特征圖。將所得特征圖表示為32×3的二維矩陣,該二維矩陣表示不同卷積核下航跡數據的聯系。將該數據輸入到LSTM網絡中。

3.1.3 LSTM參數設置

(1)理想整體發電效率隨負荷增加而單調增大。由于給水流量波動導致的實時參數滯后,以及環境溫度對背壓和發電效率的影響,直接空冷機組的實際整體發電效率、汽輪發電機整體效率、汽輪機理想循環熱效率隨負荷增加并未表現出明顯單調遞增的規律。

在LSTM層,主要對LSTM層數、隱藏層節點個數、激活函數和丟棄率進行設置。LSTM的層數設置為3。將LSTM層隱藏節點的個數均設置為50,其激活函數使用默認的Sigmoid和Tanh??紤]模型和數據情況,將本模型丟棄率dropout設置為0.25。

3.1.4 Attention參數設置

在注意力層,要對LSTM輸出的32×3狀態矩陣進行處理(實際大小是32×LSTM隱藏層維度數),其結構如圖3所示。32代表LSTM的seq_length,因此Attention層以32×3的矩陣為解碼器的隱層狀態(decoder hidden state),以其各行的1×3的矩陣為對應特征點的隱層狀態(encoder hidden state),通過點乘計算得分。然后再利用Softmax對各得分進行計算,得到各32個特征點隱層狀態的權重。將計算出的權重與對應的隱層狀態相乘,得到加權后的隱藏狀態。其結果為32個1×3的矩陣,連接為32×3的矩陣后,輸入全連接層,最終輸出1×4的航跡預測作為輸出。

圖3 Attention網絡結構

注意力層有Soft Attention和Hard Attention 2種方案。Hard Attention的權重向量通常是一個One-Hot向量,這在某些情況下會具有更好的時效性,但是會犧牲一部分精度。由于本文模型的隱層狀態只有32,對計算效率的影響并不大,因此只需在實驗中比較2種方案的精確度。

3.1.5 其他超參數設置

其他超參數包括優化器、學習速率和迭代次數。本模型選用Adam優化器更新模型的參數以最小化損失函數,學習速率設置為0.001,迭代次數設置為1 000。

3.2 預測誤差衡量指標

常用的衡量預測值與實際值之間誤差大小的指標有均方根誤差(root mean square error,RMSE)、平均絕對誤差(mean absolute error,MAE)和平均絕對百分比誤差(mean absolute percentage error,MAPE)。它們分別如公式(9)~(11)所示:

(9)

(10)

(11)

3.3 定性實驗

為了驗證本文提出的航跡預測模型的性能,本節對提出的基于注意力機制的CNN-LSTM模型與CNN-LSTM模型和LSTM模型進行定性對比實驗,通過對比預測的航跡曲線分析模型的效果,本節以某航空器航跡為例給出3個模型的預測效果。3個模型的二維和三維航跡的對比如圖4和圖5所示。

圖4 二維航跡對比

圖5 三維航跡對比

圖4中x、y表示的是航空器在以跑道末端為原點,沿跑道方向為x軸的二維坐標系中的位置。LSTM模型預測出的二維航跡可以擬合真實航跡的運行狀態,但是仍存在一定程度的偏差,二維航跡曲線能夠保持平滑地移動。CNN-LSTM模型預測出的二維航跡可以較好地擬合真實航跡的運行狀態,與LSTM模型相比,二維航跡偏差明顯減小,預測航跡曲線也更加平滑。CNN-LSTM-Attention模型可以很好地擬合真實航跡的運行狀態。預測出的航跡曲線幾乎與真實二維航跡曲線重合。

圖5中x、y、z表示的是航空器在以跑道末端為原點,沿跑道方向為x軸的三維坐標系中的位置。LSTM模型的三維預測航跡已經可以擬合出航跡路線,但是與實際航跡的誤差仍然較大,特別是在高度方面,可以明顯觀察到與實際航跡的差距,使用LSTM模型雖然可以進行4D航跡預測,但模型仍有提高的空間。CNN-LSTM模型的三維預測航跡與真實航跡的誤差較小,雖然高度差距比LSTM模型小,但是仍存在一定程度的偏差。CNN-LSTM-Attention模型擬合出的三維航跡與真實航跡誤差很小,可以很好地擬合實際飛行的航跡。

注意力機制分為2種變體,Hard Attention和Soft Attention。為選擇出更適用于航跡預測的變體,進行對比實驗,實驗結果如圖6所示。

圖6 不同Attention機制的對比

Soft Attention的實驗最終是使用SoftMax函數對LSTM層的狀態進行權重分配,Hard Attention則只選擇一個分數最大的位置進行關注,其余狀態均被拋棄。為了表現出明顯差異,選用一條較長的航跡進行對比預測。在實驗結果中可以觀察到,2種變體都對航跡進行了良好的預測,但是Soft Attention預測的航跡更為穩定,Hard Attention的預測則出現了震蕩,且2種變體的計算時間沒有明顯差別,因此Soft Attention更適合用于航跡預測。

除去Attention機制的選擇外,還有一個參數尤為重要,即LSTM的層數。增加LSTM的層數可以增加模型的表示能力,使其能夠更好地捕捉輸入序列中的長期依賴關系和復雜模式。這對于航跡預測任務中的時序數據是重要的,因為航跡通常具有長期的時間依賴性。但是增加LSTM的層數會增加模型的復雜度,所以本文應用了Attention機制。為選擇最合適的LSTM層數,進行對比實驗,實驗結果如圖7所示。

圖7 不同LSTM層數的對比

可以看出,在層數為1或3時,區別并不大,當層數逐漸增加,模型預測的精度不增反降,這可能是由于過多的層數引入的噪聲或冗余導致的。為更好地捕獲航跡的時序性,本文選擇LSTM的層數為3。

總的來說,CNN-LSTM-Attention模型預測出的航跡擬合度最高,最接近真實航跡,CNN-LSTM模型效果次之,LSTM模型擬合度最低。由此看來,模型的4D航跡預測精度由高到低排名依次是CNN-LSTM-Attention模型、CNN-LSTM模型和LSTM模型。且其注意力機制中的Soft Attention更適用于航跡預測。

3.4 定量實驗

為了驗證本文提出的航跡預測模型的性能,本節對提出的基于注意力機制的CNN-LSTM模型與目前常用的4D航跡預測算法進行定量實驗,通過對比特征的誤差分析模型的效果,以某航空器航跡為例給出3個模型的預測效果。通過計算誤差衡量指標RMSE、MAE和MAPE的值對預測航跡和真實航跡的誤差進行定量分析,,衡量指標的數值越小,表示模型的預測誤差越小。分別對LSTM模型、CNN-LSTM模型和基于注意力機制的CNN-LSTM模型的時間、橫坐標、縱坐標和豎坐標進行誤差定量分析,結果如表2所示。

表2 特征誤差對比

通過對比表2中的參數發現,LSTM的特征誤差最大,CNN-LSTM的特征誤差次之,誤差最小的是CNN-LSTM-Attention模型。CNN-LSTM-Attention模型在時間、橫坐標、縱坐標和豎坐標的誤差指標均小于CNN-LSTM模型,其中降低最多的是時間特征,誤差平均降低36.70%;降低最少的是橫坐標特征,誤差平均降低14.16%,以上數據說明了Attention機制應用CNN-LSTM后,提高了模型的預測能力,同時驗證了CNN-LSTM-Attention模型在處理時序預測問題的優越性能。

4 結語

本文首先提出了基于注意力機制的CNN-LSTM混合模型,將注意力機制引入CNN-LSTM模型中,對LSTM隱藏層的輸出賦予注意力權重,提高模型預測精度,介紹了模型的整體框架、模型的輸入與輸出和模型的訓練流程。然后介紹了數據預處理工作,包括制作數據集、數據樣本構造和樣本歸一化處理。最后,進行了實驗與結果分析,其中包括模型訓練、誤差衡量指標介紹、定性實驗與定量實驗。實驗通過將預測航跡和真實航跡以二維與三維的形式繪制航跡,直觀地展示出航跡之間的誤差;定量實驗通過誤差評價指標RMSE、MAE、MAPE定量展示航跡的誤差。通過定性實驗與定量實驗的比較,驗證了本文所提出的模型在4D航跡預測上的性能優于其它對比模型。

猜你喜歡
航空器航跡注意力
讓注意力“飛”回來
夢的航跡
自適應引導長度的無人機航跡跟蹤方法
“揚眼”APP:讓注意力“變現”
論航空器融資租賃出租人的違約取回權
視覺導航下基于H2/H∞的航跡跟蹤
A Beautiful Way Of Looking At Things
航空器的順風耳——機載衛星通信
火星航空器何時才能首飛
MSG-3在小型航空器系統/動力裝置維修要求制訂中的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合