沈 浩,黃洪瓊(上海海事大學 信息工程學院,上海 201306)
基于PSO優化SVM的船舶流量預測算法*
沈 浩,黃洪瓊
(上海海事大學信息工程學院,上海 201306)
通過對上海洋山深水港口的船舶流量的調研以及對船舶交通流量影響因素的分析,建立支持向量機預測模型。同時為了解決支持向量機預測模型的參數選擇問題,引入了粒子群優化算法進行參數優化,建立較優的PSO-SVM預測模型。通過MATLAB仿真實驗計算,將PSO-SVM模型與單純的SVM預測模型和灰色神經網絡預測模型結果進行對比分析,證明了該模型的可行性和優越性。
船舶流量;多因素;預測;灰色神經網絡;支持向量機;粒子群優化算法
船舶交通流量預測是將經濟預測技術和水運工程技術以及計算機技術有效地結合起來的一門涉及多門學科的新興應用科學。船舶交通流量的預測相比于一般的市場預測及陸上交通預測等所要考慮的因素和指標要更為繁雜和復雜[1],對于數據采集處理要求更高,這就要求在運用具體的方法時要因地制宜。其中國內外學者用的較多的是人工神經網絡預測法及其組合預測法。但是人工神經網絡由于其容易陷入局部最小、預測輸出隨機等問題,從而降低了預測的精度。
支持向量機(Support Vector Machine,SVM)是一種新型的機器學習算法,它同樣以統計學理論為基礎,以嚴格的數學理論為背景,因其簡單明了的幾何解釋以及較高的泛化能力,在解決小樣本問題時具有獨特的優勢。于此同時,與人工神經網絡相比,其克服了神經網絡中經常出現局部最優解以及學習時間長、收斂速度慢等問題。但支持向量機還存在一些不足,如模型的預測精度受訓練學習參數選取的影響很大,如何選取參數至關重要。因此,選取合適的參數是支持向量機從理論走向實際應用的關鍵。本文基于粒子群(Particle Swarm Optimization,PSO)算法的優勢,用以對支持向量機難以確定的參數進行優化,進而建立起PSO-SVM預測模型用以上海洋山深水港交通流量的預測。
船舶交通流量是經濟、社會、政治、技術發展對水運交通需求的具體反應。無論選用何種預測方法進行船舶交通流量預測,都必須從實際分析考慮所預測模型的影響因素。影響船舶交通流量的因素非常繁雜,以上海洋山深水港為研究對象,在綜合分析和查閱大量文獻的基礎上,可以從經濟因素、港口因素、船舶因素、其他因素四個主要的方面去研究。
經濟因素是影響未來船舶交通流量的最主要的因素,上海國際航運研究中心將宏觀綜合的經濟指標合理化為上海航運景氣指數[2]。船舶的貨運量是衡量和量化港口因素的主要指標。同時,伴隨著經濟貿易和造船技術的發展,船舶越來越向著大型、自動、快速、專業化和標準化的方向發展,考慮到衡量船舶因素的指標有很多,根據實際選擇需要選擇船舶平均噸位做為合適的指標。另外,經濟的變化總能體現在船舶交通流量上,而且呈現正比關系,但是又有一定的滯后性。所以根據實際情況考慮及數據處理的方便,對主要影響因素進行分析抽象、量化后選取上海航運指數、貨運量、船舶的平均噸位[3]、七天前的流量 4個因素作為主要因素預測上海洋山港船舶交通流量。
2.1建立流量預測模型
根據上述主要影響因素構建船舶流量預測算法流程,如圖 1所示[4-7]。

圖1 船舶交通流量預測模型構建圖
2.2優化支持向量機模型學習步驟
PSO優化 SVM的學習步驟如下[8]:
(1)收集有關影響船舶交通流量的各種數據,分為因變量和自變量樣本;初始化各種參數,如粒子群規模、初始位置和速度以及SVM的核函數、懲罰參數等。
(2)利用初始化后各粒子的數據值對因變量樣本進行學習和訓練并建立各自對應的預測模型。
(3)通過對因變量樣本的學習訓練,得到各個粒子的誤差值,用以計算各粒子的適應度函數值,公式如下:

(4)計算每個粒子的當前適應值 F(Xi),并與該粒子當前自身的最優適應值 F(Pibest)進行比較,如果 F(Xi)<F (Pibest),則調整 F(Pibest)=F(Xi),將當前位置作為此刻該粒子的最優位置。
(5)將每一個粒子自身當前最優位置的適應值F(Pibest)與所有粒子當前最優位置的適應值 F(Pgbest)進行比較,若 F(Pibest)<F(Pgbest),則調整 F(Pgbest)=F(Pibest),將調整后的位置做為所有粒子的最優位置。
(6)利用 PSO的進化方程調整粒子的速度和位置,進而得到支持向量機的參數。
(7)判斷所有粒子最優位置的適應值或迭代次數能否滿足要求,若滿足,則停止計算,并保存此時的粒子群的整體最優位置;若不滿足,則返回步驟(2)。
(8)將最優參數代入支持向量機模型,對樣本進行有效預測。
3.1實驗數據及實驗設置
以上海洋山深水港進出的船舶為研究對象,利用上海國際航運研究中心和上海洋山深水港統計的數據,選取從2014年5月20日~2014年6月29日的船舶交通流量數、當日的上海航運指數、轉運量、船舶平均噸位作為自變量,將2014年5月21日~2014年6月30日,當天船舶流量數據作為因變量,建立預測模型對2014年5 月21日~2014年6月30日每日的船舶流量數進行回歸擬合預測。在實驗仿真之前首先得將所采用的流量數據進行歸一化處理,采用的歸一化處理公式為:

式中,X?ij為歸一化后的數據;Xij為原始數據;minXij和maxXij分別為原始數據中的最小值和最大值。
基于MATLAB語言編寫了PSO-SVM程序,通過試算確定PSO的參數如下:粒子個數為20;粒子維數為2;循環次數為 200;學習因子 c1=1.5,c2=1.7;參數 C的搜索范圍為(0.1,100);參數σ的搜索范圍為(0.1,1 000)。經過PSO優化,得到SVM的最優參數C=0.1,σ=9.971 35,利用最優參數來建立SVM模型,進而對測試樣本進行預測。
3.2實驗仿真對比及分析
分別對灰色神經網絡模型、SVM模型、PSO-SVM模型進行仿真并對比,仿真結果見圖2~圖4。

圖2 灰色神經網絡預測值與原始值比較

圖3 SVM預測值與原始值比較

圖4 PSO-SVM預測值與原始值比較
對于預測結果需要通過定量的分析以確定精確度,本文采用平均誤差和相對百分誤差來檢驗預測結果。預測結果誤差如表1所示。

表1 實驗仿真結果對比
從圖2~圖4中可見,灰色BP神經網絡組合預測模型及SVM模型都得到不錯的效果,但由于BP神經網絡樣本有時無法滿足要求,存在過擬合現象及SVM參數選擇的問題,兩種算法的預測結果的準確性都受到很大影響。PSO具有強大的全局搜索能力,通過PSO優化SVM模型的參數,使其達到最優,從而使誤差降到最低。
從表1可以看出,PSO-SVM預測模型的平均誤差和相對百分誤差分別為 1.653 6%和1.637 8%,明顯小于灰色神經網絡預測模型和單純SVM預測模型的預測誤差。因此,經PSO優化的SVM模型比神經網絡預測模型以及SVM模型具有更好的預測能力。
本文在考慮船舶影響因素的條件下,利用SVM預測模型具有小樣本學習能力、學習速度快、泛化能力強等優點對船舶流量進行回歸預測,并采用PSO優化選擇SVM模型的參數,得到較優的SVM模型,從而大大提高了預測的準確性和精度。實驗結果表明,基于PSO-SVM的預測模型要好于單純的SVM預測模型,該模型為船舶交通流量預測提供了新思路及有效方法。
[1]陳崇云.我國水上交通運輸安全分析及事故預測的研究[D].大連:大連海事大學,2002.
[2]王東,熊錫龍.基于影響因素分析的船舶交通流量預測多元線性回歸模型 [J].船海工程,2010,39(3):178-180.
[3]李俊,徐志京,唐貝貝.基于 GA優化的灰色神經網絡船舶交通流量預測方法研究[J].船海工程,2013,42(5):135-137.
[4]馮宏祥,肖英杰,孔凡邨,等.基于支持向量機的船舶交通流量預測模型[J].中國航海,2011,34(4):62-66.
[5]任洪娥,霍滿冬.基于PSO優化的SVM預測應用研究[J].計算機應用研究,2009,26(3):867-869.
[6]王樹洋,黃天民,方新,等.基于 PSO-SVM的交通流量短時預測[J].重慶交通大學學報(自然科學版),2012,31(4):832-835,872.
[7]李紅喜,付玉慧,張仁初,等.港口船舶交通流量預測[J].大連海事大學學報,2009,35(3):40-42.
[8]閆冠勇.基于PSO-SVM的CFG樁復合地基質量預測研究[D].邯鄲:河北工程大學,2012.
Prediction algorithm for the ship traffic based on PSO-SVM
Shen Hao,Huang Hongqiong
(College of Information Engineering,Shanghai Maritime University,Shanghai 201306,China)
By researching ship traffic through the port of Shanghai Yangshan Deepwater as well as the factors under the conditions of ship traffic analysis,a support machine model is built.Meanwhile,in order to solve the problem of parameter selection of support vector machine model,the introduction of the particle swarm optimization mechanism,get on better PSO-SVM forecasting model.By MATLAB simulation calculation,the PSO-SVM model and simple SVM prediction model and gray neural network forecasting model for comparative analysis to prove the feasibility and superiority of the model.
traffic flow of ships;multivariate;prediction;gray neural network;support vector machine(SVM);particle swarm optimization(PSO)
TP391.9
A
1674-7720(2015)05-0073-03
上海海事大學創新基金(GK2013087)
(2014-11-07)
沈浩(1992-),男,碩士,主要研究方向:智能信息處理及應用。
黃洪瓊(1973-),女,博士,碩士生導師,主要研究方向:智能信息處理及應用。