陳園園
(北京城建設計發展集團股份有限公司 北京 100037)
由于城市軌道交通運輸方便快捷的特點,其在城市交通中的作用越來越重要,準確預測未來時刻客流變化,為軌道運營部門合理安排運營方案,提高服務水平意義重大.同時,還可為管理部門對乘客進行引導,確保乘客在擁擠環境中的安全,對節省車站運營成本具有重要意義.
客流預測是利用歷史客流數據和相關影響因素,對下一時刻乃至未來幾個時刻的客流進行預測.文獻[1]基于BP神經網絡進行短期交通流量預測.文獻[2-3]使用支持向量機(SVM)來預測典型和非典型環境中的流量.文獻[4]利用長短期記憶網絡(LSTM)進行客流預測,并與SVM等方法進行對比,驗證了模型的優越性.
為了進一步提高預測的準確性,文獻[5]建立SVM-LSTM集成客流預測模型,可以更好地反映客流的異常波動,提高了預測精度.文獻[6]通過聚類算法捕捉客流特征,并利用LSTM預測,提出了基于聚類算法的LSTM地鐵客流預測模型.文獻[7-8]使用卷積神經網絡CNN和BLSTM 將客流數據轉換為圖像并提取時間和空間的特征.
由于客流數據具有很強的不穩定性,提高預測精度變得更加困難,需先對客流數據進行預處理,再將處理后的數據作為預測模型的輸入.文獻[9]提出了基于STL-LSTM 的地鐵客流預測模型,通過魯棒局部加權回歸作為平滑方法(STL)將客流數據分解為S、T、R,并對每個組件進行單獨的預測.文獻[10-11]使用變分模態分解 (VMD)處理客流數據,驗證了LSTM優于RNN模型,VMD-LSTM優于LSTM模型,但VMD存在分解成分重構與原始序列不一致的缺陷.
上述研究為城軌客流預測奠定了良好的基礎,但也存在局限性.因此,考慮到不規律的客流數據變化會影響預測精度,文中建立基于CEEMDAN-BLSTM的客流預測模型,將原始客流數據通過 CEEMDAN算法進行分解,將每個分解后的序列分別用BLSTM進行預測,將各個預測結果相加得到最終的預測結果,與其他模型相比,預測精度大大提高.
CEEMDAN是一種通過經驗模態分解(EMD)和集合經驗模態分解(EEMD)改進的自適應后驗分解方法,能夠自適應在給定的數據將其分解為多個分解分量(IMF).通過在原始信號中自適應地加入相反的白噪聲,可以避免EMD模式混合和加入白噪聲后EEMD分解會產生重構誤差的問題.CEEMDAN分解步驟如下.
步驟1在原始系列中添加高斯白噪聲并確定加噪次數.
xi(t)=x(t)+ε0ni(t),i=1,2,…,T
(1)
式中:xi(t)為加入白噪聲后的第i個序列;x(t)為原始序列;ni(t)為服從N(0,1)分布的高斯白噪聲;ε0為噪聲標準差;T為添加的噪聲次數.
步驟2使用EMD對序列進行分解,得到第一個IMF分量.
(2)
步驟3計算殘余信號分量.
r1(t)=x(t)-imf1(t)
(3)
步驟4計算第二個IMF.
(4)
式中:Ej(·)為序列的EMD分解的j階分量.
步驟5重復上面的步驟3~4,得到imfk(t)的殘差信號.
rk(t)=rk-1(t)-imfk(t)
(5)
(6)
步驟6重復步驟5,直到得到的殘差信號量極值點不超過2,得到K個IMF分量.最終的殘差成分為
(7)
即將原始序列分解為殘差分量和IMF分量之和:
(8)
LSTM由輸入層、隱藏層和輸出層組成.隱藏層增加一個記憶單元,讓LSTM能夠記住更多的歷史信息,記憶單元包括三個門:輸入門、遺忘門和輸出門. 通過記憶單元確保LSTM能夠更好地記住歷史信息中有用的部分.而BLSTM本質上是由兩個相反方向的LSTM組成.LSTM只能實現單獨的前向傳輸,但是BLSTM可以從前后兩個方向訓練.下層由正向時間序列計算,保存隱含層每次的輸出,上層由反向時間序列得到隱含層每次輸出,求均值即為最終輸出.
圖1為基于CEEMDAN-BLSTM的客流預測模型結構.由于客流數據具有較強的非穩定性和短時隨機性,文中選擇先通過CEEMDAN法對客流數據進行分解得到xi(t),以減少數據隨機性對預測精度的影響.并依次將每個序列分量作為輸入數據,通過BLSTM預測輸出數據.最后將所有序列預測值相加得到總預測數據,并通過與真實量的對比分析模型的預測精度.
圖1 基于CEEMDAN-BLSTM的客流預測模型結構
選取重慶某站地鐵客流數據作為原始數據,時間從2021年6月8日—7月22日共44 d(31個工作日和13個休息日),地鐵運營時間:06:00—23:15,步長選為15 min.并對原始數據中的缺失值和不良數據進行處理,使用滑動窗口創建具有時間步長的模型輸入數據.由于工作日客流數據呈現明顯的早晚雙峰特征,而休息日的客流與其有明顯差異,本文分別對工作日和休息日的客流數據進行預測.
Pearson相關系數用于確定合理的歷史輸入數據分量,并通過模型進行驗證.Pearson相關系數可以反映兩組數據之間的相關程度,取值范圍為[-1,1],值大于0表示正相關,越接近1,相關性越強,反之,負值表示負相關.表1為歷史客流數據對預測客流的影響,Pearson相關系數為
(15)
式中:Yi,Xi分別為客流數據和第i個影響因素的數據;Y、X分別為客流數據和影響因素的平均值;SY、SX分別為客流數據方差和影響因素方差.
表1 歷史客流量數據的Pearson相關系數
利用CEEMDAN將工作日、節假日客流數據分別分解為十個和七個分量,每個分量從一開始就逐漸波動.圖2為分解結果,第一個序列是原始客流數據.
以Tensorflow為后端Keras平臺編程.模型中隱藏層為BLSTM,使用Dense層作為輸入層和輸出層,實驗發現增加隱藏層神經元數量有助于提高模型訓練集的性能,同時增加輸入層神經元數量有助于提高測試集的預測精度.本實驗設置輸入層神經元為128個,隱藏層神經元個數為64個,輸出層數為1,即輸出層神經元個數為1,隱藏層設置Dropout=0.3,選用激活函數tanh防止模型過擬合.本文選擇變量學習率設置,初始學習率為0.01,每100次訓練學習率變為1/10,從而保證學習效果和學習速度.在本文中,batch_size = 50.工作日和節假日分別選擇前27和11 d客流數據作為訓練集,后2 d分數據別作為驗證集和測試集.
將本文所提模型與LSTM、BLSTM、EMD-BLSTM、STL-BLSTM[12]預測模型比較來驗證所提模型的有效性和優越性.本文選用可反映各數據誤差百分比的平均百分比誤差(MAPE)和可衡量觀測值與真實值偏差的均方根誤差(RMSE)作為評價指標.
本文模型預測預測結果見圖3.在該模型和數據集下,工作日和節假日流量預測MAPE分別為8.97%和9.79%,RMSE分別為3.56和5.78.根據預測結果,MAPE為評價指標時,工作日和節假日的預測精度差別不大,預測值能夠很好地擬合真實值,反映客流變化趨勢.在波動的數據集下,預測值仍能很好地擬合真實值,反映客流變化趨勢.例如,在客流量大的車站,數據會變得更加平滑,預測精度也會相應提高.
表2為不同預測模型的指標比較.圖4為其他四種預測模型的預測結果比較.由表2和圖4可知,本文所提模型指標最低,即本文模型預測精度最高.與對比模型中精度最高的EMD-BLSTM模型相比,所提模型的準確率提升也達到了16.47%,證明將所提模型應用于客流預測能夠取得更好的預測效果.
表2 不同預測模型的指標比較
圖4 不同模型的預測結果比較
本文提出CEEMDAN-BLSTM城軌交通客流預測模型,通過將客流數據劃分為工作日和節假日來預測客流.Pearson相關系數分析了歷史客流數據對預測值的影響,基于CEEMDAN對客流數據進行分解,以減少數據波動帶來的誤差.為了獲得更好的預測結果,采用雙向長短期記憶神經網絡(BLSTM)作為預測模型,并用工作日客流數據用于驗證不同模型的預測精度.結果表明:EMD、STL、CEEMDAN都可以提高客流數據預測的準確性.CEEMDAN分解成分較少,預測精度提高了16.47%,表明該模型更適合客流預測.后續研究可以進一步考慮分析客流數據的時空相關性,分析不同站點之間的影響,進一步提高預測精度.