梁秀霞, 李萬通, 楊 凡, 張 燕
(河北工業大學人工智能與數據科學學院, 天津 300132)
短時交通流預測作為智能交通的重要組成部分,以收集的歷史交通數據對未來的交通狀態進行預測,是實現交通控制和誘導的關鍵。當前,已有多種模型對交通流進行預測,如以線性理論為基礎的時間序列模型[1]、卡爾曼濾波模型[2],以非線性理論為基礎的非參數回歸模型[3]、支持向量機模型[4]、神經網絡模型[5]等。神經網絡模型由于在處理非平穩、非線性時間序列中表現出來的強大優勢,成為了近年來的研究趨勢。
在研究中學者們發現,交通流序列具有一定的混沌特性,其復雜的演化規律使得僅僅通過神經網絡無法達到預期的預測效果。Han等[6]提出了狀態重構方法對混沌時間序列進行特征分析;李巧茹等[7]以相空間重構(phase space reconstruction,PSR)的方法對交通流序列進行處理,提升了預測的精度;馮霞等[8]對客流量序列進行重構,說明了對混沌時間序列進行相空間重構的有益性。
近年來,在以神經網絡對交通流的預測中涌現了大量模型,如BP神經網絡、卷積神經網絡、長短期記憶神經網絡等[9]。回聲狀態網絡(echo state network, ESN)由于其能夠高效地處理一維時間序列而得到了廣泛應用[10]。ESN由于其特殊的儲備池結構使之能夠擬合任何所需輸入信號,Rodan等[11]提出了確定性跳躍循環狀態網絡(cycle reservoir with regular jumps,CRJ)對ESN的儲備池結構進行優化;Sheta等[12]對比發現,CRJ的預測能力和故障識別能力相比于ESN得到了提高。CRJ網絡同樣存在初始參數的確定問題。在參數優化上,多采用智能優化算法,如蟻群算法、粒子群算法[13]等,但是存在算法計算復雜、穩定性較差等問題。
為提高短時交通流速度的預測精度,綜合對比上述預測模型,考慮CRJ網絡的優點,以其為核心建立預測模型。同時為解決網絡的初始參數依賴問題,引入變步長和模擬退火技術改進的天牛須算法對其進行優化,提高模型訓練的快速性和穩定性。基于此,提出基于改進天牛須算法優化的確定性跳躍循環狀態網絡(RBAS-CRJ)的預測模型,利用實測數據對所提模型進行分析,驗證了模型的有效性和準確性。
交通流速度是典型的時間序列,具有高度的隨機性及復雜性,在序列內部蘊藏著大量信息,可通過對序列的系統分析以實現變量的預測。混沌時間序列理論在分析帶有大量隨機性的復雜非線性系統時較為合適,為恢復交通流速度序列的規律和特性,將其引入分析研究中。邯鄲市某地區一個路段的交通流速度序列如圖1所示。

圖1 邯鄲市某地區路段交通流速度序列Fig.1 Traffic flow speed in sections of Handan
由圖1可見,短期交通流速度具有一定的隨機性,為進一步分析其所具有的混沌特性,通過相空間重構求取交通流速度序列映射的相空間,并求取其Lyapunov指數判斷其是否具有混沌性。根據Takens嵌入定理,可以從一維混沌時間序列中重構一個與原動力系統在拓撲意義下一樣的相空間,混沌時間序列的判定、分析和預測都在所重構的相空間中進行。采取延遲重構法對短時交通流速度序列進行重構和分析。
設數量為n的原始交通流速度序列為x(i),i=1,2,…,n,需要構建M=n-(m-1)τ個m維相空間矢量Xi,重構后的相空間為
Xi=(x(i),x(i+τ),…,x{i+[n-(m-1)τ]})
(1)
式(1)中:τ為延遲時間;m為嵌入維度;i=1,2,…,n;X為M×m的矩陣。其相空間軌跡為
X=

(2)
重構相空間的關鍵在確定最優延遲時間τd和嵌入維數,采用C-C方法[14]求取。計算嵌入時間序列的關聯積分為


