趙龍文, 萇道方, 朱宗良, 高銀萍
(上海海事大學 物流科學與工程研究院, 上海 201306)
近年來,我國港口發(fā)展規(guī)模不斷擴大,船舶交通流量日益增多,導致港口交通擁堵等問題頻繁發(fā)生,極大地影響海上通航效率以及船舶交通服務水平。[1]港口船舶交通流量的預測是港口船舶交通組織優(yōu)化的基礎工作,高精度的船舶交通流量預測可為提高交通效率和交通安全提供理論依據。
目前,運用于船舶交通流量預測的方法主要有回歸模型、灰色模型、時間序列分析、支持向量機以及神經網絡等,或者是利用遺傳算法來優(yōu)化神經網絡等。馬曉波等[2]利用長山水道2015—2016年的樣本數據,通過優(yōu)化GM(1,1)模型預測較為準確。楊雙雙等[3]利用非凸低秩稀疏分解模型將數據分解成低秩和稀疏兩部分,用自回歸移動平均(Autoregressive Integrated Moving Average, ARIMA)模型分別預測并整合得到最終預測結果。李曉磊等[4]運用季節(jié)性自回歸移動平均(Seasonal Autoregressive Integrated Mov Average,SARIMA)模型表達出月船舶交通流量季節(jié)性特征,相比ARIMA模型和季節(jié)指數平滑模型,其預測效果更佳。馮宏祥等[5]將支持向量機理論應用在短期的船舶流量預測中,較SPSS線性回歸相比其預測結果更優(yōu)。WANG等[6]提出船舶交通模型是一個非線性、不確定和復雜的動力學系統,將灰色模型等與支持向量機進行組合預測,其預測結果更為準確。WANG等[7]建立BP神經網絡的船舶交通流量預測模型,利用天津港部分數據對該模型進行驗證,并進行殘差分析檢驗其可靠性。郝勇等[8]和黃智仟[9]針對神經網絡固有的缺陷,利用遺傳算法對其進行優(yōu)化,得出優(yōu)化模型在船舶交通流量預測領域的準確性與有效性。這些研究為船舶交通流量預測提供了理論基礎,極大地促進了港口規(guī)劃的發(fā)展。但是影響港口船舶交通流量的因素繁多且復雜,包括自然環(huán)境等周期性的影響因素、所處的地理位置等非周期性且較穩(wěn)定的影響因素以及港口施工、周邊港口競爭等不確定性影響因素。[3]
面對復雜的港口交通環(huán)境,單個模型對船舶交通流量的預測存在很多局限性,針對實時的船舶交通流的線性和非線性雙重特征,單個模型的預測并不適用。此外,大部分文獻并未考慮海上的季節(jié)性影響,導致預測精度不高、誤差較大。本文考慮船舶交通流量的季節(jié)性因素,對ARIMA模型進行改進,并提出將改進的SARIMA模型與BP神經網絡組合成誤差校正集成模型,應用于船舶交通流量的預測。通過將數據先分解后集成的思想,利用SARIMA良好的線性擬合能力和BP神經網絡較好的非線性映射能力[10],完成對深圳港的船舶交通流量預測。
BOX和JENKINS提出的ARIMA模型為時間序列預測提供一種有效的方法,ARIMA模型用于描述時間序列中存在的自相關特征,是根據數據結構進行調整的一種面向數據的方法。[11]預測是基于以往觀測數據的線性組合,其數據是一個固定的序列而沒有任何特定的數據趨勢。ARIMA(p,d,q)的具體結構為
(1-θ1B-…-θqBq)εt
(1)
式(1)中:B為后移算子;p為自回歸系數;q為移動平均階數;d為對具有某種趨勢的非平穩(wěn)時間序列轉化為平穩(wěn)時間序列所做的差分運算次數。
在具有季節(jié)性或周期性趨勢的數據應用中,SARIMA模型比ARIMA模型體現出更高的預測精度。SARIMA模型的形式可表示為SARIMA(p,d,q)(P,D,Q)S,其中:P和Q分別為季節(jié)性部分的自回歸和移動平均算子;S為周期;D為季節(jié)差分階數。自相關函數(Autocorrelation Function, ACF)和偏自相關函數(Partial Autocorrelations Function, PACF)都是用來檢驗時間序列的主要工具,本文使用ACF和PACF來確定其候選模型,并使用Akaike信息準則(Akaike Information Criterion, AIC)在候選模型中選擇最優(yōu)模型。
MCCLELLAND和RUMELHARD于1986年提出BP神經網絡,一個典型的BP神經網絡結構包括輸入層、隱含層(一個或多個)和輸出層,體現一個從輸入到輸出的學習和映射過程,層與層之間采用全連接的方式,同一層的神經元之間不存在相互連接。[12]BP神經網絡結構見圖1,BP神經網絡具有一個隱含層,m、l、n分別為輸入層、隱含層、輸出層的神經元個數。隱含層采用S型傳遞函數tansig,輸出層傳遞函數為purelin。BP神經網絡因其模擬人腦的神經組織,具備生物神經系統的一些基本特征,使其擁有自學習和自適應能力、較好的非線性映射能力以及容錯能力等眾多特點,被廣泛地應用在不同的領域中,比如計算機視覺、圖像識別以及時間序列的預測等,并解決很多實際應用問題。
圖1 BP神經網絡結構
SARIMA模型有良好的線性擬合能力,BP神經網絡是非線性模型,兩者對于船舶交通流量的時間序列數據都有著不同的擬合和處理能力。但在實際中面對多重影響因素的港口交通環(huán)境,時間序列中往往存在著較復雜的內在關系,僅靠單一模型難以準確地提取出時間序列數據中的內在信息與特征,導致對船舶交通流量的預測精度不高,不利于港口交通部門的規(guī)劃與管理工作。
對于具有線性和非線性雙重特征的船舶交通流量數據Zt,可將其分解為線性部分Xt和非線性部分Yt為
Zt=Xt+Yt
(2)
(3)
(4)
圖2 SARIMA-BP誤差校正集成模型流程圖
對SARIMA模型、BP神經網絡和SARIMA-BP誤差校正集成模型分別介紹之后,本文使用深圳港2011—2017年的進出港船舶交通流量數據,利用R語言和MATLAB環(huán)境對上述模型分別進行建模分析,將每個模型預測結果與真實值進行對比,并將誤差校正集成模型的預測精度與其余模型作對比,以突出該組合模型的可行性。
以深圳港船舶交通流量的月度數據為樣本。由于船舶交通流量影響因素復雜多樣化,比如某些突發(fā)性事件可能會導致收集到的數據前后波動比較大且時間序列圖呈現出折線狀,因此,在建立模型訓練前,首先對原始時間序列進行預處理,避免出現較大的預測誤差。常見的平滑處理方法有均值濾波、拉普拉斯和五點三次等平滑算法。本文采用五點三次平滑法[13]對原始時間序列進行處理,平滑處理的基本原則是既要消除數據中的突出干擾成分,又要保留原始數據曲線的特性不變。處理后的變化曲線與原始數據曲線對比見圖3。
圖3 五點三次平滑處理前后時間序列對比圖
由圖3可知:除2012—2014年的2月、2015年8月和11月等幾個月的平滑處理后數據與原始數據相比有較大波動外,其余數據都保留了原始數據較好的變化趨勢,且誤差控制在可接受的范圍內。因此,采用經五點三次平滑處理后的數據作為建模分析的數據。2011—2017年深圳港船舶交通流量平滑處理后的數據見表1。
表1 2011—2017年深圳港船舶平滑處理后的交通流量數據 艘
3.2.1SARIMA模型預測
選用2011—2016年數據為學習樣本,對深圳港2017年船舶交通流量進行預測,并與其真實值進行比較。根據圖3可知:該時間序列在一定程度上有上升或下降的趨勢,并具有一定的周期性。利用R語言對該數據進行分析,并畫出自相關圖以及進行ADF(Augmented Dickey-Fuller)單位根檢驗。樣本時間序列ACF圖見圖4。
圖4 樣本時間序列ACF圖
由圖4可知:ACF并未快速衰減至零,并含有周期性。ADF檢驗統計量p值為0.677 3,遠大于0.05,因此,不能拒絕原假設,表明樣本時間序列是不平穩(wěn)的,需要進行差分處理。
首先對樣本時間序列進行一階差分,得到差分后的時間序列圖見圖5,并進行自相關和偏自相關分析。由圖5可知:該時間序列圖在0附近上下浮動,并且ADF檢驗統計量的p值為0.01,則拒絕原假設,表示序列具有一定的平穩(wěn)性,不需要再進行逐期差分,但仍存在顯著的周期性特征,接下來進行一階季節(jié)差分處理。
圖5 一階差分后時間序列圖
對一階差分后的時間序列進行一階季節(jié)差分,根據自相關函數和偏自相關函數的特點(見圖6和圖7),可發(fā)現該時間序列的季節(jié)性或周期性變化基本消除,故只做一階季節(jié)差分即可。進行ADF單位根檢驗,其p值為0.01,表示該時間序列已經平穩(wěn),可進行SARIMA建模。
圖6 一階差分一階季節(jié)差分后時間序列ACF圖
圖7 一階差分一階季節(jié)差分后時間序列PACF圖
進行一階差分和一階季節(jié)差分之后,該時間序列已經趨于平穩(wěn),因此,不需要再對其進行差分處理,則d和D的值均可確定為1,很明顯可看出該時間序列以年為周期,則S的值為12。并且根據兩次差分后的自相關圖和偏自相關圖大致可選擇以下幾種備選模型,再通過AIC準則求出各模型的AIC值,以AIC的最小值來選取最優(yōu)SARIMA模型,見表2。
表2 SARIMA備選模型及AIC值
根據表2可確定SARIMA(3,1,0)(1,1,1)12的AIC最小值為800.20。然后對該模型的殘差序列進行檢驗,發(fā)現其殘差的自相關系數基本包含在置信區(qū)間內,且其p值遠遠大于0.05,因而判斷該殘差序列為白噪聲序列,SARIMA(3,1,0)(1,1,1)12模型是合理的,可用來做預測。用該模型對2017年的船舶交通流量進行預測,并與其真實值進行比較,計算誤差見SARIMA模型部分(見表3)。
3.2.2BP神經網絡預測
使用BP神經網絡預測船舶交通流量的模型設計之前,對樣本數據進行歸一化處理。歸一化的作用是將有關數據投射到設定好的一個小范圍中,歸納統一樣本的統計分布性,有利于提高神經網絡的訓練性能和學習速度。對樣本數據進行歸一化處理之后,接著對神經網絡的模型結構進行設計。HORNIK等[14]證實在任意封閉區(qū)間下的連續(xù)函數都可用3層BP神經網絡來近似逼近,因此在層數選擇時,考慮到數據量不多,優(yōu)先使用3層神經網絡,即只有單隱含層。結合港口船舶交通流量的非線性特性,選擇sigmoid函數中的tansig函數和pure-lin函數分別作為隱含層和輸出層的激勵函數。
表3 3種模型2017年預測值與真實值對比表
應用BP神經網絡對港口船舶交通流量進行預測時,數據集的輸入一般有兩種方法:
(1) 利用前幾個月的數據來預測接下來某月的交通流量數據,這樣可利用有限的數據來建立更多的訓練集,減小訓練誤差;
(2) 利用前幾年同月的數據預測未來相同月份的數據,這種方法考慮周期性的影響因素,但需要大量的數據用來訓練。
鑒于只有深圳港7 a的交通流量數據,則選擇第一種方法來建立訓練集和測試集。采用深圳港前6個月的數據作為BP神經網絡的輸入來預測接下來1個月的數據,即輸入層神經元個數為6,輸出層為1,則根據已有數據,建立66組訓練集來訓練BP神經網絡,剩余的12組作為測試集,對2017年船舶交通流量進行預測并與真實值進行比較。
對于隱含層神經元個數,合理選擇其個數直接影響著神經網絡的訓練性能和預測精度,神經元個數較少,導致預測精度不佳,個數太多又容易出現過度擬合現象。參照式(5)逐個進行試驗。
(5)
式(5)中:N為輸入層神經元個數;M為輸出層神經元個數;W為隱含層神經元個數;T為[1,10]中的隨機整數。
根據上文中確定的輸入層和輸出層神經元個數,依次對隱含層神經元個數為[3,12]中的任意一個進行多次試驗,最終確定當BP神經網絡結構為6-8-1時擬合效果較好,得到2017年的預測結果和真實值比較,如表3中BP神經網絡部分所示。
3.2.3SARIMA-BP集成模型預測
SARIMA-BP集成模型預測中主要的兩個步驟基本同第3.2.1節(jié)和第3.2.2節(jié)中一致,根據誤差校正集成模型所述步驟對該模型進行建模,首先通過SARIMA模型可得到殘差序列 ,再根據第3.2.2節(jié)的步驟,將殘差序列進行歸一化處理,也采取用前6個月的殘差來預測下1個月殘差的方式,對各參數進行多次調整、訓練模型。經多次試驗最終得到6-10-1的BP神經網絡結構能夠對殘差序列有較好的預測結果,BP神經網絡的訓練曲線見圖8。由圖8所知:當網絡權值迭代到109代后達到最小誤差,并得到殘差序列預測結果,將其與SARIMA的預測結果相加得到集成模型的2017年預測結果,如表3所示SARIMA-BP部分所示。
圖8 BP神經網絡訓練曲線
由表3可知:SARIMA模型其5月、6月和7月的相對誤差都超過了10%,可見用SARIMA單一模型預測的整體效果不是太理想,不能體現出該時間序列數據中的非線性特征與信息。BP神經網絡模型預測的相對誤差最大不超過8%,可見BP神經網絡以其強大的非線性映射能力進行預測,結果比僅利用SARIMA模型的線性擬合能力的預測結果較好。而用SARIMA-BP集成模型得到2017預測值的相對誤差最大不超過5%,相比SARIMA模型和BP神經網絡單一模型,其預測結果更加理想。同時,使用均方誤差(Mean-Square Error,MSE)和平均絕對百分比誤差(Mean Absolute Percent Error,MAPE)作為相關的模型評價指標[15]來評價這幾種模型的優(yōu)劣。MSE和MAPE的數學表達式為
1) 均方誤差
(6)
2) 平均絕對百分比誤差
(7)
表4 3種模型的評價指標
圖9 3種模型2017年預測值與真實值對比圖
由表4可知:SARIMA模型和BP神經網絡的均方誤差和平均絕對百分比誤差的值較大,預測結果并不是太理想,而SARIMA-BP集成模型的兩個評價指標值都最小,表現出較好的預測精度。圖9同樣也驗證了這一點,3種模型的預測值都表現出了與真實值相似的變化趨勢,但SARIMA-BP模型的預測折線圖與真實值更加擬合??梢娫撜`差校正集成模型相比兩個單一模型較好地體現出船舶交通流的線性和非線性雙重特性,對船舶交通流量的預測精度更高。
本文考慮影響船舶交通流量的季節(jié)性因素,提出將SARIMA模型和BP神經網絡進行組合的誤差校正集成模型,并將其應用到港口船舶交通流量預測領域中。以深圳港2011—2017年的交通流量數據作為研究樣本,運用誤差校正集成模型和兩個單一模型,分別對深圳港2017年的船舶交通流量進行預測,并與真實值進行對比。試驗結果顯示:SARIMA模型、BP神經網絡和集成模型的MSE分別為717.45、490.59和247.51,MAPE分別為6.43%、5.13%和2.59%,表明該集成模型與單一模型相比,具有更高的預測精度,有利于優(yōu)化港口交通管理部門工作。對于SARIMA模型和BP神經網絡這種組合模型,除了誤差校正外,還可考慮類似權重組合等模型集成方式,有待進一步研究。