胡明偉,何國慶,吳雯琳,趙 千
(1. 深圳大學 土木與交通工程學院,廣東 深圳 518060; 2. 濱海城市韌性基礎設施教育部重點實驗室(深圳大學), 廣東 深圳 518060; 3. 深圳大學 未來地下城市研究院,廣東 深圳 518060)
城市地鐵以其經(jīng)濟、便利、高效的運營優(yōu)勢,逐漸成為大眾出行的首要選擇,現(xiàn)在城市地鐵的客流也與日俱增[1]。據(jù)相關統(tǒng)計,截至2021年6月全國41個城市地鐵總客運量達19.61億人次,日平均6 577.76萬人次,比2019年6月上漲0.94%。面對日益龐大的地鐵客流,通過歷史客流數(shù)據(jù)精準預測未來的短時客流量,是地鐵運營公司制定日常行車計劃和突發(fā)事件緊急疏散預案的重要依據(jù)。因此,如何對城市地鐵短時客流量進行高效、準確預測是地鐵運營管理者所關注的問題。
近些年來,地鐵客流短時預測領域的研究已受到國內外學者高度關注,常見的客流預測方法可分為統(tǒng)計學的客流預測方法和機器學習的客流預測方法。
統(tǒng)計學的客流預測方法包括平均模型、時間序列模型、指數(shù)平滑模型、卡爾曼濾波模型和非參數(shù)回歸模型等[2-3]。B.M.WILLIAMS等[4]提出了基于季節(jié)性移動平均(SARIMA)的客流預測模型;韓超等[5]通過改進ARIMA,減少遺忘因子,以達到提升模型預測精度的目的;熊杰等[6]通過構建卡爾曼濾波模型,實時采集最新數(shù)據(jù),以此得到早晚高峰期客流量的精準預測。
機器學習的客流預測方法主要包括支持向量機、貝葉斯及神經(jīng)網(wǎng)絡等[7]。HAN Huiting等[8]提出了基于XGBoost的高速鐵路客流預測模型,通過對高鐵訂票信息作為重要的客流特征進行模型訓練,得到的預測值比傳統(tǒng)模型預測值精度更高;張淑玉等[9]從歷史客流數(shù)據(jù)和預售期已售票額出發(fā),提出了基于發(fā)車時間、行車時間、休息日等客流特征的貝葉斯預測模型,在客流預測中取得較好效果;李若怡等[10]將時空特征作為輸入層,采用改進的LSTM模型對運營客流OD數(shù)據(jù)進行預測。
BP神經(jīng)網(wǎng)絡作為最典型的深度學習方法,被眾多學者用于客流預測[11-12]。但傳統(tǒng)BP神經(jīng)網(wǎng)絡常伴著準確度低、收斂時間長、結果易陷入局部最優(yōu)等情況[13-17]。因此,學者們常通過其他算法對BP神經(jīng)網(wǎng)絡模型加以改進,從而提高預測結果的準確性和收斂速度。惠陽等[18]通過改進的粒子群算法,優(yōu)化了BP神經(jīng)網(wǎng)絡,使地鐵客流預測的準確性有極大提升;傅晨琳等[19]提出了基于集合經(jīng)驗模態(tài)分解法優(yōu)化BP神經(jīng)網(wǎng)絡,構建了地鐵客流短時預測模型,探究了日間客流波動的影響因素;張藝銘等[20]通過將余弦思想和動態(tài)權重改進的灰狼算法,與BP神經(jīng)網(wǎng)絡結合,達到提高軌道交通短時客流預測的目的;王國梁等[21]提出通過麻雀算法優(yōu)化BP神經(jīng)網(wǎng)絡,建立了小米米粉糊化預測模型,由實驗對比發(fā)現(xiàn),優(yōu)化后的BP神經(jīng)網(wǎng)絡能提高在小米米粉糊化特征指標回歸、預測上的優(yōu)勢。
麻雀搜索算法(sparrow search algorithm, SSA)[22-25]是近年來提出的一種新型啟發(fā)式算法,它來源于麻雀的捕食和反捕食行為,具有尋優(yōu)能力強、收斂速度快、全局性良好等特點;在故障檢驗、關鍵參數(shù)辨識、路徑優(yōu)化等方面有著較好的效果,但在地鐵客流預測上的研究較少。鑒于此,筆者提出了一種新的BP神經(jīng)網(wǎng)絡回歸預測模型(Logistic-SSA-BP)。該模型利用Logistic混沌映射后的麻雀搜索算法(Logistic-SSA)尋優(yōu)能力強、收斂速度快的特點,對傳統(tǒng)的BP神經(jīng)網(wǎng)絡進行改進,提升了其在地鐵客流預測中的收斂速度和預測精度,并通過深圳地鐵歷史客流數(shù)據(jù)進行了實例驗證。
SSA算法是根據(jù)麻雀捕食與躲避捕食行為提出的新型啟發(fā)式優(yōu)化算法。相較于其他傳統(tǒng)算法,該算法在精度、收斂速度和穩(wěn)定性上都具有一定優(yōu)勢[26]。SSA算法建模過程如圖1。
圖1 麻雀算法(SSA)流程
其具體步驟如下:
步驟1:確定初始化種群;
步驟2:確定種群迭代次數(shù),以及初始探索者和融入者比例;
步驟3:計算族群適應度值;
步驟4:通過式(1)迭代探索者位置;
步驟5:通過式(2)迭代融入者位置;
步驟6:通過式(3)迭代預警者位置;
步驟7:計算適應度值和麻雀位置;
步驟8:判斷是否符合終止條件,若符合則退出計算,并輸出最終結果,否則,回到步驟2重新開始計算。
麻雀群作為一個智能群體,在捕食過程中具有明顯的分工行為,分別為探索者、融入者和預警者。其中:探索者作為主要的食物搜索個體,往往最快找到食物,融入者是一部分跟隨探索者的個體,預警者是麻雀群中負責預警的個體,當危險來臨時,會提醒放棄捕食行為。通常由于探索者負責發(fā)現(xiàn)食物,所以具有最大的搜索區(qū)域[27],在模型中表現(xiàn)為較高的適應度值。探索者和融入者身份是隨時動態(tài)變化的,當預警值大于安全閥值時,探索者會將融入者帶到其它安全地區(qū)進行捕食。
SSA算法中經(jīng)過每次迭代,探索者的位置更新為如式(1):
(1)
若R2≥SST時,意味著族群中一部分麻雀發(fā)現(xiàn)危險,并向族群發(fā)出預警信息,此時整個種群中的麻雀會立即飛往其它安全地區(qū)捕食;若R2 融入者在跟隨探索者過程中,其位置更新如式(2): (2) 式中:A為l×d的矩陣,矩陣中每個元素取值為1或-1,且A+=AT(AAT)-1;n為族群規(guī)模;XP為當前探索者位置;Xworst為當前所有捕食的最差位置。 若i>n/2時,表示第i個融入者的適應度值較低,必須到其他區(qū)域捕食,以此獲得更多能量。 預警者作為族群中最先發(fā)現(xiàn)危險的麻雀,初始位置會在族群中隨機生成,其表達如式(3): (3) 若fi>fg時,說明麻雀正位于族群邊緣,可能會出現(xiàn)被捕食的危險;若fi=fg時,說明麻雀察覺到危險,為躲避危險,會盡可能向其它麻雀靠攏。 BP(back propagation)神經(jīng)網(wǎng)絡實質是多層感知器的一種,它能按誤差逆?zhèn)鞑ミM行算法訓練,是應用最為普遍、最為成功的神經(jīng)網(wǎng)絡模型之一[28-29]。BP神經(jīng)網(wǎng)絡模型結構由3部分組成,分別為輸入層(input)、隱藏層(hide layer)和輸出層(output layer),每部分可由多個神經(jīng)元組成,常見的BP神經(jīng)網(wǎng)絡中隱藏層可有單層和多層之分,其結構如圖2。 圖2 BP神經(jīng)網(wǎng)絡結構 對于絕大部分預測模擬實驗而言,單層隱藏層具有精度高且速度快的優(yōu)勢[30]。通常決定BP神經(jīng)網(wǎng)絡性能高低的參數(shù)主要取決于隱藏層節(jié)點數(shù)、激活函數(shù)和學習效率的選取。隱藏層神經(jīng)元個數(shù)越少,BP神經(jīng)網(wǎng)絡模擬效果就越差,反之隱藏層神經(jīng)元個數(shù)越多,BP神經(jīng)網(wǎng)絡模擬效果越好;激活函數(shù)和學習率的選取決定了識別率和收斂速度,若設定的學習率過低,會造成神經(jīng)網(wǎng)絡的收斂時間變長,相反若設定的學習率過高,則可能導致模擬無法收斂,甚至還會降低識別率。 為避免麻雀搜索算法(SSA)因收斂變化使族群多樣性下降,陷入局部最優(yōu)問題,筆者采用Logistic混沌映射初始化麻雀族群,對族群中的適應度進行排序,取靠前個體作為初始化族群,以此在一定程度上增加族群多樣性,提高輸出結果精確度。Logistic混沌映射作為經(jīng)典的混沌映射方法之一,被廣泛的應用于安全、通信領域。其表達如式(4): Xn+1=α×Xn× (1-Xn) (4) 式中:α∈[0, 4],Xn∈[0, 1]。 當0≤Xn≤1時,初始條件X0在Logistic映射下其序列呈現(xiàn)非周期、不收斂狀態(tài),而此范圍之外,產(chǎn)生的序列必定收斂于特定值。 筆者采用Logistic混沌映射方法優(yōu)化麻雀搜索算法(SSA),提高初始麻雀族群質量,有助于增強算法收斂性和精確性,然后將改進后的算法用于優(yōu)化BP神經(jīng)網(wǎng)絡,并結合訓練集和測試集數(shù)據(jù)樣本,設計改進麻雀算法的適應度函數(shù)EFitness,其模型如式(5): (5) 式中:TTrain為訓練集的樣本;TTest為測試集的樣本。 根據(jù)適應度函數(shù)值的大小,能直觀反應訓練和預測的準確性,若計算得到的適應度函數(shù)值越小,即均方誤差EMS越小,表示訓練越準確,且模型的預測精度更好。 筆者構建了Logistic-SSA-BP神經(jīng)網(wǎng)絡預測模型,借助Logistic-SSA算法的優(yōu)秀尋優(yōu)能力和迅捷收斂優(yōu)勢,能提升預測結果的精度。其建模過程如圖3。 圖3 Logistic-SSA-BP預測模型流程 具體步驟如下: 步驟1:初始化參數(shù); 步驟2:確定BP神經(jīng)網(wǎng)絡的拓撲結構; 步驟3:通過Logistic混沌映射法對族群進行初始化處理,調整族群規(guī)模、迭代次數(shù)、探索者、融入者和預警者比例; 步驟4:計算族群中適應度值,并對不同的適應度值進行排序,得到最優(yōu)適應度fg和最差適應度fw; 步驟5:通過式(1)~式(3),更新探索者、融入者、預警者位置信息; 步驟6:判斷位置信息是否滿足終止條件,若滿足,則輸出最優(yōu)位置信息,進入步驟7,若不滿足,則回到步驟3,直至位置信息滿足終止條件(是否達到最大迭代次數(shù)或達到最初設定的收斂精度); 步驟7:根據(jù)最優(yōu)位置信息,輸出BP神經(jīng)網(wǎng)絡最優(yōu)權值和閥值參數(shù); 步驟8:對數(shù)據(jù)訓練集進行神經(jīng)網(wǎng)絡訓練; 步驟9:測試集進行仿真預測,輸出預測結果。 在深度學習領域中,預測模型的準確性評價是一個不可或缺的環(huán)節(jié),不同類型的模型評價方法也大相徑庭。為反映真實值和預測值誤差的同時,還能進一步計算誤差占真實值的百分比,因此筆者以平均絕對誤差、均方根誤差及平均絕對百分誤差作為客流預測模型準確性的評價指標。 在真實值和預測值差值的絕對值基礎上,通過求解算術平均值的方式來避免誤差抵消問題。平均絕對誤差(MAE)指標值大小(用EMA表示)直接反映模型性能的好壞,若值越小則性能越好,若越大,則相反。其具體表達如式(6): (6) 對于某些誤差值比較敏感,能夠明顯反映預測值與真實值的偏離程度。若均方根誤差值(用ERMS表示)越小,則反映預測值與真實值越接近,對應的預測模型性能越好;若均方根誤差值越大,則表明預測模型性能越差。其具體表達如式(7): (7) 在反映預測模型真實值和預測值之間誤差的同時,還反映誤差與真實值的百分比。若平均絕對百分誤差值(用EMPA表示)越小,則表明模型預測值越接近真實值,模型性能越好,預測精度越高,若平均絕對百分誤差越大,則相反。其具體表達如式(8): (8) 在式(6)—式(8)中:xi表示真實值;x′i表示預測值;N代表樣本個數(shù)。 為檢驗文中所提出的Logistic-SSA-BP回歸預測模型是否有效。筆者選擇深圳地鐵一號線西鄉(xiāng)站2017年9月1日—9月30日早上06:30—23:30的AFC進、出站刷卡數(shù)據(jù)作為實驗原始數(shù)據(jù),原始數(shù)據(jù)以30 min為粒度進行統(tǒng)計,數(shù)據(jù)量共2 040組。其中:實驗以9月份前29 d進、出站刷卡數(shù)據(jù)為訓練樣本,第30 d進、出站數(shù)據(jù)為測試樣本,將得到的預測值分別與真實值進行對比(用于檢驗真實值與不同模型預測值情況)。 根據(jù)對3種模型(BP、SSA-BP、Logistic-SSA-BP)預測流程的分析,為方便對比不同種類神經(jīng)網(wǎng)絡預測模型的預測精度及收斂速度,實驗中所有神經(jīng)網(wǎng)絡預測模型均采用部分相同參數(shù)的設置。例如:模型訓練次數(shù)統(tǒng)一設為1 000次,模型學習速度為0.01,訓練目標最小誤差為0.000 01,最大迭代次數(shù)為100。具體參數(shù)設置如表1。 表1 3種預測模型參數(shù)設置 實驗采用MATLAB 2016a軟件對原始數(shù)據(jù)進行編程處理,處理過程包括錯誤與冗余數(shù)據(jù)修改,劃分訓練集與測試集,對數(shù)據(jù)進行歸一化處理等。將處理完畢的數(shù)據(jù)分別輸入到文中構建的BP、SSA-BP、Logistic-SSA-BP神經(jīng)網(wǎng)絡預測模型中,進行地鐵短時客流預測,最終實驗預測結果,如圖4、圖5。圖4為測試數(shù)據(jù)集的真實值與不同模型短時預測值對比情況;圖5為Logistic-SSA-BP與SSA-BP適應度曲線情況。 由圖4可知:深圳市西鄉(xiāng)站全天進、出站客流存在明顯的早晚高峰潮汐現(xiàn)象,早高峰一般集中在07:30—08:30,晚高峰一般集中在18:00—19:00。圖4中:無論是傳統(tǒng)BP神經(jīng)網(wǎng)絡預測模型,還是改進過的SSA-BP及Logistic-SSA-BP模型,都可以捕捉到西鄉(xiāng)站進、出站客流早晚高峰的客流特征,對客流的變化態(tài)勢以及峰值擬合都較為準確,可以實現(xiàn)較好的客流預測效果。 由圖5可知:經(jīng)Logistic混沌映射的麻雀搜索算法優(yōu)化BP神經(jīng)網(wǎng)絡,其預測速度及適應度值下降速度明顯加快、種群進化代數(shù)明顯更少,反映出改進后的模型其預測效率更高。 圖4 不同模型預測結果與真實值對比 圖5 Logistic-SSA-BP與SSA-BP的適應度曲線 為更明顯評判3種BP神經(jīng)網(wǎng)絡模型的預測結果,筆者根據(jù)式(6)~式(8)分別計算3種預測模型的MAE、RMSE和MAPE,并通過計算值進行橫向對比分析。具體指標對比情況如表2。 表2 3種預測模型的評價指標對比 由表2可知:不同模型的評價指標值存在明顯差異,改進后的BP模型要比傳統(tǒng)BP神經(jīng)網(wǎng)絡預測模型效果更好。Logistic-SSA-BP模型的進站客流預測,EMA=39.83,ERMS=52.52,EMAP=14.96%;出站客流預測,EMA=41.83,ERMS=56.16,EMAP=13.73%。與傳統(tǒng)BP預測模型相比,Logistic-SSA-BP進站客流預測結果的EMA下降了20.64,ERMS下降了26.37,EMAP下降了20.32%;出站客流預測的EMA下降了28.34,ERMS下降了25.38,EMAP下降了18.99%。這表明:Logistic-SSA-BP比傳統(tǒng)BP模型預測值更加接近真實值,模型精度越高、性能也越好。 為更好的驗證文中提出的Logistic-SSA-BP模型在地鐵客流預測方面的優(yōu)越性和穩(wěn)定性,利用RNN神經(jīng)網(wǎng)絡對地鐵客流進行預測,并將預測結果與文中模型進行對比。為保證結果可比性,在RNN神經(jīng)網(wǎng)絡預測中,同樣選取數(shù)據(jù)集前29 d數(shù)據(jù)為訓練集,最后一天數(shù)據(jù)(以1 h為時間間隔)為測試集。兩者的相對誤差如表3。 表3 RNN與Logistic-SSA-BP預測結果相對誤差及平均值 從表3可看出:RNN預測結果與真實值的相對誤差為9.11%~33.43%;Logistic-SSA-BP的相對誤差為8.35%~29.71%。Logistic-SSA-BP的相對誤差平均值比RNN小3.11%,由此說明在客流預測的優(yōu)越性和穩(wěn)定性上Logistic-SSA-BP模型效果更好。 綜上,通過Logistic-SSA優(yōu)化BP神經(jīng)網(wǎng)絡,并將其用于地鐵客流預測是可行的,與其他算法相比,具有更好的效果。 地鐵短時客流預測對提高城市軌道交通系統(tǒng)的運行效率,優(yōu)化運營組織結構,為乘客提供更加安全、優(yōu)質的出行服務具有重要意義。筆者鑒于傳統(tǒng)BP神經(jīng)網(wǎng)絡模型在預測客流時表現(xiàn)出的準確度低、收斂速度慢、易陷入局部最優(yōu)值的問題,利用麻雀搜索算法(SSA)對BP神經(jīng)網(wǎng)絡的權值和閥值進行優(yōu)化,以此提高客流預測精確度和準確性。同時考慮到SSA算法全局搜索能力較弱的缺點,利用Logistic混沌映射對SSA算法種群進行初始化,以此提高算法全局搜索能力和穩(wěn)定性,最終得到了改進后的BP神經(jīng)網(wǎng)絡回歸預測模型(Logistic-SSA-BP)。 通過比較基于MAE、RMSE和MAPE這3種評價指標的模型預測結果可發(fā)現(xiàn):與傳統(tǒng)BP神經(jīng)網(wǎng)絡預測模型相比,進出站的EMA平均減少24.49,ERMS平均減少25.88,EMAP平均減少19.66%;此外通過與RNN預測模型對比,相對誤差范圍和平均值更小。由此表明基于Logistic-SSA算法優(yōu)化后的BP神經(jīng)網(wǎng)絡預測模型在短時客流預測方面效果更好,準確度更高。 筆者利用改進后的SSA算法優(yōu)化了BP神經(jīng)網(wǎng)絡模型,并將其應用于城市軌道交通短時客流預測研究中;通過深圳市西鄉(xiāng)地鐵站的進、出站客流數(shù)據(jù)進行了實例驗證。1.2 BP神經(jīng)網(wǎng)絡原理
2 改進的Logistic-SSA-BP預測模型
2.1 Logistic混沌映射優(yōu)化
2.2 Logistic-SSA-BP模型
3 模型準確性評價指標
3.1 平均絕對誤差(MAE)
3.2 均方根誤差(RMSE)
3.3 平均絕對百分誤差(MAPE)
4 實例分析
4.1 樣本數(shù)據(jù)來源
4.2 模型參數(shù)設置
4.3 預測結果分析
5 結 論