安然,華光,董娜(交通運輸部科學研究院,北京 100029)
基于BP神經網絡的南寧市公路貨運量預測
安然,華光,董娜
(交通運輸部科學研究院,北京 100029)
為提高公路貨運量預測的準確性,依據南寧市歷史年份的公路貨運量數據建立公路貨運量的BP神經網絡預測模型。將模型在MATLAB軟件環境下進行編碼并運算,通過對數據的反復訓練和學習最終得到預測值。經過實例分析證明基于BP神經網絡的貨運量預測模型的有效性。為證明不同方法間的差異性,利用趨勢外推法、三次指數平滑法、灰色預測法以及指數回歸法對南寧市公路貨運量進行了預測。通過對比分析,得到不同方法的相對誤差。可以看出,基于BP神經網絡的貨運量預測模型較傳統預測方法有較大的優越性,BP神經網絡模型能夠揭示貨運量的非線性變化關系,準確地擬合原始數據。
BP神經網絡;公路;貨運量;預測模型;MATLAB編碼
交通運輸系統是國民經濟系統的一個子系統,而公路貨運又是交通運輸系統的重要組成部分。由于公路貨運的系統性,運輸需求受到多方影響,包括系統內部因素和系統外部因素的影響[1]。對公路貨運需求量的準確預測十分必要,既有利于公路基礎建設投資的正確決策、貨運樞紐規劃的合理布局以及運輸生產組織的高效管理,又能幫助完善綜合交通系統的規劃、評價,同時為國家宏觀經濟計劃、區域發展規劃提供必要的依據。因此,對公路貨運需求的準確預測和分析具有很強的現實意義。
進入20世紀70年代后,數學模型逐漸豐富,預測技術也趨于成熟,常見的預測方法包括回歸分析法、指數平滑法、灰色預測法、組合預測法等。首先,在發展較為成熟的回歸分析和指數平滑方面,國內一些學者運用該方法對貨運量進行了預測。趙建有等(2012)基于模糊線性回歸模型對公路貨運量進行了預測,確定了模型的模糊系數,分析了模型的擬合精度,構建了基于模糊線性回歸模型的公路貨運量預測方法[2];印凡成等(2012)基于Gompertz曲線和三次指數平滑法提出了貨運量組合預測方法,引用最優加權組合建模理論,以預測誤差的平方和最小為目標函數來確定最優權重系數,建立組合預測模型[3]。
灰色預測也是普遍采用的一種預測方法,對于數據支撐不強的現實情況具有較好的效果,一些學者利用灰色預測方法及改進的灰色預測方法對貨運量進行了預測。馬昌喜等(2009)采用帶波動的多項式與馬爾可夫鏈建立了改進的灰色-馬爾科夫鏈預測模型,采用帶波動的多項式來替代GM(1,1)模型中的指數形曲線,并通過馬爾可夫鏈對其預測結果進行修正,從而建立改進的灰色-馬爾可夫鏈預測模型,同時利用該改進模型對我國公路貨運量進行了預測[4]。
此外,一些學者將多種方法進行了組合,提出了改進的組合預測方法。周志娟等(2010)運用一次指數平滑法和灰色模型預測了中國公路貨運量[5]。
在此基礎上,隨著計算機技術、電子商務的廣泛應用,利用人工神經網絡模型進行預測的方法也得到了一定的探索。彭志忠(2007)提出了供應鏈需求預測中的神經網絡預測技術應用分析,神經網絡的自學習和自適應能力能夠適時調整流程企業產品銷售的信息誤差,對供應鏈的決策系統起到精確的輔助作用。文章建立了基于協作計劃預測和補貨(CPFR)數據庫的供應鏈需求預測支持系統的流程框架,以及基于神經網絡的供應鏈需求預測模型[6]。解樹國(2012)提出了基于RBF和ARIMA模型的貨運量預測算法與軟件實現,構建了一種混合RBF網絡模型,以RBF神經網絡和ARIMA模型作為基本模型,構建了基于最優權系數的線性組合模型,并提出了最優權系數求解算法[7]。
本文在前人研究的基礎上,針對南寧市公路貨運量歷史數據的特點,為有效解決數據突變問題,減少人為因素,加強數據的擬合性,采用BP神經網絡預測模型對南寧市公路貨運量進行了預測,依據南寧市歷史年份的公路貨運量數據建立公路貨運量的BP神經網絡預測模型。將模型在MATLAB軟件環境下進行編碼并運算,通過對數據的反復訓練和學習最終得到預測值。經過實例分析證明基于BP神經網絡的貨運量預測模型是行之有效的,為公路貨運量預測提供了新的預測思路和方法。
同時,為與傳統方法進行比較,突出本文所建立模型的特點,本文利用趨勢外推法,三次指數平滑法,灰色預測法以及指數回歸法分別對南寧市公路貨運量進行了計算,通過驗算結果的對比分析,得到不同方法的適用范圍、特點以及差異性,證明了建立的神經網絡預測模型所具有的優越性。
1.1BP神經網絡的涵義
BP網絡是一種多層前向型神經網絡,其神經元的傳遞是S型函數,輸出量為在0~1的連續量,它可以實現從輸入到輸出的任意非線性映射,其權值的調整采用反向傳播(Back Propagation)學習算法,因此常稱其為BP網絡[8-10]。BP神經網絡能夠通過學習正確答案的實例集自動提取求解規則,具有自學習及組織能力,自適應性,基于自診斷功能的容錯性,魯棒性,實時性,人機交互以及一定的推廣概括能力,是前向型網絡的核心部分,體現了人工神經網絡的精華,主要用于數據逼近、模式識別、預測、分類以及數據壓縮等。
1.2BP神經網絡算法
BP神經網絡的原理是信息的逐層前向計算傳播與權值、閾值通過誤差的反向傳播,這兩個過程周而復始地進行,直到網絡輸出的誤差達到可接受的程度。BP神經網絡的結構如圖1所示。
圖1BP神經網絡結構圖
圖中:xj表示輸入層第j個節點的輸入,j= 1,…,M;wij表示隱含層第i個節點到輸入層第j個節點之間的權值;θi表示隱含層第i個節點的閾值;?(x)表示隱含層的激勵函數;ok表示輸出層第k個節點的輸出;wki表示輸出層第k個節點到隱含層第i個節點之間的權值,i=1,…,q;ak表示輸出層第k個節點的閾值,k=1,…,L;ψ(x)表示輸出層的激勵函數。
(1)信號的前向傳播過程
隱含層第i個節點的輸入neti:

