徐文英,王大軍,盧朝陽,顧明昕
(1.南京航空航天大學(xué) 民航學(xué)院,南京 211106;2.蘭州中川國際機場,蘭州 730087;3.東部機場集團有限公司,南京 210006)
近年來,我國對民航運輸?shù)男枨蟛粩嘣黾樱罩薪煌髁恐饾u增長.終端區(qū)是機場與航路的連接點,航班集中在此完成起飛、著陸、盤旋、等待等運行程序,是空中交通樞紐區(qū)域,由于其特殊的位置和結(jié)構(gòu),成為民航運輸增長需求的一個瓶頸.精準預(yù)測進場航空器的飛行時間可以輔助管制員和決策系統(tǒng)得到進離場航空器的最佳排序順序,減少航班沖突和延誤,提高機場運行正常率.
對航空器飛行時間預(yù)測的研究受到國內(nèi)外學(xué)者的廣泛關(guān)注.Roy等[1]進行預(yù)測的4種方法中,只有引入自主遷移的交互多模型(Interacting Multiple Model,IMM)才能有效求解,達到15 min范圍內(nèi)的預(yù)測誤差在30 s左右.Leege等[2]利用歷史軌跡結(jié)合地面風(fēng)和海拔風(fēng)等氣象數(shù)據(jù)預(yù)測飛行軌跡和時間.陳強等[3]基于徑向基NN和最小二乘法構(gòu)建進場航空器飛行時間預(yù)測模型,考慮航空器進場時的高度、飛行距離等來預(yù)測飛行時間,以上海浦東為例,仿真結(jié)果表明均方根誤差小于50 s.馬勇[4]基于FPRTree方法來預(yù)測四維航跡,通過對歷史飛行軌跡進行索引進而得到預(yù)測結(jié)果,得到降落時間.Lee等[5]將飛行計劃和程序信息融入模型,改進基于狀態(tài)依賴過渡混合估計算法,通過下降階段數(shù)據(jù)進行驗證.Zhang[6]等提出利用ADS-B接收機進行電流軌跡更新.李陽等[7]通過建立進場航空器位置、高度、速度與飛行所需時間的函數(shù)關(guān)系,采用最小二乘支持向量機進行預(yù)測.Barratt等[8]對航空器歷史軌跡進行重組和聚類,采用高斯混合模型預(yù)測航空器的進近飛行時間.葉博嘉等[9]提出了影響空域飛行的17個特征,采用隨機森林、SVM等4種方法對比預(yù)測,結(jié)果顯示隨機森林預(yù)測效果最好.
目前基于運動學(xué)模型已經(jīng)有了不少軌跡預(yù)測算法,但無法準確捕獲飛機的機動性和不確定性.從實際數(shù)據(jù)軌跡挖掘,能夠關(guān)注航空器長期飛行規(guī)律,融合空域動態(tài)變化、交通態(tài)勢等信息,預(yù)測精度較好,但過去的研究大部分都只針對軌跡數(shù)據(jù),融合其他信息較少,因此本文結(jié)合軌跡和實際運行時刻等相關(guān)因素對進場航空器飛行時間進行預(yù)測.
本文在總結(jié)國內(nèi)外對航跡數(shù)據(jù)的處理和應(yīng)用上,深入探究影響進場航空器在終端區(qū)飛行時間的影響因素,提出了影響進場航空器飛行時間的重要特征.采用基于密度的噪點空間聚類法(Density
based Spatial Clustering of Applications with Noise,DBSCAN)聚類得到交通流的不同路徑類別,為航空器飛行時間的預(yù)測奠定了基礎(chǔ).基于集成算法[10]的思想,采用XGBoost(Exterem Gradient Boosting)算法建立進場航空器終端區(qū)飛行時間預(yù)測模型.以平均絕對誤差和均方誤差作為評價指標,將本文模型與線性回歸(Linear Regression,LR)模型、支持向量機(Support Vector Mchines,SVM)和人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)模型進行對比分析.
本文采用的數(shù)據(jù)是云南昆明長水機場2019年12月6日至12月18日一天24 h內(nèi)區(qū)域管制范圍內(nèi)航班的軌跡數(shù)據(jù).雷達數(shù)據(jù)按照時間先后順序排列,每隔4 s記錄一條數(shù)據(jù),飛行軌跡由這些間隔相同的離散數(shù)據(jù)點組成.
進場航空器從區(qū)域管制被移交到終端區(qū)管制的過程中必須根據(jù)管制員的指令,將航空器的速度和高度調(diào)整到相應(yīng)走廊口的參數(shù)要求.兩個管制扇區(qū)完成航空器管制移交后,進場的航空器需要按照管制員的指令依次完成進場飛行航段以及進近飛行航段.航空器在終端區(qū)進行著陸時通常會經(jīng)歷進場、起始進近、中間進近、最后進近和復(fù)飛5個階段.進場航段需要對進場的航空器進行排序并且各個航空器要達到管制員要求的規(guī)定高度和速度.起始進近階段主要目的是下降航空器高度,完成對準中間或最后進近航段.中間進近階段主要用于調(diào)整航空器外部結(jié)構(gòu)、速度和位置,確保平穩(wěn)切入最后進近航段.最后進近航段是完成對準著陸航跡和下降著陸的航段.對于未滿足著陸條件或者是著陸失敗的航空器,則按復(fù)飛程序進行復(fù)飛.
基于采集到的二次雷達數(shù)據(jù),根據(jù)航空器在終端區(qū)內(nèi)的飛行特點,分析了影響進場航空器飛行時間的5個因素和22個特征.影響因素包括:航班因素、航空器因素、位置狀態(tài)因素、運行模式、繁忙程度,影響因素及其特征見表1.
表1 影響因素與特征Tab.1 Influencing factors and characteristics
1)航空器因素:不同機型在飛機載重,起飛著陸性能參數(shù)上存在差異,在飛行性能上對飛行時間造成影響.航空器因素中特征為機型,可以按照尾流間隔分為重型(H)、中型(M)、輕型(L).
2)運行模式因素:運行模式?jīng)Q定了航空器經(jīng)過的進場、進近航線以及不同的跑道運行模式.運行模式因素中特征為南北向運行和路徑類別.
3)繁忙程度因素:在繁忙時刻,管制員需對航空器發(fā)布管制指令進行調(diào)配,空域中同時運行的航空器數(shù)量會對研究航空器的飛行時間有所影響.繁忙程度因素中特征為同時間段終端區(qū)內(nèi)進場航班數(shù)量、離場航班數(shù)量和前序航班數(shù)量.飛越航班對管制員路徑選擇影響較小,在此不做考慮.
4)航班因素:航空公司飛行員的培訓(xùn)和操作流程要求的不同和不同起飛機場飛行航線的差異會影響航空器的飛行時間.航班因素中特征為航班所屬航空公司和起飛機場.
5)位置狀態(tài)因素:位置狀態(tài)因素可表明航空器進場時的自身飛行情況,進場時的初始狀態(tài)是重要的因素,關(guān)乎后續(xù)所需要的下降高度,進近程序所走的路線,路過的交叉點位置,調(diào)速所需時間和降落順序等.位置狀態(tài)因素中特征為時間,航空器位置,進場高度、速度、航向等.
因此,本文構(gòu)建的進場航空器飛行時間預(yù)測特征變量集為
航空公司和起飛機場由字母或中文表示,是只有標簽值沒有數(shù)值含義的量,在進行數(shù)據(jù)訓(xùn)練之前需要重新編號,本文使用整數(shù)編碼對航空公司和起飛機場進行編碼.
預(yù)測進場航空器飛行時間的主要方法:利用DBSCAN算法對進場航空器路徑進行聚類;利用XGBoost算法來預(yù)測進場航空器的飛行時間.預(yù)測飛行時間的整體方案流程圖見圖1,具體分為7個步驟.
圖1 飛行時間預(yù)測流程圖Fig.1 Flowchart of time-of-flight prediction
步驟1:對原始軌跡數(shù)據(jù)進行預(yù)處理;
步驟2:提取出進場軌跡數(shù)據(jù)并且進行重采樣,構(gòu)建路徑聚類特征集,選取了11個特征量;
步驟3:對路徑聚類特征集進行標準化和主成分分析后使用DBSCAN方法進行聚類;
步驟4:輸出聚類結(jié)果,整理飛行時間預(yù)測特征變量集,選取了22個特征量;
步驟5:選取飛行時間預(yù)測訓(xùn)練集和測試集;
步驟6:構(gòu)建XGBoost模型,輸入訓(xùn)練集,設(shè)定模型參數(shù),訓(xùn)練模型;
步驟7:輸入測試集,輸出進場航空器飛行時間預(yù)測結(jié)果.
每個航班從不同的走廊口進入并按照不同的路徑降落,路徑選擇與進場飛行時間有相關(guān)性.為了獲得航空器在終端空域?qū)嶋H的進場航路,通過聚類分析航班軌跡數(shù)據(jù)得到實際進場路徑,便于后續(xù)預(yù)測進場航空器飛行時間.DBSCAN[11]是空中交通模式識別中使用較為廣泛的方法,是一種基于密度的空間聚類算法,假定某一類別的樣本應(yīng)該分布在同類周圍,該算法將具有足夠密度的區(qū)域劃分為簇,簇定義為密度相連的點的最大集合.該算法可以不用先驗地確定簇的數(shù)量就可以識別異常值,因此適合航跡聚類場景.
首先對篩選提取出來的進場軌跡數(shù)據(jù)進行重采樣得到相同維度的數(shù)據(jù)樣本,再提取位置、航向、速度等需要的信息列.對數(shù)據(jù)集特征進行標準化處理,得到路徑聚類特征變量集為
采用主成分分析法對特征變量集進行降維,提取少數(shù)相關(guān)性較大的主要特征.最后采用密度聚類方法DBSCAN得到航空器軌跡簇,作為進場航空器飛行時間預(yù)測特征之一.
根據(jù)1.2提取的航空器飛行時間預(yù)測特征變量集和路徑聚類的結(jié)果,將特征與進場航空器終端區(qū)實際飛行時間相關(guān)聯(lián),得到訓(xùn)練模型所需的訓(xùn)練集.訓(xùn)練集中的實際飛行時間ATOF為實際降落時間ATA與實際進場時間AAT之差,單位為min.
XGBoost[12]是一種基于決策樹(Classification and Regression Tree,CART)的分布式高效梯度提升算法,它可被應(yīng)用到分類、回歸、排序等任務(wù)中.其XGBoost預(yù)測樹的生成過程見圖2,具體分為5個步驟.
圖2 XGBoost算法流程圖Fig.2 Flowchart of XGBoost algorithm
步驟1:初始化每個樣本的預(yù)測值;
步驟2:定義目標函數(shù);
步驟3:簡化目標函數(shù);
步驟4:根據(jù)最優(yōu)切分點劃分算法建立決策樹;
步驟5:累加決策樹的預(yù)測值,得到最終預(yù)測值.
終端區(qū)進場航空器飛行時間預(yù)測模型目標函數(shù)Obj′為
式中:y?i為模型的預(yù)測飛行時間;yi為實際飛行時間;fi為第i棵樹模型;Ω(f)為正則化項.
根據(jù)XGBoost原理,XGBoost需要將多棵樹的得分累加然后得到最終的預(yù)測得分,樹的加法模型表達式為
將式(4)代入式(3)得到目標函數(shù)Obj()t為
目標函數(shù)Obj(t)的泰勒展開式定義為
式中:γ、λ為調(diào) 整參數(shù);T為每棵樹的葉子數(shù)量;w為每棵樹的葉子節(jié)點的分數(shù)組成的集合.該正則化項用于控制模型復(fù)雜度,以避免過擬合.
根據(jù)ft(x)=wq(x),(q(x)為樹的結(jié)構(gòu)),將式(8)代入式(7),將目標函數(shù)進一步簡化為
通過對wj求導(dǎo)等于0,求得葉子節(jié)點j對應(yīng)的權(quán)值為
將式(10)代入式(9),可得到葉子節(jié)點的取值,表達式為
XGBoost建立決策樹的思路是遍歷所有的特征和分割點,然后選取最好的一個.假設(shè)IL和IR為左右子樹分割后的節(jié)點(I=ILUIR),根據(jù)最優(yōu)切分點劃分算法計算每個特征點上分裂之后的收益Gain,表達式為
引入平均絕對誤差MAE和均方誤差MSE作為預(yù)測模型的評價指標,將XGBoost模型與線性回歸LR、支持向量機回歸SVR和人工神經(jīng)網(wǎng)絡(luò)ANN模型進行對比,評價指標MAE和MSE的表達式分別為
式中:N為測試集樣本個數(shù).
原軌跡數(shù)據(jù)范圍為整個云南上空軌跡點,其中包含大量冗雜的數(shù)據(jù)點,且未區(qū)分航班類型.通過對軌跡數(shù)據(jù)的篩選、判斷、處理,區(qū)分提取出可用的進離場和飛越航班在終端區(qū)的飛行軌跡數(shù)據(jù),以某航班的數(shù)據(jù)為例(2019年12月6日RLH6516),部分信息見表2.表2中包括時間,X,Y坐標值,飛行高度,航向,爬升梯度,速度,重新標定后的獨立編號id,航班類型(離場為-1,進場為1,飛越為0)等數(shù)據(jù).
表2 可用的航空器航跡信息(部分)Tab.2 Available aircraft trajectory information(partial)
DBSCAN算法具有2個超參數(shù):鄰域半徑eps和鄰域內(nèi)最小對象數(shù)minPts.采用網(wǎng)格搜索法尋找最優(yōu)參數(shù)組合,即對各個參數(shù)取值排列組合,用于DBSCAN聚類訓(xùn)練,并使用交叉驗證選取.設(shè)置的參數(shù)結(jié)果見表3.
表3 DBSCAN參數(shù)Tab.3 DBSCAN parameters
飛行員在航空器進場時會提前獲知跑道運行方向,因此將其作為先驗條件分類,將軌跡按照南向北向降落進行劃分.以2019年12月6日的聚類結(jié)果為例,北向軌跡聚類簇見圖3(a),南向軌跡聚類簇見圖3(b).將每類簇參考NAIP上方向進行匹配命名,北向類別命名為N-MEBNA、N-XISLI、NGULOT、N-P297、N-LXI、N-ELASU,南向類別命名 為S-MX、S-GULOT、S-P297、S-LXI、SELASU,S-GE.
圖3 軌跡聚類結(jié)果Fig.3 Clustering results of trajectories
DBSCAN聚類方法可以在聚類過程中發(fā)現(xiàn)異常點,某些特殊情況下航空器運行經(jīng)過的不正常航跡歸為噪聲類別,噪聲識別的結(jié)果圖見圖4.噪聲軌跡占全部軌跡的9%,主要由部分盤旋轉(zhuǎn)彎較大的航跡組成.本文對每一個進場航空器飛行時間都進行預(yù)測,對于無法準確區(qū)分類別的航跡也需要設(shè)立一個子類別進行預(yù)測,因此將噪聲軌跡分為一類,命名為NOISE.
圖4 噪聲類別聚類結(jié)果圖Fig.4 Clustering results of noise categories
由3.2得,長水機場終端區(qū)軌跡集共提取出13個聚類簇,北向6類,南向6類,噪聲1類,分別為NMEBNA、N-XISLI、N-GULOT、N-P297、N-LXI、N-ELASU、S-MX、S-GULOT、S-P297、S-LXI、SELASU,S-GE、NOISE.南向和北向各6類聚類簇分別以數(shù)字0~5表示,噪聲類別以-1表示,作為后續(xù)飛行時間預(yù)測的路徑類別n的特征值.
航空器進入終端區(qū)后根據(jù)終端區(qū)狀態(tài)、交通流情況選擇路徑,所以實際軌跡路徑一般與飛行程序不同.對比標準進場程序圖,可知在大方向上聚類結(jié)果與進場程序相似,部分航班運行軌跡按實際調(diào)配調(diào)整,聚類結(jié)果有效.
選取75%的數(shù)據(jù)作為訓(xùn)練集,25%的數(shù)據(jù)作為測試集,以12月6日北向運行的部分預(yù)測結(jié)果為例,預(yù)測結(jié)果見表4.
表4 飛行時間預(yù)測結(jié)果(部分)Tab.4 Results of flight time prediction(partial)
為了驗證本文模型的優(yōu)越性,另外選擇了3種主流的預(yù)測模型作為對比,分別為線性回歸LR、支持向量機回歸SVR和人工神經(jīng)網(wǎng)絡(luò)ANN.4種模型的終端區(qū)飛行時間預(yù)測MAE和MSE結(jié)果見表5,各模型誤差在±3 min和±5 min的預(yù)測準確率見表6.由表5可知,XGBoost的預(yù)測結(jié)果最好,準確率最高,MAE和MSE都是最低,分別為1.85和6.24;SVR的預(yù)測結(jié)果與XGBoost相差不大,但誤差要高于XGBoost;ANN的預(yù)測結(jié)果最差,該方法可能不適合本文的樣本數(shù)據(jù);LR的結(jié)果受到部分極大異常預(yù)測結(jié)果的影響.由表6可知本文構(gòu)建的XGBoost模型預(yù)測準確率最高,±5 min內(nèi)的準確率達到95.18%,結(jié)果驗證基于XGBoost的飛行時間預(yù)測模型能夠有效地預(yù)測出航空器在終端區(qū)內(nèi)的飛行時間.
表5 飛行時間預(yù)測評價指標結(jié)果Tab.5 Results of flight time prediction and evaluation indicators
表6 各模型預(yù)測準確率Tab.6 Prediction accuracy of models %
為了直觀地體現(xiàn)預(yù)測效果,對飛行時間的實際值和預(yù)測值進行了可視化分析.由圖5可知,人工神經(jīng)網(wǎng)絡(luò)ANN模型預(yù)測值偏離嚴重,整體預(yù)測效果較差.SVR模型在飛行時間數(shù)據(jù)集中的15~25 min部分預(yù)測效果較好,但在飛行時間大于25 min或小于15 min時預(yù)測結(jié)果出現(xiàn)了較大的偏離.線性回歸LR模型相對ANN和SVR模型預(yù)測結(jié)果較穩(wěn)定,但部分預(yù)測值偏離嚴重.相較而言,XGBoost整體預(yù)測結(jié)果偏離程度較小,且保持了一定的穩(wěn)定性.
圖5 實際結(jié)果與預(yù)測結(jié)果對比圖Fig.5 Image of comparison between actual results and predicted results
1)分析終端區(qū)航空器的飛行特點并且總結(jié)了影響其飛行的5類因素,為后續(xù)建立模型特征集提供參考,根據(jù)實際數(shù)據(jù)獲取情況和模型需求提取了影響飛行時間預(yù)測的22個特征.
2)建立基于DBSCAN方法的路徑聚類模型,為預(yù)測航空器飛行時間提供了路徑類別.
3)建立基于XGBoost算法的進場航空器終端區(qū)飛行時間預(yù)測模型.結(jié)果顯示與LR、SVR以及ANN模型相比,XGBoost模型具有更優(yōu)的預(yù)測準確度,±5 min內(nèi)的預(yù)測準確率達到95.18%.