秦圻 周兆欣 韓洋 王士鵬 馬續(xù)仕
摘? 要:為了精準(zhǔn)預(yù)測(cè)港口貨物吞吐量,文章研究了改進(jìn)粒子群算法支持向量機(jī)模型。引入自適應(yīng)慣性權(quán)重以及最優(yōu)粒子擾動(dòng)決策,來(lái)優(yōu)化支持向量機(jī)中的懲罰參數(shù)C和核函數(shù)參數(shù)g。基于1978—2020年煙臺(tái)港吐吞量進(jìn)行實(shí)證分析,對(duì)比改進(jìn)支持向量機(jī)模型和原本支持向量機(jī)模型的平均相對(duì)誤差,預(yù)測(cè)效果優(yōu)于SVM模型,因此為港口貨物吞吐量提供技術(shù)支持。
關(guān)鍵詞:核函數(shù);支持向量機(jī);改進(jìn)粒子群算法;煙臺(tái)港
中圖分類(lèi)號(hào):TP18? ? ? ? 文獻(xiàn)標(biāo)志碼:A文章編號(hào):2096-4706(2022)03-0133-05
Cargo Throughput Prediction of Yantai Port Based on Improved Particle Warm Optimization Support Vector Machine
QIN Qi, ZHOU Zhaoxin, HAN Yang, WANG Shipeng, MA Xushi
(School of Navigation and Shipping, ShanDong JiaoTong University, Weihai? 264200, China)
Abstract: In order to accurately predict the cargo throughput of a port, this paper studies the improved Particle Swarm Optimization (PSO) support vector machine model. Adaptive Inertia Weight and optimal particle perturbation decision are introduced to optimize the penalty parameter C and kernel function parameter g in the support vector machine. This paper makes an empirical analysis based on Yantai Port throughput from 1978 to 2020, comparing the average relative error between the improved support vector machine model and the original support vector machine model, the forecasting effect is better than that of SVM model, therefore it provides the technical support for the port cargo throughput.
Keywords: kernel function; support vector machine; improved Particle Swarm Optimization; Yantai port
0? 引? 言
2021年,在全球疫情的影響下,港口作為對(duì)外貿(mào)易的重要樞紐,該如何面對(duì)困難,又該如何在疫情下突出重圍,如何在加快建設(shè)以國(guó)內(nèi)大循環(huán)為主體、國(guó)內(nèi)國(guó)際雙循環(huán)相互促進(jìn)的新展格局上,扮演好港口作為樞紐的重要角色[1-3]?港口吞吐量決定了港口未來(lái)發(fā)展的方向,也對(duì)資源的配置起到了重要的作用,實(shí)施精準(zhǔn)預(yù)測(cè)對(duì)港口建設(shè)和發(fā)展具有重要的意義[4]。目前,關(guān)于港口貨物吞吐量的預(yù)測(cè)方法有很多[5],其中人工神經(jīng)網(wǎng)絡(luò)在處理非線(xiàn)性方面的能力很高,但是容易陷入局部最優(yōu)的困境[6,7]。支持向量機(jī)在小樣本非線(xiàn)性問(wèn)題上有很強(qiáng)的解決問(wèn)題的能力[8-10]。
目前,有很多學(xué)者通過(guò)優(yōu)化或者改變支持向量機(jī)的參數(shù)來(lái)進(jìn)行港口貨物吞吐量的預(yù)測(cè),Du P等人提出了基于變分模式分解、機(jī)器學(xué)習(xí)、最優(yōu)化算法和誤差修正策略的混合學(xué)習(xí)模型,用于集裝箱吞吐量預(yù)測(cè)[11]。Li L等人研究了非線(xiàn)性子序列的選擇性組合預(yù)測(cè)模型,對(duì)港口吞吐量進(jìn)行預(yù)測(cè)[12]。陳錦文、蘭培真改進(jìn)型BP神經(jīng)網(wǎng)絡(luò),將未來(lái)三年港口吞吐量作為輸出層參數(shù),利用tansig函數(shù)和logsig函數(shù)為傳遞函數(shù),對(duì)深圳港集裝箱吞吐量進(jìn)行預(yù)測(cè)[13]。張雷雨、楊毅從影響集裝箱吞吐量的若干因素出發(fā),基于主成分分析和支持向量機(jī)回歸算法的建模預(yù)測(cè)方法[14]。為了使支持向量機(jī)模型預(yù)測(cè)更加精準(zhǔn),劉路民根用網(wǎng)格搜索算法、遺傳算法、粒子群算法分別進(jìn)行徑向基核參數(shù)尋優(yōu)[15]。在港口貨物吞吐量預(yù)測(cè)方面用得最多是時(shí)間序列法[16]。其中,時(shí)間序列法主要有季節(jié)性變化法[17]、灰色系統(tǒng)法[18]、馬爾科夫法[19]、移動(dòng)平均法[20]等。
煙臺(tái)港作為環(huán)渤海地區(qū)重要的港口,也是“一帶一路”倡議布局下的港口,對(duì)于它貨物吞吐量的研究較少。本文首先介紹了支持向量機(jī)的原理,懲罰參數(shù)和核函數(shù)參數(shù)的選擇影響著預(yù)測(cè)的精準(zhǔn)性,因此,通過(guò)改進(jìn)粒子群算法,來(lái)進(jìn)行過(guò)參數(shù)的快速尋優(yōu),從而減少誤差,提高了改進(jìn)支持向量機(jī)模型的擬合能力,為煙臺(tái)港在港口建設(shè)方面提供依據(jù)。
1? 支持向量機(jī)基本理論
支持向量機(jī)(Support Vector Machine, SVM)是由前蘇聯(lián)教授Vapnik最早提出的[21]。支持向量機(jī)是一種新型機(jī)器學(xué)習(xí)算法,其基本思想把原有數(shù)據(jù)訓(xùn)練集映射到高維特征空間,借助損失函數(shù)和懲罰因子,從而達(dá)到精確度和計(jì)算復(fù)雜度相平衡[22],因此,可以將上述問(wèn)題看作一個(gè)在高緯度的二次回歸問(wèn)題來(lái)進(jìn)行求解,其函數(shù)表達(dá)式為:
f(x)=ω*φ(x)+b? ?(1)
其中,ω為超平面權(quán)重向量,根據(jù)文獻(xiàn)得到回歸支持向量機(jī)可以表示為:
(2)
(3)
其中,是松弛變量C,是正實(shí)數(shù)松弛懲罰因子。
非線(xiàn)性回歸求解中,可以使用核函數(shù)K(xi,xj)=φ(xi)φ(xj)把所需要的訓(xùn)練集映射到高維空間,從而就可以將其變化到線(xiàn)性問(wèn)題的擬合,可得到一樣的效果,非線(xiàn)性擬合函數(shù)為:
(4)
則將問(wèn)題轉(zhuǎn)化為對(duì)偶求解:
(5)
其中,ηi,,ai,為拉格朗日乘子,b為閾值。
2? 改進(jìn)粒子群算法
2.1? 自適應(yīng)慣性權(quán)重
PSO算法由于需要調(diào)整的參數(shù)較少,因此魯棒性高且更容易實(shí)現(xiàn)[23]。但是,粒子群算法的缺點(diǎn)就是尋優(yōu)過(guò)程中出現(xiàn)收斂速度慢和陷入局部最優(yōu)的問(wèn)題,為了避免算法進(jìn)入局部最優(yōu),可以從一開(kāi)始粒子群進(jìn)化速度和聚集度的變化,引入自適應(yīng)慣性權(quán)重來(lái)調(diào)整其運(yùn)動(dòng)狀態(tài),表達(dá)式為:
(6)
ω=exp(-λ(k)/λ(k-1)) (7)
其中,k為迭代數(shù),λ(k),為衡量慣性權(quán)重變化的平滑度,ω為慣性權(quán)重fgbest(PSi(k)為第i個(gè)粒子在第k次更新位置的時(shí)候?qū)?yīng)的個(gè)體極值適應(yīng)度值,fzbest(PSi(k))為第k迭代更新位置時(shí)候最優(yōu)粒子對(duì)應(yīng)的極值適應(yīng)度值。
2.2? 最優(yōu)粒子擾動(dòng)決策
粒子群算法在迭代過(guò)程中,隨著次數(shù)的增加粒子之間呈現(xiàn)聚集的趨勢(shì)從而降低了搜索的能力,容易跳入局部最優(yōu)。粒子群算法的全局最優(yōu)位置fgbest(t)在整個(gè)粒子群的尋優(yōu)過(guò)程中具有較強(qiáng)的引導(dǎo)作用[24,25]。為了避免此問(wèn)題的出現(xiàn),需要在粒子群聚集過(guò)程中,改變?nèi)肿顑?yōu)的位置來(lái)進(jìn)行干擾,從而增大粒子的活動(dòng)范圍,因此最優(yōu)粒子的決策表達(dá)式為:
(8)
ri=|xi-avg_x| (9)
(10)
其中,avg_x(j)為粒子群所屬粒子的中心位置第j緯,i為第i個(gè)粒子,r(i)為第i個(gè)粒子與粒子群中心位置的距離。式(10)為全部粒子到中心位置的平均距離。
若avg_r變大則表示粒子群比較分散,也就是說(shuō)明粒子群還具有很強(qiáng)的多樣性,此時(shí)只需要輕微的擾動(dòng)全局最優(yōu)位置,就可以增強(qiáng)粒子群的局部搜索能力。反之,則需要對(duì)全局最優(yōu)位置進(jìn)行更大的干擾,使得粒子增加搜索范圍。
3? 改進(jìn)粒子群算法支持向量機(jī)模型
支持向量機(jī)中的懲罰參數(shù)C是模型對(duì)誤差的容忍度,數(shù)值越大,容忍度越差;數(shù)值越低,欠擬合越容易。其次就是核函數(shù)參數(shù)g的選取對(duì)支持向量機(jī)的學(xué)習(xí)能力和預(yù)測(cè)精度有很大的影響。在使用支持向量機(jī)對(duì)數(shù)據(jù)進(jìn)行訓(xùn)練時(shí),為了使模型準(zhǔn)確度達(dá)到一定的要求,需要不斷地調(diào)整C和g的值,并對(duì)數(shù)據(jù)不斷地進(jìn)行交叉驗(yàn)證,以找到合適的C和g的值。
本文則使用改進(jìn)的粒子群算法來(lái)快速尋優(yōu)到最佳懲罰參數(shù)和核函數(shù)參數(shù),為解決粒子群算法收斂慢及陷入局部最優(yōu)的,通過(guò)引入自適應(yīng)權(quán)重和最優(yōu)粒子決策達(dá)到搜索平衡,以參數(shù)作為初始位置的粒子群一步一步走向全局最優(yōu),在最優(yōu)位置fgbest(t)處迅速收斂。本模型中改進(jìn)的粒子群算法主要搜索優(yōu)化支持向量機(jī)中的懲罰參數(shù)C和核函數(shù)參g,在得到懲罰參數(shù)C和核函數(shù)參數(shù)g的最優(yōu)值的基礎(chǔ)上對(duì)煙臺(tái)港貨物吞吐量進(jìn)行預(yù)測(cè)。
基本步驟:
第1步:根據(jù)初始化過(guò)程,將參數(shù)設(shè)置為粒子配置隨機(jī)位置和速度。
第2步:為了使得粒子群能過(guò)擴(kuò)大搜索區(qū)域,對(duì)其設(shè)置最優(yōu)粒子干擾決策。
第3步:通過(guò)自適應(yīng)權(quán)重及最優(yōu)擾動(dòng),計(jì)算每個(gè)粒子的適應(yīng)度值。
第4步:以參數(shù)作為粒子進(jìn)行尋優(yōu),將所選取的適應(yīng)值與當(dāng)前粒子經(jīng)歷的最佳位置的適應(yīng)值進(jìn)行比較,如果適應(yīng)值更好,則將其更新到當(dāng)前最佳位置。
第5步:對(duì)于粒子群中的粒子,將當(dāng)前粒子的適應(yīng)值與所有全局粒子所經(jīng)歷的最佳位置的適合值進(jìn)行比較,如果更好,則更新為當(dāng)前全局最佳位置。
第6步:對(duì)于每個(gè)粒子的速度和位置按照一定規(guī)律進(jìn)行優(yōu)化。
第7步:當(dāng)適應(yīng)度值滿(mǎn)足設(shè)置的最大迭代次數(shù)在結(jié)束條件允許下,反之需要返回第2步。
4? 煙臺(tái)港貨物吞吐量實(shí)證分析
本文以煙臺(tái)港貨物吞吐量為研究對(duì)象選取了1978—2020年的數(shù)據(jù)進(jìn)行模型驗(yàn)證數(shù)據(jù)來(lái)源國(guó)家統(tǒng)計(jì)年鑒如表1所示,其中以1978—2016的煙臺(tái)港貨物吞吐量為模型的訓(xùn)練數(shù)據(jù),2017—2020年的吞吐量作為預(yù)測(cè)數(shù)據(jù)。本文才有對(duì)比的方法進(jìn)行試驗(yàn),一種采用基本的支持向量機(jī)模型,另外一種就是改進(jìn)粒子群算法優(yōu)化支持向量機(jī)模型。在進(jìn)行預(yù)測(cè)模型訓(xùn)練之前,則需要對(duì)原本的數(shù)據(jù)歸一化處理,將其大小限制在[0,1]之間,公式為:
(11)
其中,xj表示第j個(gè)樣本煙臺(tái)港貨物量的歸一化值,xmin,xmax,表示煙臺(tái)港貨物量存在的最小值和最大值。
4.1? 優(yōu)化模型訓(xùn)練
根據(jù)改進(jìn)支持向量機(jī)模型,通過(guò)MATLAB 2016進(jìn)行算法編寫(xiě)。改進(jìn)支持向量機(jī)預(yù)測(cè)模型時(shí)將粒子群算法全局搜索能力設(shè)置為2,種群個(gè)數(shù)為40,最大迭代次數(shù)500,慣性因子設(shè)置為0.8,在適應(yīng)度函數(shù)方面選取Griewank函數(shù)。最后,基于改進(jìn)粒子群算法優(yōu)化支持向量的參數(shù)經(jīng)過(guò)迭代,得到SVM的最優(yōu)參數(shù)C=217 226.657 238和g=1.683 678 926,如圖1所示。
4.2? SVM預(yù)測(cè)
從圖2(a)可看出,通過(guò)基本的支持向量機(jī)模型對(duì)煙臺(tái)港貨物吞吐量數(shù)據(jù)擬合時(shí),由于需要人為設(shè)定SVM的參數(shù),從而導(dǎo)致了擬合訓(xùn)練數(shù)據(jù)時(shí)出現(xiàn)了幅度較大的偏差,用設(shè)定的參數(shù)進(jìn)行預(yù)測(cè)的時(shí)候,從圖2(b)可以看出,預(yù)測(cè)的曲線(xiàn)與真實(shí)值有相當(dāng)大的差別,預(yù)測(cè)效果較差。
通過(guò)改進(jìn)粒子群算法,加入了自適應(yīng)權(quán)重,使系統(tǒng)魯棒性更高,再利用最優(yōu)粒子擾動(dòng)決策,來(lái)防止過(guò)擬合現(xiàn)象發(fā)生。以煙臺(tái)港1978年—2016年貨物吞吐量作為訓(xùn)練集。在預(yù)測(cè)時(shí)將粒子群算法全局搜索能力設(shè)置為2,種群個(gè)數(shù)為40,種群個(gè)數(shù)、最大迭代次數(shù)與參數(shù)取值的上下界保持一致,其中自適應(yīng)度函數(shù)是將訓(xùn)練樣本的擬合均方差與測(cè)試樣本的預(yù)測(cè)均方差之和作為判別標(biāo)準(zhǔn)。經(jīng)過(guò)改進(jìn)支持向量機(jī)模型的擬合與測(cè)試圖分別為圖3(a)和圖3(b)。
4.3? 結(jié)果評(píng)價(jià)
通過(guò)相對(duì)誤差進(jìn)行改進(jìn)支持向量機(jī)的有效性評(píng)價(jià),也能體現(xiàn)其預(yù)測(cè)的精準(zhǔn)度,表達(dá)式為:
(12)
如表2所示,對(duì)2017—2020年的煙臺(tái)港貨物吞吐量預(yù)測(cè)所產(chǎn)生的相對(duì)誤差分別為0.7%、0.22%、0.91%、0.2%,結(jié)果與實(shí)際的結(jié)果很接近,其次相對(duì)誤差都遠(yuǎn)小于基礎(chǔ)支持向量機(jī)預(yù)測(cè)模型。因此表明改進(jìn)支持向量機(jī)預(yù)測(cè)模型擁有較高的預(yù)測(cè)精度,為港口準(zhǔn)確預(yù)測(cè)貨物吞吐量提供理論依據(jù)和參考。
5? 結(jié)? 論
本文在對(duì)自適應(yīng)權(quán)重以及最優(yōu)粒子擾動(dòng)決策來(lái)改進(jìn)粒子群算法容易跳入局部最優(yōu)的問(wèn)題,用其對(duì)支持向量機(jī)的參數(shù)進(jìn)行優(yōu)化,選取1978年—2016年煙臺(tái)港貨物吞吐量數(shù)據(jù)進(jìn)行模型的擬合和預(yù)測(cè)。為了檢驗(yàn)此模型預(yù)測(cè)的精準(zhǔn)度引入相對(duì)誤差來(lái)進(jìn)行評(píng)價(jià),同時(shí)將改進(jìn)的支持向量機(jī)模型與支持向量機(jī)模型進(jìn)行對(duì)比,來(lái)證明經(jīng)過(guò)改進(jìn)的模型更加合理準(zhǔn)確。實(shí)例表明,在改進(jìn)粒子群優(yōu)化算法支持向量機(jī)的預(yù)測(cè)的相對(duì)均誤差為0.51%,要遠(yuǎn)遠(yuǎn)小于原本支持向量機(jī)模型的平均相對(duì)誤差,預(yù)測(cè)效果優(yōu)于SVM模型。該研究?jī)H僅采用了改進(jìn)粒子群算法對(duì)支持向量機(jī)的參數(shù)進(jìn)行尋優(yōu),并沒(méi)有將其他算法優(yōu)化結(jié)果與之對(duì)比,在以后的研究中將會(huì)進(jìn)一步完善。
參考文獻(xiàn):
[1] 賈大山,徐迪,蔡鵬.2020年沿海港口發(fā)展回顧與2021年展望 [J].中國(guó)港口,2021(S1):1-13.
[2] 李慧.基于Holt-Winters算法的長(zhǎng)江干線(xiàn)貨物吞吐量分析及預(yù)測(cè) [J].中國(guó)水運(yùn),2021(4):29-32.
[3] 李香暉.通道建設(shè)“提速”港口吞吐“增量” [N].欽州日?qǐng)?bào),2021-11-01(2).
[4] 孔琳琳,劉瀾,許文秀,等.基于時(shí)間序列分析的港口集裝箱吞吐量預(yù)測(cè)分析 [J].森林工程,2016,32(5):106-110.
[5] DELURGOIO S A. Forecasting Principles and Applications [M].Boston:Irwin/McGraw-Hill,1998.
[6] 占祖桂.基于BP神經(jīng)網(wǎng)絡(luò)的香港離岸人民幣匯率預(yù)測(cè) [J].吉林金融研究,2018(8):44-46.
[7] 馬廣慧,馬豆豆,邵秀麗.基于遺傳BP神經(jīng)網(wǎng)絡(luò)的三七價(jià)格預(yù)測(cè) [J].天津師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2017,37(6):76-80.
[8] DONG B,CAO C,LEE S E. Applying support vector machines to predict building energy consumption in tropical region [J].Energy and Buildings,2005,37(5):545-553.
[9] 居錦武.基于LS-SVM的養(yǎng)殖水體氨氮含量分析模型的優(yōu)化 [J].大連海洋大學(xué)學(xué)報(bào),2016,31(4):444-448.
[10] 趙合勝.基于灰色預(yù)測(cè)和SVM的茶葉烘焙溫濕度預(yù)測(cè) [J].西安文理學(xué)院學(xué)報(bào)(自然科學(xué)版),2018,21(5):64-67
[11] DU P,WANG J Z,YANG W D,etal. Container throughput forecasting using a novel hybrid learning method with error correction strategy [J/OL].Knowledge-Based Systems,2019,182:[2021-12-02]. https://www.sciencedirect.com/science/article/abs/pii/S0950705119303284.
[12] MO L L,XIE L,JIANG X Y.et al. GMDH-based hybrid model for container throughput forecasting:Selective combination forecasting in nonlinear subseries [J].Applied Soft Computing,2018,62:478-490.
[13] 陳錦文,蘭培真.改進(jìn)型BP神經(jīng)網(wǎng)絡(luò)的港口吞吐量預(yù)測(cè) [J].集美大學(xué)學(xué)報(bào)(自然科學(xué)版),2019,24(5):352-357.
[14] 張雷雨,楊毅.基于PCA-SVM的港口集裝箱吞吐量預(yù)測(cè)模型研究 [J].江蘇商論,2019(5):33-38.
[15] 劉路民根.支持向量機(jī)徑向基核參數(shù)優(yōu)化研究 [J].科學(xué)技術(shù)創(chuàng)新,2018(26):48-49.
[16] 余國(guó)剛,馮琪,徐粉.張家港永嘉集裝箱碼頭集裝箱吞吐量組合預(yù)測(cè) [J].物流技術(shù),2017,36(4):103-107.
[17] 杜剛,劉婭楠.季節(jié)性變動(dòng)影響下的上海港集裝箱吞吐量預(yù)測(cè) [J].華東師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2015(1):234-239.
[18] 張緒進(jìn),母德偉,韓濤.改進(jìn)的灰色預(yù)測(cè)模型在過(guò)壩貨運(yùn)量預(yù)測(cè)中的應(yīng)用 [J].水運(yùn)工程,2009(6):4-7.
[19] 王慧,吳茜茜.空間自回歸模型中系數(shù)變量及誤差項(xiàng)的貝葉斯估計(jì) [J].合肥工業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版),2021,44(9):1291-1296
[20] LIM S,KIM S J. PARK YOUNGJAE,et al. A deep learning-based time series model with missing value handling techniques to predict various types of liquid cargo traffic [J/OL].Expert Systems With Applications,2021,184:[2021-12-02]. https://www.sciencedirect.com/science/article/pii/S0957417421009404.
[21] 陳旭,李典,張利華,等.基于改進(jìn)支持向量機(jī)(SVM)模型的荊州港吞吐量預(yù)測(cè) [J].水運(yùn)工程,2020(3):38-42.
[22] SCH?LKOPF B,SMOLA A J. Learning with Kernels:Support Vector Machines,Regularization,Optimization and Beyond [M].[S.I.]:The MIT Press,2001.
[23] 馬秋芳.改進(jìn)PSO優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)短時(shí)交通流預(yù)測(cè) [J].計(jì)算機(jī)仿真,2019,36(4):94-98+323.
[24] 林權(quán),何正東,倉(cāng)偉,等.一種基于復(fù)合儲(chǔ)能的自適應(yīng)權(quán)重粒子群算法研究 [J].機(jī)電信息,2021(28):8-9+13.
[25] YAN L,WANG H,WANG H,et al. An improved OS-ELM based Real-time prognostic method towards singularity perturbation phenomenon [J/OL].Measurement,2021,182:[2021-12-02].https://www.sciencedirect.com/science/article/abs/pii/S0263224121006424?via%3Dihub.
作者簡(jiǎn)介:秦圻(1996—),男,漢族,江蘇如皋人,碩士研究生在讀,研究方向:航運(yùn)科學(xué)與技術(shù)。