(3)
式(3)中:N為時間序列長度;r為計算中設定的搜索半徑;θ為Heaviside函數。
將x(i)分成τ個互不關聯的子集,定義其檢驗統計量S(m,N,r,τ),對非線性時間序列的相關性進行描述,并由此計算最優延遲時間和嵌入維數。
S(m,N,r,τ)=C(m,N,r,τ)-Cm(1,N,r,τ)
(4)
以分塊平均策略計算式(4),當N→∞,有

m=2,3,…
(5)

(6)

min[S(m,ri,τ)]
(7)
(8)

計算得到延遲時間和嵌入維數后,對短期交通流速度序列進行重構,以小數據量法計算Lyapunov指數,判斷序列的混沌性。
ESN訓練過程快,對一維時序數列的處理和預測有很好的優勢。CRJ網絡是ESN的變種,本質是一種遞歸神經網絡,由輸入層、輸出層和隱藏層(儲備池)3層構成,其結構如圖2所示。

圖2 CRJ網絡結構圖Fig.2 Network structure diagram of CRJ
在t時刻,網絡的輸入為u(t)=[u1(t),u2(t),…,uK(t)],儲備池狀態h(t)=[h1(t),h2(t),…,hP(t)],網絡的輸出為y(t)=[y1(t),y2(t),…,yQ(t)],其中,K為輸入維數,P為儲備池神經元的個數,Q為輸出維數。儲備池的狀態依據式(19)進行更新,即
h(t+1)=f[Winu(t+1)+Wh(t)+
Wbacky(t)]
(9)
式(9)中:Win為輸入權值矩陣,維數為P×K;W為內部狀態權值矩陣,維數為P×P;Wback為輸出至內部狀態權值矩陣,維數為Q×P;f為內部神經元激活函數,取sigmoid函數。特別地,在W矩陣中,rc為循環邊的權重,rj為跳躍邊的權重,跳躍步長為L。系統的輸出方程為
y(t+1)=fout[Wouth(t+1)]
(10)
式(10)中:fout為輸出層激活函數,一般選取線性函數。CRJ網絡在訓練時只需要訓練隱藏層到輸出層的連接權值矩陣Wout,采用線性回歸即可完成。
CRJ網絡與ESN相比,其儲備池采用了確定的連接結構,這種結構相比于隨機生成的儲備池使網絡性能得到提高,彌補了隨機連接時網絡的不確定性,降低了神經元連接的冗余。但由于其確定的跳躍步長,使其不能充分考慮時間序列中的隨機因素,泛化能力降低。因此假設步長L是隨機的,以充分挖掘儲備池中高聚類系數節點的信息,增強網絡的學習能力。至此,CRJ網絡的儲備池需要確定的初始參數為儲備池節點數P、循環邊權重rc、跳躍邊權重rj、輸入單元尺度IS。
對于上述CRJ網絡模型中的初始參數選擇依賴于經驗,沒有確定的準則,因此將作為優化參數,以尋優算法確定。天牛須搜索算法基于天牛覓食原理,天牛以觸角感受食物氣味,左右觸角的氣味強度偏差引導其移動方向。天牛須算法(beetle antennae search,BAS)算法的尋優過程同粒子群算法、遺傳算法等類似,不需要知道目標函數的具體形式及梯度信息,并且BAS算法的尋優個體僅為一個,使得其尋優的速度顯著提高。BAS算法實現步驟如下。
(1)生成k維的隨機向量表示天牛頭的朝向,即
(11)
式(11)中:rands()為隨機函數;k表示空間維度。
(2)創建天牛左右須空間坐標,即
(12)
式(12)中:λc、λrc、λlc分別表示天牛在第c次迭代時的質心坐標、右須坐標、左須坐標;d0為兩須之間距離。
(3)根據適應度函數計算左右須的氣味強度,更新天牛位置,即
λc+1=λc-δ·b·sign[fit(λrc)-fit(λlc)]
(13)
式(13)中:δ為步長因子;sign()為符號函數;fit為適應度函數。
步長因子δ用來控制天牛的區域搜索能力,在初始時,大的步長會擴大搜索空間,并使天牛快速落向最優解,提高其跳出局部最優的能力;在迭代后期,小的步長會提高搜索能力,避免在最優解附近的震蕩。為保證搜索的精細化,假定步長是變化的,采用權值線性遞減的策略對δ進行調整,即
δc+1=eta_δδc
(14)
式(14)中:eta_δ為步長衰減系數,此處取eta_δ∈[0.2,0.95],隨迭代次數逐步減小,初值為0.95。同時為了防止BAS算法陷入局部最優,引入模擬退火技術對其改進,即在每一步的過程中,都以一定的概率γ接受比當前解差的結果,提升其跳出局部最優的能力,且接受“次優解”的概率γ隨迭代次數的增加而逐步降低,以保證算法的穩定性。
(15)
式(15)中:T為退火溫度;概率γ的遞減性已由模擬退火算法中相關理論證明[15]。
將上述改進的BAS算法稱為RBAS算法,將其與CRJ網絡相結合構建了新的預測模型:RBAS-CRJ模型。先將變步長策略和模擬退火技術引入BAS,并與隨機步長的CRJ網絡相結合,即以RBAS算法優化CRJ網絡的關鍵參數。然后將優化后的參數輸入CRJ網絡,完成模型構建。最后通過測試集檢驗優化效果。具體實現如下。
(1)輸入交通流速度序列相空間重構。以C-C方法求取延遲時間和嵌入維數,重構相空間,劃分訓練樣本和測試樣本。
(2)初始化RBAS算法中的參數,包括空間維度k、左右須距離d、初始步長δ、迭代次數、初始降火溫度T、降溫速率、降火次數;初始化CRJ網絡參數,隨機生成Win、Wout、Wback、儲備池節點數P、循環邊權重rc、跳躍邊權重rj、輸入單元尺度IS,其中待優化參數為P、rc、rj、IS。
(3)RBAS算法參數尋優。首先初始化天牛位置,創建天牛須朝向的k維隨機向量,表征CRJ網絡中的一組參數(P、rc、rj、IS),以訓練集的均方根誤差作為適應度函數,對當前解進行評價。
(16)
式(16)中:B為訓練集樣本數;tsim(b)為樣本b的模型輸出值;yb為樣本b的實際值。
之后計算天牛左右須的適應度,確定天牛移動方向,更新天牛位置得到新的解(即完成對儲備池參數的一次更新),同時重新計算解的適應度。最后判斷是否達到最大迭代次數或解的適應度函數值是否滿足要求,滿足則輸出解,將解代入CRJ網絡開始訓練;不滿足則繼續迭代。
(4)RBAS-CRJ網絡模型訓練。根據RBAS算法的尋優結果設定網絡的初始參數,不斷訓練權值矩陣Wout,訓練完成后進行測試樣本的預測和評價。總流程如圖3所示。
研究數據來源于2019年10月邯鄲市某地區兩個路段的交通流速度數據,采樣周期為5 min,每天采集288個數據,用于實驗的為其中一個路段連續6 d的數據,共計1 728個數據點,將其排列為連續的時間序列,如圖4所示。由圖4可以看出,該序列具有較強的復雜性與時變性,同時具有一定的規律性。