隱含層第i個節點的輸出yi:

輸出層第k個節點的輸入netk:

輸出層第k個節點的輸出ok:

(2)誤差的反向傳播過程
誤差的反向傳播首先由輸出層起逐層計算各層神經元的輸出誤差,隨后根據誤差梯度下降法調節各層的權值及閾值,使修改后網絡的最終輸出能接近期望值。
對于每一個樣本p的二次型誤差函數為Ep:

系統的誤差代價函數為:

式中:TK為與輸入學習樣本對應的教師值。
根據誤差梯度下降法,依次修正輸出層權值的修正量Δwki,輸出層閾值的修正量Δak,隱含層權值的修正量Δwij以及隱含層閾值的修正量Δθi:

式中:η為按梯度搜索的步長,0<η<1。輸出層權值的調整公式為:

輸出層閾值的調整公式為:

隱含層權值的調整公式為:

隱含層閾值的調整公式為:

又因為:

所以,最終得到以下公式:


BP神經網絡算法流程如圖2所示。

圖2 BP神經網絡算法流程圖
圖2BP神經網絡算法流程圖
在分析歷史數據及公路貨運量影響因素的基礎上,利用BP神經網絡建立南寧市公路貨運量時間序列預測模型,對南寧市未來公路貨運量進行預測。預測思路為:
(1)網絡結構模型利用2002—2013年南寧市公路貨運量歷史數據作為研究對象,將數據分為兩部分,其中2002—2012年的數據作為神經網絡的訓練樣本,而2013年的數據作為檢驗樣本,完成對模型的訓練和擬合;
(2)選用2003—2013年的歷史數據作為輸入樣本,預測2014年的公路貨運量;
(3)多次求值,采用移動平均法選取預測數據;
(4)將預測得到的2014年的數據編入輸入數據,預測2015年的公路貨運量;
(5)以此平移類推,即可得到2016—2020年南寧市公路貨運量的預測數據。
預測過程分為以下幾個步驟。
(1)數據樣本及其處理
南寧市2002—2013年的公路貨運量數據如表1所示。

表1 原樣本數據
2008年,交通運輸部在全國范圍內啟動了公路水路運輸量專項調查工作,對原公路水路運輸量主要指標的調查方法和統計口徑做了較大調整,導致2008年、2009年的公路貨運量統計數據發生了較大的波動。其中南寧市公路貨運量統計數據增幅明顯,2008年南寧市公路貨運量為11 028萬t,較2007年增長54.02%,2009年為13 273萬t,較2008年增長13.38%。
針對上述樣本數據向量,由于原始數據存在數據突變問題,幅值大小不一,如果直接使用,數值波動就會壟斷神經網絡的學習過程,使其不能反映小的測量值的變化。為了計算方便并防止部分神經元達到飽和狀態,需要對南寧市2002—2013年的公路貨運量原始數據進行歸一化處理。
在MATLAB中運用歸一化函數T=mapminmax(P),將數值歸一化到[-1,1],MATLAB代碼為:

