趙征,馮事成,宋梅雯,胡莉,陸莎
(1.南京航空航天大學 民航學院,南京 211106)
(2.上海國際機場股份有限公司運行指揮中心,上海 201202)
大型民用機場場面運行復雜,實際運行中,經常出現進港航空器的機位保障資源不能及時到位;離港航空器按照預計時間推出,但跑道頭排隊錯位導致無法滿足分配起飛時刻的情況。上述現象主要是由于機場協同決策(A-CDM)系統中滑行時間設置較為單一和靜態,缺乏科學預測和動態修訂而導致的。通過對航空器進港和離港滑行時間的精確和動態預測,可以更加準確地計算出預計上輪擋時間、預計推出時間等,從而提升機場的運行效率,提高航班準點率。
在滑行時間影響因素的分析方面,A-CDM 系統實施文件中將影響滑行時間最常見的因素歸為11 種,包括機場布局和機場設施、使用的跑道、跑道交叉的次數、停機位、氣象條件、航空器類型和飛行員、航空器重量、推出指令傳達時間、除冰位、交通密度和機場當地的操作程序。R. A.Shumsky基于排隊論,考慮航空公司、離港跑道和離港需求等影響因素,對離港滑行時間進行預測;H.Idris 等分析了影響滑行時間的主要因素,如起飛隊列長度、跑道配置、天氣、飛機類型和停機位等,并使用排隊論模型對離港滑行時間進行預測,結果顯示起飛隊列長度是最重要的影響因素,但是模型在±5 min 范圍內的預測精度不到70%。
針對前人研究中關于進港航空器數量對離港滑行時間影 響有限的觀點,R. R. Clewlow 等經過分析證明了進港航空器數量對離港滑行時間有著顯著影響,且進/離港航空器流交互越多,這種影響就越顯著;劉繼新等分析了航空器滑行時間的影響因素,結果表明,場面流量對滑行時間的影響最為顯著。
在滑行時間預測模型和方法的研究方面,M.S.Kistler 等以達拉斯—沃思堡國際機場為對象,使用線性回歸和對數線性回歸模型對航空器滑行時間進行預測,結果表明,線性回歸模型預測效果較好,在±1 min 誤差范圍內,預測精度達到71%,決定因子值達到0.95;P.Balakrishna 等采用強化學習算法對美國的三個機場進行了離港滑行時間預測,算法在底特律國際機場和坦帕國際機場表現出較好的預測效果;S.Ravizza 等提出滑行距離應分為推出段、轉彎段和直線滑行段,并研究了飛機滑行通過這三段時的滑行角度和速度,然后基于多元線性回歸、最小中位數平方線性回歸、支持向量機和M5 模型樹等對離港滑行時間進行了預測;H.Lee 等以夏洛特機場為例,基于神經網絡、線性回歸模型、支持向量機、近鄰和隨機森林等算法對滑行時間進行預測,并比較了這幾種算法的預測效能,結果顯示,支持向量機預測效果 優 于 其 他 模 型;T. Diana比 較 了 集 成 機 器 學習、普通最小二乘法和懲罰算法在預測滑行時間方面的性能,以探究機器學習是否比傳統的線性回歸具有更好的預測效能,結果表明,在對預測結果進行偏差和方差的評估比較方面,兩者各有優劣,故在模型選擇時應當以偏差和方差的均衡作為選擇依據;Wang X W 等比較了線性回歸、梯度提升決策樹和隨機森林等算法對滑行時間的預測效果,并研究了各個特征對模型的影響程度,得出使用一小部分特征(包括所有機場的一般性特征起飛/到達、滑行距離、總轉彎數、平均速度和航空器數量),以及針對特定目標機場的少數特征,就可以實現較高的預測準確性;李楠等基于多元回歸模型,分別采用傳統統計學和機器學習預測航空器離港滑行時間,結果顯示,機器學習的預測準確度較高,±5 min 誤差范圍內預測精度達到87%;馮霞等將離港滑行時間預測劃分為兩個階段,先利用已知特征預測離港滑行過程中使用相同跑道起降的航班數量,再將其作為變量輸入滑行時間預測模型,結果顯示,該方法的預測效果優于直接預測。
現有研究成果大都只針對離港滑行時間進行分析預測,且未分析樣本數據量對預測模型的影響。考慮到進/離港滑行在影響因素和滑行時間上均存在差異,進港滑行時間的準確預測對計算預計上輪擋時間和確定地面保障資源的到位時間至關重要,而樣本數據量與預測效果的關聯分析可為機場的系統開發和運行提供參考。因此,本文采用XGBoost 算法針對進港滑行時間和離港滑行時間分別進行預測,并剖析機場滑行時間預測所需樣本數據量與滑行時間預測精度的關聯。
雖然滑行時間預測的算法具有一定程度的普適性,但因機場機位和機坪布局、跑滑構型、滑行規則、氣象環境等的不同,導致不同機場的航空器滑行時間影響因素有其定制性。因此,本文首先介紹滑行預測方法的實證機場信息,然后針對實證機場進行影響因素的分析提取。
廣州白云國際機場(以下簡稱“白云機場”)是中國三大門戶復合樞紐機場之一,也是中國最繁忙的五大機場之一,年旅客吞吐量超5 000 萬人次。白云機場場面布局圖如圖1 所示,機場建有三條跑道,跑道運行方向為南北運行,01/19 號跑道進、離場混合運行,02L/20R 號跑道主要用于離場,02R/20L 號跑道主要用于進場。機場共有2 個航站樓,分別為T1 和T2,停機位275 個,主要分布在東機坪、西機坪、北機坪以及其他區域。