圖3 基于RBAS-CRJ 的交通流速度預測流程Fig.3 Flowchart of traffic flow speed prediction based on RBAS-CRJ

圖4 原始交通流速度序列Fig.4 Sequence of original traffic flow speed
為了驗證交通流速度序列的混沌性,在計算整個序列的李雅普諾夫系數之外,對數據進行區間劃分,每個區間288個數據,即一天的數據量,全面考察序列的延遲時間、嵌入維數和李雅普諾夫指數。


圖變化曲線


表1 交通流速度序列重構結果
分析表1可以發現,τd集中在5附近,m保持為3,故可選取τd=5,m=3,且可以看到序列x(i)及其子區間序列的Lyapunov指數均大于0,說明了交通流速度序列具有混沌性。根據延遲坐標法重構x(i)[x(i)的長度為1 728]的相空間軌跡X為

(17)
基于所提網絡的交通流速度混沌時間序列預測即是實現式(18)的映射,即

(18)
根據3.2節得到的X可以確定CRJ的輸入維數為3,輸出維數為1,共有1 718個相點樣本。
根據式(18)將重構相空間Xi作為模型輸入,下一時刻交通流速度作為輸出,隨機選取70%為訓練樣本,30%為測試樣本,以進行模型的驗證。
采用RBAS算法優化CRJ網絡的參數,RBAS算法初始化參數設置如下:空間維度k=4(表示一組儲備池參數),左右須距離d=0.05,初始步長δ=3,eta_δ=0.95,迭代次數為100,初始降火溫度T=5 000,降溫速率為0.7,降火次數為10。采用均方根誤差作為適應度函數值,適應度曲線如圖6所示。

