葉子奇 蔣惠園 馮琪 李琳琳 郝偉杰
【摘 要】 為尋求更高精度的預測方法預測長江經濟帶未來一段時間的集裝箱需求量,從經濟總量水平、產業結構、國際國內貿易發展等方面提取長江干線港口集裝箱需求預測的主要影響因素,構建基于遺傳算法-支持向量機(GA-SVM)的預測模型對長江干線港口集裝箱需求量進行預測,提高貨運量預測精確度。結果表明:此模型對長江干線港口集裝箱需求量的預測具有較強的實用性,可為長江干線港口集裝箱需求預測提供一種新的途徑和方法。
【關鍵詞】 長江干線;集裝箱;需求預測;遺傳算法;GA-SVM模型
0 引 言
經過近年來的迅猛發展,長江經濟帶已經成為內陸與沿海地區進行經濟貿易往來的重要通道,長江集裝箱運輸業的不斷茁壯成長,在很大程度上加速了區域間資源流通及流域經濟發展。同時,長江經濟帶集裝箱貨運量亦在迅速增加,因此尋求更高精度的預測方法,預測我國長江經濟帶在未來一段時間內的集裝箱需求量具有較高的現實意義。
杜桂玲[1]提出長江沿線外貿集裝箱生成量影響因素包括政治、經濟和自然條件在內的許多因素;靳廉潔等[2]提出為準確判斷長江三角洲港口集裝箱運輸市場的增長空間及發展趨勢,采用多因素動態系數法預測外貿集裝箱生成量;阮俊虎[3]為了彌補支持向量機模型中參數選取上不能夠量化的缺陷,引入了遺傳算法改進支持向量機理論;孫涵等[4]分析了支持向量回歸機預測模型在能源需求預測方面的優勢,確定了輸入量集合和輸出量集合,構建了基于Matlab軟件技術的支持向量回歸機能源需求預測模型。
本文在現有研究理論的基礎上,引入基于遺傳算法-支持向量機(GA-SVM)的預測模型對長江干線港口集裝箱需求量展開研究,與傳統向量機結果進行比對,結果表明該模型具有較高的精度,為今后研究長江干線港口集裝箱需求預測提供一種參照方法。
1 GA-SVM模型構建
1.1 基本思路
與傳統方法相比,遺傳算法具有很多特有的優點,突出表現在全局最優性和自身潛在的并行性。利用遺傳算法的尋優特點來改進傳統的支持向量機模型。支持向量機模型的核函數采用的是徑向基函數(RBF),編碼方式采用實數來編碼,再利用遺傳算法的全局尋優能力來對參數進行遺傳編碼及搜索,經過尋優過程,將最后得到的最優懲罰系數C和核參數 作為最終預測模型參數。
1.1.1 支持向量機模型的參數編碼
支持向量機模型要獲取較高的預測精度,就需要得到最優的懲罰系數C及核參數 。為避免二進制編碼反復進行譯碼、編碼等問題,本文選用實數編碼。
對于某一確定的足夠大的C, 過大或過小均會對模型的精度造成一定的影響,這里討論兩種極值情況:當 →0時就會導致“過學習”現象,模型的泛化能力會變得極差;當 →∞時會導致“欠學習”現象,所有的訓練樣本將會被分到樣本數較大的那一類。
對RBF核函數K(x,x')=exp進行分析,發現 值與|| x x' ||2關系密切:若 遠小于訓練樣本的最小距離,則 →0;若 遠大于訓練樣本的最小距離,即達到 →∞的效果。因此,確定 的搜索空間為[min(|| x xj ||2 ?0 2),max(|| x xj ||2 ?10 2)]。在這個區間上,根據分類結果可對搜索區間進行放縮,最后可以得到滿意結果。
約束拉格朗日因子a要借助于C來進行制約,當C超過某限度后就會喪失此功能,導致支持向量機的復雜會趨向數據子空間能夠允許的最大值。可用以下方法來確定C的搜索區間:
0 ≤ ai,ai* ≤ (i=1,2,…,l)
當C≥0時,先選定某一足夠大C值,運行訓練支持向量機模型,解出ai (i=1,2,…,n),其中n是訓練樣本總數,令C1=max(ai ),如果C1 1.1.2 遺傳算法的適應度函數選取 最終選擇的遺傳算法適應度函數為 F( ,C)=(1) 式中: RError表示支持向量機在訓練樣本上的錯分率, RError越小則對應的改組參數的染色體適應度會更大。 1.1.3 遺傳操作 (1)選擇。基于排序的適應度分配原則,對種群內部個體進行適應度的排序,之后依據公式來明確個體被選取的Pi為 Pi=r (1 r)i 1(2) 式中: i表示個體序號; r表示排第一個體的被選取的概率,并且r僅取決于在種群中個體所在的序位。 (2)交叉。可以采取線性組合方式,如果對兩條染色體x1和x2以某概率采用交叉操作形式,則可采取如下方式: x1=ax1+(1 a)x2(3) x2=(1 a)x1 +ax2(4) 式中: a∈[0,1]。 (3)變異。在變異的染色體中隨機選取一個變異位 j,將其設置為歸一化的一個隨機數U(ai,bi),則 (5) 式中: ai和bi對應該變異位的上下限。 1.2 實現過程 按照構建的GA-SVM算法思路,實現GA-SVM算法的過程,見圖1。 (1)編寫傳統支持向量回歸機程序,給出參數的取值范圍; (2)認定遺傳算法的個體長度,根據實數編碼程式以隨機方式生成M個染色體,得到算法初始群體P(t); (3)根據染色體位串基因序列,按照入選策略來進行篩選獲得入選因子組合集; (4)計算初始群體中個體對檢驗樣本的輸出值,生成樣本錯分率RError,得到染色體上單個個體的適應值及染色體適應值F( ,C);
(5)反復試驗,直到計算出所有初始種群的單個個體適應值;
(6)連續執行選擇、交叉及變異等操作,以下一代子種群的形成為止;
(7)依據網格搜索法找尋新種群最優個體的周邊區域,生成參數組合以替換最優個體;
(8)迭代終止準則滿足后停止運行,若不滿足就將子代變成新的父代,重復第(4)步操作,直至滿足迭代終止準則;
(9)根據以上最優參數,代入程序,建立模型,預測出測試樣本中的數據。
2 長江干線港口集裝箱需求量 預測主要影響因素
影響長江干線港口集裝箱需求的因素眾多,根據全面性、可操作性、強相關性和統一量綱原則,通過比選研究,選取需求預測主要影響因素:
(1)經濟總量水平影響因素:GDP;
(2)產業結構影響因素:第一產業占比,第二產業占比,第三產業占比;
(3)國際國內貿易發展影響因素:進出口貿易總額,社會消費品零售總額。
2007―2016年長江干線以上港口集裝箱需求量預測主要影響因素具體數據見表1。
相關系數的計算公式為
xy=(6)
式中: Cov(x,y)表示x、y的協方差; D(x)、D(y)分別表示x、y的方差。
借助DPS數據處理系統軟件,計算所得結果見表2。
由表2可知,所有相關系數均大于0.95,這表明長江干線規模以上港口集裝箱吞吐量與GDP、第一產業總值、第二產業總值、第三產業總值、進出口貿易總額、社會消費品零售總額這6個主要影響因素之間均存在顯著性相關關系。
3 長江干線港口集裝箱需求量預測
3.1 基于支持向量基模型的預測
根據影響因素分析,收集長江航運2007―2016年的相關數據,并采用比例轉換法進行歸一化處理,將原始數據伸縮到區間[ 3,3],具體數據見表3。表3中:預測目標為集裝箱貨運量y1;預測主要影響因素為GDP值x1、第一產業總值x2、第二產業總值x3、第三產業總值x4、進出口貿易總額x5、社會消費品零售總額x6。
傳統支持向量機模型可直接套用libsvm-mat來進行編程實現,選取的參數情況為:支持向量機采用3-e-SVR,核函數采用RBF核函數。為確定模型中的兩個參數值,依據經驗值多次嘗試,最終選定C為2、 為1,得到的預測數據見表4,通過反歸一化得到的集裝箱貨運量見表5。
4.2 基于GA-SVM模型的預測
利用構建的gaSVMcgForRegress函數來實現遺傳算法的參數尋優迭代,最終選取的參數情況:支持向量機采用3-e-SVR,核函數采用徑向基,懲罰參數C的浮動區間確定為[2 5,25],核函數參數 的浮動區間確定為[2 5,25],遺傳算法的最大進化代數取400,種群最大數量取20,交叉概率取0.8,變異概率取0.01。
由于作為輸入向量的影響因素數據只有2007―2016年的完整數據,為預測到2020年,需用灰色預測對2017―2020年間的數據進行預測。將基礎數據代入擬合訓練函數中,得到相應訓練模型,通過模型尋優迭代找尋最優值,得到預測數據見表6,通過反歸一化得到集裝箱貨運量見表7。
運用GA-SVM模型,2020年長江干線以上港口集裝箱需求量預測結果為2 698萬TEU。
3.3 模型預測精度對比分析
為表征預測值對原始值的擬合程度,運用Matlab R2014a軟件繪制擬合曲線來進行分析。傳統SVM模型與GA-SVM模型預測值對原始值的擬合曲線見圖3。
對比兩種預測模型的精度,列出傳統SVM模型和GA-SVM模型的相關預測結果(見表8)。
根據圖形中兩種模型的擬合情況與表中MSE指標數據對比,得出遺傳算法的尋優迭代來進行優化具有非常明顯的效果。改進后的GA-SVM模型利用遺傳算法的尋優能力獲取最優的C和 值,避免了依據經驗和試驗來進行賦值,最終提高了預測結果的精確度。
4 結 語
GA-SVM模型與傳統向量機模型預測進行對比,表明其具有較高的預測精度,為未來長江航運貨運需求量預測提供一個較為精確的預測方法。同時,預測結果表明,隨著長江經濟帶的快速發展,長江干線以上港口的集裝箱需求量也呈現出明顯的增長態勢。
參考文獻:
[1] 杜桂玲.長江沿線外貿集裝箱生成量影響因素分析及生成量預測[D].上海:上海海事大學,2005.
[2] 靳廉潔,任靜,張曉晴,等.長江沿線地區外貿集裝箱港口運輸需求預測[J].水運管理,2017(8):8-10.
[3] 阮俊虎.基于GA-SVM的區域物流需求預測研究[D].邯鄲:河北工程大學,2010.
[4] 孫涵,楊普容,成金華.基于Matlab支持向量回歸機的能源需求預測模型[J].系統工程理論與實踐,2011(10):2001-2007.