周小敏
摘要:針對初始參數(shù)的有效性直接影響B(tài)P神經網絡對短時交通流量預測的準確性這一問題,該文提出了基于CS(Cuckoo Search)算法與BP(Back Propagation)神經網絡相結合的啟發(fā)式算法來進行短時交通流量預測。該算法首先用相空間重構理論對訓練序列進行重構,接著把重構后的序列作為BP神經網絡的輸入序列,同時采用CS算法來進行BP神經網絡的最優(yōu)閥值與初始連接權值的尋找,最后就得到了所需要的預測模型。仿真表明,本文所提算法在短時間內能夠準確地預測交通流量的變化趨勢,從而大大增加了所預測流量的可信度。
關鍵詞:BP神經網絡;短時交通流量;CS算法
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)23-5513-03
1 概述
隨著城市人口不斷增加,我國城市道路的建設進度難以跟上車輛數(shù)目的增長速度,從而使得交通擁堵問題日益嚴重,因此在現(xiàn)有道路條件下,如何對交通的進行高效的管理與調度以提升道路的通行能力,從而最大限度地緩解交通擁堵問題成為了一個十分重要的研究課題。而ITS(Intelligent Transport System,智能交通系統(tǒng))[1]是目前最有效的解決辦法之一。ITS把網絡技術、信息技術、控制技術等先進的現(xiàn)代化技術運用到交通管理中,從而構建了一個覆蓋全城的、全方位的、準確、實時、高效的智能系統(tǒng)。其中的交通流量預測是ITS的一項重要功能。這是因為ITS是根據(jù)未來的交通流量來制定相應的交通管理策略。因此,預測的準確性直接關系到交通管理測率的有效性。而短時交通流量預測為流量預測的重要組成部分。
經過多年的研究,人們在短時交通流量預測方面取得了豐碩的成果,提出許多的預測算法[2]。根據(jù)算法的理論依據(jù),這些預測算法可以分成基于確定理論的預測算法與基于混沌理論的預測算法。常用的基于確定理論的預測算法有:Kalman濾波法、時間序列法、線性回歸法等。這些算法都假設交通流量的變化是一個線性過程,但是在實際生活中,交通流量的變化是一個非線性時變的過程,因此這些基于確定理論的預測算法的預測準確度并不理想,其所得到的預測結果與實際情況相差會比較大,從而影響了交通管理策略的制定與調整。而常用的基于混沌理論的預測算法有:基于神經網絡的預測法、基于遺傳算法的預測法、基于向量機的預測法等。這些算法能夠對非線性環(huán)境進行預測,從而能取得較高的預測精度。而該類算法的工作流程通常分為三個步驟:相空間的重構、預測算法的選擇和參數(shù)優(yōu)化、預測模型的生成。對訓練序列進行相空間重構的目的是為了發(fā)掘訓練序列背后所隱藏的內在規(guī)律。而預測算法是用來對從訓練數(shù)據(jù)中提取預測模型,從而用于對未來進行預測。由于基于BP神經網絡的短時交通流量預測算法能夠實現(xiàn)自我學習并且具備預測可行度高等優(yōu)點,因此本文選擇該算法作為預測算法。但是,BP神經網絡的閥值與初始連接權值直接影響該算法的預測可信度,如果參數(shù)設置不合理,該算法的收斂速度不僅會變慢而且所得到的預測模型也可能只是局部最優(yōu)。針對這個問題,蟻群算法、遺傳算法、退火算法等分別被用于BP神經網路的參數(shù)優(yōu)化。但是,參數(shù)經過優(yōu)化后的BP神經網絡預測可行度還有有待提升。
而智能啟發(fā)算法CS算法通過利用鳥類的飛行搜索原理,使得群體內的信息交流增多,從而實現(xiàn)了較快的收斂速度,這為參數(shù)優(yōu)化問題提供了新的研究思路。在本文中,為了提高預測的可行度與精度,提出了基于CS(Cuckoo Search)算法與BP(Back Propagation)神經網絡相結合的啟發(fā)式算法(簡稱CS-BP算法)來進行短時交通流量的預測。
2 相關理論介紹
2.1 相空間重構
其中,[γ]與[vj]分別為該層的閥值和從隱層到輸出層的連接權值。
在基于BP神經網絡[4]的預測算法中,連接權值與閥值是隨機產生的,從而會造成收斂速度以及預測結果都不是很理想,因此,采用CS算法對連接權值與閥值進行優(yōu)化,從而提升BP神經網絡的收斂速度與預測可行度。
2.3 CS算法
Yang等人在2009年的時候根據(jù)布谷鳥在后代繁衍中所使用的寄生策略,提出CS算法[5]。該算法遵守三個原則:
a)布谷鳥每次隨機地在一個其它鳥的鳥巢中產一枚蛋;
b)放有優(yōu)質蛋的鳥巢將會被保留;
c)一旦寄主鳥發(fā)現(xiàn)其巢中有布谷鳥的蛋,其要么放棄鳥巢,要么就把該蛋清出鳥巢。
令第t代中的第i個鳥巢的位置為[x(t)i],搜索路徑為[L(λ)],那么在第t+1代中的第i個鳥巢的位置為:
[x(t+1)i=x(t)i+α⊕L(λ),(i=1,2,…,n)] (5)
其中,[α]為步長因子。
為了解決CS算法收斂速度慢等缺點,利用高斯擾動來加快收斂速度,實現(xiàn)方法為:第t代中的第i個鳥巢的位置[x(t)i]進行繞到擾動,從而實現(xiàn)對[x(t)i]的更進一步的搜索。
令[pt=x(t)1,x(t)2,…,x(t)nT],則引入高斯擾動后的[p`t]:
[p`t=pt+β⊕ε] (6)
其中,[β]與[ε]分別為常量,擾動矩陣(矩陣大小與[pt]相同)。
從公式(6)可以看出,通過[β]與[ε]的使用,使得鳥巢的位置變化更靈活,從而實現(xiàn)了算法的快速收斂。
3 基于啟發(fā)式算法的短時交通流量預測的實現(xiàn)
上一節(jié)分別對本文所提算法用到的相關理論進行了介紹,本節(jié)將綜合利用上述理論來實現(xiàn)本文所提算法。算法的實現(xiàn)步驟為:
1)首先通過對交通流量進行測量得到短時流量訓練序列,然后分別用關聯(lián)維算法與互信息法來確定維數(shù)[m]與時延[τ],最后利用[m]與[τ]對訓練序列進行相空間重構,那么重構后的序列被用作神經網絡的訓練序列;
2)首先隨機地生成[n]個鳥巢的位置[p(0)i=x(0)1,x(0)2,…,x(0)nT],而鳥巢的位置是與神經網絡的閥值與連接權重相對應的。然后神經網絡根據(jù)每一個鳥巢位置所對應的參數(shù)開始訓練,從而得到相應的預測精度,最后找出當前訓練周期內的最優(yōu)鳥巢[x(0)b];
3)首先[x(0)b]保持不變,而其它鳥巢的位置利用公式(5)進行變化,接著計算變化了的位置所對應的預測精度,然后把本次所得到的預測精度與相應的上代預測精度相比較,最后把精度高的鳥巢位置保留下來,從而生成了一組新的鳥巢位置[kt=x(t)1,x(t)2,…,x(t)nT];
4)首先隨機生成一組[r],接著把[r]與[Pa]進行比較,[kt]中的鳥巢位置被發(fā)現(xiàn)概率小的將被保留,其它的經隨機地改變,從而得到一組新的位置,然后計算新位置所對應的預測精度,最后把精度高的位置保留下來,從而成了一組新的鳥巢位置[pt=x(t)1,x(t)2,…,x(t)nT];
5)首先利用公式(6)對[pt]實施擾動,而擾動后的位置為[p't=x(t)'1,x(t)'2,…,x(t)'nT],接著計算[p't]每個位置所對應的預測精度,最后把精度高的位置保留下來,從而成了一組新的鳥巢位置[p''t=x(t)''1,x(t)''2,…,x(t)''nT],并令把[pt]=[p''t];
6)首先跳出[pt]中預測精度最高的鳥巢[x(t)b],接著判斷該預測精度是否能夠達到要求,如果達到,把[x(t)b]作為神經網絡的參數(shù)設置,調到(7),否則的話,跳到(3);
7)首先[x(t)b]所對應閥值與初始權值送入神經網絡,然后神經網絡開始用訓練序列進行訓練,從而得到預測模型,最后用預測模型進行預測。
4 仿真分析
為了驗證本文所提算法(簡稱CS-BP)的性能,將對基于PSO的BP神經網絡的預測算法(簡稱PSO-BP)和基于GA的BP神經網絡的預測算法(簡稱GA-BP)與CS-BP三者的預測誤差進行分析。
GA-BP的參數(shù)為:變異與交叉概率分別為0.12,0.73,種群規(guī)則與最大進化次數(shù)分別為30和300。PSO-BP的參數(shù)為:[c1=c2=3],其它參數(shù)與GA-BP相同。而CS-BP的參數(shù)為:鳥巢數(shù)為30,[Pa=0.25],最大進化次數(shù)不超過300。
三種預測算法根據(jù)[X]的前380個數(shù)據(jù)來生成預測模型,并使用預測模型來預測后100個數(shù)據(jù),圖2給出了三種算法預測的結果。
5 小結
本文針對交通流量預測中的短時交通流量預測問題,提出了基于CS Search)算法與BP神經網絡相結合的啟發(fā)式算法。并且仿真表明,本文所提算法在短時間內能夠準確地預測交通流量的變化趨勢,從而大大增加了所預測流量的可信度,為智能交通管理提供了重要的依據(jù)。
參考文獻:
[1] Liu X, Fang Z. An agent-based intelligent transport system[M]//Computer Supported Cooperative Work in Design IV. Springer Berlin Heidelberg, 2008: 304-315.
[2] 沈國江, 王嘯虎, 孔祥杰. 短時交通流量智能組合預測模型及應用[J]. 系統(tǒng)工程理論與實踐, 2011, 31(3): 561-568.