朱偉,李楠,石超峰
(重慶交通大學 交通運輸學院,重慶 400074)
隨著社會經(jīng)濟的發(fā)展,鐵路運輸事業(yè)取得了長足的進步.作為衡量鐵路運輸發(fā)展的一個重要指標,鐵路客運量預測一直占有重要的作用.而科學準確地預測鐵路客運量及其仿真趨勢、特點和規(guī)律是制定公路客運發(fā)展規(guī)劃及規(guī)劃鐵路客運場站的重要理論依據(jù)[1].傳統(tǒng)的預測方法有時間序列預測法、彈性系數(shù)法、灰色系統(tǒng)預測等等[2].近幾年來,隨著神經(jīng)網(wǎng)絡技術的發(fā)展,神經(jīng)網(wǎng)絡開始被應用到公路客運量預測中,它對解決非線性問題具有很好的效果,但是也存在著收斂速度慢、過學習和局部極值等問題[3],在一定程度上影響了其準確性.
支持向量機是(Support Vector Machine,SVM)是基于Vapnik 提出的小樣本學習理論建立的,著重研究小樣本條件下的統(tǒng)計學習規(guī)律[4-5].它克服了神經(jīng)網(wǎng)絡的一些固有缺陷,在小樣本預測領域有著很好的應用效果[6].但是支持向量機的預測精度與其參數(shù)的選擇有很大的關系,參數(shù)選擇的好壞對預測結果的影響很大.本文將粒子群算法和支持向量機結合,構建了基于粒子群算法優(yōu)化支持向量機的鐵路客運量預測模型.仿真實驗結果表明,該模型預測精度更高,為鐵路客運量預測提供了一種新的途徑.
支持向量機理論可用于分類問題和回歸問題.其基本原理是通過一個非線性映射?(x),把輸入數(shù)據(jù)x 映射到一個高維的空間,從而將非線性回歸問題轉(zhuǎn)化為高維特征空間的線性問題,即
其中,?(x)是將樣本點映射到高維空間的非線性變換;ωT為權值矢量;b 為閾值.
定義ε 不敏感損失函數(shù)為:
其中f(x)為回歸函數(shù)求得的預測值,y 為相應的真實值,ε 為不敏感損失系數(shù),即表示預測值與真實值之差小于等于ε 時,代表損失為0.
通過最小泛函分析得:
其中第一項稱為模型復雜性項,第二項是由ε 不敏感損失函數(shù)確定的經(jīng)驗誤差項,C 為懲罰系數(shù).
引入K(xi,xj)核函數(shù),把(4)轉(zhuǎn)化為對偶形式來求:
懲罰參數(shù)C、RBF核參數(shù)σ、不敏感損失參數(shù)是決定支持向量機預測性能的三個重要參數(shù).利用智能優(yōu)化算法對支持向量機的參數(shù)進行優(yōu)化選擇,對提高其預測性能具有重要的意義.
粒子群算法是繼蜂群算法,蟻群算法之外的一種群體智能算法,它是由Kennedy 和Bernhard 在1995年提出的,其基本思想源于對鳥類捕食行為的研究.利用PSO 算法求解最優(yōu)化問題時,每一個粒子代表問題的一個解,并且每一個粒子都對應著一個適應度值,此適應度值主要通過適應度函數(shù)得到.粒子移動的方向和距離由粒子的速度決定,而速度通過自身及其身邊的粒子的移動經(jīng)驗進行動態(tài)更新,從而實現(xiàn)對解的搜索.在每一次尋優(yōu)過程中,粒子通過兩個“極值”來更新自己,一個是個體極值Pbest(粒子本身搜索得到的最優(yōu)解),另一個是群體極值Gbest(全局最優(yōu)解).粒子群優(yōu)化支持向量機參數(shù)的相關步驟如下:
(1)設置PSO 初始參數(shù),如種群數(shù)、迭代數(shù),變異率、交叉率等.隨機產(chǎn)生一組粒子的初始位置和速度.
(2)選擇適應度函數(shù),本文選擇均方誤差作為適應度函數(shù)來判斷參數(shù)選擇的優(yōu)劣.
(3)根據(jù)兩個對比更新粒子的位置.當前適應度值和所經(jīng)歷過最好位置pbest 對比,若當前適應度好,則更換當前適應度值為最好位置;當前適應度值與全局最優(yōu)位置Gbest 對比,若當前適應度值優(yōu),則更換當前適應度值為全局最優(yōu)位置.
(4)按照公式(7)和(8)對粒子的速度和位置進行動態(tài)調(diào)整
公式中:ω 表示為慣性權重;d=1,2,…,D;i=1,2,…,n;k 為迭代次數(shù);Vid為粒子的速度;c1,c2為加速因子;r1,r2是介于0 到1 之間的隨機數(shù).
(5)判斷是否達到最優(yōu),若滿足,輸出最優(yōu)參數(shù)值;若不滿足,依照步驟(2)-(4)繼續(xù)迭代.
以國家統(tǒng)計局和鐵路部門提供的的1985-2002年鐵路客運量作為原始數(shù)據(jù)集[7].首先,對原始數(shù)據(jù)進行歸一化處理,然后將歸一化后的數(shù)據(jù)分成訓練集、測試集和檢驗集.根據(jù)訓練集數(shù)據(jù),建立PSO-SVM 時間序列預測模型,并根據(jù)PSO 算法確定SVM 模型參數(shù);最后,將預測值與實際數(shù)據(jù)對比,驗證模型的預測性能.
原始數(shù)據(jù)集及其歸一化結果見表1所列.利用表1 中1985 ~1999年的鐵路客運量數(shù)據(jù)產(chǎn)生訓練樣本,相鄰5年的數(shù)據(jù)經(jīng)過歸一化處理作為訓練樣本的輸入,第6年經(jīng)過歸一化處理的數(shù)據(jù)作為訓練樣本的輸出.以1990-1999年的樣本為訓練樣本數(shù)據(jù),2000-2002 作為測試樣本,具體數(shù)據(jù)見表2.為了驗證模型的有效性,同時選取了傳統(tǒng)的SVM 模型進行預測,分別建立粒子群支持向量機預測模型以及傳統(tǒng)SVM 預測模型.粒子群算法相關參數(shù)設置如下:種群數(shù)為20,迭代數(shù)為200,加速因子c1,c2初始值分別為1.5、1.7.
表1 原始數(shù)據(jù)及其歸一化表
表2 PSO-SVM 和傳統(tǒng)SVM 預測誤差比較
表2 為種模型的誤差對比結果,從表2 可知,基于PSO-SVM的預測精度優(yōu)于傳統(tǒng)的SVM 模型,這很大程度上取決于PSO 算法對支持向量機參數(shù)進行了尋優(yōu)處理,提高了預測精度
本文提出了基于粒子群算法優(yōu)化支持向量機的鐵路客運量預測方法.通過粒子群算法進行了支持向量機的參數(shù)優(yōu)化,克服了人工選擇參數(shù)的不確定性,得到了預測性能更好的SVM 預測模型.用鐵路客運量數(shù)據(jù)作為應用算例,同時構建了傳統(tǒng)的SVM預測模型,并形成了對比.實驗結果表明PSO-SVM的預測效果更好,為鐵路客運量預測提供了一種新途徑.
圖1 PSO-SVM、BP、SVM 擬合值及預測曲線
[1]劉芹.基于最小二乘支持向量機的城市客運量預測模型[J].混交通與計算機,2007,25(5):50-53.
[2]陳荔,馬榮國.基于支持向量機的都市圈客運量預測模型[J].交通運輸工程學報,2010,10(6):75-80.
[3]文培娜,張志勇,羅琳.基于BP 神經(jīng)網(wǎng)絡的北京物流需求預測分析[J].物流技術,2009(6):91-93.
[4]Vapnik W N.統(tǒng)計學習理論的本質(zhì)[M].張學工,譯.北京:清華大學出版社,
[5]Venkoba R B,Gopalakrishna S J.Hard grove grind ability index prediction using support vector regression[J],International Journal of Mineral Processings,2009,91(12):55-59.
[6]Liu Sheng,Li Yanyan,Anovel predictive control and its application on water level system ship Hoiler[C].International Conference on Innovative Computing,Information and Control,2006:8.
[7]中國國家統(tǒng)計局.中國統(tǒng)計年鑒[M].北京:中國統(tǒng)計出版社,1985-2003.