趙明偉,張文勝
(1.濟(jì)南軌道交通集團(tuán)有限公司 第一運(yùn)營有限公司,山東 濟(jì)南 250300;2.石家莊鐵道大學(xué)交通運(yùn)輸學(xué)院,河北 石家莊 050043)
城市軌道交通憑借其速度快、運(yùn)量大、舒適安全的特點成為城市交通的主要方式。準(zhǔn)確、有效地對城市軌道交通短時客流進(jìn)行預(yù)測,能夠為城市軌道交通的運(yùn)營提供可靠的技術(shù)支撐。軌道交通客流預(yù)測可分為中長期、短期和短時3 種,中長期預(yù)測主要應(yīng)用在軌道線網(wǎng)規(guī)劃與建設(shè)時期,短期預(yù)測是預(yù)測未來1 年以內(nèi)的客流量,這2 種時間跨度的預(yù)測對于日常運(yùn)營階段的幫助不大,短時預(yù)測是預(yù)測15 min 之內(nèi)的客流量[1],其對于城市軌道交通工作計劃的安排以及列車的調(diào)度具有輔助作用。
對于客流的預(yù)測主要有3 類模型,分別是基于數(shù)理統(tǒng)計的模型、智能算法的模型和組合模型[2]?;跀?shù)理統(tǒng)計的模型有卡爾曼濾波模型[3]、自回歸移動平均模型、季節(jié)性自回歸移動平均模型等,這類方法較為簡單,操作容易,但容易受到客流呈線性假設(shè)的限制,對于實際場景中的非線性客流無法準(zhǔn)確地進(jìn)行預(yù)測[4]?;谥悄芩惴ǖ哪P?,能夠利用自身的學(xué)習(xí)能力和自適應(yīng)能力對客流的非線性特征進(jìn)行捕捉,智能算法包括支持向量機(jī)、貝葉斯網(wǎng)絡(luò)和人工神經(jīng)網(wǎng)絡(luò)等,Roos 等[5]采用一種動態(tài)貝葉斯網(wǎng)絡(luò)方法來預(yù)測短期客流;Li 等[6]用徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)預(yù)測單站客流。近年來,循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)、長短時記憶神經(jīng)網(wǎng)絡(luò)(LSTM)、門控循環(huán)單元神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)等模型,在捕捉時空關(guān)系方面具有優(yōu)越的性能而受到廣泛重視,Duan 等[7]利用LSTM 模型預(yù)測行程時間,取得很好的預(yù)測效果,并比較不同時間長度模型對預(yù)測誤差值的影響。組合模型,一般是結(jié)合2 種或3 種模型的優(yōu)勢,能夠有效提高模型的預(yù)測精度,組合模型有季節(jié)性差分自回歸滑動平均模型、神經(jīng)網(wǎng)絡(luò)和遺傳算法的組合模型[8]、小波-支持向量機(jī)組合模型[9]、循環(huán)門控單元和圖卷積神經(jīng)網(wǎng)絡(luò)組合模型[10]、集合經(jīng)驗?zāi)B(tài)分解和神經(jīng)網(wǎng)絡(luò)組合模型[11]等,組合模型已成為客流預(yù)測的趨勢。
LSTM 模型是一種改進(jìn)的時間遞歸神經(jīng)網(wǎng)絡(luò),適合于處理長時間序列的數(shù)據(jù),但是LSTM 模型的參數(shù)較難確定,不同參數(shù)的選取對預(yù)測結(jié)果具有較大的影響,一般采用試錯法或經(jīng)驗法確定參數(shù),效率較低,針對此問題,利用粒子群(PSO)算法來確定LSTM 的參數(shù),但PSO 算法存在容易陷入局部極值的問題,需對其算法位置更新公式和速度更新公式進(jìn)行改進(jìn),并利用遺傳算法中的變異機(jī)制,引入自適應(yīng)變異函數(shù),提高粒子的尋優(yōu)能力,故通過利用一種改進(jìn)的粒子群(IPSO)算法對LSTM 模型的迭代次數(shù)、學(xué)習(xí)率和隱含層的神經(jīng)元個數(shù)進(jìn)行尋優(yōu),構(gòu)建IPSO-LSTM 城市軌道交通短時客流預(yù)測組合模型,對客流進(jìn)行預(yù)測。
PSO 算法最早是由Eberhart 和Kennedy 于1995 年提出的,是一種全局搜索最優(yōu)值的算法[12]。假設(shè)在d維搜索空間中,粒子群中有N個粒子,其中第i個(i=1,2,…,N)粒子在d維空間中的位置為Xi=(Xi1,Xi2,…,Xid),第i個粒子的速度為vi=(vi1,vi2,…,vid),第i個粒子的最優(yōu)位置為Xpbest=(Xp1,Xp2,…,Xpd) (p=1,2,…,N),即個體最優(yōu)值,全局最優(yōu)值為Xgbest=(Xg1,Xg2,…,Xgd) (g=1,2,…,N),即所有粒子在搜索過程中的歷史最優(yōu)位置。PSO 算法的核心就是通過不斷地調(diào)整粒子的速度和位置,使粒子逐步地靠近最優(yōu)位置,粒子的速度和位置計算公式為
PSO算法的慣性權(quán)重w和時間因子t是固定的,不能滿足算法的自適應(yīng)搜索,導(dǎo)致算法的全局搜索能力減弱,容易陷入局部極值。為解決上述問題,分別將PSO 算法的w和t進(jìn)行改進(jìn),增強(qiáng)PSO 算法的全局搜索能力,并引入遺傳算法的變異機(jī)制,賦予PSO 算法跳出局部范圍的能力,使PSO 算法按照先全局搜索后局部搜索的搜索方式,逐步逼近最優(yōu)值,計算過程如下。
(1)計算自適應(yīng)慣性權(quán)重。固定的w會減弱算法的全局尋優(yōu)能力并減慢算法的收斂速度。為此提出了一種基于全局最優(yōu)位置和局部最優(yōu)位置的變化來確定w的計算方法。通過監(jiān)視粒子的全局最優(yōu)位置和個體最優(yōu)位置,根據(jù)二者之間的數(shù)值變化不斷地調(diào)整w的大小,使其自適應(yīng)變化。自適應(yīng)慣性權(quán)重w的計算公式為
式中:avg (Xgbest)表示d維搜索維度下Xgbest的均值;avg (Xpbest)表示d維搜索維度下Xpbest的均值;N表示種群的個數(shù)。
每一次迭代后會有一個d維的Xgbest和N個d維的Xpbest,采用全局最優(yōu)值和個體最優(yōu)值比值的變化,不斷地動態(tài)調(diào)整w的大小,打破固定w對算法搜索性能的影響。
(2)計算自適應(yīng)時間因子。針對物理學(xué)中位移和速度量綱不同的問題,引入時間因子t。傳統(tǒng)粒子群算法中的時間因子默認(rèn)為1,導(dǎo)致粒子易在最佳位置附近振蕩,無法及時找到最優(yōu)解,故引入與迭代次數(shù)m相關(guān)的自適應(yīng)時間因子t,其計算公式為
式中:mmax表示最大迭代次數(shù)。
隨著迭代次數(shù)的增加,時間因子t逐漸減小,根據(jù)公式 ⑵,粒子移動的步長逐漸減小,粒子的位置變化逐漸變小,粒子先以大步長做全局搜索后再以小步長做局部搜索,提高搜索的精度。
(3)構(gòu)建自適應(yīng)變異函數(shù)。受到遺傳算法的變異機(jī)制的啟發(fā),提出了一種自適應(yīng)的變異函數(shù),賦予粒子跳出局部范圍的能力:當(dāng)rand ≥ Prob 時,粒子發(fā)生變異,使粒子均勻地散布在整個空間,自適應(yīng)變異函數(shù)計算公式為
式中:Prob 表示自適應(yīng)變異函數(shù);rand 表示[0,1)之間的隨機(jī)數(shù)。
當(dāng)?shù)螖?shù)較少時,Prob 較小,rand ≥ Prob的機(jī)率較大,粒子容易發(fā)生變異,較容易跳出局部范圍,從而進(jìn)行全局搜索;隨著迭代次數(shù)的增多,Prob不斷增大,而rand ≥ Prob的機(jī)率就會變小,粒子發(fā)生變異的機(jī)率就會變小,從而在小范圍內(nèi)進(jìn)行局部搜索,粒子以一種先全局搜索后局部搜索的搜索方式,先粗略尋找,后精確尋找,最終完成收斂。
LSTM 模型是Hochreiter 和Schmidhuber 在1997 年提出的,該模型可以進(jìn)行自我衡量,特別適合于處理具有一定的時間間隔的數(shù)據(jù)序列。LSTM 記憶單元結(jié)構(gòu)圖如圖1 所示。
圖1 LSTM 記憶單元結(jié)構(gòu)圖Fig.1 Structure of LSTM neural network unit
LSTM 模型每一層的神經(jīng)元都具有多個“門”的結(jié)構(gòu),這使得誤差在傳遞過程中,部分誤差可以直接通過“門”,這樣就不用再歸因于所通過的神經(jīng)元,誤差可以原封不動的傳到下一層,無論數(shù)據(jù)有多長,梯度都不會完全消失或爆炸,LSTM模型預(yù)測過程具體如下。
式中:σ表示Sigmoid 函數(shù);Wf表示遺忘門的權(quán)重矩陣;bf代表遺忘門的偏置項;[a
(2)計算更新門Γu
式中:σ表示Sigmoid 函數(shù);Wu表示更新門的權(quán)重矩陣;bu表示更新門的偏置項。
輸入的單元狀態(tài)為c~
更新門的2 個部分會將c
式中:Wo表示計算單元狀態(tài)的權(quán)重矩陣;bo表示計算單元狀態(tài)的偏置項。
LSTM 模型最終的輸出是由輸出門和單元狀態(tài)共同確定的,其計算公式為
雖然LSTM 模型具有明顯的優(yōu)點,但是其參數(shù)較難確定,不同參數(shù)的選取對預(yù)測結(jié)果有很大的影響,可借助IPSO 算法來彌補(bǔ)LSTM 的不足。
通過構(gòu)建IPSO-LSTM 城市軌道交通短時客流預(yù)測組合模型,利用IPSO 對LSTM 的迭代次數(shù)、學(xué)習(xí)率以及隱含層的神經(jīng)元個數(shù)進(jìn)行尋優(yōu),隱含層層數(shù)為2 層,并利用IPSO-LSTM 城市軌道交通短時客流預(yù)測組合模型對客流進(jìn)行預(yù)測,提高LSTM模型的預(yù)測精度。IPSO-LSTM 城市軌道交通短時客流預(yù)測組合模型的構(gòu)建過程具體如下。
(1)初始化粒子群參數(shù)。確定種群的規(guī)模、迭代次數(shù)、學(xué)習(xí)因子、搜索維度以及位置和速度的取值范圍。城市軌道交通短時客流預(yù)測中待尋優(yōu)的參數(shù)有4 個,故搜索維度為4 維。
(2)初始化粒子的位置和速度。隨機(jī)生成1 個粒子,Xi=(θ,β,α1,α2),θ表示LSTM 的迭代次數(shù),β表示學(xué)習(xí)率,α1表示第一層隱含層的神經(jīng)元個數(shù),α2表示第二層隱含層的神經(jīng)元個數(shù),粒子的速度vi=(vi1,vi2,vi3,vi4),產(chǎn)生一組0~ 1 均勻分布的隨機(jī)樣本值,隨機(jī)樣本取值范圍是[0,1)。確定LSTM 的其他參數(shù),預(yù)測方案為單步預(yù)測。
(3)確定粒子群算法的適應(yīng)度函數(shù)。用初始化后的粒子群參數(shù)構(gòu)建LSTM,將訓(xùn)練集的實測值與預(yù)測值的均方誤差作為粒子群的適應(yīng)度函數(shù)。
(4)計算粒子在每一次迭代中的位置并計算適應(yīng)度值。通過與初始位置的適應(yīng)度值作比較,確定個體最優(yōu)位置Xpbest,進(jìn)而確定群體最優(yōu)位置Xgbest。
(5)進(jìn)行預(yù)測。利用IPSO 算法尋找最優(yōu)參數(shù),確定迭代次數(shù)、學(xué)習(xí)率以及隱含層的神經(jīng)元個數(shù)。對LSTM 模型進(jìn)行訓(xùn)練,達(dá)到最大迭代次數(shù)后,將數(shù)據(jù)輸入訓(xùn)練好的模型進(jìn)行預(yù)測,輸出最終預(yù)測結(jié)果,并對誤差進(jìn)行分析。
數(shù)據(jù)來源于上海市2015 年4 月1 日至4 月30日期間的一卡通刷卡數(shù)據(jù),利用計算機(jī)軟件對所構(gòu)建的模型進(jìn)行驗證。分別構(gòu)建神經(jīng)網(wǎng)絡(luò)(BP)模型、LSTM 模型、PSO 算法和LSTM 模型組合(以下簡稱“PSO-LSTM 模型”)、IPSO-LSTM 模型對陸家嘴站的客流進(jìn)行預(yù)測。
首先對數(shù)據(jù)進(jìn)行處理,獲得可用于預(yù)測的時間序列數(shù)據(jù)。利用Pearson 相關(guān)系數(shù)對工作日和非工作日客流進(jìn)行相關(guān)性分析,得到工作日與非工作日數(shù)據(jù)的相關(guān)性分析如表1 所示。由表1 可知工作日數(shù)據(jù)之間相關(guān)性顯著、非工作日數(shù)據(jù)之間相關(guān)性顯著,屬于高度相關(guān)性,故需從工作日和非工作日2個角度,分別進(jìn)行客流預(yù)測。
表1 工作日與非工作日數(shù)據(jù)的相關(guān)性分析Tab.1 Correlation analysis of data on working days and non-working days
短時客流具有非線性、非平穩(wěn)性和強(qiáng)隨機(jī)性的特點,相比于15 min,10 min 的客流預(yù)測間隔,5 min 的時間間隔更小,客流的變化趨勢更具有波動性,隨機(jī)性更強(qiáng),預(yù)測難度更大,因此采用的時間間隔為5 min。為減少數(shù)據(jù)噪聲對預(yù)測性能的影響,利用經(jīng)驗?zāi)B(tài)分解法將數(shù)據(jù)分解為多個IMF分量和1 個殘差。以陸家嘴站的進(jìn)站客流預(yù)測為例,預(yù)測未來一天的客流數(shù)據(jù),預(yù)測的時間范圍為5 :30 :00—23 :00 :00,以5 min 為時間間隔匯總一天當(dāng)中共210 個時間段的客流數(shù)據(jù)。將4 月1 日至4 月30 日期間21 個工作日中的20 個工作日的數(shù)據(jù)作為訓(xùn)練集,剩下的1 個工作日的數(shù)據(jù)作為測試集;將9 個非工作日中的8 個非工作日的數(shù)據(jù)作為訓(xùn)練集,剩下的1 個非工作日的數(shù)據(jù)作為測試集。
其中LSTM 模型的輸入層和輸出層均為1 個神經(jīng)元,利用Adam 優(yōu)化器訓(xùn)練LSTM 模型。LSTM和BP 模型最大迭代次數(shù)為20 次;PSO 算法中w=0.8,c1=1.5,c2=1.5,r1=0.8,r2=0.3,粒子數(shù)量為2,維度為4,進(jìn)化次數(shù)為20 次,Xi=(θ,β,α1,α2)中θ的取值范圍為[100,500],β的取值范圍為[0.001,0.01],α1和α2的取值范圍為[1,200]。得到工作日與非工作日的BP 模型預(yù)測結(jié)果如圖2 所示,LSTM 模型預(yù)測結(jié)果如圖3 所示,PSO-LSTM 模型預(yù)測結(jié)果如圖4 所示,IPSOLSTM 模型預(yù)測結(jié)果如圖5 所示。
圖2 BP 模型預(yù)測結(jié)果Fig.2 Prediction results of BP model
圖3 LSTM 模型預(yù)測結(jié)果Fig.3 Prediction results of LSTM model
圖4 PSO-LSTM 模型預(yù)測結(jié)果Fig.4 Prediction results of PSO-LSTM model
對城市軌道交通短時客流預(yù)測模型的精度進(jìn)行判定,采用平均絕對百分比誤差(MAPE)、均方根誤差(RMSE)、平均絕對誤差(MAE)和決定系數(shù)(R2) 4 種評價指標(biāo)進(jìn)行誤差分析。MAPE,RMSE,MAE,R2的取值為短時客流預(yù)測模型獨(dú)立運(yùn)行10 次之后的平均值,得到4 種預(yù)測模型的誤差值如表2所示。由表2 可知,綜合工作日和非工作日的預(yù)測結(jié)果,IPSO-LSTM模型的預(yù)測誤差均小于其他3 種預(yù)測模型。對于工作日的客流預(yù)測,IPSO-LSTM 模型相比于LSTM 模型的MAPE,RMSE,MAE 分別減小30.60%,26.03%,23.45%;IPSOLSTM 模型的決定系數(shù)達(dá)到了0.994 7。對于非工作日的客流預(yù)測,IPSO-LSTM 模型相比于LSTM 模型MAPE,RMSE,MAE 分別減小 12.87%,28.45%,26.26% ;IPSO-LSTM 模型的決定系數(shù)達(dá)到了0.973 9。由上述計算可見,IPSO 算法明顯提高了LSTM 模型的預(yù)測精度,且優(yōu)于BP 和PSO-LSTM,預(yù)測結(jié)果的決定系數(shù)在0.97 以上,可知IPSO-LSTM 模型在城市軌道交通短時客流預(yù)測上具有更高的精度。
表2 4 種預(yù)測模型的誤差值Tab.2 Error values of four prediction models
根據(jù)進(jìn)站客流晚高峰和平峰的客流預(yù)測結(jié)果進(jìn)行對比分析,4 種模型晚高峰時段客流預(yù)測誤差絕對值對比如表3 所示,4 種模型平峰時段客流預(yù)測誤差絕對值對比如表4 所示。由表3 和表4 可知,IPSO-LSTM 模型對于晚高峰和平峰的客流預(yù)測都達(dá)到了較好的預(yù)測效果,并且相比于LSTM,PSOLSTM,BP 模型,IPSO-LSTM 模型的誤差更小。
表3 4 種模型晚高峰時段客流預(yù)測誤差絕對值對比Tab.3 Absolute value comparison of passenger flow prediction errors of four models during evening peak hours
表4 4 種模型平峰時段客流預(yù)測誤差絕對值對比Tab.4 Absolute value comparisonof passenger flow prediction errors of four models during the peak period
通過改進(jìn)的粒子群算法優(yōu)化LSTM 模型的學(xué)習(xí)率、迭代次數(shù)和隱含層的神經(jīng)元個數(shù),利用優(yōu)化后的參數(shù)構(gòu)建IPSO-LSTM 模型,對城市軌道交通短時客流進(jìn)行預(yù)測,得到具體結(jié)論如下。
(1)通過對粒子群算法的改進(jìn),克服粒子群算法存在的問題,提高算法的搜索性能,預(yù)測結(jié)果表明改進(jìn)的粒子群算法具有更好的尋優(yōu)效果。
(2)將模型進(jìn)行組合可以充分地利用2 種模型的優(yōu)勢:IPSO 算法可以更好地確定LSTM 模型的迭代次數(shù)、學(xué)習(xí)率和隱含層神經(jīng)元的個數(shù),以此來提高預(yù)測模型的精度,IPSO-LSTM 模型對工作日和非工作日客流預(yù)測均達(dá)到較好的預(yù)測精度。
(3)僅對工作日和非工作日(周六日)的客流進(jìn)行預(yù)測,由于數(shù)據(jù)有限,未能涉及節(jié)假日的客流預(yù)測,下一步的研究重點是利用節(jié)假日客流數(shù)據(jù)完善客流的預(yù)測。