圖1 廣州白云國際機場場面布局Fig.1 Layout of Guangzhou Baiyun International Airport
1.1.1 航空器滑行規則
進港航空器滑行方面,由01 號和19 號跑道進港的航空器主要滑入北機坪和東機坪,由02R 號和20L 號跑道進港的航空器主要滑入北機坪和西機坪。離港航空器滑行方面,東機坪、西機坪和北機坪的航空器經由01 號、02L 號和20R 號跑道離港,而19 號跑道只有東機坪和北機坪的航空器經此跑道離港。
1.1.2 機場天氣概況
白云機場位于廣州市北部花都區,處于雷雨多發地帶,據統計白云機場近50 年來,年平均出現雷暴日數為75.4 天,最多為109 天,最少為49 天。此外,因受臺風或臺風外圍因素影響,經常出現短時強陣雨。雷暴和強陣雨是影響白云機場航空器滑行兩個最主要的天氣因素。
航空器滑行時間受多種因素影響,不同機場存在共同的影響因素,也有其特定的影響因素。基于對機場運行環境的分析,白云機場場面存在較多交叉路口,容易造成滑行沖突,因此存在較多沖突熱點區域(Hot Spot,簡稱HS);且由于機位分配的原因,使得航空器存在穿越跑道滑行和交叉滑行的可能。針對白云機場場面運行環境選取三個特定的影響因素,即經過HS 的數量、是否交叉滑行、是否穿越跑道;兩個一般性影響因素,即所屬航空公司、停機位,通過統計單個影響因素下的平均滑行時間,直觀展示各個因素對滑行時間的影響情況,為最終影響因素集的確定提供分析方法。
1.2.1 經過HS 的數量
經過HS 區域時,航空器可能需要減速或者停車,待其他航空器通過后才能繼續滑行。隨著經過HS 的數量增多,航空器需要減速或者停車的幾率會增加,滑行時間的受影響程度也會增大。由HS 數量統計的平均滑行時間如圖2 所示,可以看出:當經過HS 的數量從0 增加到2 時,進港平均滑行時間依次增加約5%和58%,離港平均滑行時間依次增加約2%和13%。

圖2 由經過的HS 數量統計的平均滑行時間Fig.2 Average taxi time measured by HS number
1.2.2 交叉滑行
交叉滑行是反映航空器滑行距離的重要因素,若從東機坪離港的航空器由01/19 號跑道起飛,或從西機坪離港的航空器由02L/20R 號跑道起飛,則視為存在交叉滑行;同理,若從01/19 號跑道進港的航空器滑入東機坪,或從02R/20L 號跑道進港的航空器滑入西機坪,則視為存在交叉滑行。由交叉滑行統計的平均滑行時間如圖3 所示,可以看出:當存在交叉滑行時,進港平均滑行時間增加約70%,離港平均滑行時間增加約10%。

圖3 由交叉滑行統計的平均滑行時間Fig.3 Average taxi time calculated by cross taxi
1.2.3 穿越跑道
對于白云機場由02R/20L 號跑道進港的航空器存在穿越02L/20R 號跑道的情況,若此時02L/20R 號跑道上有航空器離港起飛,則由02R/20L 號跑道進港的航空器必須在穿越點外等待,進港滑行時間會受到影響。由穿越跑道統計的平均進港滑行時間如圖4 所示,可以看出:當航空器存在穿越跑道的情況時,進港平均滑行時間增加約54%。

