禹 倩,張亞東,郭 進,賴 培,馬 亮
(1.西南交通大學 信息科學與技術(shù)學院,四川 成都 611756;2.四川省列車運行控制技術(shù)工程研究中心,四川 成都 611756;3.中國鐵道科學院研究院集團有限公司 國家鐵路智能運輸系統(tǒng)工程技術(shù)研究中心,北京 100081)
隨著城市化建設(shè)的迅速發(fā)展,城市軌道交通系統(tǒng)已經(jīng)成為國內(nèi)外緩解城市交通擁堵的重要手段[1]。城市軌道交通網(wǎng)絡(luò)的不斷擴大,刺激了客流量的快速上升。以上海地鐵系統(tǒng)為例,地鐵網(wǎng)絡(luò)的平均日客運量從2003年的100萬人次發(fā)展至2018年的1 000萬人次[2]。地鐵網(wǎng)絡(luò)客流量的快速上升,引發(fā)了列車擁擠、地鐵設(shè)施容量不足等一系列問題。為了解決這一系列問題,許多學者提出了智慧地鐵[3],而短時客流預(yù)測是其中的關(guān)鍵問題。進站客流可能導致交通擁堵、乘客滯留或事故,對地鐵系統(tǒng)的影響更大。因此本文以進站客流為研究對象。
準確、可靠的客流信息有助于乘客調(diào)整出行路徑、方式和出發(fā)時刻,同時有助于調(diào)度人員采取積極的措施,如發(fā)布預(yù)警信息、控制客流、加車或臨時關(guān)閉車站等,來應(yīng)急響應(yīng)和預(yù)防踩踏事件。城市軌道交通的數(shù)據(jù)管理起步較晚,異常數(shù)據(jù)匱乏,現(xiàn)有的城市軌道交通短時客流預(yù)測模型[4-7]大都是在常態(tài)條件下提出和測試的。然而,在實際應(yīng)用中,城市軌道交通網(wǎng)絡(luò)是一個復(fù)雜的非線性系統(tǒng),引發(fā)客流突變的因素(惡劣天氣、節(jié)假日以及活動等)具有隨機性強,樣式多以及發(fā)生頻率高等特點。在常態(tài)條件下開發(fā)的預(yù)測方法,很難適用于異常條件下的客流預(yù)測。因此,如何在普遍條件下實現(xiàn)魯棒的客流預(yù)測仍是亟待解決的問題之一。
客流數(shù)據(jù)主要源于自動售票檢票系統(tǒng)(auto fare collection,AFC),是一種按照固定時間長度聚合的時間序列數(shù)據(jù)。因此,對客流數(shù)據(jù)的時間依賴性建模是預(yù)測任務(wù)的基礎(chǔ)[8]??土黝A(yù)測中典型的時間依賴性建模方法有基于數(shù)理統(tǒng)計的方法如ARIMA[9]及其變體,基于機器學習的方法如SVR[10],以及當前最流行的基于循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)的方法如GRU[11]。然而,上述大多數(shù)方法只考慮了最近時段的客流數(shù)據(jù),在異常條件下的客流預(yù)測中存在一定的局限性。為了解決這個問題,一些研究[12-15]增加了對外部環(huán)境因素的建模。例如,Wu等[12]考慮日期、天氣、空氣質(zhì)量等多源數(shù)據(jù),提出一種新型的縮放堆積梯度提升決策樹模型用于短時公交客流預(yù)測。滕靖等[13]分析外部環(huán)境因素(日期、節(jié)假日和天氣)對客流的影響,建立了基于PSO-LSTM的客流預(yù)測模型。馮樹民等[14]研究雨雪天氣下客流的波動規(guī)律,并應(yīng)用LSTM網(wǎng)絡(luò)建立考慮雨雪天氣下的客流預(yù)測模型。黃海超等[15]首先分析天氣因素(溫度、可見度、氣壓等)對客流的影響;然后采用灰色關(guān)聯(lián)度(GRA)建模天氣與客流量的非線性關(guān)系并量化;最后,根據(jù)GRA的值篩選關(guān)聯(lián)度高的因素和歷史客流數(shù)據(jù)一起作為BiLSTM的輸入進行預(yù)測。同時,比較不同因素對客流預(yù)測結(jié)果的影響,發(fā)現(xiàn)不包含天氣因素的模型預(yù)測效果最差。此外,還有一些研究針對某些特定的特殊事件(如體育賽事,音樂會等)建立單獨的客流預(yù)測模型,以此來提高異常條件下的客流預(yù)測精度。例如,梁強升[16]基于灰色預(yù)測理論構(gòu)建了廣交會期間客流量的短時預(yù)測模型。錢慧敏等[17]考慮日期屬性、活動類型、活動前后時段、天氣、主/客場隊伍等因素,采用梯度下降決策樹(GBDT)對體育賽事引發(fā)的大規(guī)模突發(fā)客流進行了短時預(yù)測。
綜上,在現(xiàn)有的客流預(yù)測研究中,存在一些不足之處:①只針對特定的場景(常態(tài)或異常)建模,模型的可擴展性差;②雖然考慮了時間依賴性和外部環(huán)境因素,但忽略了進/出客流本身的相關(guān)性,比如地鐵站進/出站客流存在“潮汐”現(xiàn)象[18];③影響進站和出站客流的因素存在差異,但大多數(shù)方法沒有考慮進站和出站客流預(yù)測模型的差異性。
針對上述不足之處,本文提出一種深度集成神經(jīng)網(wǎng)絡(luò)(deep ensemble neural network, DENN),用于城市軌道交通短時進站客流預(yù)測。該模型考慮了出站客流的相關(guān)性,進站客流的時間依賴性,以及外部環(huán)境因素,比如天氣、時間和特殊事件。具體地,利用GRU[11],one-hot編碼技術(shù)和全連接網(wǎng)絡(luò)分別提取時間依賴性和外部特征。特別地,利用Transformer[19]在長序列建模中的優(yōu)勢,自適應(yīng)地捕獲對進站客流影響最大的出站客流片段,以提取出站客流的相關(guān)性。此外,以上海地鐵徐涇東站和上海體育廣場站為測試對象,并與多種方法進行對比。結(jié)果表明,提出方法在一般場景下都能取得較好的預(yù)測精度。
城市軌道交通系統(tǒng)是一個復(fù)雜的非線性系統(tǒng),而車站進站客流量受多種因素的影響,這是客流預(yù)測精度受影響的根本原因。本文主要分析天氣、時間、特殊事件(如節(jié)假日和活動),以及出站客流對進站客流量的影響。
1)時間因素:由于通勤的原因,上班(學)的人群會在工作日相對固定的時段乘坐地鐵,所以地鐵進站客流在工作日和周末,以及上下班(學)時段和平時出現(xiàn)較大的差異。
2)天氣因素:大雨或暴雪等惡劣天氣可能會影響地面的公共交通,部分客流會轉(zhuǎn)入地鐵,造成地鐵站進站客流出現(xiàn)異常增長現(xiàn)象[20]。
3)節(jié)假日因素:在中秋、國慶和元旦等節(jié)日期間,不同區(qū)域地鐵站的客流變化不同。通常,機場和火車站等交通樞紐區(qū)的站點在假期開始和結(jié)束時會迎來較大規(guī)模的客流;辦公區(qū)和住宅區(qū)附近的站點在早晚高峰時段的客流量會明顯降低;商業(yè)區(qū)站點的客流量會明顯增長。需要注意的是,返鄉(xiāng)和出游等行為會使春節(jié)期間城市的客流量整體下降。節(jié)日和周末期間進站客流量的時間分布見圖1。由圖1可知,兩個車站在春節(jié)期間的客流量最小,其他節(jié)日期間的客流量和該站周末的客流量時間分布相似。
圖1 節(jié)假日期間進站客流量的時間分布
4)活動因素:大型活動(球賽、展會、演唱會等)結(jié)束后,靠近體育場、會展中心、音樂館等附近的站點在一段時間內(nèi)會有大規(guī)模的乘客涌入,給車站造成一定的壓力。不同規(guī)模和類型的活動可能造成不同的影響。徐涇東站(接近國家會展中心(上海))和上海體育場站活動期間和平時進站客流量的時間分布見圖2。其中,徐涇東站的活動指的是3個同時在上海會展中心舉辦的展會。由圖2(a)可知,展會為徐涇東站在12:00至20:00期間帶來了大量的客流,這種異??土鞒掷m(xù)的時間較長。上海體育場站的活動指的是中超聯(lián)賽。由圖2(b)可知,球賽為上海體育場站在20:30至22:30帶來了聚集性的大客流,這種客流持續(xù)的時間一般較短。
圖2 活動和平時進站客流量的時間分布
5)出站客流因素:地鐵站進/出站客流的時間分布可能出現(xiàn)明顯的“潮汐”現(xiàn)象[18]。大多數(shù)人群出行和返程可能選擇同種交通工具,導致在特定車站的某個時段出站方向出現(xiàn)大客流,在另一個時段該站的進站方向也可能出現(xiàn)相似的現(xiàn)象。徐涇東站和上海體育場站活動期間進/出站客流量的時間分布見圖3。
圖3 活動期間進站和出站客流量的時間分布
由圖3可知,一個出站客流高峰后伴隨著一個進站客流高峰。這說明出站客流和進站客流的相關(guān)性較強,尤其是在舉辦活動的時候。因此,出站客流可以作為預(yù)測進站客流的一個重要特征。
在分析影響進站客流因素的基礎(chǔ)上,提出一種考慮多種因素的城市軌道交通進站客流預(yù)測方法DENN。該方法構(gòu)建了3個模塊分別模擬預(yù)測任務(wù)中的外部環(huán)境因素,進站客流的時間依賴性以及出站客流的相關(guān)性,整體框架見圖4。
圖4 DENN的整體框架
本文的輸入數(shù)據(jù)主要為來自AFC的進/出站客流數(shù)據(jù)以及外部環(huán)境數(shù)據(jù)。針對數(shù)值型的進/出站客流數(shù)據(jù),首先通過最大-最小歸一化將數(shù)據(jù)轉(zhuǎn)化到[0,1]區(qū)間,以消除奇異樣本數(shù)據(jù)導致的不良影響[21]。接著,利用滑動窗口技術(shù)構(gòu)造進站和出站客流的輸入時序數(shù)據(jù)。t時刻進站客流(圖5,紅色片段)和出站客流(圖5,綠色片段)的輸入向量分別為
圖5 進站和出站客流的輸入示意
xt=[xt-T,xt-T+1,…,xt]∈R1×T
(1)
yt=[y0,y1,…,yt,yt+1,…,yL]∈R1×L
(2)
式中:xi和yi分別為時刻i的進站和出站客流量;T為進站客流歷史數(shù)據(jù)的長度;L為1 d的樣本數(shù)量,本文L=225。
對于出站客流的輸入yt,由于出站客流在何時對進站客流的影響較大是不確定的,無法選擇固定的時段作為輸入。因此,本文利用當天當前時刻t之前的所有已知出站客流量作為輸入,并將t時刻后的出站客流用0來填補(即yt+1=yt+2=…=yL=0),以保證不同時刻的輸入數(shù)據(jù)的長度一致。
針對非數(shù)值型的外部環(huán)境數(shù)據(jù),如文本和時間類型,首先將其轉(zhuǎn)化為類別型數(shù)據(jù),見表1。其中,關(guān)于天氣信息,本文主要考慮晴雨天及空氣質(zhì)量對客流的影響。關(guān)于活動信息,由于同一時期可能舉辦多個活動且活動的規(guī)模和開始/結(jié)束時間等詳情信息難以獲得,所以本文根據(jù)活動客流模式,將其分為3個等級無活動,類型1,類型2。特別地,類型1的客流特點為“聚緩散急”[22]即活動開始前參加活動的乘客的出站時間分散,活動結(jié)束后乘客的進站時間高度集中,如圖3(b)所示。這類客流模式一般為球賽或音樂會等活動導致。相應(yīng)地,類型2的客流特點為“聚緩散緩”即活動結(jié)束后乘客進站時間也是分散的,如圖3(a)所示。這類客流模式一般為展會導致。關(guān)于節(jié)日信息,由于清明、端午和國慶等節(jié)日的客流模式相似,所以將其歸為一類,而春節(jié)的客流與它們相差較大,所以單獨將其歸為一類;關(guān)于時間信息,本文主要考慮時刻和星期對客流的影響。t時刻外部環(huán)境的輸入向量為
(3)
表1 外部環(huán)境數(shù)據(jù)
GRU[11]是一種改進的循環(huán)神經(jīng)網(wǎng)絡(luò)。該網(wǎng)絡(luò)的輸出不僅取決于當前時刻的計算,還取決于以前時刻的計算,在捕獲時間序列長期依賴性中有明顯的優(yōu)勢。故本文采用GRU來提取最近時段進站客流的時間依賴性。GRU網(wǎng)絡(luò)的內(nèi)部結(jié)構(gòu)見圖6,其一次更新過程為
圖6 GRU的網(wǎng)絡(luò)結(jié)構(gòu)
rt=σ(Wr[ht-1;xt]+br)
(4)
ut=σ(Wu[ht-1;xt]+bu)
(5)
ct=tanh(Wc[ht-1⊙rt;xt]+bc)
(6)
ht=(1-ut)⊙ht-1+ut⊙ct
(7)
式中:xt為t時刻的輸入信息;ht-1∈Rm為t-1時刻的隱藏狀態(tài);m為隱藏狀態(tài)大小;[ ; ]表示兩個向量拼接;rt、ut分別為重置門和更新門,Wr、Wu分別為它們的權(quán)重矩陣,br、bu為對應(yīng)的偏置向量;ct為t時刻的候選隱藏狀態(tài),Wc、bc為對應(yīng)的權(quán)重矩陣和偏置向量;σ和tanh為激活函數(shù);⊙為哈達瑪積運算。
進站客流xt∈R1×T經(jīng)過GRU網(wǎng)絡(luò)得到的最終進站特征向量it∈Rm為最后一個GRU單元的隱藏狀態(tài)ht。
在深度學習算法中,Transformer[19]已經(jīng)成功應(yīng)用于自然語言處理[23]、機器視覺[24],以及長時間序列預(yù)測[24]等領(lǐng)域。受益于其核心的注意力機制,Transformer可以自動地學習序列中不同變量的重要程度,而不受時間先后順序的影響,成為長序列建模中的理想選擇[24]。由于本文構(gòu)造的出站客流數(shù)據(jù)較長(L=225),且基于前文分析的“潮汐”現(xiàn)象[18],本文采用Transformer學習進站客流與所有歷史出站客流之間的全局交互信息。
圖7 DENN中Transformer的網(wǎng)絡(luò)結(jié)構(gòu)
(8)
式中:FCs為全連接網(wǎng)絡(luò);ReLU為激活函數(shù)。
(9)
(10)
(11)
(12)
(13)
Step3經(jīng)過殘差連接和歸一化(Add&Norm)處理,以提高訓練的有效性和網(wǎng)絡(luò)的泛化能力,具體公式為
(14)
式中:Norm為進行歸一化處理。
Step4經(jīng)過前饋神經(jīng)網(wǎng)絡(luò)(FNN),獲得輸出。本文前饋網(wǎng)絡(luò)由兩個全連接層組成。
(15)
Step5重復(fù)Step4,得到客流相關(guān)信息ot。
Step6使it=ot重復(fù)N次Step2至Step5,以提取深層信息。
圖8 特征嵌入模塊的網(wǎng)絡(luò)結(jié)構(gòu)
如圖4所示,經(jīng)過上述各模塊的特征提取分別得到進站客流信息it,出站客流相關(guān)信息ot,以及外部特征信息et。參考文獻[25],本文通過全連接網(wǎng)絡(luò)對提取的特征進行融合并實現(xiàn)預(yù)測,具體計算式為
iot=ReLU[FCs([ot;it])]
(16)
(17)
此外,為了評估模型,本文采用均方根誤差RMSE、平均絕對誤差MAE和平均絕對百分比誤差MAPE作為評價指標[18]。最小化實際進站客流量和預(yù)測值之間的誤差。DENN模型的損失函數(shù)loss為
(18)
本文選取上海地鐵的徐涇東站(接近國家會展中心(上海))和上海體育場站的進站客流作為預(yù)測目標。采用2018年7月1日至2019年5月31日的AFC數(shù)據(jù)作為實驗數(shù)據(jù)集。該數(shù)據(jù)集包括周末、節(jié)假日以及期間的所有活動共計335 d。每個車站每天有225個樣本,從05:00:00到23:40:00每5 min匯總一次。將前300 d(2018-07-01—2019-04-26)作為訓練集,后35 d作為測試集(2019-04-26—2019-05-31)。訓練集和測試集中客流數(shù)據(jù)詳情見表2,如果在節(jié)日期間舉辦了活動,則該天的客流視為活動客流。
表2 數(shù)據(jù)描述
在兩個數(shù)據(jù)集上,對DENN的參數(shù)經(jīng)過多次調(diào)整,確定最終參數(shù)見表3。此外,在兩個數(shù)據(jù)集上對模型進行訓練時,將優(yōu)化器、批次大小、學習率、衰減率以及最大訓練次數(shù)epoch分別設(shè)置為Adam、64、0.001、0.4和100。訓練的損失函數(shù)變化見圖9,由圖9可知DENN在兩個數(shù)據(jù)集上經(jīng)過40次訓練后,逐漸收斂。這說明模型具有較好的收斂性和魯棒性。
表3 DENN在兩個數(shù)據(jù)集上的參數(shù)設(shè)置
圖9 兩個車站的損失變化
為了進一步展示DENN模型的預(yù)測效果,選擇以下幾種基準模型作對比。
1)歷史平均 (historical average,HA):采用過去2周內(nèi)同一天相同時段的客流量均值來預(yù)測未來對應(yīng)時間段的客流。
2)套索回歸(lasso regression,LR):在多元線性回歸基礎(chǔ)上增加了一個L1懲罰函數(shù)。輸入為DENN中的進站客流分量。
3)XGBoost[6]:一種集成學習方法,由一些列弱學習器組成。本文將學習器的數(shù)量(n_estimators)設(shè)為350,最大深度(max_depth)設(shè)為9,最小子節(jié)點權(quán)重和(min_child_weight)設(shè)為4。輸入為DENN中的進站客流和外部特征。
4)GRU:包含一個隱藏層及一個全連接層,其他設(shè)置與DENN相同。輸入為DENN中的進站客流。
此外,為了驗證DENN中每個分量的有效性,還設(shè)計了DENN的兩種變體模型。
1)DENN/ex:該模型不包含特征嵌入模塊。
2)DENN/out:該模型不包含Transformer。
上述兩種變體模型,除了以上提及的差異,其他設(shè)置與DENN相同。
本文所有模型的運行環(huán)境是NVIDIA RTX3060 GPU。所提模型是在Tensorflow2.7框架下實現(xiàn)的,訓練一個批次的時間是10.74 s,預(yù)測一個批次的時間是0.53 s。提出方法可以實時運行,能夠?qū)崿F(xiàn)在線預(yù)測。
所有模型在兩個車站的預(yù)測結(jié)果見表4。由表4可知,由于傳統(tǒng)的線性模型HA和LR無法學習到地鐵客流量的非線性特征,預(yù)測性能較差。對比XGBoost和DENN/out可知,在相同的輸入信息下,基于RNN的神經(jīng)網(wǎng)絡(luò)方法效果優(yōu)于傳統(tǒng)的機器學習算法。對比神經(jīng)網(wǎng)絡(luò)方法(表4后4行)可知,融合出站信息或外部環(huán)境數(shù)據(jù)都能進一步提高模型的預(yù)測精度。具體地,在徐涇東和上海體育場站,就MAE而言,DENN較GRU分別下降了10.29%和17.82%。對比DENN/out,DENN/ex和DENN,在徐涇東站(上海體育場站),較DENN/out和DENN/ex的MAE,DENN分別下降了4.83%和2.87%(3.08%和9.04%)。
表4 所有模型在徐涇東和上海體育場站的預(yù)測結(jié)果
此外,本文還分析了提出模型和幾種對比模型在常態(tài),活動以及節(jié)日3種場景下的預(yù)測性能,結(jié)果見圖10。由圖11可知,提出模型DENN在兩個車站的3種場景下,所有的預(yù)測指標都優(yōu)于其他模型。同時,為了更好的說明客流量的波動和DENN的預(yù)測結(jié)果,圖11展示了DENN在工作日,非工作日,勞動節(jié)以及活動期間的部分客流預(yù)測結(jié)果及殘差。其中,徐涇東站的活動是2019上海國際美容美發(fā)化妝用品進出口博覽會,上海體育場站的活動是足球賽。由圖10、圖11可知,提出模型在所有場景下都能很好地捕捉真實的客流波動。這進一步說明了DENN具有較強的魯棒性。
圖10 多種模型在多種場景下的預(yù)測結(jié)果對比
圖11 DENN的預(yù)測值和真實客流量的比較
為了進一步分析外部因素對預(yù)測結(jié)果的影響程度,本文設(shè)計了DENN的6種變體模型。
1)DENN_w:特征嵌入模塊只包含晴雨天特征。
2)DENN_q: 特征嵌入模塊只包含空氣質(zhì)量特征。
3)DENN_a: 特征嵌入模塊只包含活動特征。
4)DENN_f: 特征嵌入模塊只包含節(jié)日特征。
5)DENN_x: 特征嵌入模塊只包含星期特征。
6)DENN_t: 特征嵌入模塊只包含時刻特征。
6種變體模型,除了以上提及的差異,其他設(shè)置與DENN相同。上述模型在兩個車站上預(yù)測結(jié)果的MAE見表5。對比不包含外部特征模塊的變體模型DENN/ex可知,在兩個車站上所有變體模型的MAE都有了進一步的改進。在徐涇東站,天氣對預(yù)測結(jié)果的影響最大,星期的影響最小;在上海體育場站,節(jié)日對預(yù)測結(jié)果的影響最大,空氣質(zhì)量的影響最小。這說明了不同車站對不同因素的敏感程度不同,同時進一步說明了對外部因素建模的有效性。
表5 所有變體模型在徐涇東和上海體育場站的預(yù)測結(jié)果
提出模型中Transformer模塊的注意力權(quán)重衡量了不同時刻的出站客流對進站客流預(yù)測的重要程度。上海體育場站連續(xù)兩周同一天(2019年5月4日和2019年5月11日)預(yù)測過程中每個時刻的進站客流與其對應(yīng)的歷史出站客流之間的注意力權(quán)重見圖12,其中顏色越深表示權(quán)重越大。由圖12中熱力圖的每列可知,特定時刻出站客流的注意力權(quán)重在不同的預(yù)測時刻是動態(tài)變化的;同時,由熱力圖的每行可知,預(yù)測特定時刻的進站客流時,對應(yīng)的歷史出站客流具有不同的注意力權(quán)重。這說明提出方法能夠自適應(yīng)地捕獲進站和出站客流之間的動態(tài)交互信息。
圖12 上海體育場站不同日期預(yù)測過程中進站和出站客流之間交互的注意力權(quán)重
本文提出了用于城市軌道交通短時進站客流預(yù)測的深度集成神經(jīng)網(wǎng)絡(luò)DENN。與以往相似的研究相比,DENN同時考慮了出站客流,最近時段的進站客流以及外部環(huán)境數(shù)據(jù),如天氣、時間和特殊事件,對進站客流的影響。同時,將Transformer引入客流預(yù)測領(lǐng)域,以提取出站客流的相關(guān)性。此外,使用上海地鐵徐涇東站和上海體育場站的實際運營數(shù)據(jù)對相關(guān)模型進行了對比實驗。結(jié)果表明:
1)集成了外部環(huán)境信息和出站客流信息的DENN模型大大地改善了預(yù)測效果,與只考慮進站客流時間依賴性的GRU相比,MAE至少下降了10%。
2)DENN在普遍場景下的預(yù)測效果都優(yōu)于其他對比模型,具有更強的魯棒性,適用于實際應(yīng)用。下一步研究可以考慮空間特性及時刻表等領(lǐng)域知識,以進一步提高客流的預(yù)測精度,為時刻表調(diào)整和客流指導提供更準確的數(shù)據(jù)支持。