朱從坤 謝鑫鑫
(蘇州科技大學(xué)土木工程學(xué)院 蘇州 215009)
目前城市軌道交通站點(diǎn)客流預(yù)測(cè)方法可分為單一算法和組合算法.單一算法有時(shí)間序列模型、卡爾曼濾波模型、神經(jīng)網(wǎng)絡(luò)算法、支持向量機(jī)等[1-4].對(duì)于組合預(yù)測(cè)算法則存在更多的嘗試可能,包磊[5]建立灰色模型與馬爾科夫鏈的組合模型預(yù)測(cè)下一時(shí)段客流量,但時(shí)間粒度為一天,未達(dá)到較小粒度客流預(yù)測(cè)的要求.翁湦元等[6]從時(shí)頻特性角度分析客流特征,將經(jīng)驗(yàn)?zāi)B(tài)分解法的時(shí)頻分析優(yōu)勢(shì)與遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)強(qiáng)擬合能力相結(jié)合,探究組合預(yù)測(cè)算法在高速鐵路站點(diǎn)客流預(yù)測(cè)中的預(yù)測(cè)效果.黃海超等[7]將變經(jīng)驗(yàn)?zāi)B(tài)分解與長(zhǎng)短時(shí)記憶神經(jīng)網(wǎng)絡(luò)組合,對(duì)軌道交通客流進(jìn)行預(yù)測(cè),預(yù)測(cè)效果較好.單一算法的改進(jìn)和研究較為深入,組合算法的研究則更具靈活性.
經(jīng)驗(yàn)?zāi)B(tài)分解(empirical mode decomposition, EMD)能將非平穩(wěn)、非線性復(fù)雜序列分解為較平穩(wěn)且規(guī)律性強(qiáng)的若干本征模函數(shù)和殘差序列,各子序列能反應(yīng)原始信號(hào)或者序列的內(nèi)在特征,廣泛應(yīng)用于地球物理信號(hào)、機(jī)電系統(tǒng)故障、語(yǔ)音信號(hào)以及金融類和客流量等較為宏觀的非線性時(shí)間序列的處理.羅述群等[8]利用EMD對(duì)景區(qū)人流量時(shí)間序列進(jìn)行分解、預(yù)測(cè),預(yù)測(cè)精度較好.趙陽(yáng)陽(yáng)等[9]將經(jīng)驗(yàn)?zāi)B(tài)分解與神經(jīng)網(wǎng)絡(luò)結(jié)合預(yù)測(cè)短時(shí)地鐵客流,模型有效降低樣本噪聲對(duì)客流預(yù)測(cè)的干擾,提高了預(yù)測(cè)精度和時(shí)效性.陸利軍[10]利用EMD對(duì)游客量數(shù)據(jù)與網(wǎng)絡(luò)搜索數(shù)據(jù)進(jìn)行降噪處理,將ARIMA模型與BP神經(jīng)網(wǎng)絡(luò)進(jìn)行組合預(yù)測(cè)客流量,預(yù)測(cè)效果較好.
K近鄰(k-nearest neighbor,KNN)作為非參數(shù)回歸方法的一種,不對(duì)數(shù)據(jù)做任何嚴(yán)格處理,僅依賴現(xiàn)有數(shù)據(jù)序列決定預(yù)測(cè)值的輸出,無(wú)需任何先驗(yàn)知識(shí)且參數(shù)少.郭晗等[11]在軌道交通客流預(yù)測(cè)中研究了K近鄰算法中狀態(tài)向量的選擇,結(jié)果表明以預(yù)測(cè)時(shí)段前m個(gè)時(shí)段的歷史數(shù)據(jù)作為狀態(tài)向量具有較好的預(yù)測(cè)效果,而相鄰站點(diǎn)歷史客流數(shù)據(jù)由于其相對(duì)獨(dú)立,不宜作為狀態(tài)向量.劉美琪等[12]對(duì)比不同預(yù)測(cè)算法在軌道交通進(jìn)站客流預(yù)測(cè)上的效果,發(fā)現(xiàn)K近鄰的總體預(yù)測(cè)精度最高,貝葉斯組合預(yù)測(cè)算法次之,基于偏差修正系數(shù)的卡爾曼濾波模型在早晚高峰時(shí)的適用性較差.
綜上所述,經(jīng)驗(yàn)?zāi)B(tài)分解能將非平穩(wěn)、非線性序列平穩(wěn)化分解,K近鄰算法無(wú)復(fù)雜參數(shù),且有較強(qiáng)的數(shù)據(jù)挖掘能力,為此本文擬探討經(jīng)驗(yàn)?zāi)B(tài)分解與K近鄰的組合算法(EMD-KNN)在軌道交通站點(diǎn)進(jìn)站客流時(shí)間序列預(yù)測(cè)中的應(yīng)用效果.
經(jīng)驗(yàn)?zāi)B(tài)分解步驟為
步驟1找出序列x(t)所有的極大值和極小值點(diǎn).
步驟2用三次樣條曲線擬合出上下極值點(diǎn)的包絡(luò)線emax(t)和emin(t),并求上下包絡(luò)線均值m1(t),在x(t)中減去m1(t),得到新的序列h1(t).
h1(t)=x(t)-m1(t)
(1)
若h1(t)不滿足本征模函數(shù)的確認(rèn)要求,則將h1(t)作為新的原始序列x1(t),重復(fù)步驟1~2,直至得到的某個(gè)hk(t)滿足本征模函數(shù)預(yù)設(shè)要求.本征模函數(shù)需滿足兩個(gè)條件:①該函數(shù)hk(t)的過零點(diǎn)數(shù)和極值點(diǎn)數(shù)最多差1;②局部極大值點(diǎn)和極小值點(diǎn)形成的兩條包絡(luò)線的平均值趨近于零.
步驟3令得到的第一個(gè)滿足本征模函數(shù)要求的hk(t)記為IMF1,將IMF1從原始序列x(t)扣除得到序列r1(t),作為新的原始序列,重復(fù)步驟1~2,直至得到的某個(gè)rn(t)為單調(diào)函數(shù)或簡(jiǎn)單趨勢(shì)函數(shù),將其作為殘差序列.
原始序列被分解為若干個(gè)IMF分量和殘差序列R,即
(2)
1.2.1KNN原理
考慮到軌道交通站點(diǎn)預(yù)測(cè)時(shí)段客流量與相鄰時(shí)段客流量具有相關(guān)性,可選取預(yù)測(cè)時(shí)段前q個(gè)時(shí)段的客流量作為狀態(tài)向量(即認(rèn)為該q個(gè)時(shí)段的客流量與預(yù)測(cè)時(shí)段客流量密切相關(guān)),利用狀態(tài)向量在歷史數(shù)據(jù)中進(jìn)行匹配,得到與預(yù)測(cè)時(shí)段客流量最為接近的K組歷史數(shù)據(jù),對(duì)這K組預(yù)測(cè)時(shí)段歷史數(shù)據(jù)進(jìn)行處理得到預(yù)測(cè)結(jié)果.其中,K值可由樣本測(cè)試法確定;q值由日時(shí)間序列q階自相關(guān)系數(shù)確定,通過計(jì)算眾多歷史序列不同階自相關(guān)系數(shù)ρx,q,統(tǒng)計(jì)各階ρx,q≥0.3的序列個(gè)數(shù)占總歷史序列數(shù)的占比情況,取占比較大的階數(shù)為q.序列q階自相關(guān)系數(shù)為
(3)
1.2.2K近鄰預(yù)測(cè)方法
傳統(tǒng)K近鄰預(yù)測(cè)算法是將K個(gè)近鄰的客流數(shù)據(jù)算術(shù)平均值作為預(yù)測(cè)值,然而匹配到的近鄰對(duì)象與預(yù)測(cè)對(duì)象距離不盡相同,其對(duì)預(yù)測(cè)對(duì)象值的貢獻(xiàn)也是不同的,因此有必要基于近鄰對(duì)象與預(yù)測(cè)對(duì)象距離越小權(quán)重越大的原則,對(duì)K個(gè)近鄰對(duì)象設(shè)置權(quán)重,通過加權(quán)平均得到預(yù)測(cè)值.
若客流量預(yù)測(cè)日為O,預(yù)測(cè)時(shí)段為t,由狀態(tài)向量匹配到的K個(gè)近鄰對(duì)象的日期分別為D1,D2,…,Dk,則預(yù)測(cè)算法為
(4)
(5)
式中:PO,t為預(yù)測(cè)日O在時(shí)段t的小時(shí)進(jìn)站客流量預(yù)測(cè)值;αk為近鄰Dk的預(yù)測(cè)權(quán)重值,各權(quán)重值之和為1;dk為預(yù)測(cè)日O的狀態(tài)向量與近鄰日Dk的狀態(tài)向量之間的歐式距離;Hk,t為近鄰日Dk在時(shí)段t的歷史客流量值.
EMD-KNN組合算法流程見圖1.
圖1 EMD-KNN組合算法流程圖
選取蘇州軌道交通1號(hào)線換乘站點(diǎn)廣濟(jì)南路站進(jìn)站客流為分析實(shí)例,客流歷史數(shù)據(jù)統(tǒng)計(jì)自2020年1月1日—6月22日,時(shí)間粒度為1 h,7時(shí)的客流量定義為06:00—07:00的小時(shí)客流量,以此類推,每日共17個(gè)時(shí)段.圖2為小時(shí)進(jìn)站客流量時(shí)序圖.
圖2 2020年1月1日—6月22日廣濟(jì)南路站小時(shí)進(jìn)站客流時(shí)序圖
由圖2可知:客流量在1月上旬較為正常,但受到新冠肺炎疫情相關(guān)交通管制措施的影響,1月中下旬出現(xiàn)斷崖式減少,低位客流量持續(xù)一個(gè)多月;受復(fù)工復(fù)產(chǎn)影響,2月中下旬至5月,客流量緩慢爬升;6月客流量逐漸恢復(fù),但較疫情前依然略低.宏觀上,客流量時(shí)序呈非線性變化趨勢(shì);中觀層面,以周為單位,客流量呈現(xiàn)明顯的周期性,各工作日客流量普遍高于非工作日.
疫情前后日小時(shí)變化曲線有明顯差異,見圖3.疫情前,1月3日為工作日,客流時(shí)間序列呈現(xiàn)明顯早晚高峰特征;1月11日非工作日,無(wú)明顯早晚高峰.2月為疫情嚴(yán)防期,其中2月21日工作日出現(xiàn)不明顯的早晚高峰,2月22日非工作日無(wú)早晚高峰.由于疫情得到有效控制,5月5日非工作日客流量較2月有較大提高,且隨著復(fù)工復(fù)產(chǎn),5月8日工作日客流量小時(shí)變化特征接近疫情前.總體上,站點(diǎn)進(jìn)站客流量小時(shí)序列呈非線性、非平穩(wěn),同時(shí)具有周期性變化的特征.
圖3 廣濟(jì)南路站疫情前后小時(shí)客流變化對(duì)比
利用計(jì)量經(jīng)濟(jì)統(tǒng)計(jì)軟件Eviews,對(duì)2020年1月1日—6月22日的站點(diǎn)小時(shí)進(jìn)站客流序列進(jìn)行BP結(jié)構(gòu)性多斷點(diǎn)檢驗(yàn),檢驗(yàn)結(jié)果見表1.
由表1可知:在0.05顯著性水平下,斷點(diǎn)檢驗(yàn)“0vs1”、“1vs2”、“2vs3”的F值大于臨界值,拒絕了1、2、3三個(gè)斷點(diǎn)差異顯著為0的假設(shè);斷點(diǎn)檢驗(yàn)“3vs4”的F值小于臨界值,無(wú)法拒絕原假設(shè).由此判斷3個(gè)結(jié)構(gòu)斷點(diǎn)位置大致為1月23日、3月11日和5月2日,各斷點(diǎn)時(shí)間基本與地方政府采取疫情交通管制措施和復(fù)工復(fù)產(chǎn)時(shí)間相一致.三個(gè)結(jié)構(gòu)斷點(diǎn)將時(shí)間序列分為T1、T2、T3和T4四個(gè)子序列段,見圖4.
表1 BP結(jié)構(gòu)斷點(diǎn)檢測(cè)結(jié)果
圖4 2020年1月1日—6月22日客流時(shí)間序列結(jié)構(gòu)斷點(diǎn)分段圖
以2020年6月19 —22日4 d的小時(shí)進(jìn)站客流量為預(yù)測(cè)對(duì)象,選取客流變化趨勢(shì)與預(yù)測(cè)日最為接近的T4序列作為歷史數(shù)據(jù)序列.
基于Matlab平臺(tái)編寫經(jīng)驗(yàn)?zāi)B(tài)分解運(yùn)算程序,對(duì)歷史數(shù)據(jù)序列進(jìn)行經(jīng)驗(yàn)?zāi)B(tài)分解,得到8個(gè)本征模函數(shù)IMF1-IMF8,以及一個(gè)殘差序列R,見圖5.
圖5 2020年5月2日—6月18日客流時(shí)序經(jīng)驗(yàn)?zāi)B(tài)分解結(jié)果
由圖5可知:本征模函數(shù)IMF1-IMF8波動(dòng)頻率依次降低,波動(dòng)周期逐漸增大,最終的殘差序列波動(dòng)頻率最低,是原始序列的總體發(fā)展趨勢(shì).
計(jì)算各IMF和殘差序列與原始序列的相關(guān)性系數(shù)、方差占比、樣本熵、周期等統(tǒng)計(jì)指標(biāo),結(jié)果見表2.
表2 各分量統(tǒng)計(jì)指標(biāo)
由表2可知:IMF1~I(xiàn)MF8的平均周期逐漸增大,IMF3平均周期為16.65,表達(dá)每日統(tǒng)計(jì)的17個(gè)時(shí)段的周期尺度, IMF2為半日的周期尺度,IMF6為一周的周期尺度.IMF分量的周期尺度能明顯反應(yīng)原始序列部分尺度特征.
Pearson相關(guān)系數(shù)和Kendall系數(shù)衡量?jī)尚蛄兄g的相關(guān)性.IMF1~I(xiàn)MF3與原始序列的Pearson相關(guān)系數(shù)及Kendall系數(shù)均顯著大于其它分量,IMF1~I(xiàn)IMF3包含了原始序列的較多特征.樣本熵表征序列的復(fù)雜程度,IMF1~I(xiàn)IMF3的樣本熵遠(yuǎn)大于后續(xù)IMF分量,表明IMF1~I(xiàn)IMF3分量序列本身也具有較高復(fù)雜性.
IMF1~I(xiàn)IMF3的方差占比遠(yuǎn)大于后續(xù)分量,表明這三個(gè)分量反應(yīng)了大部分原始序列波動(dòng)情況;殘差序列方差占比僅為1.35%,表明原始序列總體走向趨勢(shì)較穩(wěn)定.
由于經(jīng)驗(yàn)?zāi)B(tài)分解本身會(huì)存在分解誤差,為避免分解序列過多導(dǎo)致的誤差累積,綜合考慮IMF1~I(xiàn)IMF3組合為高頻序列,IMF4~I(xiàn)IMF8組合成低頻序列,殘差序列單獨(dú)為趨勢(shì)序列.組合后的高、低頻序列和趨勢(shì)序列見圖6,相關(guān)統(tǒng)計(jì)指標(biāo)見表2.由表2可知:高、低頻序列各相關(guān)系數(shù)明顯增大,表明原始序列大部分的波動(dòng)特征可以被高、低頻序列表達(dá).
圖6 高、低頻及趨勢(shì)序列分組結(jié)果
統(tǒng)計(jì)2020年5月2日—6月18日期間,站點(diǎn)每日時(shí)間序列1~4階自相關(guān)系數(shù)ρ≥0.3的日序列占比情況,結(jié)果發(fā)現(xiàn)日時(shí)間序列滯后2個(gè)時(shí)段的統(tǒng)計(jì)占比為94.83%,滯后3個(gè)時(shí)段的統(tǒng)計(jì)占比僅為1.72%,可認(rèn)為預(yù)測(cè)時(shí)段前2個(gè)時(shí)段的進(jìn)站客流量與預(yù)測(cè)時(shí)段具有良好的相關(guān)性,以預(yù)測(cè)時(shí)段前的2個(gè)時(shí)段客流量作為狀態(tài)向量.
以2020年6月15—16日小時(shí)進(jìn)站客流量作為確定K值的測(cè)試樣本,以2020年5月2日—6月14日的客流量作為歷史數(shù)據(jù)序列,取預(yù)測(cè)時(shí)段前兩個(gè)時(shí)段客流量作為狀態(tài)向量,狀態(tài)向量的匹配距離采用歐氏距離,計(jì)算不同K值下測(cè)試樣本的平均絕對(duì)百分比誤差,結(jié)果見圖7.
圖7 不同K值下測(cè)試樣本誤差統(tǒng)計(jì)
由圖7可知:對(duì)于6月15日測(cè)試樣本,K值取1~4時(shí),平均絕對(duì)百分比誤差從16.98%降至11.20%,K值取4~8時(shí),平均絕對(duì)百分比誤差僅降低0.39%;對(duì)于6月16日測(cè)試樣本,K值取4~8時(shí),平均絕對(duì)百分比誤差僅降低0.84%.說明較大的K值對(duì)于提高預(yù)測(cè)精度并無(wú)明顯作用,因此取K值為4,既能保證較好的預(yù)測(cè)精度,又可提高計(jì)算效率.
分別采用EMD-KNN組合算法、單一KNN算法和ARIMA模型對(duì)6月19—22日的廣濟(jì)南路站小時(shí)進(jìn)站客流進(jìn)行預(yù)測(cè),其中19日、22日為工作日,20、21日為非工作日,預(yù)測(cè)結(jié)果見圖8.
圖8 EMD-KNN/KNN/ARIMA預(yù)測(cè)結(jié)果
由圖8可知:EMD-KNN組合算法與單一KNN算法在預(yù)測(cè)結(jié)果的變化趨勢(shì)上與真實(shí)值高度一致,而ARIMA模型僅在19日預(yù)測(cè)趨勢(shì)與實(shí)際值相似,其余3 d的預(yù)測(cè)趨勢(shì)相差甚遠(yuǎn).20日為非工作日,ARIMA預(yù)測(cè)結(jié)果卻出現(xiàn)早晚高峰,21和22日預(yù)測(cè)結(jié)果與實(shí)際值存在較大偏差,這是因?yàn)锳RIMA模型周期性參數(shù)設(shè)定較為固定,導(dǎo)致難以區(qū)分工作日與非工作日的變化規(guī)律,尤其當(dāng)出現(xiàn)節(jié)假日調(diào)休時(shí),預(yù)測(cè)誤差會(huì)更大.
利用平均絕對(duì)誤差(MAE)、平均絕對(duì)百分比誤差(MAPE)和均方根誤差(RMSE)三個(gè)指標(biāo)反映預(yù)測(cè)精度,各指標(biāo)匯總見表3.
表3 三種算法預(yù)測(cè)精度匯總表
由表3可知:EMD-KNN、KNN和ARIMA在四天預(yù)測(cè)日的平均絕對(duì)百分比誤差均值分別為8.74%、12.03%、20.74%,與KNN算法、ARIMA模型相比,EMD-KNN組合算法精度更高,更加適合不區(qū)分工作日和非工作日的小時(shí)客流時(shí)間序列預(yù)測(cè),全日預(yù)測(cè)趨勢(shì)與真實(shí)值趨勢(shì)高度匹配.
1) EMD-KNN組合算法與KNN算法均能有效捕捉全日客流變化趨勢(shì),在預(yù)測(cè)時(shí)間粒度為1h以及不區(qū)分工作日和非工作日情況下,EMD-KNN組合算法預(yù)測(cè)精度優(yōu)于KNN算法,精度能保持在90%左右,后續(xù)可進(jìn)一步討論不同時(shí)間粒度下的預(yù)測(cè)效果.
2) 由于研究站點(diǎn)本身為通勤類換乘站點(diǎn),其工作日客流特征較非工作日更明顯,因此存在工作日預(yù)測(cè)效果相對(duì)優(yōu)于非工作日,后續(xù)可進(jìn)一步研究EMD-KNN組合算法在不同類型站點(diǎn)的適用性.
3) 本時(shí)間序列預(yù)測(cè)中,ARIMA模型預(yù)測(cè)精度不高,這是由于該模型周期性參數(shù)設(shè)定較為固定,較難區(qū)分工作日與非工作日的變化規(guī)律,以及調(diào)休等因素帶來的影響.