圖4 由穿越跑道統計的平均滑行時間Fig.4 Average taxi time calculated by crossing runway
1.2.4 所屬航空公司
不同航空公司對航空器推出模式和航空器滑行速度有不同的規定,會對航空器滑行時間造成影響。由航空公司統計的平均進港滑行時間和平均離港滑行時間分別如圖5~圖6 所示,可以看出:不同航空公司航空器平均進/離港滑行時間均存在較大差異。

圖5 由航空公司統計的平均進港滑行時間Fig.5 Average taxi-in time calculated by airline

圖6 由航空公司統計的平均離港滑行時間Fig.6 Average taxi-out time calculated by airline
1.2.5 停機位
從同一跑道起飛/落地的航空器,由于停放區域不同,會對航空器滑行造成兩方面的影響,一是滑行距離不同,二是滑行過程中受其他航空器干擾的程度不同,每一方面都會對滑行時間造成影響。由停機位統計的平均進港滑行時間和平均離港滑行時間分別如圖7~圖8 所示,可以看出:不同停機位上的航空器平均進/離港滑行時間均存在較大差異。

圖7 由停機位統計的平均進港滑行時間Fig.7 Average taxi-in time calculated by stand

圖8 由停機位統計的平均離港滑行時間Fig.8 Average taxi-out time calculated by stand
基于現有研究選取影響滑行時間的其他因素,如航空器類型、起飛/到達跑道、時段、起飛隊列長度、場面同時滑行的航空器數量和天氣。針對場面滑行的航空器流量統計方法,本文采用Yin Jianan 等基于宏觀網絡拓撲圖對流量的計算方法,將其分為離港瞬時流量、離港累計流量、進港瞬時流量和進港累計流量。在對天氣的處理上,結合機場運行的天氣統計數據和管制一線經驗,將對航空器滑行會造成較嚴重影響的雷暴和強陣雨天氣視為惡劣天氣,其他對航空器滑行幾乎沒有影響的天氣視為正常天氣,而后根據機場記錄的歷史天氣情況給每一個航班標定對應的天氣類型。結合對特定影響因素的分析提取,最終確定的進/離港滑行時間影響因素如表1 所示。

表1 進/離港滑行時間影響因素Table 1 Influencing factors of taxi-in and taxi-out time
XGBoost 的英文全稱為Extreme Gradient Boosting,是Chen Tianqi 等提出的一種梯度提升模型,也是一種基于決策樹的集成機器學習算法。相較于前幾代基于決策樹的算法,XGBoost算法可在最短的時間內,使用較少的計算資源,得到較為出色的結果。
為了更加直觀地比較XGBoost 算法在航空器滑行時間預測方面的性能,本文選擇隨機森林和支持向量回歸兩種常用的滑行時間預測算法用以對比分析。
在對模型預測性能的評估上,選擇決定系數()、均 方 根 誤 差()和 平 均 絕 對 誤 差()三個指標。通常情況下,值越大,自變量可以解釋的滑行時間變化的比例越大,然而,值過大也可能意味著一些過擬合的問題;衡量觀測值與真實值之間的偏差;反映預測值誤差的實際情況,它們是機器學習中評價模型的兩把重要標尺。這兩個指標的計算公式如下:

式中:為所有進港航班或者所有離港航班;p為航班滑行時間的預測值;t為航班滑行時間的真實值。
2.2.1 模型輸入
本文先進行訓練集和測試集的劃分,然后進行數據預處理,包括異常值和空缺值的處理,以避免模型提前學習到測試集數據信息。在測試不同劃分比例的預測效果后,最終選定以80%的數據作為訓練集,20%的數據作為測試集。以進港為例,經過預處理后的進港航班數據如表2 所示。
基于前文對滑行時間影響因素分析的結果,從預處理后的數據中提取、計算用于輸入模型的各個特征,而后通過編碼將計算機無法識別的字符信息,如航空公司代碼、機型和跑道號等轉化為數值型信息,作為模型的最終輸入數據。以進港為例,模型最終輸入的進港數據如表3 所示。

表2 預處理后的進港航班數據Table 2 Preprocessed incoming flight data

