景一真,趙耀帥,傅之鳳,吳 格
(1. 北京交通大學計算機與信息技術(shù)學院,北京 100044;2. 北京交通大學交通數(shù)據(jù)分析與挖掘北京市重點實驗室,北京 100044;3. 中國民航信息網(wǎng)絡股份有限公司民航旅客服務智能化應用技術(shù)重點實驗室,北京 100105)
在機場大面積延誤場景下,航空公司需要為受影響的航班制定恢復方案。然而該場景下旅客可以選擇改乘其它航班、換乘其它交通工具或取消行程。并且由于民航業(yè)允許旅客無需即時完成退票或改簽操作,這就導致航空公司根本無法掌握延誤發(fā)生后隨時間動態(tài)變化的真實旅客成行需求量,即各個時間點仍在機場內(nèi)等待該航班的旅客數(shù)量。如果仍然按照原始需求量制定恢復方案,則會使得航班恢復后上座率比預期大幅降低,從而造成有限民航資源的浪費。因此如何實現(xiàn)延誤航班旅客動態(tài)成行需求量的準確預測是亟需解決的問題。
針對交通領(lǐng)域的需求量預測,已有諸多學者開展了相關(guān)研究。然而目前尚未有人專門針對延誤航班的旅客成行需求量預測這一任務開展工作。不過從文獻[2-5]可以看出,由于近年來機器學習快速發(fā)展,利用相關(guān)回歸預測模型可以實現(xiàn)較為準確的需求量預測,例如XGBoost、LSTM等。這些方法本質(zhì)上都是在尋找特征與真實目標值之間的映射關(guān)系,然而由于該任務應用場景的限制,航空公司無法獲得除實際起飛時間之外的其它時間點的真實旅客需求量,即缺少這些方法所需的真實擬合目標值,導致預測準確度難以保證。此外,這些方法需要將航班視為一個整體來進行需求量的預測,也忽視了旅客個體所包含的大量信息。
因此為了解決延誤航班動態(tài)成行需求量預測問題,本文從旅客個體角度出發(fā)提出一個兩階段預測算法框架,一是旅客是否會流失預測階段,二是會流失旅客的具體流失時間預測階段,最后通過在任意時間點上將這些旅客個體行為整合至航班的方式來實現(xiàn)動態(tài)成行需求量的預測。其中,旅客是否流失預測階段可以建模為一般的分類任務,而流失時間預測階段是該算法框架中的設計難點,因為其在實現(xiàn)過程中面臨兩個實際數(shù)據(jù)問題:一是大部分旅客在得知航班延誤后集中進行退票或改簽,這導致旅客流失時間分布極不均衡;二是真實的旅客流失時間無法獲取,只能將旅客退票或改簽的操作時間近似視為旅客流失時間,這導致該時間存在一定的模糊性。針對上述兩個挑戰(zhàn),本文在該階段提出了一種基于隨機森林(Random Forest, RF)和標記分布學習(Label Distribution Learning,LDL)的流失時間預測模型LDL-RF,該模型利用標記分布學習實現(xiàn)數(shù)據(jù)重用,從而緩解了數(shù)據(jù)分布不均的問題并弱化了流失時間的模糊性。
通過大量仿真驗證,本文提出的算法框架能夠?qū)崿F(xiàn)更加準確的旅客動態(tài)成行需求量預測,且LDL-RF模型可以在一定程度上緩解由實際數(shù)據(jù)問題給預測效果帶來的負面影響。
(1)
圖1 模型輸入輸出以及時間關(guān)系示意圖
表1 模型輸入信息對應的具體特征
M
建模成一個兩階段預測模型,完整的算法框架及流程如圖2所示。圖2 旅客動態(tài)成行需求量預測算法流程圖
這一階段用于預測某航班上有哪些旅客會在等待航班過程中流失。本文利用隨機森林模型來實現(xiàn)這一預測目標:以訓練集中的所有旅客信息作為樣本特征,如表1所示,以旅客最終是否流失作為樣本類別,依據(jù)隨機森林生成算法,生成可用于預測待測旅客是否流失的隨機森林二分類模型。
圖3 旅客流失時間與預測起始時間t0 (x=0)時間差值分布
3.
2.
1 流失時間分布的生成假設預測終止時間為t,本文將預測起始時間t到預測終止時間t這一時間段,以10分鐘為間隔,劃分為T個時間區(qū)間[0,10)、[10,20)、…、[t-t-10,t-t),每個時間區(qū)間對應一個標記。需要注意的是,時間區(qū)間內(nèi)各值為相對t時間點的分鐘數(shù)。然后將每一旅客樣本對應的相對流失時間(流失時間相對t時間點的分鐘數(shù)差值)基于高斯分布轉(zhuǎn)換為T個時間區(qū)間上的標記分布,具體計算如式(2)所示:
(2)
圖4 流失時間α3對應的標記分布
這樣雖然將流失時間這一實值變量轉(zhuǎn)換為多個區(qū)間損失了一小部分精度,但一個旅客樣本可以被多個時間區(qū)間重復使用,不僅可以彌補某些時間區(qū)間樣本太少的問題,同時也可以緩解流失時間模糊性所帶來的負面影響。
3.
2.
2LDL
-RF
模型的訓練和預測本文提出的LDL
-RF
模型是一個可輸出預測流失時間對應標記分布的隨機森林。LDL
-RF
采用啟發(fā)式的方法來生成隨機森林,具體為遍歷所有特征及其所有可能切分點中尋找滿足式(3)條件的第m個特征和其取值s,并分別作為最優(yōu)切分特征和最優(yōu)切分點來拆分輸入空間(3)
其中R(m,s)和R(m,s)是利用切分特征m和切分點s將輸入空間拆分出的兩個區(qū)域,如式(4)和(5)所示
R
(m
,s
)={x
|x
()n
≤s
}(4)
R
(m
,s
)={x
|x
()>s
}(5)
(6)
(7)
接著對每個區(qū)域重復上述劃分過程,直到滿足一顆決策樹的停止條件。并依此方法生成K
顆決策樹,組成LDL
-RF
模型。整個輸入空間被LDL
-RF
中的第k個決策樹劃分為Q個子區(qū)域,于是LDL
-RF
模型可表示為式(8)(8)
其中I(·)為指示函數(shù),滿足括號內(nèi)條件則值為1,否則為0。
(9)
3.2.3 旅客個體行為整合
(10)
本文所用數(shù)據(jù)集由中國航信提供,具體是2016年12月大面積延誤場景下的所有航班相關(guān)信息,包括1757架航班,218545位旅客。同時為了在不同數(shù)據(jù)情況下驗證方法的有效性,本文從此數(shù)據(jù)中通過限制航空公司或機場提取了8個子數(shù)據(jù)集,具體信息如表2所示。
表2 數(shù)據(jù)集信息
在實際數(shù)據(jù)中,每個時間點的真實旅客成行需求量是無法獲取的,只能將該航班的真實乘坐人數(shù)作為實際起飛時間的真實旅客成行需求量。因此在實驗當中,本文將模型在實際起飛時間的預測結(jié)果與真實旅客成行需求量作對比,即需求量預測評價指標為平均絕對誤差(Mean Absolute Error, MAE),如式(11)所示
(11)
4.4.1 基于全量數(shù)據(jù)的對比實驗
為了全面驗證方法的有效性,本文將提前預測時長x分別設置為0,1,3,6小時,對應四種不同的預測起始時間。實驗結(jié)果如圖5所示,OurModel代表本文方法。在x相同的情況下,如x的值為0小時,本文方法的誤差最小,僅為1.32,比另外三種方法中最好的RF還小2.1左右。隨著x值的增大,如x的值為6小時,本文方法誤差值上升到了5.44,但仍然小于所有基線方法。由此得知,本文方法能夠?qū)崿F(xiàn)更加準確的旅客動態(tài)成行需求量預測,而原因主要在于本文方法更為充分地利用了每位旅客個體的信息來實現(xiàn)需求量計算,而基線方法則是將航班視為一個整體,忽視了其中的旅客個體信息。
同時可以看出x的值越大,除OR外其它預測方法的誤差也會隨之變大,這是因為越早開始預測,所能獲取到的旅客集合與最終成行旅客集合差別就越大,預測難度也就越大,所以這樣的結(jié)果是符合實際場景的。
圖5 四種提前預測時長x對應四種方法MAE指標比較
4.4.2 不同數(shù)據(jù)集下的對比實驗
上述實驗是在全量數(shù)據(jù)集上的進行,而為了進一步探究在不同場景下算法的有效性,分別從航空公司和機場兩個維度劃分數(shù)據(jù)集來進行對比。表3和表4展示的是四種方法在提前預測時長x值為0小時的情況下不同航空公司或機場的誤差平均值和標準差,其中加粗數(shù)字是在該列中的最優(yōu)結(jié)果??傮w上看文中提出的方法表現(xiàn)都是最好的,特別是在面對一些小型航司,如航空公司D,XGBoost和RF甚至不如OR,表明在這種場景下傳統(tǒng)的回歸需求預測方法是不可行的,而文中的方法則可以穩(wěn)定的得到更優(yōu)的表現(xiàn),在誤差和標準差兩個維度均遠低于其它方法。由表4的誤差可以看出文中的方法對于不同機場的航班動態(tài)需求預測同樣表現(xiàn)最優(yōu)。
綜上所述,本文方法在不同數(shù)據(jù)集和不同預測場景下均能表現(xiàn)出優(yōu)異而穩(wěn)定的預測性能。
表3 提前預測時長x=0時四個航空公司對應四種方法MAE指標比較(平均值±標準差)
表4 提前預測時長x=0時四個機場對應四種方法MAE指標比較(平均值±標準差)
4.4.3 流失時間預測階段使用不同模型的對比實驗
為了驗證本文在流失時間預測階段提出LDL-RF這一模型的有效性,本文將該階段中的LDL-RF替換為傳統(tǒng)的隨機森林分類和回歸模型,并在提前預測時長x=0,1,3,6小時的情況下分別進行對比實驗。由表5可以看出,在相同x的情況下,使用分類和回歸模型的MAE指標均大于LDL-RF。由此可見,本文提出的LDL-RF模型通過將旅客樣本在多個流失時間區(qū)間上重用的方式,在一定程度上解決了旅客流失時間分布極不均衡以及流失時間不準確的問題,從而改善了模型預測效果。
表5 四種提前預測時長x對應流失時間預測階段使用不同模型MAE指標比較(平均值±標準差)
本文提出了一個兩階段預測算法框架,通過預測旅客個體是否會流失以及何時流失來獲得未來任意時間點的旅客成行需求量。相比回歸預測模型,本文方法的優(yōu)勢在于解決了該任務場景下旅客流失分布不均衡以及數(shù)據(jù)模糊的問題,同時也能夠更加充分地利用旅客個體信息。最后在多個真實場景數(shù)據(jù)集上驗證了算法框架以及流失時間預測算法的優(yōu)越性和魯棒性。未來工作可以進一步優(yōu)化本文提出的預測框架,例如為旅客生成自適應的流失時間分布,從而進一步提升預測準確性。