王 濤,謝思紅,黎文皓,2,李文勇
(1.桂林電子科技大學 建筑與交通工程學院,廣西 桂林 541004;2.東南大學 交通學院,江蘇 南京 210096)
隨著智能交通系統(tǒng)的發(fā)展,交通控制以及實時交通誘導已經成為交通領域研究的熱點[1]。而對于交通控制和實時交通誘導來說,交通流預測的準確性和可靠性是其實現(xiàn)的必要條件和重要基礎。對于交通流預測而言,按照預測時間范圍劃分可以分為長期交通流預測和短時交通流預測,其中短時交通流預測顯得更為重要。短時交通流預測,為智能交通系統(tǒng)的核心內容,指的是根據(jù)由時間序列獲取的道路交通流量數(shù)據(jù)預測未來較短時間段內(一般跨度不超過15 min)的交通流情況[2],是智能交通系統(tǒng)中各個子系統(tǒng)功能實現(xiàn)的基礎。相比較長期交通流預測,短時交通流預測由于預測的時間跨度比較短,交通流表現(xiàn)出較不明顯的規(guī)律性,對預測方法提出了更高的要求。
一些研究者們首先提出將短時交通流量預測視為時間序列的線性問題進行分析[3],接著國內外的研究人員根據(jù)不同領域的方法設計出了多種交通流預測模型。這些方法大致可分為線性模型、非線性模型、混合模型和其它模型4種類型。第一類是傳統(tǒng)的線性預測模型,主要包括自回歸模型[4](AR,autoregressive model)、差分整合移動平均自回歸模型[5-7](ARIMA,autoregressive integrated moving average model)等時間序列模型以及卡爾曼濾波(KF,Kalman filtering)模型[8-9]。第二類是非線性模型,是根據(jù)大量的歷史觀測數(shù)據(jù)分析出交通流系統(tǒng)運動的規(guī)律,通過監(jiān)督學習獲得交通流的預測模型。比較有代表性的有非參數(shù)回歸模型[10-11]、支持向量機模型[12-13]和神經網(wǎng)絡模型[14-16]等。第三類是混合模型,是指使用兩種或兩種以上的模型進行交通流預測,是目前最常使用的短時交通流預測方法。其主要形式為將一種模型的輸出結果作為另一種模型的輸入,通過模型銜接得到最終結果,或是同時對多種模型進行預測,通過合并改進實現(xiàn)整個預測結果的優(yōu)化[17]。第四類是交通仿真模型、動態(tài)交通分配模型等其它模型。交通仿真是通過對信號控制規(guī)律、道路網(wǎng)絡和交通量進行模擬,從而掌握道路網(wǎng)絡未來的發(fā)展變化與高可能性的發(fā)展狀態(tài)。交通仿真系統(tǒng)分為宏觀、中觀和微觀3類,其中將微觀仿真與動態(tài)交通分配結合的方法在短時交通流預測中應用較廣[18]。
但是,長久以來學者們并沒有意識到短時交通流存在的高度非線性和不確定性問題及其對交通流狀態(tài)的影響。直到近年,才有研究者開始對交通流不確定性進行研究,并先后提出將模糊理論和混沌理論用于交通領域的不確定性問題研究。ZHANG Yunlong等[19]使用模糊邏輯系統(tǒng)方法試圖解釋各種突發(fā)情況下的交通狀態(tài)變化,以得到準確和穩(wěn)定的預測結果;XUE Jieni等[20]提出了一種基于混沌時間序列分析方法的短時交通流預測模型,針對交通流復雜的結構,利用交通流數(shù)據(jù)進行相空間重構,并通過優(yōu)化得到預測模型。同時,針對單一模型的局限性,多測度組合模型也逐漸被用于解決交通流預測的不確定性問題,包括模糊理論、卡爾曼濾波與神經網(wǎng)絡的組合預測模型[21]、混沌理論與支持向量機的多測度組合預測模型[22]等。這些方法雖然在一定程度上解決了交通流不確定性的影響,但因交通流具有復雜非線性結構,很難建立一個準確的模型來描述。
筆者試圖從交通系統(tǒng)整體出發(fā),挖掘交通流內在復雜的結構,通過增量學習方法實時更新預測模型參數(shù)來適應交通流不確定性變化,同時與非線性濾波的抗干擾、高精度的濾波能力相結合,提出一種自適應實時預測模型。該模型以歷史和現(xiàn)有數(shù)據(jù)為依據(jù),通過帶遺忘因子的極限學習機在線實時更新模型,從而可以構建一個長期變化的模型來預測未來交通量的變化趨勢,再利用粒子濾波得到最優(yōu)的交通量短時變化估計值,消除系統(tǒng)隨機噪聲,提高交通流的實時預測精度。
交通流存在復雜的變化規(guī)律。雖然在同一區(qū)域內,人們的出行方式在時間周期上呈現(xiàn)出一定的規(guī)律性,但是隨著時間尺度縮短,交通流還表現(xiàn)出時變性、隨機性、內在約定性等不穩(wěn)定特性。交通流復雜性與受到的影響因素密切相關,因此可以從影響交通流的主要因素(人、車、路以及環(huán)境等)進行分析。例如,每個駕駛員的生理、心理以及反應特性千差萬別,對于他們來說,在下一刻面臨的駕駛環(huán)境也是不確定的,而前車的運行狀態(tài)也會直接影響到他們的駕駛情況。并且,不同的路網(wǎng)密度、道路結構、天氣情況等在交通系統(tǒng)中也會產生不確定性變化。從以上分析可以看出,影響交通流的各個因素均存在著不確定性,而決定路上交通狀態(tài)的往往均為多種因素相互作用的結果。駕駛員于何時何地以何種方式和狀態(tài)進入路網(wǎng)是不可預知的;進入路網(wǎng)后,車輛的運行狀態(tài)又將受到道路擁擠程度、道路緊急情況等多種因素的影響,這些因素的變化也是不可預知的。這些表現(xiàn)都證明了交通系統(tǒng)中存在很強的不確定性,而這種不確定性集中體現(xiàn)在交通流的變化中,即為交通流不確定性[23]。
通過主成分分析法[24](PCA,principle components analysis)可以挖掘短時交通流的內在構成。主成分分析法通過協(xié)方差矩陣轉換成新的正交坐標系來表征P維空間中與主成分的偏差,偏差可繪制得到主分量譜圖。具體分析步驟如下:
步驟1:若已知時間序列{x1,x2,…,xN},采用時間間隔τ和嵌入維數(shù)m,計算軌線矩陣Xl×m如式(1):
(1)
式中:l=N-(m-1)。
步驟2:計算協(xié)方差矩陣,方法如式(2):
(2)
步驟3:得到特征向量Ui(i=1,2,…,m)以及特征值λi(i=1,2,…,m),并將特征值按照從大到小的順序排列:λ1≥λ2≥…≥λm,特征值λi和特征向量Ui稱為主分量。
步驟4:計算所有特征值之和γ,如式(3):
(3)
步驟5:以指標i為X軸、ln(λi/γ)為Y軸,繪制主分量譜圖。通過主分量譜可以觀察到主分量分布之間存在的差異。以桂林市某道路的交通流量數(shù)據(jù)為例,運用主成分分析法,嵌入維數(shù)m依次取4、6、8、10,將分析結果繪制成主分量譜圖,如圖1。
由圖1可以看出,短時交通流的主分量譜傾斜,具有混沌特性,同時存在隨機噪聲,并且隨著嵌入維數(shù)增加,水平段越長,噪聲越明顯。通過分析,可以將交通流的不確定性從隨機性和混沌特性兩個角度進行描述??偟膩碚f,交通流存在以下特點:一種是交通系統(tǒng)中的規(guī)律性,其決定交通流的總體趨勢;另一種是不確定性,能夠影響交通流實時流量,使得交通流發(fā)生擾動。內部不確定性短期內按規(guī)律演化,其隨著時間增加變?yōu)闊o法估計的內在不確定性,即混沌特性。外部不確定性無法預測,是系統(tǒng)本身客觀存在的,具有隨機性,即隨機噪聲。因此,可以把短時交通流看作一組包含隨機干擾信號的不確定性時間序列。
圖1 主分量譜Fig.1 Spectrogram of principal component
通過1.2節(jié)的分析可知,短時交通流存在不確定性,容易受到未知擾動影響,使得實際交通流在一定范圍內呈現(xiàn)大小不一的波動。另一方面,短時交通流又有較強的關聯(lián)性,與本路段和上下游路段待測時刻前的交通量密切相關[25]。針對此特點,筆者首先利用本路段和上下游路段相關交通數(shù)據(jù),通過帶遺忘因子的極限學習機建立符合本路段規(guī)律的時序模型,使得預測具備充分的可靠程度,而后結合粒子濾波得到最優(yōu)的預測交通量短時變化估計值,消除隨機噪聲對預測精度的影響,形成一種自適應實時預測模型。
給定N個不同的訓練樣本(xi,yi),xi=(xi1,xi2,…,xin)T∈Rn,yi=(yi1,yi2,…,yim)∈Rm,i=1,2,…,N,隱藏層節(jié)點個數(shù)為L,激活函數(shù)為g(x),極限學習機(ELM,extreme learning machine)模型如式(4):
(4)
式中:ωj為隱藏層以及輸入層節(jié)點間權值向量,ωj=(ωj1,ωj2,…,ωjn)T,其中j=1,2,…,L;βj=(βj1,βj2,…,βjm)T為輸出層以及隱藏層節(jié)點間權值向量;bj為隱藏層節(jié)點偏置。ELM可以表示為矩陣形式:
Hβ=Y
(5)
計算初始隱藏輸出矩陣H0,希望求得使?jié)M足‖H0β-Y0‖最小的β(0)。根據(jù)廣義逆的計算方法,可以計算出β(0):
(6)
(7)
(8)
對于在線學習,把β(1)表示成β(0)、K1、H1和Y1的函數(shù),即:
(9)
(10)
由此,可得到帶遺忘因子的在線序列極限學習機模型的一般形式為:
(11)
(12)
通過帶遺忘因子的在線序列極限學習機模型可以構建出一個連續(xù)的非線性時間系統(tǒng)。在此基礎上,可以假設該系統(tǒng)的狀態(tài)方程和觀測方程分別如式(13)、式(14),進而利用粒子濾波來修正帶遺忘因子的極限學習機模型。
xk=f(xk-1,vk-1)
(13)
yk=hk(xk,uk)
(14)
式中:xk為系統(tǒng)在k時刻所產生的交通流;yk為k時刻的觀測交通流;fk:Anx×Anv→Anx為狀態(tài)方程;hk:Anx×Anu→Any為觀測方程;vk為過程噪聲;uk為觀測噪聲,假設vk和uk是互不相關、零均值白噪聲。
在m階馬爾科夫假設下,根據(jù)y1:k遞推估計后驗概率密度p(x0:k|y1:k)。其中:x0:k={x0,…,xk}為k時刻系統(tǒng)所產生的交通流序列;y1:k={y1,…,yk}為觀測交通流序列。
(15)
求得狀態(tài)變量x0:k的后驗概率分布p(x0:k|y1:k)后,根據(jù)蒙特卡洛原理,任意函數(shù)g(x0:k)的數(shù)學期望都可以表示為:
(16)
為了解決從后驗概率分布抽取樣本比較困難的問題,引入重要性采樣方法(importance sampling method)。該方法采用一種重要性采樣密度q(x0:k|y1:k)抽取樣本來近似p(x0:k|y1:k),式(15)可以寫成式(17):
E[g(x0:k)]=Eq(·)[g(x0:k)ω*(x0:k)]
(17)
從重要性采樣密度q(x0:k|y1:k)中采樣后,數(shù)學期望可以近似表達為:
(18)
(19)
將重要性采用密度分解為:
q(x0:k|y1:k)=q(xk|xk-m:k-1,yk)q(x0:k-1|y1:k-1)
(20)
(21)
(22)
樣本從重要性函數(shù)產生,存在偏差。經過若干次迭代后,粒子權值的方差會越來越大,出現(xiàn)退化現(xiàn)象。為了解決此問題,引入有效粒子數(shù)Neff衡量算法的退化程度,據(jù)此決定何時進行重抽樣Neff定義為:
(23)
綜上所述,粒子濾波的框架結構如圖2。
圖2 粒子濾波的框架結果Fig.2 Frame results of particle filter
以桂林市內的某主干道路段為研究對象進行實驗,選取2019年4月一個方向的6個路段固定檢測裝置獲取的交通流時間序列作為數(shù)據(jù)樣本。筆者根據(jù)一定算法及預測模型構建的要求,對地圖匹配后的數(shù)據(jù)展開有效程度的評價以及預處理,同時圍繞交通流進行求解。在數(shù)據(jù)具備充分可靠特征的前提下,最終得到連續(xù)5天共455個時間點的數(shù)據(jù),其中選取交通流數(shù)據(jù)中前4天的數(shù)據(jù)作為訓練集,選取最后一天的數(shù)據(jù)為測試集進行實驗。
為了驗證算法的有效性,選取在線序列極限學習機、帶遺忘因子的極限學習機等兩種在線學習模型以及比較常用的時間序列(ARIMA)、支持向量機(SVM)和長短期記憶神經網(wǎng)絡(LSTM) 3種離線算法模型進行對比分析。對于在線序列極限學習機模型,極限學習機的內部節(jié)點數(shù)設為10,數(shù)據(jù)流里每次截取20個時刻點數(shù)據(jù)輸進去在線學習;對于帶遺忘因子的極限學習機模型,設置遺忘因子為0.9;對于自適應實時預測模型,增加粒子濾波過程,將轉移噪聲協(xié)方差和測量噪聲協(xié)方差設置為1,粒子數(shù)設為100。
通過MATLAB 2018a對幾種模型進行編程求解,并將各模型的預測結果與真實值進行對比,結果如圖3。
圖3 不同模型預測值與真實值的對比結果Fig.3 Comparison results of the predicted values and real values of different models
為了進一步量化各模型預測的整體效果,對平均絕對誤差(MAE)、均方誤差(MSE)、均方根誤差(RMSE)、平均絕對百分比誤差(MAPE)4種誤差指標進行計算,如式(24)~式(27)。6種預測算法誤差指標數(shù)據(jù)對比結果如表1。
表1 6種預測算法誤差指標對比Table 1 Comparison of error indexes of the six prediction algorithms
(24)
(25)
(26)
(27)
同時,繪制3種在線學習方法在學習過程中的均方誤差時間序列分布情況,如圖4。
圖4 均方誤差隨時間序列的分布Fig.4 Distribution of mean square error changing with time series
從圖3和表1可以看出,傳統(tǒng)在線序列極限學習機和帶遺忘因子的極限學習機模型的預測精度低于其他3種離線算法模型。雖然傳統(tǒng)在線學習方法模型的動態(tài)更新可以增加對數(shù)據(jù)不確定性的適應性,但也存在有風險。在線學習方法在訓練一個數(shù)據(jù)點后直接更新權值,但是更新權值存在不確定性。若存在錯誤的更新,模型可能會逐漸走向錯誤的方向,導致預測精度下降。
從圖4可以看出,在線序列極限學習機和帶遺忘因子的極限學習機訓練集絕對誤差的變化維度為0~120。帶遺忘因子的極限學習機考慮了早期采集數(shù)據(jù)對預測精度的影響,在一定程度上提高了預測精度,但是依然對突發(fā)情況下的交通流變化不夠敏感。在線序列極限學習機和帶遺忘因子的極限學習機更傾向于交通流的整體變化趨勢。而筆者提出的自適應模型均方誤差變化維度下降至0~2.5,該模型能很好地應對交通流不確定性的影響。
自適應模型在傳統(tǒng)在線學習模型的權值更新上進行了改進,通過粒子濾波的優(yōu)化效果增加了模型的魯棒性和可靠性。研究結果表明,筆者提出的自適應模型在對平均絕對誤差(MAE)、均方誤差(MSE)、均方根誤差(RMSE)、平均絕對百分比誤差(MAPE)等4種指標上均優(yōu)于其他預測方法,在路段整體的交通流擬合情況及具體的預測精度上均得到有效提高。
筆者考慮交通流不確定性問題,提出了一種基于遺忘因子和粒子濾波極限學習機自適應交通流實時預測模型。該模型分為兩步:首先通過引入遺忘因子(FFOS-ELM)實時修正系統(tǒng)模型參數(shù),解決交通流時變性對預測精度的影響;然后運用粒子濾波(PF)的系統(tǒng)狀態(tài)最優(yōu)估計與預測能力,降低交通量 “噪聲”,最終形成最優(yōu)預測。隨后筆者使用實測數(shù)據(jù)對模型展開驗證。驗證結果顯示:應用筆者提出的模型進行短時交通流預測,在預測過程中交通流具有的非線性、模糊性以及隨機性等問題對預測結果的影響程度均得到了有效緩解,且在經過整體性處理之后由噪聲導致的誤差明顯降低;模型預測精度優(yōu)于在線序列極限學習機、帶遺忘因子的極限學習機在線學習模型和時間序列(ARIMA)、支持向量機(SVM)和長短期記憶神經網(wǎng)絡(LSTM)等離線算法模型,且在路段整體的交通流擬合情況及具體的預測精度上均得到有效提高。