通過運行MATLAB,得到歸一化后的數據,見表2。

表2 歸一化后的樣本數據
(2)BP神經網絡的訓練及結果
對數據進行分組P=[x1;x2;x3;x4;x5;x6;x7;x8;x9; x10;x11;x12],其中x1為2002年南寧市公路貨運量歸一化后的數值。令每3年公路貨運量為一組,第4年的公路貨運量為檢測數據。可得:

再令輸入數據為:
net=newff(minmax(P),[5,1],{'tansig','purelin'},'trainlm');
net.trainParam.show=50;
net.trainParam.lr=0.05;
net.trainParam.epochs=1000;
net.trainParam.goal=1e-5;
[net,tr]=train(net,P,T);
net.iw{1,1};
net.b{1};
net.lw{2,1};
net.b{2};
Y=sim(net,P);
按照以上代碼在MATLAB環境下進行網絡訓練與測試過程,訓練過程見圖3。

圖3 基于BP神經網絡的南寧市公路貨運量預測模型在MATLAB中的訓練過程
則可以預測下一年的公路貨運量,將預測出的數據編入樣本數據繼續預測下一年的數據,以此平移類推即可得到2014—2020年的預測數據。選擇2002—2005年的數據作為網絡的輸入,2006年的數據作為網絡的輸出和檢測,由此確定輸入神經元數為3,輸出神經元數為1。根據訓練情況,得到隱含層神經元個數選擇為5時最佳。根據網絡訓練確定此時網絡的收斂速度較快,且誤差較小。
利用處理過的數據和MATLAB代碼創建一個BP神經網絡,權值、閾值的設置及其MATLAB代碼為:
%創建網絡
%顯示迭代過程
%動量因子
%最大訓練次數
%訓練要求精度
%網絡訓練擬合
%隱層權值
%隱層閾值
%輸出層權值
%輸出層閾值
%預測仿真
為了得到相對準確的結果,采取多次預測取平均值的方法,得到預測值如表3所示。

表3 基于BP神經網絡的南寧市公路貨運量預測模型預測值
在MATLAB中運用反歸一化函數,Z=Y×[max (P)-min(P)]+min(P),得到南寧市2014—2020年的公路貨運量預測結果,如表4所示。

表4 反歸一化后的南寧市公路貨運量預測值(單位:萬t)
在MATLAB環境下進行網絡訓練與測試過程中,網絡的誤差變化情形如圖4所示。
從圖4中可以看出,網絡預測誤差能夠達到10-5,預測得到的誤差較小。并且已知年份的系統輸出數據與統計數據基本吻合,數據擬合度高。因此運用該網絡進行平移外推計算是比較準確的,且該網絡的公路貨運量預測結果是可信的。

圖4 基于BP神經網絡的南寧市公路貨運量預測模型網絡預測誤差收斂圖
(3)結果分析
由以上預測結果可以看出,與未來南寧市經濟社會的快速發展相對應,公路貨運總量也在不斷攀升,將保持較高的增長速度。南寧市全社會貨運量到2020年將達到160 419萬t,是2013年貨運總量的4.78倍,2013—2020年南寧市公路貨運量的增長率為21.58%。隨著社會經濟的發展以及人們對于增值服務需求的增長,公路運輸受高速鐵路和航空運輸的沖擊,其增長率會有所下降,但是公路貨運憑借自身獨特的優勢仍將處于主導地位。
為說明不同方法之間的差異性,本文除采用BP神經網絡預測外,還利用趨勢外推法、三次指數平滑法、灰色預測法以及指數回歸法對南寧市公路貨運量進行了預測。選取2013年作為檢驗樣本,通過2013年預測值與真實值的對比分析,得到不同方法的相對誤差。
(1)趨勢外推法
采用多項式對原始數據進行趨勢擬合,通過對南寧市歷史年份社會貨運量發展趨勢的分析,建立預測模型表達式,確定未來年份南寧市貨運量發展趨勢。
公路貨運量Y與預測年數X的關系表達式為Y= 337.3X2-1757X+6361.3,相關系數R2=0.9779,得到南寧市2013年公路貨運量預測結果,見表5。
(2)三次指數平滑法
由于一次指數平滑適用于原始數據以隨機變動為主的場合,二次指數平滑適用于具有較明顯線形傾向的原始數據,三次指數平滑更能精確地反映原始數據的非線性變化趨勢,因此選用三次指數平滑預測南寧市貨運量。
利用三次指數平滑法建立的非線性模型為:YT+X=34033.58+6369.34X+324.1572X2,選取三次指數平滑(α=0.4),得到南寧市2013年公路貨運量預測結果,見表5。
(3)灰色預測法
灰色預測法是對時間序列變量的預測。采用GM(1,1)灰色預測模型,建立南寧市公路貨運量灰色預測模型: x∧(1)(t+1)=302983e0.24t-23136.83;,得到南寧市2013年公路貨運量預測結果,見表5。
選取2013年作為檢驗樣本,計算不同方法預測值與真實值的相對誤差,見表5。