圖6 RBAS和BAS的適應度曲線Fig.6 Fitness curves of RBAS and BAS
由圖6(c)可以看出,改進后的RBAS相比于BAS收斂到最優解附近所需要的迭代次數減少,這是由于變步長因子的引入,使算法在搜索的過程中不斷精細化,避免了中后期在搜索空間上的大幅跳躍,加快了向最優解前進的速度。此外由圖6(a)可以看到,RBAS在搜索過程中具有跳出局部最優的能力,這種能力一直保持到了搜索的中后期,而圖6(b)中BAS在搜索前中期雖然有一定的能力搜索解空間,但當其陷入局部最優時,需要較長的時間才能夠跳出,由此說明模擬退火技術的引入起到了一定的作用。
為了衡量模型預測短時交通流量的效果,采
用平均絕對誤差(MAE)、均方誤差(MSE)、平均絕對百分比誤差(MAPE)這3個指標評價模型預測結果的準確性。
(19)
(20)
(21)
基于相空間重構和RBAS-CRJ的短時交通流速度預測模型的預測效果以及誤差曲線如圖7(a)、圖7(b),圖7(c)為所提模型與其他模型的對比。
由圖7(a)可以直觀地看到模型的預測值擬合實際值的效果,模型預測輸出值可以較好地跟蹤實際值。由7(b)可以看到誤差基本控制在[-5,5]內,模型的預測效果良好。此外,為對比分析所提模型的性能,選取了以下4個模型進行對比,分別為狀態回聲網絡預測模型(ESN)、交通流速度序列未重構的ESN預測模型(N-ESN)、確定性跳躍循環狀態網絡預測模型(CRJ)、天牛須算法優化的確定性跳躍循環狀態網絡預測模型(BAS-CRJ)。圖7(c)為不同模型的預測誤差,計算各模型的評價指標如表2所示。
分析表2的計算結果,ESN模型同N-ESN模型相比,平均絕對百分比誤差下降了2.65%,即經過相空間重構后的預測效果較優,說明交通流速度作為一種混沌時間序列,在相空間對其分析能夠挖掘其內部特性,提高對其的預測精度。CRJ模型同ESN模型相比,平均絕對百分比誤差下降了1.21%,說明確定的儲備池結構提高了網絡的性能,降低了神經元連接的冗余,在一定程度上提高了模型的泛化能力。BAS-CRJ模型同CRJ模型相比,平均絕對百分比誤差下降了1.13%,說明CRJ合適的初始參數對于提高網絡的預測精度有著積極的作用,對初始參數的優化是有必要的。RBAS-CRJ模型同BAS-CRJ模型相比,平均絕對百分比誤差下降了1.05%,結合圖6的結果,說明變步長因子及模擬退火的引入提高了BAS算法的性能,RBAS算法對CRJ網絡的參數優化能力加強,使RBAS-CRJ模型的預測性能上升。綜上所述,本文模型預測效果良好,對短時交通流速度預測得準確性有了進一步的提高。

圖7 不同模型的預測結果和誤差Fig.7 Prediction results and errors of differernt model

表2 各模型的預測結果指標
提出一種基于相空間重構和改進BAS-CRJ的模型對短時交通流速度進行預測和分析,得到以下結論。
(1)通過分析交通流速度序列具有的混沌性,重構序列的相空間,為混沌理論和預測模型的結合奠定了基礎。相比于直接以原始序列進行預測,降低了預測誤差。交通流速度序列經相空間重構后適用于神經網絡下的建模。
(2)將變步長因子和模擬退火技術引入天牛須算法,并以改進的天牛須算法優化CRJ的參數,結果表明,所建立的RBAS-CRJ預測模型同對比模型相比,預測值能夠更好地跟蹤實際值,提高了預測精度,對于實現實時交通誘導和控制、建設智能交通具有一定的參考價值。