楊 飛 王 洋
(中鐵工程設(shè)計(jì)咨詢集團(tuán)有限公司, 北京 100055)
隨著旅客出行需求和運(yùn)輸服務(wù)水平的不斷提高,我國旅客運(yùn)輸市場(chǎng)競(jìng)爭(zhēng)越發(fā)激烈。合理準(zhǔn)確的鐵路客運(yùn)量預(yù)測(cè)可為制定鐵路客運(yùn)宏觀發(fā)展戰(zhàn)略和編制客運(yùn)計(jì)劃提供依據(jù),也可為鐵路管理者合理分配資源、提高運(yùn)輸市場(chǎng)競(jìng)爭(zhēng)力提供重要依據(jù)。
近年來,為提高鐵路客運(yùn)量的預(yù)測(cè)精度,較多學(xué)者通過組合預(yù)測(cè)的方法對(duì)鐵路客運(yùn)量預(yù)測(cè)結(jié)果進(jìn)行改進(jìn)。眾多組合預(yù)測(cè)過程中,權(quán)重取值方法成為較多學(xué)者研究的重點(diǎn)。游文倩[1]通過最優(yōu)權(quán)重法對(duì)組合預(yù)測(cè)模型的權(quán)重進(jìn)行賦值,并將其應(yīng)用于GDO組合預(yù)測(cè)領(lǐng)域中;劉春紅[2]從最優(yōu)權(quán)重和殘差優(yōu)化角度對(duì)單一預(yù)測(cè)模型權(quán)重進(jìn)行賦值,進(jìn)一步預(yù)測(cè)了豬舍氨氣濃度;王秀梅[3]基于誤差平方和最優(yōu)的思想將偏最小二乘法、ARIMA模型和指數(shù)平滑法預(yù)測(cè)結(jié)果進(jìn)行組合,對(duì)農(nóng)產(chǎn)品冷鏈物流需求進(jìn)行預(yù)測(cè);褚鵬宇[4]采用廣義回歸神經(jīng)網(wǎng)絡(luò)對(duì)預(yù)測(cè)模型的權(quán)重進(jìn)行賦值,建立了變權(quán)重組合的灰色預(yù)測(cè)模型;蘇麗敏[5]以誤差平方和最小為目標(biāo)函數(shù),結(jié)合最大熵原理構(gòu)建了變權(quán)組合預(yù)測(cè)模型;李佩[6]以平均誤差最優(yōu)為目標(biāo)來給組合預(yù)測(cè)權(quán)重賦值;周宏[7]用最小二乘原理對(duì)ARIMA和SARIMA模型的權(quán)重進(jìn)行分配,并將其用于高速公路短時(shí)交通流預(yù)測(cè)。
目前,在鐵路客運(yùn)量組合預(yù)測(cè)研究領(lǐng)域中,權(quán)重賦值方法存在計(jì)算量大、組合預(yù)測(cè)精度不佳等缺點(diǎn)。而群體智能算法因其精度高、應(yīng)用廣泛等優(yōu)點(diǎn),已成為解決優(yōu)化問題的熱門算法,但群體智能算法也存在陷入局部最優(yōu)等問題。因此,本文基于自然選擇的粒子群算法,對(duì)其權(quán)重和學(xué)習(xí)因子進(jìn)行改進(jìn),應(yīng)用改進(jìn)基于自然選擇的粒子群算法求解ARIMA模型和BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的鐵路客運(yùn)量的權(quán)重,對(duì)鐵路客運(yùn)量進(jìn)行組合預(yù)測(cè)。
假設(shè)運(yùn)用m種模型對(duì)某一研究區(qū)域的鐵路客運(yùn)量進(jìn)行預(yù)測(cè),則組合預(yù)測(cè)模型的計(jì)算公式為:
式中:Q——鐵路客運(yùn)量組合預(yù)測(cè)值;
wi——第i個(gè)預(yù)測(cè)模型的權(quán)重,且
qi——第i個(gè)模型的預(yù)測(cè)值;
m——預(yù)測(cè)模型的數(shù)量。
預(yù)測(cè)方法的選擇是影響鐵路客運(yùn)量預(yù)測(cè)精度的關(guān)鍵,本文選擇ARIMA模型和BP神經(jīng)網(wǎng)絡(luò)作為時(shí)間序列預(yù)測(cè)和非線性預(yù)測(cè)模型的代表進(jìn)行組合預(yù)測(cè)研究。
(1)ARIMA模型
ARIMA(p,d,q)模型的一般形式為:
at——零均值且方差同為σa2的白噪聲;
p——自回歸階數(shù);
q——移動(dòng)平均階數(shù);
d——差分階數(shù)。
(2)BP神經(jīng)網(wǎng)絡(luò)
BP神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示,其基本思想是梯度下降法,學(xué)習(xí)過程包括正向傳播和反向傳播。正向傳播過程中,將鐵路客運(yùn)量及其影響因素等信息經(jīng)輸入層傳至隱含層,最后傳至輸出層。判斷輸出的值與實(shí)際值的誤差精確度,若輸出值誤差不理想,將誤差按照輸出層 - 隱含層 - 輸入層進(jìn)行反向傳播,通過反復(fù)訓(xùn)練和比較使誤差最小。
圖1 BP神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖
基本粒子群算法(PSO)中,假設(shè)第i個(gè)粒子在第t次迭代的位置和速度分別是 xi,t和 vi,t,粒子通過監(jiān)督個(gè)體和種群極值來更新位置和速度,進(jìn)一步逼近最優(yōu)解[8],其更新公式為:
式中:w——權(quán)重,取0.4~0.9;
c1和c2——學(xué)習(xí)因子,取值范圍均為0~4;
rand——生成0~1之間的隨機(jī)數(shù);
pbest——個(gè)體極值;
gbest——群體極值;
λ——速度系數(shù),一般取1。
基于自然選擇的粒子群算法是基于基本粒子群算法,其基本思想是在每次迭代中,根據(jù)計(jì)算的適應(yīng)度值用群體中較好的一半粒子替換較差的一半粒子,且保留粒子記憶的歷史最優(yōu)值。
基本的基于自然選擇的粒子群算法一般采用固定權(quán)重和學(xué)習(xí)因子的方法來尋求最優(yōu)解,權(quán)重一般取0.4~0.9,學(xué)習(xí)因子一般取2。粒子群算法具有較好的魯棒性,一般情況下權(quán)重和學(xué)習(xí)因子取經(jīng)驗(yàn)值即能滿足精度要求。然而,當(dāng)仿真環(huán)境更復(fù)雜或?qū)?yōu)化精度有更高要求時(shí),權(quán)重和學(xué)習(xí)因子取值對(duì)求解精度和速度有一定的影響。因此,本文基于對(duì)數(shù)函數(shù)和正弦函數(shù)非線性變化的思想來優(yōu)化基于自然選擇粒子群算法的權(quán)重和學(xué)習(xí)因子取值,從而提高算法的尋優(yōu)能力。
權(quán)重優(yōu)化原理為:初始迭代時(shí),為保證基于自然選擇粒子群算法的全局搜索能力,賦予權(quán)重較大的值。為保證該算法能尋找到最優(yōu)解,迭代過程中逐漸減小權(quán)重取值。基于對(duì)數(shù)函數(shù)在其定義域大于等于1時(shí)非線性變化的特點(diǎn),權(quán)重w優(yōu)化為:
式中:wmax——權(quán)重最大值;
wmin——權(quán)重最小值;
權(quán)重取值規(guī)律如圖2所示。
由圖2可知,當(dāng)?shù)螖?shù)為0時(shí),權(quán)重取到最大經(jīng)驗(yàn)值,且下降的加速度較大,基于自然選擇的粒子群算法在迭代初期的全局搜索能力變強(qiáng)。隨著迭代次數(shù)的增加,以對(duì)數(shù)函數(shù)非線性變化的規(guī)律逐漸賦予權(quán)重越來越小的值,且權(quán)重下降的加速度越來越小,能保證迭代末期在可行域范圍內(nèi)更細(xì)致地尋找最優(yōu)解。
圖2 權(quán)重非線性變化趨勢(shì)圖
學(xué)習(xí)因子優(yōu)化原理為:隨著迭代次數(shù)的增加,c1最佳取值范圍為2.5~0.5間遞減,c2最佳取值范圍為0.5~2.5之間遞增[9]。在最優(yōu)取值范圍內(nèi),為保證迭代初期的全局搜索能力,使初始時(shí)個(gè)體粒子自身學(xué)習(xí)能力較大,讓c1的取值隨迭代次數(shù)的增加呈正弦函數(shù)非線性減少,同時(shí)讓c2隨迭代次數(shù)的增加逐漸增大,加強(qiáng)粒子在后期的群體學(xué)習(xí)能力?;谠撍枷?,改進(jìn)的學(xué)習(xí)因子為:
學(xué)習(xí)因子取值規(guī)律如圖3所示。
圖3 學(xué)習(xí)因子非線性變化趨勢(shì)圖
由圖3可知,學(xué)習(xí)因子c1初期取到最大值2.5,且下降的加速度較大,初期搜索能力更強(qiáng);同時(shí),讓c2的取值逐漸增大,且加速度逐漸變小,加強(qiáng)了迭代后期的搜索精度。
改進(jìn)基于自然選擇的粒子群算法優(yōu)化權(quán)重的過程如圖4所示。
圖4 改進(jìn)基于自然選擇的粒子群優(yōu)化權(quán)重算法圖
(1)根據(jù)所選單一預(yù)測(cè)模型預(yù)測(cè)鐵路客運(yùn)量。
(2)根據(jù)鐵路客運(yùn)量預(yù)測(cè)結(jié)果構(gòu)建適應(yīng)度函數(shù)。以組合預(yù)測(cè)精度最優(yōu)為目標(biāo)確定適應(yīng)度函數(shù),即所有預(yù)測(cè)年份的預(yù)測(cè)相對(duì)誤差的絕對(duì)值最小。因此,適應(yīng)度函數(shù)定義為:
式中:n——預(yù)測(cè)總年度;
Χt——第t期的客運(yùn)量實(shí)際值。
(3)初始化種群粒子參數(shù)。根據(jù)粒子參數(shù)的取值范圍等約束,設(shè)置初始的參數(shù)取值。
(4)計(jì)算粒子適應(yīng)度。
(5)比較所有粒子適應(yīng)度值,尋找到當(dāng)前最優(yōu)粒子適應(yīng)度值及其位置,以此更新粒子的搜索位置和搜索速度。
(6)基于自然選擇原理對(duì)粒子進(jìn)行排序,用群體中最好的一半粒子替換最差的一半粒子。
(7)判斷是否滿足迭代終止條件。若滿足,算法結(jié)束;若不滿足,返回第4步。
(8)輸出最優(yōu)解。
考慮指標(biāo)獲取的可操作性,選取具有代表性的地區(qū)生產(chǎn)總值、常住人口、人均消費(fèi)水平、旅游人數(shù)、鐵路運(yùn)營里程等指標(biāo)研究其對(duì)鐵路客運(yùn)量的影響[10],以北京市1996 - 2016年數(shù)據(jù)為訓(xùn)練樣本,以2017 -2019年客運(yùn)量為測(cè)試樣本進(jìn)行預(yù)測(cè)[11-12]。
3.1.1 BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)
通過MATLAB編程實(shí)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)過程,主要參數(shù)設(shè)置為:訓(xùn)練次數(shù)為1 000次,隱藏層為1層,神經(jīng)元設(shè)為1個(gè)。BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)基本情況如圖5和圖6所示。
圖5 BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)收斂過程圖
圖6 BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)結(jié)果圖
由圖5可知,網(wǎng)絡(luò)訓(xùn)練3次后收斂,驗(yàn)證集網(wǎng)絡(luò)誤差為0.003 493 5,訓(xùn)練集和測(cè)試集的網(wǎng)絡(luò)誤差低于0.003 493 5,誤差精度較好;由圖6可知,BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的擬合效果較好,2017 - 2019年平均預(yù)測(cè)相對(duì)誤差為2.354%。
3.1.2 ARIMA模型預(yù)測(cè)
為兼顧預(yù)測(cè)模型的精確性和訓(xùn)練樣本數(shù)據(jù)的完整性,借助于SPSS軟件經(jīng)過反復(fù)試驗(yàn)確定ARIMA模型的差分階數(shù)d取0時(shí),自回歸階數(shù)p取4,移動(dòng)平均階數(shù) q取 1。因此,ARIMA(4,0,1)預(yù)測(cè)結(jié)果如圖7所示。
圖7 ARIMA(4,0,1)預(yù)測(cè)結(jié)果圖
由圖7 可知,1996 - 2016 年 ARIMA(4,0,1)預(yù)測(cè)的擬合效果非常好,但2017 - 2019年預(yù)測(cè)誤差相對(duì)較差;ARIMA(4,0,1)平均預(yù)測(cè)相對(duì)誤差為- 5.43%,存在進(jìn)一步優(yōu)化的空間。
3.2.1 組合預(yù)測(cè)思路及仿真環(huán)境設(shè)置
選擇BP神經(jīng)網(wǎng)絡(luò)和ARIMA(4,0,1)對(duì)鐵路客運(yùn)量進(jìn)行組合預(yù)測(cè),組合預(yù)測(cè)公式為:
式中:w1、w2——分別為 BP 神經(jīng)網(wǎng)絡(luò)和 ARIMA(4,0,1)模型預(yù)測(cè)權(quán)重;
qbp、qar——分別 BP 神經(jīng)網(wǎng)絡(luò)和 ARIMA(4,0,1)模型預(yù)測(cè)值;
Qz——BP神經(jīng)網(wǎng)絡(luò)和ARIMA(4,0,1)模型組合預(yù)測(cè)值。
由權(quán)重約束條件w1+ w2= 1,式(9)可簡(jiǎn)化為:
因此,改進(jìn)基于自然選擇的粒子群算法只需要求解w1即可。
本節(jié)算法實(shí)驗(yàn)在MATLAB環(huán)境下進(jìn)行,編寫改進(jìn)基于自然選擇的粒子群算法代碼求出測(cè)試樣本中組合預(yù)測(cè)誤差絕對(duì)值最小的權(quán)重w1。
粒子群算法主要參數(shù)初始化有:種群規(guī)模為20個(gè);最大迭代次數(shù)為300次;速度搜索區(qū)間為- 5~5。為進(jìn)一步驗(yàn)證本文提出改進(jìn)基于自然選擇的粒子群算法的尋優(yōu)能力和收斂速度,與基本粒子群算法和基于自然選擇粒子群算法進(jìn)行對(duì)比,學(xué)習(xí)率c1、c2均取 2,權(quán)重取 0.9。
3.2.2 改進(jìn)自然選擇粒子群算法優(yōu)勢(shì)分析
不同粒子群算法求解最優(yōu)權(quán)重的適應(yīng)度值隨迭代次數(shù)的變化如圖8所示。
圖8 不同粒子群算法的尋優(yōu)效果圖
由圖8可知,提出的改進(jìn)基于自然選擇的粒子群算法求解速度和精度更好[13-14],具體包括:
(1)基于自然選擇的粒子群算法求解權(quán)重的適應(yīng)度值是0.004 206 820 384 781,迭代至273代時(shí)開始收斂;改進(jìn)基于自然選擇的粒子群算法求解權(quán)重的適應(yīng)度值是0.004 206 805 448 164,迭代至182代開始收斂。改進(jìn)基于自然選擇的粒子群算法求解的適應(yīng)度值精度能夠提高0.000 000 014 936 617,迭代次數(shù)減少了91代,具有更好的尋優(yōu)能力和收斂速度。
(2)基本粒子群算法求解權(quán)重的適應(yīng)度值是0.004 206 910 498 023,在266次迭代后收斂?;谧匀贿x擇的粒子群算法也具有更好的尋優(yōu)能力,其適應(yīng)度值精度提高了0.000 000 090 113 242;相比于基本粒子群算法,改進(jìn)基于自然選擇的粒子群算法的尋優(yōu)能力和收斂速度都有較大的提升。
3.2.3 組合預(yù)測(cè)結(jié)果分析
改進(jìn)基于自然選擇的粒子群算法求解w1的情況如圖9所示,在0~1之間求解得最優(yōu)值為0.689,由此計(jì)算得w2為0.311。
圖9 權(quán)重w1取值圖
為進(jìn)一步驗(yàn)證改進(jìn)基于自然選擇的粒子群算法求解權(quán)重的組合預(yù)測(cè)效果,將其與等分權(quán)重法賦值權(quán)重的組合預(yù)測(cè)效果進(jìn)行比較(權(quán)重均取0.5)。不同預(yù)測(cè)方法測(cè)試樣本的預(yù)測(cè)結(jié)果如表1所示。
由表1可知,改進(jìn)基于自然選擇的粒子群算法求解的權(quán)重具有更好的組合預(yù)測(cè)效果,具體體現(xiàn)在:
表1 不同預(yù)測(cè)方法的鐵路客運(yùn)量預(yù)測(cè)值表
(1)相比于單一預(yù)測(cè)模型,改進(jìn)基于自然選擇的粒子群算法求解權(quán)重的組合預(yù)測(cè)精度更高,2017 -2019年平均相對(duì)預(yù)測(cè)誤差絕對(duì)值為0.420%,而BP神經(jīng)網(wǎng)絡(luò)和ARIMA模型的平均相對(duì)預(yù)測(cè)誤差絕對(duì)值分別為2.354%和5.430%。
(2)相比于等分權(quán)重法,改進(jìn)基于自然選擇的粒子群算法求解權(quán)重的組合預(yù)測(cè)效果也更好;等分權(quán)重法賦值權(quán)重后,2017 - 2019年平均預(yù)測(cè)相對(duì)誤差絕對(duì)值為1.538%,比改進(jìn)基于自然選擇的粒子群算法求解權(quán)重的組合預(yù)測(cè)誤差高1.118%。
本文引入基于自然選擇的粒子群算法用以解決組合預(yù)測(cè)模型權(quán)重分配問題,通過非線性變化的特點(diǎn)對(duì)基于自然選擇的粒子群算法的權(quán)重和學(xué)習(xí)因子改進(jìn),并將改進(jìn)基于自然選擇的粒子群算法用以求解BP神經(jīng)網(wǎng)絡(luò)和ARIMA模型組合預(yù)測(cè)的權(quán)重,得到主要結(jié)論有:
(1)改進(jìn)基于自然選擇的粒子群算法具有更好的尋優(yōu)能力,求解權(quán)重時(shí)的適應(yīng)度值具有更高的計(jì)算精度,比基于自然選擇的粒子群算法求解權(quán)重的適應(yīng)度值精度提高0.000 000 014 936 617。
(2)改進(jìn)基于自然選擇的粒子群算法具有更好的收斂速度,求解最優(yōu)權(quán)重時(shí)所需的迭代次數(shù)更少,比基于自然選擇的粒子群算法求解權(quán)重迭代次數(shù)減少了91代。
(3)求解的權(quán)重值使得BP神經(jīng)網(wǎng)絡(luò)和ARIMA模型的組合預(yù)測(cè)效果較單一預(yù)測(cè)模型BP神經(jīng)網(wǎng)絡(luò)和ARIMA模型的預(yù)測(cè)精度和等分權(quán)重法賦值權(quán)重的組合預(yù)測(cè)精度更好,預(yù)測(cè)年度平均預(yù)測(cè)相對(duì)誤差分別提高了1.934%、5.009%和1.118%。