馬全黨, 江福才, 范慶波, 朱蓉蓉
(武漢理工大學(xué) a.航運學(xué)院;b.內(nèi)河航運技術(shù)湖北省重點實驗室, 武漢 430063)
伴隨著我國經(jīng)濟的發(fā)展,尤其是“一帶一路”政策的實施,加速了水上交通運輸?shù)陌l(fā)展,船舶數(shù)量逐漸增多,船舶大型化和高速化趨勢日益明顯。[1-2]船舶交通流量的準(zhǔn)確預(yù)測,可讓港口部門根據(jù)船舶交通流的變化規(guī)律,科學(xué)合理地規(guī)劃水域布局,提高航道的通航效率,同時也為海事管理部門提供基礎(chǔ)性數(shù)據(jù),更好地保障通航安全。[3]
目前國內(nèi)外的學(xué)者在船舶交通流量預(yù)測方面主要有定性預(yù)測和定量預(yù)測兩大類。
1) 定性方法主要指經(jīng)驗判斷性質(zhì)的分析預(yù)測,具有代表性的方法有“頭腦風(fēng)暴法”“德爾菲法”和“廣義德爾菲法”[4]等,這些方法包含很強的主觀因素,誤差較大且預(yù)測精度不高。
2) 定量預(yù)測是指運用數(shù)學(xué)模型進(jìn)行預(yù)測,目前應(yīng)用比較廣,例如:運用線性增長模型[5]、徑向基函數(shù)(Radical Basis Function,RBF)神經(jīng)網(wǎng)絡(luò)模型[6]等。
本文主要就灰色模型、馬爾科夫模型、粒子群算法應(yīng)用情況進(jìn)行介紹。馬曉波等[7]運用灰色系統(tǒng)預(yù)測模型,引入殘差修正等方法優(yōu)化模型,對長山水道2015—2016年船舶交通流量進(jìn)行預(yù)測。鄭友銀等[8]運用灰色模型與自回歸模型結(jié)合,對港口的船舶交通流量進(jìn)行預(yù)測等;灰色模型可提高樣本數(shù)量和信息少的數(shù)據(jù)的預(yù)測精度,但對波動性大的數(shù)據(jù)預(yù)測精度低,且未消除指數(shù)偏差。呂鵬飛等[9]利用BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)與馬爾科夫模型結(jié)合,將殘差劃分狀態(tài),白化系數(shù)取0.5,用馬爾科夫修正神經(jīng)網(wǎng)絡(luò)預(yù)測值的方法對長江九江大橋的月度船舶交通流量進(jìn)行預(yù)測;馬爾科夫模型對殘差序列區(qū)間進(jìn)行白化,一般選取狀態(tài)區(qū)間的中間值,白化系數(shù)為0.5,不具有普適性,誤差較大。李松等[10]應(yīng)用粒子群算法所具有的全局搜索能力對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,輔助求解最佳的權(quán)值和閾值,提高交通流量的預(yù)測精度。許多學(xué)者已將無偏灰色模型、馬爾科夫模型、粒子群算法應(yīng)用到煤礦、道路交通和降水等領(lǐng)域,取得很好的預(yù)測效果。
鑒于以上分析,本文在無偏灰色模型的基礎(chǔ)上,引入馬爾科夫模型,彌補無偏灰色模型在對波動性大的數(shù)據(jù),預(yù)測精度低的不足,并運用PSO優(yōu)化算法,自適應(yīng)求取最佳白化系數(shù),應(yīng)用該方法對東營港2012—2017年船舶交通流量季度統(tǒng)計數(shù)據(jù)進(jìn)行擬合與預(yù)測,以期得到最佳的預(yù)測效果。
在生活中,存在很多系統(tǒng)的信息為部分已知但并不全知,稱為灰色系統(tǒng),灰色模型就是對灰色系統(tǒng)進(jìn)行預(yù)測,雖然系統(tǒng)表現(xiàn)的現(xiàn)象是隨機的、雜亂無章的,但依然具備一定的潛在規(guī)律。灰色模型就是尋找這種規(guī)律并加以利用,從而進(jìn)行預(yù)測。[11]選擇灰色模型中的GM(1,1)進(jìn)行預(yù)測,灰色模型GM(1,1)在原始時間序列隱含著指數(shù)變化規(guī)律時預(yù)測誤差較小。傳統(tǒng)的灰色模型GM(1,1)在構(gòu)建序列模型步驟過于繁瑣,為方便計算,構(gòu)建無偏灰色GM(1,1)模型,建模步驟如下:
構(gòu)建原始序列為
X(0)(k)=(X(0)(1),X(0)(2),…X(0)(k))=
(1)
1) 對原始序列作一階累加,生成數(shù)據(jù)累加序列和一階線性微分方程為
(2)
(3)
2) 為得到待定參數(shù)的解,構(gòu)建矩陣Bn,Yn為
(4)
3) 用最小二乘法計算線性微分方程的參數(shù)a和μ。
x(0)(k)=-aZ(1)(k)+μ
(5)
(6)
(7)
(8)
馬爾科夫模型是一個隨機變量序列,它與某個系統(tǒng)的狀態(tài)相對應(yīng),而此系統(tǒng)在某個時刻的狀態(tài)只依賴于它的前一時刻的狀態(tài),該模型[13]表示為
X(n)=X(k)Pn-1
(9)
(10)
殘差序列e(i)存在規(guī)律性,應(yīng)對殘差序列利用馬爾科夫模型來修正。將殘差序列按照大小劃分為間隔寬度相等的r個狀態(tài),殘差序列F(i)的第i步的第j個狀態(tài)的上下邊界分別用Hij和Qij表示,計算方法[13]為
(11)
(12)
設(shè)狀態(tài)空間為I={i1,i2,…,ir},在每一個時間點,隨機過程中的每一個值只能處于一種狀態(tài),每個狀態(tài)在接下來的狀態(tài)轉(zhuǎn)移有r個轉(zhuǎn)向(包括轉(zhuǎn)向自身),即:{ii→i1,ii→i2,…,i→ir}。從狀態(tài)i經(jīng)過一步狀態(tài)轉(zhuǎn)移到狀態(tài)j的概率為
?i,j∈I。
(13)
同理可得到k步狀態(tài)轉(zhuǎn)移概率為
?i,j∈I
(14)
進(jìn)而構(gòu)建能反映系統(tǒng)間各狀態(tài)概率轉(zhuǎn)移的一步轉(zhuǎn)移矩陣為r×r。[14]該轉(zhuǎn)移矩陣為
(15)
從狀態(tài)轉(zhuǎn)移矩陣的行向量里可得到無偏灰色模型殘差序列里某序列值經(jīng)過一步狀態(tài)轉(zhuǎn)移的概率,記為ai(t)(i=1,2,3,…,r),轉(zhuǎn)移時間用T表示。選取r個狀態(tài)區(qū)間,每個狀態(tài)區(qū)間的中間值為該區(qū)間可能的預(yù)測值,用zi(i=1,2,3,…,r)表示,通常取0.5,得到預(yù)測結(jié)果的表達(dá)式為
(16)
在以上建模過程中,zi(i=1,2,…,λ)取狀態(tài)區(qū)間的中間值(白化系數(shù)為0.5),該值不具有普適性且誤差較大。本文引入粒子群算法對上述模型進(jìn)行優(yōu)化,根據(jù)數(shù)據(jù)序列的變化規(guī)律,求取最佳的白化系數(shù)。
將得到的狀態(tài)區(qū)間看作為一個灰區(qū)間,對這種灰區(qū)間進(jìn)行白化的方法為
(17)
KENNEDY等[15]提出粒子群算法,這是一種模擬鳥群社會性的多點搜索方法,具有全局搜索能力強、過程簡潔和參數(shù)少的特點,用以自適應(yīng)選取最佳白化系數(shù)。
vi(t+1)=wvi(t)+c1rand1(xpbesti-xi(t))+
c2rand2(xgbesti-xi(t))
xi(t+1)=xi(t)+vi(t+1)
(18)
式(18)中:xi為在t時刻的位置;vi為粒子在t時刻的速度;xpbesti為群體搜索到的最佳位置;xgbest為粒子全體極值經(jīng)歷的最好位置;rand1、rand2為服從U(0,1)的隨機數(shù);ω為慣性系數(shù);c1、c2為加速度系數(shù)。
用均方差fit來衡量每個粒子的適應(yīng)度函數(shù)
(19)
PSO-無偏灰色馬爾科夫模型的建模步驟見圖1。
圖1 PSO-無偏灰色馬爾科夫模型計算步驟
為定量評價模型的船舶交通流量預(yù)測結(jié)果,綜合采用平均絕對誤差(Mean Absolute Error,MAE)和平均絕對百分誤差(Mean Absolute Percentage Error,MAPE)[14]對預(yù)測精度進(jìn)行計算。
MAE的計算公式為
(20)
MAPE的計算公式為
(21)
MAE與MAPE分別反映原始值與預(yù)測值的平均偏離程度及模型預(yù)測數(shù)據(jù)的擬合程度,值越小,越能反應(yīng)預(yù)測值的準(zhǔn)確性與可靠性。
標(biāo)準(zhǔn)船舶的選取是為方便對不同水域相同時段或同一水域不同時段的船舶交通流量進(jìn)行統(tǒng)計、更好地表征船舶交通流的概念。文獻(xiàn)[16]提到標(biāo)準(zhǔn)船舶作用有:實現(xiàn)不同航段船舶交通流量的比較,反映不同航段船舶交通流量的特點。日本運用“L系數(shù)”“L2系數(shù)”的方法確定標(biāo)準(zhǔn)船舶,我國采用如下?lián)Q算系數(shù)將原始數(shù)據(jù)轉(zhuǎn)化為標(biāo)準(zhǔn)船舶數(shù)據(jù)[13],見表1。
表1 標(biāo)準(zhǔn)船舶換算系數(shù)表
為保證預(yù)測數(shù)據(jù)的準(zhǔn)確性,在東營海事局的配合下利用船舶簽證原始資料統(tǒng)計得到東營港2012—2017年共23個季度的船舶交通流量。根據(jù)以上換算系數(shù),對原始數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)船舶轉(zhuǎn)換,得到的標(biāo)準(zhǔn)船舶見表2。
表2 東營港2012年1月—2017年9月船舶交通流量季度統(tǒng)計表 標(biāo)準(zhǔn)船/艘次
根據(jù)表2,擬選擇前21個樣本數(shù)據(jù)作為擬合數(shù)據(jù),建立非負(fù)原始數(shù)據(jù)序列為
(22)
依據(jù)無偏灰色模型的建模步驟,運用MATLAB R2014a軟件編制無偏灰色模型程序計算,得到
(23)
(24)
應(yīng)用MATLAB R2014b,參照式(4)得到無偏灰色模型的預(yù)測值。
依據(jù)上文無偏灰色馬爾科夫模型的建模流程,確定殘差序列的范圍e(i)∈[-1 562.93,1 284.68]。將殘差序列劃分為4個狀態(tài)區(qū)間,區(qū)間的上下邊界值如下:
狀態(tài)E1為
同理得到E2、E3、E4狀態(tài)的上下邊界區(qū)間分別為[-851.02,-139.12]、[-139.12,572.77]、[572.77,1 284.68]。無偏灰色模型殘差序列狀態(tài)分布見表3。
表3 無偏灰色模型殘差序列狀態(tài)分布表
根據(jù)表3狀態(tài)的分布情況,對從Ei經(jīng)一步轉(zhuǎn)移到Ej的頻數(shù)統(tǒng)計見表4。進(jìn)而得到狀態(tài)轉(zhuǎn)移概率矩陣為
(27)
計算4個狀態(tài)區(qū)間的中間值:z1=-1 211.71,z2=-489.24,z3=233.24,z4=955.71。根據(jù)式(16)得到無偏灰色馬爾科夫模型的預(yù)測結(jié)果,見表5。
表4 一步狀態(tài)轉(zhuǎn)移頻數(shù)統(tǒng)計表
表5 模型預(yù)測結(jié)果及殘差
粒子群算法全局搜索能力強,綜合考慮殘差序列、狀態(tài)區(qū)間和狀態(tài)轉(zhuǎn)移概率等,能夠幫助尋找到最佳的白化系數(shù)。運用式(17)得到
(28)
(29)
(30)
(31)
根據(jù)以上的計算結(jié)果,現(xiàn)將無偏灰色模型、無偏灰色馬爾科夫模型、PSO-無偏灰色馬爾科夫模型船舶交通流量預(yù)測值和殘差匯總?cè)绫?所示。
船舶交通流量預(yù)測值結(jié)果對比見圖2。無偏灰色模型的預(yù)測值從第2季度開始為單調(diào)遞增的光滑直線,樣本實際值基本位于直線兩側(cè),該模型對單調(diào)遞增的數(shù)據(jù)預(yù)測精度高,對受到多種因素影響的波動性較大的數(shù)據(jù)預(yù)測精度較低。無偏灰色馬爾科夫模型擬合效果不好,原因在于該模型白化系數(shù)值為0.5,即選擇的每個狀態(tài)區(qū)間的中間值為該區(qū)間的可能值,但在實際中,中間值并不一定是最優(yōu)解。運用PSO算法進(jìn)行全局搜索,尋找到最佳的白化系數(shù),彌補了馬爾科夫模型在白化系數(shù)選取上的不足,擬合效果較好,且擬合精度明顯優(yōu)于前兩者。
圖2 船舶交通流量預(yù)測值結(jié)果對比
擬運用該方法對東營港2017年第2季度、2017年第3季度船舶交通流量進(jìn)行預(yù)測。第21組數(shù)據(jù)轉(zhuǎn)移到第22組、第23組數(shù)據(jù)的第1、第2步狀態(tài)轉(zhuǎn)移概率矩陣為
P(1)=P(0)×P(1)=0 1 0 0×P(1)
第21組數(shù)據(jù)處于E1,參照PSO-無偏灰色馬爾科夫模型的計算過程和第2步狀態(tài)轉(zhuǎn)移矩陣,計算結(jié)果見表6。
根據(jù)式(20)和式(21),分別計算3種模型在對前21組數(shù)據(jù)進(jìn)行擬合及對第22、第23組數(shù)據(jù)進(jìn)行預(yù)測情況下的MAE和MAPE,見表7。
由表7可知:采用PSO-無偏灰色馬爾可夫模型擬合誤差中MAPE為8.561%,精度為91.439%,優(yōu)于無偏灰色模型及無偏灰色馬爾科夫模型,擬合較好。PSO-無偏灰色馬爾可夫模型對于2017第2、第3季度的預(yù)測誤差中MAPE為4.041%,精度為95.959%,驗證模型的可靠性。
表7 3種模型誤差比較結(jié)果統(tǒng)計表
1) 本文提出PSO-無偏灰色馬爾科夫船舶交通流量預(yù)測模型,該模型在綜合考慮預(yù)測中殘差序列、狀態(tài)區(qū)間和狀態(tài)轉(zhuǎn)移概率的基礎(chǔ)上,自適應(yīng)求解最佳白化系數(shù),用以克服無偏灰色馬爾科夫模型在預(yù)測波動性數(shù)據(jù)存在精度低的問題。
2) 本文模型與傳統(tǒng)無偏灰色模型和無偏灰色馬爾科夫模型相比,能確保更高精度的預(yù)測結(jié)果。
3) 為進(jìn)一步提高船舶交通流量預(yù)測精度,后續(xù)工作將重點研究馬爾科夫模型中的最佳狀態(tài)劃分方法和粒子群算法,有效克服船舶交通流量預(yù)測中的復(fù)雜性和非線性。
4) 預(yù)測結(jié)果可為港口水域的合理布局及海事主管部門提高水上交通管理效能提供基礎(chǔ)性數(shù)據(jù)。