張金飛,黎 英,高 偉,黃名鈿
(昆明理工大學(xué) 信息工程與自動化學(xué)院,云南 昆明 650504)
對于交通[1]中交通流預(yù)測,可以根據(jù)預(yù)測時間的跨度把它分為中長期預(yù)測和短時預(yù)測[2],其中短時交通流預(yù)測的時間跨度并沒有一個非常標(biāo)準(zhǔn)的定義,通常是指基于獲取到的交通數(shù)據(jù)針對未來15 min內(nèi)的預(yù)測,而且在交通控制和誘導(dǎo)[3]中對提高實時性方面起著很大作用。智能交通系統(tǒng)中比較關(guān)鍵的一點就是希望對交通流實時、動態(tài)和精準(zhǔn)地預(yù)測,以提高城市交通管理和運行效率,這也是為什么短時預(yù)測能夠成為當(dāng)前智能交通系統(tǒng)[4]的重要研究內(nèi)容的原因。另外短時交通流量的預(yù)測時間跨度相對較短,交通數(shù)據(jù)的變化有時并沒有太強(qiáng)的規(guī)律,各種干擾噪聲對交通流預(yù)測會產(chǎn)生較大的影響,這些無疑導(dǎo)致了短時交通流預(yù)測的發(fā)展在當(dāng)前非常具有挑戰(zhàn)性。
當(dāng)前國內(nèi)外的交通專家學(xué)者針對短時交通流不確定性較強(qiáng)和規(guī)律性較弱[5]等特點所提出來的預(yù)測模型已有數(shù)十種之多。據(jù)所采用的預(yù)測原理大致可將其分為兩類:一類屬于數(shù)學(xué)模型的方法,如卡爾曼濾波模型[6]、指數(shù)平滑模型[7]、ARIMA[8]模型等;另一類是基于非數(shù)學(xué)模型的方法,如支持向量回歸機(jī)[9]、非參數(shù)回歸模型[10]、神經(jīng)網(wǎng)絡(luò)模型[11]等。其中的數(shù)學(xué)模型方法在構(gòu)建和求解交通模型過程中難度較大,因此很難達(dá)到短時交通預(yù)測的要求;而對于非數(shù)學(xué)模型的預(yù)測方法相對來說實現(xiàn)要更簡便,只要向模型里面喂足足夠的歷史數(shù)據(jù),不需要去構(gòu)建過于龐大冗余的預(yù)測模型,而且最終得到的結(jié)果也可以滿足在智能交通系統(tǒng)中的需要[12]。
不可置否,對在短時交通流預(yù)測中所存在的不確定性較強(qiáng)和規(guī)律性較弱等一系列不可忽略的特點,利用非數(shù)學(xué)模型對歷史數(shù)據(jù)進(jìn)行挖掘訓(xùn)練,很難進(jìn)一步提高短期交通流預(yù)測的準(zhǔn)確性,尤其是在突發(fā)事件發(fā)生的一些情況下其預(yù)測精度會明顯下降。為此本文將利用經(jīng)過改進(jìn)的粒子群算法配合支持向量回歸算法完成歷史數(shù)據(jù)的挖掘訓(xùn)練;通過分析待測路口上下游之間的時空關(guān)系,挖掘得出路口之間的時空關(guān)聯(lián)性,將對歷史數(shù)據(jù)的挖掘訓(xùn)練的預(yù)測與基于時空關(guān)聯(lián)性的預(yù)測結(jié)合起來,讓兩者進(jìn)行優(yōu)勢互補、迭代加權(quán)構(gòu)建出在線自我學(xué)習(xí)完善的短時交通流預(yù)測模型。
支持向量回歸機(jī)其實是借用了支持向量機(jī)的思想,將分類的思想上升到回歸的問題,算法的原理是在于借助非線性映射函數(shù)φ(x)來將數(shù)值從低維映射至高維的特征空間 Rn當(dāng)中去,算法本身最大的一個優(yōu)勢就是在于可以借助引入某種核函數(shù) K(xi,xj)=φ( xi) φ( xj),并通過懲罰參數(shù) C控制誤差的范圍,解決復(fù)雜的非線性問題,將其轉(zhuǎn)化為高維特征空間中的線性問題,可以有效的克服維數(shù)過高帶來的計算問題和局部極值問題。下式所示的徑向基核函數(shù)在處理非線性問題方面有著很好的效果,也是目前比較流行的核函數(shù)之一。
SVR算法模型中的三個參數(shù)是必須的。因為算法的預(yù)測精度也與這些參數(shù)密切相關(guān)。對于核參數(shù)σ的變化就會改變映射函數(shù)參數(shù)和函數(shù)之間的關(guān)系,進(jìn)而改變樣本映射特征空間的復(fù)雜度,因此SVR性能較大程度受到參數(shù)σ的影響;另外C和ε體現(xiàn)了錯誤樣本占比和算法復(fù)雜度之間進(jìn)行權(quán)衡,對SVR模型泛化能力的影響不可忽視?;谏鲜鲈?,本文利用粒子群算法(Particle Swarm Optimization,PSO)[13]在參數(shù)尋優(yōu)方面的優(yōu)勢來優(yōu)化這三個參數(shù)得組合。PSO本身具有導(dǎo)向性較強(qiáng)、收斂速度快、求解精度高、實現(xiàn)簡單等這些優(yōu)點;同時,PSO會有收斂于局部極小值、后期震蕩的缺陷。所以,本文將對傳統(tǒng)粒子群進(jìn)行改進(jìn)從而緩解其陷入局部極小值和后期震蕩的缺點。最后,利用改進(jìn)過的PSO算法與支持向量回歸算法相結(jié)合,發(fā)揮PSO尋優(yōu)的優(yōu)勢來找出SVR模型中的關(guān)鍵參數(shù),可以進(jìn)一步得到更為精準(zhǔn)的短時交通流預(yù)測結(jié)果和預(yù)測精度。
PSO算法的實質(zhì)在于將優(yōu)化問題的解抽象成為一群沒有質(zhì)量的、零體積的粒子,然后粒子可以在空間中依據(jù)自己的經(jīng)歷再加上群體里面適應(yīng)度最好粒子的經(jīng)歷來不斷優(yōu)化本身的位置。若有n個粒子形成的群體,第 i個粒子在空間中速度為 vi=(,,…)T,位置記為= (,,… ,)T。粒 子中把個體最優(yōu)的位置記做 p bestid,將群體最優(yōu)的記作 g bestid,每個粒子按照下面的式子進(jìn)行更新。
對粒子群的初始位置在之前算法中很多都是隨機(jī)的,然而,實際在算法后續(xù)尋優(yōu)過程是會受到粒子初始值的影響的。因此對初始化粒子群本文引入混沌搜索[14]的方法,這樣粒子在整個空間中均勻分布,使得算法收斂速度可以加快同時得到全局最優(yōu)解的速度也得以提升。
將問題解的維數(shù)設(shè)為d維.再引入混沌搜索來初始化粒子的初始位置,詳細(xì)操作為:第一步先生成每一個分量數(shù)在(0,1)之間的 d維的隨機(jī)向量1z=(11z,12z ,…,1dz ),然后由Logistic方程對1z迭代,直到N個隨機(jī)向量1z,2z,…,Nz,將1z的各分量按下式投影產(chǎn)生混沌初始化序列:
粒子群 xi=(xi1, xi2,… ,xid)T的適應(yīng)度值由目標(biāo)函數(shù)來計算, 粒子群的初始位置則從 N個中選出 n個較優(yōu)的即可。
在文獻(xiàn)[15]中已經(jīng)提出:粒子速度其實并不能很好地反映接近于最優(yōu)位置的參照,粒子的收斂速度和精度反而可能因為向錯誤的方向搜索而降低。據(jù)此,對傳統(tǒng)粒子群簡化后的優(yōu)化公式為:
最終粒子群的迭代公式在經(jīng)過引進(jìn)王振武[16]對粒子群的進(jìn)一步改進(jìn)方法之后如下:
上式中加入了新的參數(shù) c3和隨機(jī)因子 r3,是高于所有粒子的平均值而且適應(yīng)度值也要比優(yōu)。每個粒子在算法尋優(yōu)的過程中有、gbestt和三個一起向種群中粒子傳遞信息,從而可以得到更多的消息。β Δ xit是新增的動量項,和粒子歷史速度相關(guān),β∈[0,1]為動量參數(shù),可正可負(fù)。算法在尋優(yōu)過程之中的震蕩也因為新增的動量項而得到改善。
本文使用OpenITS提供的2016年6月30日-2016年7月1日交通數(shù)據(jù)進(jìn)行仿真實驗(包括交通量,速度,占有率等字段),數(shù)據(jù)檢測周期為1min,選取其中08:00—22:00期間的數(shù)據(jù)每天共有79組數(shù)據(jù)分別進(jìn)行訓(xùn)練和預(yù)測。在實驗之前需對數(shù)據(jù)進(jìn)行預(yù)處理,包括缺失值的處理,歸一化處理等。
缺失值的處理采取用周期的天對應(yīng)的相同時間點的數(shù)據(jù)進(jìn)行填充,歸一化采用下式處理:
改進(jìn)PSO-SVR實驗步驟:
(1)首先設(shè)定誤差閾值以及迭代次數(shù)并為PSO中的各個參數(shù) c1、 c2、 c3、ω及β賦初值;
(2)根據(jù)適應(yīng)度函數(shù)確定種群規(guī)模并用混沌搜索來初始化粒子種群即SVR的三個參數(shù)(C,ε,σ);
(3)選出最初全局極值 g bestt和個體極值;
(4)根據(jù)所改進(jìn)的粒子群公式更新粒子的位置,使用適應(yīng)度函數(shù)計算適應(yīng)度值,更新和 g bestt;
(5)滿足結(jié)束條件(尋優(yōu)次數(shù)達(dá)到迭代值或者適應(yīng)度值大于設(shè)定閾值)則尋優(yōu)結(jié)束,返回參數(shù)(C,ε,σ),否則轉(zhuǎn)到4);
(6)使用參數(shù)(C,ε,σ)建立的SVR模型進(jìn)行短時交通流預(yù)測。
實驗結(jié)果的誤差評價指標(biāo)采用平均絕對誤差MAE,均方誤差RMSE,均等系數(shù)EC。
平均絕對誤差:
均方誤差:
均等系數(shù):
其中, Yp(t)為t時刻模型預(yù)測值,N為預(yù)測時段長度, Yr(t)為 t時刻交通流實際測量值。RMSE反應(yīng)了預(yù)測的誤差分布情況,若其值越小,則表示預(yù)測模型具有更好的精確度,預(yù)測的效果越好。EC反映預(yù)測值和實際測量值之間的擬合程度,值越大越接近于1,表示預(yù)測效果越好。
模型預(yù)測結(jié)果如下:
圖1 Fig.1
表1 Tab.1
圖2 Fig.2
時空相關(guān)性分析所研究的主要是路口上下游之間隨著時間變化的規(guī)律,反映出交通數(shù)據(jù)在時間和空間上的關(guān)聯(lián)性。在城市交通中,交通流有很強(qiáng)的時空關(guān)聯(lián)性。在時間上,交通流遵循著一定的時間序列變化規(guī)律;空間上,每個路口流量受上下游交通路口流量的影響也會呈現(xiàn)一定的相關(guān)性,下游路口的交通量可以根據(jù)上游路口的流量估計得出。
本文將上圖中的①號路口作為待測路口,研究它和其上游④號路口之間的流量關(guān)系。由于是短時預(yù)測,本文首先根據(jù)兩個上下游路口之間的歷史數(shù)據(jù)挖掘出兩者流量之間的最相關(guān)時間tΔ.例如:需預(yù)測的是待測路口①在9點時的交通流量,則本文根據(jù)④號路口的歷史數(shù)據(jù)主要包括交通流量,速度,占有率三個指標(biāo),挖掘出此路口9點之前這三個指標(biāo)的數(shù)據(jù),認(rèn)為當(dāng)這三個指標(biāo)的數(shù)據(jù)與①路口9點時的數(shù)據(jù)最接近的即為最相關(guān)的時刻,假如分析得出時間為8:54,則④號路口與①路口9點最相關(guān)時間tΔ=6min.以此類推,可以挖掘出①路口每個時間點對應(yīng)的④號路口的最相關(guān)時間tΔ。同時記錄出④號路口每個最相關(guān)時刻的流量,并將對應(yīng)的流量與①路口對應(yīng)流量做出百分比一起記錄在數(shù)據(jù)表中。即該表保存著④號路口與①路口最相關(guān)的時刻、最相關(guān)時間tΔ以及對應(yīng)的流量之比。
在找出④號路口與①路口最相關(guān)時間tΔ的基礎(chǔ)上,挖掘出④號路口交通數(shù)據(jù)中的速度與tΔ之間的關(guān)系。因為檢測器記錄的數(shù)據(jù)為④號路口在檢測點的瞬間速度,與整個路段之間的行程速度會有誤差,所以直接分析這些數(shù)據(jù)會有很大誤差。但兩路口之間的距離為一定值,所以本文根據(jù)檢測器的速度和Δt來估算出其距離,這樣可以得出每個Δt和速度對應(yīng)的多組距離 s.將得出的 s每隔幾個數(shù)據(jù)求一次平均值,得到數(shù)組s,最后用s和Δt推算出整個路段中車流的速度v.如此根據(jù)得出的最相關(guān)時間Δt以及v的數(shù)據(jù),基于此可以挖掘出兩者之間的函數(shù)關(guān)系為:
通過上式得出的關(guān)系,根據(jù)④號路口有新的數(shù)據(jù)速度時,可以得出其tΔ,然后可以在之前得出的表中找到對應(yīng)的時間及流量百分比,從而得出①路口下一時刻的交通流量。方法預(yù)測結(jié)果如下:
圖3 Fig.3
表2 Tab.2
本文最終是將改進(jìn)的 PSO-SVR算法模型和得出的時空關(guān)聯(lián)性相結(jié)合進(jìn)行流量的最終預(yù)測。由于短時交通預(yù)測具有不確定性和規(guī)律性弱等特點,僅是依據(jù) PSO-SVR這樣的非數(shù)學(xué)模型利用歷史數(shù)據(jù)進(jìn)行預(yù)測始終會有偏差,當(dāng)路面發(fā)生一些突發(fā)情況,如某個時刻需對路口進(jìn)行限流限速等,此時PSO-SVR模型的預(yù)測精度就會明顯下降;所以,此時可以通過其相鄰路口的交通流量即根據(jù)時空關(guān)聯(lián)性來進(jìn)行主要預(yù)測,從而可以得出更加準(zhǔn)確的預(yù)測精度。因此將PSO-SVR模型與本文之前得出的時空關(guān)聯(lián)性進(jìn)行結(jié)合,優(yōu)勢互補,取長補短,可以更好的克服短時交通預(yù)測的不確定性和弱規(guī)律性,從而得出更好的預(yù)測效果。本文利用 BP神經(jīng)網(wǎng)絡(luò)的特性,分別將PSO-SVR和時空關(guān)聯(lián)性得出的流量作為BP神經(jīng)網(wǎng)絡(luò)的兩個輸入,經(jīng)過隱層處理后傳向輸出層。如果 BP網(wǎng)絡(luò)的輸出層與理想的輸出有差別,就將誤差通過隱藏層向輸入層傳遞,如此可以使誤差分給各層單元,并作為修正各權(quán)值的依據(jù)。實驗采用3層BP神經(jīng)網(wǎng)絡(luò),訓(xùn)練次數(shù)為1000,訓(xùn)練目標(biāo)為0.0001,學(xué)習(xí)率為0.01。流程如圖4所示。
結(jié)合圖3和表3可以看出,基于時空關(guān)聯(lián)性的改進(jìn)PSO-SVR預(yù)測模型優(yōu)于傳統(tǒng)的SVR預(yù)測模型也優(yōu)于單純的 BP神經(jīng)網(wǎng)絡(luò)預(yù)測模型,且具有較高的預(yù)測精度,也驗證了此方法的有效性。
預(yù)測結(jié)果如圖5所示。
在短時交通流量預(yù)測中,交通流具有不確定性和規(guī)律性弱等特點,僅僅依靠待測路口的歷史數(shù)據(jù)進(jìn)行預(yù)測,其精度難以提高,特別是在某些突發(fā)事件的情況下,預(yù)測精度會大打折扣。本文將基于先驗數(shù)據(jù)的非數(shù)學(xué)模型方法與實時數(shù)據(jù)的交通流量關(guān)聯(lián)方法結(jié)合起來,采用改進(jìn)的PSO-SVR方法對待測路口的時間序列進(jìn)行訓(xùn)練學(xué)習(xí),獲得盡可能多的基于時間的流量關(guān)系。同時利用交通數(shù)據(jù)挖掘出待測路口于其它路口的時空關(guān)聯(lián)性,利用相關(guān)上游路口的流量預(yù)測待測路口下一時刻的流量,將兩者結(jié)合取長補短通過BP神經(jīng)網(wǎng)絡(luò)不斷迭代在線修正兩者權(quán)值直到誤差足夠小從而實時預(yù)測出最終的交通量。
圖4 本文算法流程圖Fig.4 Flow chart of our proposed algorithm
圖5 Fig.5
表3 Tab.3
通過實例仿真分析結(jié)果表明,采用本文的預(yù)測模型后,預(yù)測結(jié)果的平均絕對誤差為 4.9879;均方誤差為 2.1066;均等系數(shù)為 0.96766;比傳統(tǒng)的PSO-SVR模型準(zhǔn)確率提升近3%-5%,與BP神經(jīng)網(wǎng)絡(luò)相比,準(zhǔn)確率提升2%-4%。可以看出該方法一定程度上提高了預(yù)測精度,與僅考慮時間序列的模型和傳統(tǒng)的 BP神經(jīng)網(wǎng)絡(luò)相比較具有一定的優(yōu)勢,驗證了本文方法的有效性,體現(xiàn)出了基于時空關(guān)聯(lián)的改進(jìn)PSO-SVR短時交通流預(yù)測方法的優(yōu)越性且對于智能交通系統(tǒng)的研究也具有一定指導(dǎo)意義。同時,本文模型在對一些突發(fā)狀況發(fā)生時,通過提出的時空關(guān)聯(lián)性分析在理論上將會對此類狀況預(yù)測有著較好的處理結(jié)果,但是由于數(shù)據(jù)源等實驗條件的限制還需要進(jìn)一步進(jìn)行驗證!
[1] 趙菁, 陳峰, 劉宇. 基于多特征融合級聯(lián)分類器的高速公路交通流檢測方法研究[J]. 新型工業(yè)化, 2014, 4(2): 25-32.
[2] Gao J, Leng Z, Zhang B, et al. Short-Term Forecasting of Traffic Flow Based on Genetic Algorithm and BP Neural Network[M], Proceedings of 2013 Chinese Intelligent Automation Conference. Springer Berlin Heidelberg, 2013: 745-752.
[3] Mai T, Ghosh B, Wilson S.Short-term traffic-flow forecasting with auto-regressive moving average models[J]. Proceedings of the ICE-Transport, 2013, 167(4): 232-239.
[4] 厲雙華. 道路交通檢測系統(tǒng)的設(shè)計和實現(xiàn)[J]. 軟件, 2015 36(12): 206-208.
[5] Box G E P, Jenkins G M, Reinsel G C, et al. Time series analysis: forecasting and control[M]. John Wiley & Sons,2015.
[6] ANTONIOU C, KOUTSOPOULOS H N, YANNIS G. An efficient Non-linear Kalman Filtering Algorithm Using Simultaneous Perturbation and Applications in Traffic Estimation and Prediction[C]. Intelligent Transportation Systems Conference, 2007. Seattle, WA: IEEE, 2007: 291-299.
[7] QI Chi, HOU Zhong-sheng.Application of Adaptive Single-exponent Smoothing for Short-term Traffic Flow Prediction[J]. Control Theory & Applications, 2012, 29(4): 465-469.
[8] YADAV R K, BALAKRISHNAN M. Comparative Evaluation of ARIMA and ANFIS for Modeling of Wireless Network Traffic Time Series [J]. Eurasip Journal on Wireless Communications & Networking, 2014, 2014(1): 1-8.
[9] Hu, W., et al., A Short-term Traffic Flow Forecasting Method Based on the Hybrid PSO-SVR.Neural Processing Letters,2015.
[10] SMITH B L, WILLIAMS R M, OSWALD R K. Comparision of Parametric and Nonparametric Models for Traffic Flow Forecasting[J]. Transportation Research Part C:Emerging Technologies, 2012, 10(4): 303-321.
[11] 張敏, 徐啟華. 基于改進(jìn)BP的神經(jīng)網(wǎng)絡(luò)模型參考自適應(yīng)控制[J]. 軟件, 2015, 36(7): 118-123.
[12] 張航, 張唯. 一種基于視頻分析的城市交通流檢測技術(shù)研究[J]. 新型工業(yè)化, 2011, 1(5): 23-29.
[13] Lu H, Chen W.Self-adaptive velocity particle swarm optimization for solving constraind optimization problems[J].Journal of Global Optimization, 2008, 41(3): 427-445.
[14] QIU Dun-guo, LAN Shi-yong,YANG Hong-yu. ShortTerm Traffic Flow Forecast Model Based on TemporalSpatial Characteristics[J]. Journal of South China University of Technology: Natural Science Edition, 2014, 42(7): 49-54.
[15] COELH L D S. Reliability-redundancy optimization by means of a chaotic differential evolution approach[J]. Chaos,Solitons & Fractals, 2008, 37(36): 1607-1615.
[16] 王振武, 孫佳駿, 尹成峰. 改進(jìn)粒子群算法優(yōu)化的支持向量機(jī)及其應(yīng)用[J]. 哈爾濱工程大學(xué)學(xué)報. 2016(37): 1728-1733.