表3 輸入模型的進港數據Table 3 Incoming flight data input to model
2.2.2 模型輸出
模型輸出即是預測的滑行時間。本文參照中國民用航空局A-CDM 系統的相關定義,進港航空器滑行時間(指航空器從落地()時刻到滑入停機位上輪擋()時刻之間的時間。

離港航空器滑行時間()指航空器從撤輪擋時刻()到起飛離地時刻()之間的時間。

機器學習模型的預測性能主要取決于兩方面因素,一是數據本身的質量,二是模型參數的調整。為了進一步提高模型預測效果,需對基于XG?Boost 的滑行時間預測模型進行調參。
首先,介紹對XGBoost 算法預測性能影響較大的關鍵參數。n_estimators 為集成算法中弱評估器的數量,此參數值越大,模型的學習能力越強,但模型也越容易過擬合;min_chil_weight 參數控制葉子上所需的最小樣本量,它的調整對于樣本量較大的數據比較有效;max_depth 控制模型中樹的最大深度,這個參數值越大模型越復雜,且模型容易過擬合;Subsample 參數控制隨機抽取的用于訓練的數據比例;learning_rate 參數控制迭代速率,兩者都可以防止模型過擬合;reg_lambda 和reg_alpha參數分別是權重的L1 和L2 正則化項;Gamma 控制節點分裂所需的最小損失函數下降值,它們可以降低模型的復雜度,加快算法收斂速度。然后,本文使用網格搜索對XGBoost 算法的關鍵參數進行調整,并以交叉驗證結果作為參數選擇的標準。最后,經過多輪測試調參,確定的部分關鍵參數最佳值如表4 所示。

表4 模型關鍵參數最佳值Table 4 The optimal value of key parameters of the model
在對滑行時間影響因素分析、模型及模型預測性能評估標準和模型輸入輸出介紹的基礎上,總結出滑行時間預測的步驟,如圖9 所示。

圖9 滑行時間預測步驟Fig.9 The steps of taxi time prediction
基于隨機森林、支持向量回歸和XGBoost 三種模型對進港和離港滑行時間分別進行預測。首先對白云機場進/離港滑行時間進行統計,為預測結果分析中誤差范圍的確定提供參考;然后比較三種模型的預測性能,分析特征的重要性;最后分析樣本數據量對模型預測精度的影響。
本文所用航班數據來源于白云機場塔臺運行管理系統(TOMS)2019 年全年數據,數據內容包括航空公司、航班號、機型、進港跑道、離港跑道、進港機位、離港機位、進港時間、出港時間、上輪擋時間和撤輪擋時間。去除數據中的缺失值和時間邏輯錯誤值后得到進港航班數據約19 萬條,離港航班量數據約20 萬條。
分別對進港滑行時間和離港滑行時間進行統計,統計結果如表5 所示,可以看出:進港滑行時間集中在5~10 min,離港滑行時間集中在16~23 min,進港滑行時間遠小于離港滑行時間。

表5 進港和離港滑行時間統計Table 5 Statistics of taxi-in and taxi-out time
結合白云機場進/離港滑行時間統計結果和現有研究成果,選擇進港滑行時間以±3 min 誤差范圍,離港滑行時間以±5 min 誤差范圍為評估標準。
支持向量回歸、隨機森林和XGBoost 模型的擬合度和預測誤差的評估結果如表6~表7 所示。

表6 進港滑行時間預測模型評估結果Table 6 Evaluation results of the prediction model for taxi-in time

表7 離港滑行時間預測模型評估結果Table 7 Evaluation results of the prediction model for taxi-out time
從表6~表7 可以看出:無論是訓練集還是測試集,三個模型均得到較高的值和較小的誤差值,證明模型在進/離港滑行時間的預測上均有良好的性能。其中,雖然進港滑行時間預測結果的誤差值小于離港,但考慮到進港滑行時間遠小于離港滑行時間,故從誤差比例的角度來看并不能認為模型對進港滑行時間的預測效果優于離港滑行時間。支持向量回歸和XGBoost 在訓練集和測試集上的表現較為穩定,而隨機森林則有較大的波動。在訓練集上,隨機森林值過大,達到了0.96,表明模型存在過擬合的情況。在測試集上,XGBoost 的預測效能優于隨機森林和支持向量回歸,其值比兩者都高,而誤差值比兩者都低。
進港和離港滑行時間預測結果與實際值誤差在±1、±2、±3、±4 和±5 min 范圍內的模型預測精度如表8~表9 所示。

表8 進港滑行時間預測精度Table 8 Prediction accuracy of taxi-in time

表9 離港滑行時間預測精度Table 9 Prediction accuracy of taxi-out time
從表8~表9 可以看出:進港滑行時間預測方面,±3 min 誤差范圍內,三個模型精度均在91%以上。其中,支持向量回歸預測精度最低,僅有91.2%,XGBoost 預測精度最高,達到了94.1%。離港滑行時間預測方面,±5 min 誤差范圍內,三個模型精度均在93%以上。其中,支持向量回歸預測精度最低,僅有93.1%,XGBoost 精度最高,達到了96.6%。
三個模型進港和離港滑行時間預測值與實際值之差的對比如圖10~圖11 所示,可以看出:支持向量回歸算法預測結果的誤差值范圍最大,XG?Boost 算法最小。

圖10 三種算法進港滑行時間預測值與實際值之差Fig.10 Difference between the predicted and actual taxi-in time of the three algorithms

圖11 三種算法離港滑行時間預測值與實際值之差Fig.11 Difference between the predicted and actual taxi-out time of the three algorithms
根據XGBoost 和隨機森林得出的特征重要度排名,探究針對白云機場提取的特定影響因素對于滑行時間預測的重要性。隨機森林和XGBoost的進港特征重要度排名如圖12~圖13 所示,可以看出:在兩者的結果中,交叉滑行都具有最高的特征重要度;在XGBoost 的結果中,穿越跑道和經過HS 數量的特征重要度也排在前4。
隨機森林和XGBoost 的離港特征重要度排名如圖14~圖15 所示,可以看出:交叉滑行和經過HS 的數量只在XGBoost 的結果中具有約0.05 的特征重要度,而在隨機森林的結果中,這兩個特征的重要度只有約0.01。此外,所屬航空公司在進港和離港中的重要度都不超過0.02。

圖12 隨機森林進港特征重要度排名Fig.12 Feature importance of taxi-in time of random forest

圖13 XGBoost 進港特征重要度排名Fig.13 Feature importance of taxi-in time of XGBoost

圖14 隨機森林離港特征重要度排名Fig.14 Feature importance of taxi-out time of random forest

圖15 XGBoost 離港特征重要度排名Fig.15 Feature importance of taxi-out time of XGBoost
對特征重要度的分析表明,針對白云機場提取的特征對于進港滑行時間預測的重要性高于離港滑行時間預測,其中交叉滑行、穿越跑道和經過HS 的數量這三個特征的重要性高于所屬航空公司。
滑行時間預測使用的進港航班數據量約19 萬條,離港航班數據量約20 萬條,過大的數據量會造成數據采集、處理和計算負擔。為了研究XG?Boost 模型預測精度隨樣本數據量的變化情況,在保留所有特征信息的基礎上,對進港和離港數據分別進行3 次隨機采樣,數據量從2 000 條開始,并以2 000 作為梯度,一直增加到40 000 條,之后用3次樣本預測的均值作為最終結果。
進港和離港滑行時間預測精度隨數據量的變化情況如圖16~圖17 所示,可以看出:進港和離港滑行時間預測精度隨數據量的增加呈逐步提高的趨勢,但隨著數據量的增加,這種趨勢逐漸變緩。當數據量在26 000 條以下時,預測精度的變化趨勢波動較大,預測精度的提高速度較快;當數據量超過26 000 條,預測精度的變化趨勢變得平緩;當數據量超過32 000 條,進港±3 min 誤差范圍的預測精度穩定在93.0%~93.5%,離港±5 min 誤差范圍的預測精度穩定在95.0%~95.5%。

圖16 進港滑行時間預測精度隨數據量的變化情況Fig.16 The change of the prediction accuracy of the taxi-in time with the data quantity

圖17 離港滑行時間預測精度隨數據量的變化情況Fig.17 The change of the prediction accuracy of the taxi-out time with the data quantity
對模型預測精度隨樣本數據量變化的分析表明,當數據量超過32 000 條時,模型就能獲得較高的預測精度和較穩定的預測表現。
(1)本文提出了基于XGBoost 的航空器動態滑行時間預測方法,并以白云機場為實例,驗證了方法的有效性。
(2)模型預測結果表明,XGBoost 算法在預測誤差和預測精度方面都優于隨機森林和支持向量回歸;且使用XGBoost 算法,進/離港滑行時間的預測精度分別達到了94.1%和96.6%。
(3)對特征重要度的分析表明,提取的特征能夠較好地反映白云機場滑行態勢,且提取的特征對于進港滑行時間預測的重要性要高于離港滑行時間預測,其中交叉滑行、穿越跑道和經過HS 的數量這三個特征的重要性高于所屬航空公司。
(4)對模型預測精度隨樣本數據量變化的分析表明,當數據量超過32 000 條時,模型就能獲得較高的預測精度和較穩定的預測表現,可為白云機場A-CDM 系統中滑行時間動態預測所需樣本量提供參考。