集裝箱運輸具有減少貨損貨差率、綠色環(huán)保、提高裝卸效率、可多式聯(lián)運等優(yōu)點,集裝箱運輸逐漸取代了傳統(tǒng)的散貨運輸方式,成為主要貿(mào)易運輸方式[1-2]。
根據(jù)交通運輸部統(tǒng)計,2021年全國港口集裝箱吞吐量達2.83億TEU,在新冠疫情影響下實現(xiàn)逆勢同比增長7.0%。在集裝箱運輸蓬勃發(fā)展的同時,伴隨而來的是港口建設(shè)產(chǎn)能過剩、資源配置效率低等問題[3]。港口的需求是港口投資建設(shè)與運營的重要依據(jù)[4],而港口基礎(chǔ)投資具有高風險、不可逆轉(zhuǎn)的性質(zhì)[5],因此準確的對港口集裝箱吞吐量需求進行預(yù)測對提高港口投資效率、指導(dǎo)港口發(fā)展方向、規(guī)劃港口整體布局、制定日常生產(chǎn)作業(yè)計劃具有重要意義。
自20世紀80年代以來,集裝箱吞吐量預(yù)測是一個比較熱門的研究領(lǐng)域,目前國內(nèi)外學者針對港口集裝箱吞吐量預(yù)測的主要方法可分為單一模型和混合模型[6]。單一模型又可分為時間序列模型和非線性模型[7],時間序列模型如指數(shù)平滑(Exponential Smoothing,ES)、季節(jié)性自回歸綜合移動平均(Seasonal Autoregressive Integrated Moving Average Model,SARIMA)和灰色預(yù)測模型(Grey Forecasting Model,GM)等。例如,陳寧等[8]提出利用對數(shù)二次指數(shù)平滑方法預(yù)測港口吞吐量,結(jié)果表明對數(shù)二次指數(shù)平滑方法適用于快速成長的港口的吞吐量預(yù)測。Ghaderi等[9]應(yīng)用ES方法對澳大利亞主要港口集裝箱吞吐量的變化趨勢進行預(yù)測。王向前等[10]提出一個ARIMAX-SVR預(yù)測方法對天津港吞吐量進行預(yù)測,改進后的模型精度為0.43%,提高了預(yù)測精度。董潔霜等[11]采用SARIMA模型對上海港集裝箱吞吐量的季節(jié)性變化規(guī)律進行分析,并給出月度數(shù)據(jù)預(yù)測值。上述模型大多基于線性假設(shè),不能很好地刻畫原始數(shù)據(jù)中的非線性特征,集裝箱吞吐量受到腹地經(jīng)濟、政策環(huán)境等因素的影響,其時間序列具有高度非線性[7,12]。隨著計算機技術(shù)的進步,逐漸開發(fā)出人工智能技術(shù)為基礎(chǔ)的非線性模型,主要包括反向傳播(Back Propagation,BP)神經(jīng)網(wǎng)絡(luò)、遺傳規(guī)劃(GP)和支持向量機(SVM)。如吳利清[13]以歷史前三年的集裝箱吞吐量作為輸入樣本建立BP神經(jīng)網(wǎng)絡(luò)預(yù)測模型并對驗證集進行驗證發(fā)現(xiàn)精度良好,驗證模型可行性后對福州港集裝箱吞吐量進行預(yù)測。Tang等[14]在分析上海港和連云港的集裝箱吞吐量變化時,發(fā)現(xiàn)BP模型的預(yù)測效果優(yōu)于GM、三重指數(shù)平滑和多元線性回歸等時間序列模型。黃安強等[15]首次將遺傳規(guī)劃算法(GP)應(yīng)用于集成預(yù)測問題的研究,并使用最小二乘估計算法(LSE)對經(jīng)典遺傳規(guī)劃算法進行改進預(yù)測青島港集裝箱吞吐量,結(jié)果表明基于GP-LSE的非線性集成預(yù)測方法在預(yù)測數(shù)值準確度和方向準確度兩個維度都顯著優(yōu)于時間序列模型。宋長利等[16]構(gòu)建了基于支持向量機模型的多步混合預(yù)測方法,并通過對大連港66個月吞吐量樣本數(shù)據(jù)進行了實證分析,結(jié)果表明集裝箱的預(yù)測值與實際值的平均相對誤差為2.8%。
集裝箱吞吐量受眾多因素影響,由于單一模型方法本身的限制,單一模型存在各種缺陷。眾多學者提出使用各種混合模型進行預(yù)測,如李長安等[17]為提高模型精度,通過蟻群算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)后進行預(yù)測,結(jié)果表明混合模型的精度優(yōu)于其他單一模型。高偉等[18]通過熵值法確定各指標的影響權(quán)重,結(jié)合BP神經(jīng)網(wǎng)絡(luò)方法對機場旅客吞吐量進行預(yù)測,證明上述方法可減小誤差。謝新連等[19]建立基于隨機森林(Random Forest,RF)算法的預(yù)測模型,以大連港為案例進行驗證,并與三次指數(shù)平滑、多元回歸分析和BP神經(jīng)網(wǎng)絡(luò)三種方法預(yù)測進行對比,結(jié)果表明隨機森林算法預(yù)測準確性更高。孫曉聰?shù)萚20]提出基于隨機森林與雙向長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory Network,LSTM)結(jié)合的集裝箱吞吐量預(yù)測方法對青島港集裝箱吞吐量進行預(yù)測,結(jié)果顯示RF-雙向LSTM預(yù)測精度顯著高于其他模型。He和Wang[21]將GM 1,()1和BP神經(jīng)網(wǎng)絡(luò)相結(jié)合結(jié)果表明,組合模型分別優(yōu)于其他單一模型,具有更高的預(yù)測精度。
BP神經(jīng)網(wǎng)絡(luò)具有良好的非線性擬合能力,適合應(yīng)用于集裝箱吞吐量預(yù)測[22]。但網(wǎng)絡(luò)輸入變量的合理選擇對預(yù)測效果至關(guān)重要。目前在使用BP神經(jīng)網(wǎng)絡(luò)進行集裝箱吞吐量的預(yù)測研究中,大部分學者使用歷史集裝箱吞吐量作為輸入變量進行預(yù)測,如吳利清、陳錦文、曹杰等人[13,23-24]均采用歷史集裝箱吞吐量數(shù)據(jù)作為輸入變量進行預(yù)測。影響集裝箱吞吐量的重要因素同時還應(yīng)包括腹地GDP和腹地貨運量[25],等等。本文采用歷史前三年集裝箱吞吐量、腹地GDP、腹地貨運量作為輸入變量,遺傳算法適用于解決復(fù)雜的非線性和多維空間尋優(yōu)問題[26],利用遺傳算法(GA)來彌補BP神經(jīng)網(wǎng)絡(luò)連接權(quán)值和閾值選擇上的隨機性缺陷,建立GA-BP預(yù)測模型。
BP神經(jīng)網(wǎng)絡(luò)是一種按照誤差逆向傳播算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò)。BP神經(jīng)網(wǎng)絡(luò)能學習和存貯大量的輸入輸出模式映射關(guān)系,網(wǎng)絡(luò)由輸入層、隱含層、輸出層組成,其結(jié)構(gòu)如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
圖1中,X1,X2,…,Xn是網(wǎng)絡(luò)的輸入;Y1,Y2,…,Ym是網(wǎng)絡(luò)的輸出;Wij和Wjk是網(wǎng)絡(luò)的權(quán)值;l是隱藏神經(jīng)元的個數(shù)。目前如何設(shè)置隱含層神經(jīng)元個數(shù)沒有完整的理論指導(dǎo),依靠經(jīng)驗公式[27]試驗確定。
式(1)中:m為輸入層節(jié)點個數(shù),n為輸出層節(jié)點個數(shù),a是自取的任意值,一般范圍在1到10之間;b1,b2…,bn是網(wǎng)絡(luò)的閾值。
BP神經(jīng)網(wǎng)絡(luò)的主要特點是信號前向傳播,誤差反向傳播。設(shè)定期望輸出值,網(wǎng)絡(luò)根據(jù)預(yù)測輸出與期望輸出的誤差對比結(jié)果進行反向傳播,調(diào)整各神經(jīng)元的權(quán)值和閾值。整個過程反復(fù)進行,直到網(wǎng)絡(luò)樣本輸出誤差E<ε(ε為期望誤差精度)或訓(xùn)練達到最大迭代次數(shù)為止。
遺傳算法是模擬自然界生物進化機制的一種算法。在遺傳算法中,通過編碼組成初始群體后,遺傳操作對群體的個體按照它們對環(huán)境適應(yīng)度施加一定的操作,從而實現(xiàn)優(yōu)勝劣汰的進化過程。從優(yōu)化搜索的角度而言,遺傳操作可使問題的解一代又一代地優(yōu)化,并逼近最優(yōu)解。遺傳操作包括以下三個基本操作:選擇、交叉和變異。
(1)選擇
從群體中選擇優(yōu)勝的個體,淘汰劣質(zhì)個體的操作叫選擇。輪盤賭選擇法是最簡單也是最常用的選擇方法,在該方法中個體的選擇概率與其適應(yīng)度值成比例。設(shè)群體大小為n,其中個體i的適應(yīng)度為fi,則i被選擇的概率為:
(2)交叉
交叉是指把兩個父代個體的部分結(jié)構(gòu)加以替換重組而生成新的個體的操作。
(3)變異
變異的基本內(nèi)容是對群體中的個體串的某些基因座上的基因值做變動產(chǎn)生新的個體。
遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的步驟如下:
(1)確定BP神經(jīng)網(wǎng)絡(luò)拓撲結(jié)構(gòu)從而確定網(wǎng)絡(luò)的權(quán)值和閾值數(shù)。
(2)設(shè)定GA的相關(guān)網(wǎng)絡(luò)參數(shù)。
(3)GA初始值編碼并根據(jù)BP網(wǎng)絡(luò)訓(xùn)練誤差進行迭代。
(4)用GA迭代得到最優(yōu)個體并賦值給BP神經(jīng)網(wǎng)絡(luò),運行BP神經(jīng)網(wǎng)絡(luò)得到預(yù)測結(jié)果。
遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的流程如圖2所示。
圖2 GA-BP神經(jīng)網(wǎng)絡(luò)流程圖
選取福州港2008—2020年的腹地GDP、腹地貨運量、歷史前三年的吞吐量數(shù)據(jù)作為訓(xùn)練樣本,考慮數(shù)據(jù)樣本較少,同時設(shè)定2008—2020年的相關(guān)數(shù)據(jù)為測試樣本,以便進行驗證。根據(jù)姜云飛的研究[28],福州港腹地GDP=(福州GDP)*95%+(三明GDP)*25%+(南平GDP)*25%+(寧德GDP)*20%+(莆田GDP)*10%。具體數(shù)據(jù)如表1所示。
表1中,X1為腹地GDP(單位:億元),X2為腹地貨運量(單位:萬噸),X3為當年的前三年集裝箱吞吐量(單位:萬TEU),X4為當年的前2年集裝箱吞吐量(單位:萬TEU),X5為當年的前1年集裝箱吞吐量(單位:萬TEU)。Yi為當年實際集裝箱吞吐量(單位:萬TEU)。
表1 福州港2008—2018年各統(tǒng)計指標數(shù)據(jù)
遺傳算法相關(guān)參數(shù):初始種群規(guī)模為30,最大進化代數(shù)為50,交叉概率為0.8,變異概率為0.2。
BP神經(jīng)網(wǎng)絡(luò)相關(guān)參數(shù):最大訓(xùn)練次數(shù)為1 000,學習速率為0.01,學習最小誤差為1×10-6,采用3層結(jié)構(gòu)的網(wǎng)絡(luò)進行訓(xùn)練,輸入層節(jié)點為5,輸出層節(jié)點為1,根據(jù)試驗法確定隱含層神經(jīng)元個數(shù),經(jīng)過大量訓(xùn)練,隱含層神經(jīng)元個數(shù)為4時訓(xùn)練效果較好。
本文選取MAE和MAPE作為模型的評價指標:
其中:m為測試集的個數(shù),xi、yi分別為預(yù)測值與實際值。
通過Matlab R2019a軟件仿真,2008—2020年福州港集裝箱實際吞吐量、BP神經(jīng)網(wǎng)絡(luò)預(yù)測值與GA-BP網(wǎng)絡(luò)預(yù)測值以及預(yù)測相對誤差如表2、圖3所示。
圖3 BP神經(jīng)網(wǎng)絡(luò)與GA-BP預(yù)測值對比
表2 福州港2008—2020年預(yù)測值對比
通過測試樣本的仿真結(jié)果,BP神經(jīng)網(wǎng)絡(luò)平均絕對誤差MAE為26.78,GA-BP模型平均絕對誤差MAE為1.636,BP神經(jīng)網(wǎng)絡(luò)平均絕對百分比誤差MAPE為14.28%,GA-BP模型平均絕對百分比誤差MAPE為0.87%,表明GA-BP模型精度更高,同時對比吳利清[13]以歷史集裝箱吞吐量為輸入變量對福州港2012—2020集裝箱吞吐量的驗證集預(yù)測,MAE和MAPE分別為6.27和2.1%,本文同時期測試集的MAE和MAPE分別為1.55和0.59%,顯著低于其結(jié)果,表明本文的輸入變量更合理。
通過測試集的仿真結(jié)果,驗證了GA-BP模型進行預(yù)測的有效性。根據(jù)前文建立的GA-BP預(yù)測模型對福州港2021—2025年集裝箱吞吐量進行預(yù)測。首先采用線性回歸預(yù)測方法預(yù)測腹地貨運量,其擬合函數(shù)及R2值如圖4所示。
圖4 線性回歸方法預(yù)測腹地貨運量
根據(jù)所得線性擬合函數(shù)預(yù)測歷年貨運量值如表3所示。
表3 線性回歸方法預(yù)測腹地貨運量
分析線性擬合函數(shù)的結(jié)果,平均相對誤差MAPE為5.8%,效果良好。同時采用指數(shù)回歸預(yù)測方法預(yù)測腹地GDP,其擬合函數(shù)及R2值如圖5所示。
圖5 指數(shù)回歸方法預(yù)測腹地GDP
根據(jù)所得指數(shù)擬合函數(shù)預(yù)測歷年GDP如表4所示。
表4 指數(shù)回歸方法預(yù)測腹地GDP
分析指數(shù)擬合函數(shù)的結(jié)果,平均相對誤差MAPE為3.6%。由此得到2021—2025年福州港腹地貨運量與腹地GDP如表5所示。
表5 2021—2025年腹地貨運量與腹地GDP預(yù)測值
利用GA-BP預(yù)測模型預(yù)測各年的集裝箱吞吐量,預(yù)測數(shù)據(jù)及過程如表6所示。
表6 2021—2025年福州港集裝箱吞吐量預(yù)測
其中:Yi分別為2021—2025年GA-BP模型的集裝箱吞吐量預(yù)測值。通過Matlab R2019a仿真,福州港2021—2025年集裝箱吞吐量預(yù)測值如表7所示。
表7 2021—2025年福州港集裝箱吞吐量預(yù)測值
2021年福州港實際集裝箱吞吐量為345萬TEU,預(yù)測值為342.11萬TEU,再次驗證了預(yù)測模型的有效性。
本文通過提出腹地GDP、腹地貨運量、歷史前三年的集裝箱吞吐量作為網(wǎng)絡(luò)輸入建立了BP神經(jīng)網(wǎng)絡(luò)預(yù)測模型,并利用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值,從而建立了GA-BP預(yù)測模型并進行了驗證和預(yù)測。通過仿真結(jié)果表明,與BP神經(jīng)網(wǎng)絡(luò)和以歷史集裝箱吞吐量數(shù)據(jù)為輸入相比,本文基于腹地GDP、腹地貨運量、歷史前三年的集裝箱吞吐量建立的GA-BP預(yù)測模型具備更高的預(yù)測精度和合理性,為港口集裝箱吞吐量預(yù)測提供了一定的參考。