表5 南寧市公路貨運量預測方法結果及誤差對比
本文采用BP神經網絡方法準確地擬合了原始數據,最終得出了未來年份南寧市公路貨運量的預測值,取得了較高的預測精度。
從以上分析可以看出,基于BP神經網絡的南寧市公路貨運量預測模型較傳統預測方法有較大的優越性,主要體現在以下方面。
(1)指數平滑法中指數平滑因子的選取具有較大主觀性,類似的情況還發生在彈性系數法中彈性系數的選取。BP神經網絡具有自學習能力,它根據樣本數據通過學習和訓練找出輸入與輸出的內在聯系從而求取問題的解,而不是根據經驗知識,能弱化人為因素的影響。
(2)傳統預測方法不能很好地擬合具有數據突變或非線性的數據樣本,而BP神經網絡能夠很好地擬合任意非線性的數據樣本,本例中誤差能夠達到10-5。而回歸分析法、三次指數平滑法、趨勢外推法等傳統預測方法對具有數據突變或非線性的數據樣本的擬合程度不能達到BP神經網絡的擬合精度。灰色預測法適用于原始數據較少,且具有明確上升趨勢數據的預測,但誤差有時略高。
因此,在公路貨運量預測中,使用BP神經網絡法在實際預測中具有很好的借鑒作用,為公路貨運量預測提供了新思路。
[1]王振軍.交通運輸系統工程[M].南京:東南大學出版社,2008.
[2]趙建有,周孫鋒,崔曉娟,等.基于模糊線性回歸模型的公路貨運量預測方法[J].交通運輸工程學報,2012,12(3):80-85.
[3]印凡成,王滕滕,黃健元.基于Gompertz曲線和三次指數平滑法的貨運量組合預測[J].大連交通大學學報,2012,33(2):37-44.
[4]馬昌喜,郭坤卿,馬永紅.基于改進灰色-馬爾可夫鏈方法的公路貨運量預測[J].蘭州交通大學學報,2009,28 (4):124-127.
[5]周志娟,陳森發.組合預測方法在我國公路貨運量預測中的應用[J].中國水運,2010,10(5):166-167.
[6]彭志忠.供應鏈需求預測中的神經網絡預測技術應用分析[J].中國流通經濟,2007(12):15-17.
[7]解樹國.基于RBF和ARIMA模型下貨運量預測算法與軟件實現[D].長沙:湖南大學,2012.
[8]張德豐.MATLAB神經網絡應用設計[M].(2版).北京:機械工業出版社,2011.
[9]周開利,康耀紅.神經網絡模型及其MATLAB仿真程序設計[M].北京:清華大學出版社,2005.
[10]侯媛彬,杜京義,汪梅.神經網絡[M].西安:西安電子科技大學出版社,2007.
Freight Volume Forecasting in Nanning Based on BPNeural Network
AN Ran,HUA Guang,DONG Na
(China Academy of Transportation Sciences,Beijing 100029,China)
In order to forecast the highway freight volume effectively,a forecasting model of highway freight volume was constructed by using the BP neural networks based on the history data of highway freight volume of Nanning.The model was coded and operated under the environment of MATLAB soft?ware,and the predictive value was got by training and studying the data.This forecasting model of freight volume which was based on BP neural network was proven to be effective though the example analysis.In order to prove the differences between different forecasting methods,the trend extrapolation method,three exponential smoothing method,and gray prediction method were used to forecast the freight volume of Nanning.And through comparative analysis,the relative error of different methods can be got.It is observed that the freight volume forecasting model based on BP neural network has a bigger superiority than traditional forecasting method.The BP neural network model can reveal the nonlinear re?lation of freight volume,and fit the raw data accurately.
BP neural network;highway;freight volume;forecast model;MATLAB code
U491.14
A
2095-9931(2015)02-0058-07
10.16503/j.cnki.2095-9931.2015.02.011
2015-01-06
安然(1989—),女,北京人,研究實習員,碩士,主要研究方向為物流工程與管理、交通運輸規劃與管理。E-mail:ranbaoerfly@163.com。