宋旭東,任夢(mèng)雪
(大連交通大學(xué)軟件學(xué)院,遼寧 大連 116028)
道路交通系統(tǒng)通常是隨時(shí)間變化的,具有一定形式的多樣性,沒有固定規(guī)律可言。相關(guān)研究人員出具了各種各樣的數(shù)據(jù)分析模型用以預(yù)測(cè)短時(shí)間內(nèi)的交通情況,包括求取過往平均值、統(tǒng)計(jì)、回歸方法,以及以交通流為基礎(chǔ)的方法及機(jī)器學(xué)習(xí)等[1,2]。
在現(xiàn)有的研究中,沈琴琴[3]等人提出一種基于復(fù)化Simpson公式的季節(jié)性灰色Fourier模型,在季節(jié)性GM(1,1)模型的基礎(chǔ)上,首先利用復(fù)化Simpson公式對(duì)背景值進(jìn)行優(yōu)化,然后用Fourier級(jí)數(shù)方法修正預(yù)測(cè)結(jié)果。李敏[4]等人在深度學(xué)習(xí)模型的基礎(chǔ)上提出一種集成深度信念網(wǎng)格方法;通過考察交通流序列的高斯混合分布特性,加入高斯混合分布噪聲進(jìn)行數(shù)據(jù)優(yōu)化,并采用Bagging集成學(xué)習(xí)的方法對(duì)各子深度信念網(wǎng)絡(luò)進(jìn)行集成,得到改進(jìn)的深度集成信念網(wǎng)絡(luò)模型。董偉[5]等人提出了一種新的組合控制預(yù)測(cè)算法。該方法利用多尺度的小波分析方法將交通流量分解為均勻部分和隨機(jī)部分,并根據(jù)狀態(tài)的動(dòng)態(tài)變化構(gòu)建了組合控制預(yù)測(cè)模型,分別利用支持向量機(jī)回歸和Markov鏈法來預(yù)測(cè)交通流的均勻序列和隨機(jī)序列,從而動(dòng)態(tài)選擇訓(xùn)練數(shù)據(jù)得到最優(yōu)預(yù)測(cè)結(jié)果。Shao H[6]利用長短期記憶網(wǎng)絡(luò)進(jìn)行短期交通流量預(yù)測(cè)實(shí)驗(yàn)表明該模型具有良好的性能。YaldaRajabzadeh[7]等人提出了一種基于隨機(jī)微分方程(SDE)的兩步方法來改善短期預(yù)測(cè)。第一步,應(yīng)用Hull-White(HW)模型來獲取前幾天的基線預(yù)測(cè)模型。然后使用擴(kuò)展的Vasicek模型(EV)對(duì)一天中的觀測(cè)值和基線預(yù)測(cè)(殘差)之間的差異進(jìn)行建模。
當(dāng)前較流行的預(yù)測(cè)手段主要是借助于單一的預(yù)報(bào)模型來對(duì)時(shí)間序列實(shí)施建模,但其不適用于變化多端、包含多個(gè)變量的具備動(dòng)態(tài)演化行為的非線性時(shí)間序列,也就是說這種模型有一定的短板,不能很好的表現(xiàn)非線性,因?yàn)槠渲械暮芏鄶?shù)據(jù)沒有辦法被充分展示,而這也會(huì)直接影響最終的預(yù)測(cè)結(jié)果,極有可能出現(xiàn)預(yù)報(bào)誤差超限問題。
因此,論文提出了基于極限學(xué)習(xí)機(jī)(ELM)、經(jīng)驗(yàn)?zāi)B(tài)分解(EMD)和改進(jìn)PSO算法優(yōu)化的門循環(huán)單元(Gated Recurrent Unit,GRU神經(jīng)網(wǎng)絡(luò)的組合預(yù)測(cè)模型,對(duì)短時(shí)交通流數(shù)據(jù)進(jìn)行預(yù)測(cè)。該模型包括ELM模型的初始預(yù)測(cè)、基于EMD的預(yù)測(cè)殘差分解和基于ASPSO算法優(yōu)化的GRU進(jìn)行分量預(yù)測(cè)。本文對(duì)組合預(yù)測(cè)模型、GRU模型、ELM-GRU模型的預(yù)測(cè)結(jié)果進(jìn)行了比較分析。仿真結(jié)果表明該方法具有較明顯的優(yōu)勢(shì),不僅降低了建模預(yù)報(bào)的難度,同時(shí)也提高了預(yù)報(bào)精度和效率。
ELM[8]是一種單隱層前饋神經(jīng)網(wǎng)絡(luò)算法,其比之一般的神經(jīng)網(wǎng)絡(luò)有更多優(yōu)勢(shì),任意給出權(quán)值、閾值,舍棄了慣用的參數(shù)訓(xùn)練,再借助于摩爾-彭洛斯廣義逆矩陣來處理獲得這一方程組的最小二乘解,并將其作為網(wǎng)絡(luò)權(quán)值參數(shù)。這個(gè)策略整體實(shí)施簡潔,具有極好的泛化能力。
經(jīng)驗(yàn)?zāi)B(tài)分解(EMD)[9]主要用來處理非線性、非平穩(wěn)時(shí)變序列,此模型依照數(shù)據(jù)的時(shí)間尺度特點(diǎn)來適時(shí)的分解信號(hào),比之傅里葉、小波分析具有更多的優(yōu)勢(shì)。其算法的選擇原理是把沒有規(guī)律的時(shí)序數(shù)據(jù)逐一規(guī)整為固定數(shù)目的本征模方程(IMF),具體獲得的方程分量囊括了各個(gè)時(shí)間點(diǎn)原數(shù)據(jù)的波動(dòng)動(dòng)態(tài)。
PSO是由Kennedy和Eberhar[10]于1995年提出的一種群智能優(yōu)化算法,種群中每個(gè)粒子在給定的搜索空間中,按如下兩個(gè)公式通過不斷地調(diào)整自身的速度和位置進(jìn)行尋優(yōu),直到滿足收斂終止條件。
Vi(t+1)=w*Vi(t)+c1*r1[Pi(t)-Xi(t)]

(1)
Xi(t+1)=Xi(t)+Vi(t+1)
(2)
在PSO算法中,粒子種群的多樣性直接影響算法早熟收斂及陷入局部極值的風(fēng)險(xiǎn)。算法在每次迭代時(shí)粒子都會(huì)參考自身的歷史最優(yōu)位置與群體最優(yōu)位置,這種影響會(huì)使種群多樣性在早期過快下降,算法陷入非最優(yōu)區(qū)域。針對(duì)上述問題,論文提出了一種自適應(yīng)分期變異粒子群算法(An adaptive staged mutation particle swarm optimization algorithm,ASPSO)。算法首先給出了粒子群學(xué)習(xí)因子的獨(dú)立調(diào)整策略,更好的平衡了算法局部搜索與全局搜索的能力;然后在算法運(yùn)行初期使部分適應(yīng)度過低的粒子發(fā)生變異,后期采用進(jìn)化停滯步數(shù)作為觸發(fā)條件(預(yù)設(shè)一個(gè)閾值,若超過則執(zhí)行操作),對(duì)個(gè)體極值和全局極值進(jìn)行隨機(jī)擾動(dòng)。
1)學(xué)習(xí)因子自適應(yīng)調(diào)整
學(xué)習(xí)因子是體現(xiàn)粒子向自身歷史最優(yōu)學(xué)習(xí)與向群體歷史最優(yōu)學(xué)習(xí)能力的兩個(gè)參數(shù)。在ASPSO中,將學(xué)習(xí)因子c1設(shè)計(jì)為遞減函數(shù)、c2設(shè)計(jì)為遞增函數(shù)的,在此基礎(chǔ)上根據(jù)粒子進(jìn)化能力的變化率去調(diào)整每一代中每個(gè)粒子的學(xué)習(xí)因子。這樣的設(shè)置方式與其它經(jīng)典學(xué)習(xí)因子的取值方式相比,不但能在迭代初期保證粒子的學(xué)習(xí)能力,加強(qiáng)全局搜索;在迭代后期保證粒子的社會(huì)學(xué)習(xí),利于局部精準(zhǔn)搜索,還通過獨(dú)立粒子之間不同的進(jìn)化率,對(duì)學(xué)習(xí)因子作進(jìn)行調(diào)整,使粒子結(jié)合自身情況調(diào)整學(xué)習(xí)模式。調(diào)整公式如下所示

(3)

(4)
其中,cmax表示學(xué)習(xí)因子的最大值;cmin表示學(xué)習(xí)因子的最小值。粒子在迭代初期應(yīng)該具有較強(qiáng)的自我學(xué)習(xí)能力,此時(shí)的c1值較大、c2值較小。若某粒子i的進(jìn)化率較小,那么該粒子相比其它粒子的c1稍大、c2稍小,更有利于該粒子做全局搜索。本文中,每個(gè)粒子的學(xué)習(xí)因子均根據(jù)粒子進(jìn)化能力的變化率進(jìn)行自適應(yīng)調(diào)整。
2)分期變異機(jī)制
PSO算法在進(jìn)化初期,由于微粒群中的個(gè)體相對(duì)分散,部分微粒可能距離其它微粒很遠(yuǎn),多樣性偏高導(dǎo)致初始迭代進(jìn)程緩慢。隨著迭代的進(jìn)行,微粒都朝著個(gè)體局部最優(yōu)位置和全局最優(yōu)位置的方向聚集,在后期會(huì)變得較為集中,甚至出現(xiàn)多次迭代后極值未發(fā)生變化的情況。群體多樣性下降到較低程度,不利于搜索到全局最優(yōu)解。
在ASPSO中,按照式(5)將算法運(yùn)行初期部分適應(yīng)度過低的粒子進(jìn)行變異操作,使其位置更新為與當(dāng)前適應(yīng)度值最高的粒子位置的平均值;后期采用進(jìn)化停滯步數(shù)作為觸發(fā)條件(預(yù)設(shè)一個(gè)閾值,若超過則執(zhí)行操作),按照式(6)和(7)對(duì)個(gè)體極值和全局極值進(jìn)行隨機(jī)擾動(dòng)。
xi=(xi+xm)/2
(5)
Vi(t+1)=wt*Vi(t)+c1*r1[r3*Pi(t)-Xi(t)]

(6)
Vi(t+1)=wt*Vi(t)+c1*r1[Pi(t)-Xi(t)]

(7)
其中,xm為當(dāng)前適應(yīng)度值最高的粒子位置,r3和r4均為介于(0,1)之間的隨機(jī)數(shù)。
經(jīng)過上述操作,能夠始終將粒子群的多樣性控制在合理的范圍之內(nèi),從而有效提高全局收斂能力。
GRU屬于LSTM神經(jīng)網(wǎng)絡(luò)的變種,由Chung等首次提出的[11]。它較之LSTM[12],升級(jí)了門控制結(jié)構(gòu),同時(shí)把LSTM里的輸入門、遺忘門整合成了zt門(Update Gate),此外,還用rt門將LSTM的輸出門進(jìn)行了替換。其中,zt主要作用是幫助模型進(jìn)行新輸入信息的過往數(shù)據(jù)歸納,而rt主要影響前一步驟中狀態(tài)信息輸入模型的概率。因?yàn)樯窠?jīng)網(wǎng)絡(luò)中門的數(shù)量從3個(gè)變成了2個(gè),具體參數(shù)被有效降低了,所以無形中節(jié)省了訓(xùn)練時(shí)間。
GRU神經(jīng)網(wǎng)絡(luò)的訓(xùn)練公式如下:

(8)

(9)
zt=σsig(Wzst-1+UZxt+bz)
(10)
rt=σsig(Wrst-1+Urxt+br)
(11)

從式(8)~(11)能夠獲知:如果rt恒等于1同時(shí)zt等于0的話,GRU將直接演變成簡潔的RNN模型了。
GRU神經(jīng)網(wǎng)絡(luò)采用的梯度下降法易使得權(quán)值收斂到某個(gè)值,但不能保證它是誤差平面的全局最小值。利用ASPSO優(yōu)化GRU神經(jīng)網(wǎng)絡(luò)是將ASPSO代替GRU神經(jīng)網(wǎng)絡(luò)中的梯度下降法。ASPSO-GRU神經(jīng)網(wǎng)絡(luò)模型的主要思想是通過ASPSO算法優(yōu)化GRU神經(jīng)網(wǎng)絡(luò)的連接權(quán)值和閾值,這樣能夠改善GRU神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)性能。
因?yàn)槎虝r(shí)交通流時(shí)間序列一般會(huì)呈現(xiàn)較為復(fù)雜的特點(diǎn),如果在預(yù)測(cè)時(shí)顧及到太多的細(xì)節(jié),不但會(huì)使模型變得復(fù)雜,同時(shí)也將大大降低其效果。ELM模型具有單隱含層,在與其它淺層學(xué)習(xí)系統(tǒng),例如單層感知機(jī)(single layer perceptron)和支持向量機(jī)(Support Vector Machine,SVM)相比較時(shí),在學(xué)習(xí)速率和泛化能力方面具有優(yōu)勢(shì);ASPSO粒子群算法具有較強(qiáng)的全局尋優(yōu)能力,利用其可進(jìn)行GRU神經(jīng)網(wǎng)絡(luò)參數(shù)優(yōu)化。論文在上述基礎(chǔ)之上,提出了全新的預(yù)測(cè)模型——ELM-EMD-ASPSO-GRU模型,預(yù)測(cè)流程如圖1所示。

圖1 基于ELM-EMD-ASPSO-GRU組合模型的短時(shí)交通流預(yù)測(cè)流程圖
基于ELM-EMD-ASPSO-GRU組合預(yù)測(cè)的短時(shí)交通流預(yù)測(cè)步驟如下:
1)ELM訓(xùn)練與預(yù)測(cè)。將交通流數(shù)據(jù)分成訓(xùn)練集、預(yù)測(cè)集,按照規(guī)律設(shè)置隱含層層數(shù)h、隱含層節(jié)點(diǎn)數(shù)l和激活方程g,依據(jù)梯度下降的方式實(shí)施有監(jiān)督的模型訓(xùn)練,并以此獲取到訓(xùn)練集預(yù)測(cè)值和實(shí)際值的殘差Ye、預(yù)測(cè)集的預(yù)測(cè)值Yb。
2)分解殘差序列。借助于EMD分解的步驟,把ELM訓(xùn)練集預(yù)測(cè)殘差Ye劃分成n組具有差異化頻率的樣本模態(tài)分量{IMF1,IMF2,…IMFn}及殘差項(xiàng)rn。
3)本征模態(tài)分量的ASPSO-GRU時(shí)序預(yù)測(cè)。就差異化頻率的IMF分量{IMF1,IMF2,…IMFn}及殘差項(xiàng)rn依次制定ASPSO-GRU模型來實(shí)施時(shí)序預(yù)測(cè),將獲取的值相加,從而獲取ASPSO-GRU訓(xùn)練集殘差的預(yù)測(cè)值Y′e。
4)獲取最終數(shù)據(jù)。最終的數(shù)據(jù)結(jié)果是Yb和Y′e之和,即Y′=Yb+Y′e。
為了評(píng)估ASPSO算法的性能,利用python進(jìn)行仿真分析。實(shí)驗(yàn)在相同參數(shù)情況下同時(shí)實(shí)現(xiàn)了PSO、QPSO[13]和ASPSO3種算法。并選擇3種最具代表性的基準(zhǔn)函數(shù)進(jìn)行粒子群優(yōu)化性能的測(cè)試,包括:Sphere函數(shù)f1、Quadric函數(shù)f2、Rosenbrock函數(shù)f3

(12)

(13)
表1給出三個(gè)基準(zhǔn)函數(shù)的相關(guān)聲明,三個(gè)模型的參數(shù)設(shè)置為:種群規(guī)模N=30,初始速度Vmax=30,學(xué)習(xí)因子cmax=1.2,cmax=0.5,慣性權(quán)重wmax=1.0,wmax=0.5。

表1 函數(shù)聲明
1)種群分布。
種群分布一定程度上可以反映種群的多樣性。下面記錄了在迭代次數(shù)為50、100時(shí)三種算法所有粒子的位置信息(見圖2)。

圖2 三種算法在50、100次迭代時(shí)的種群分布
由于多峰函數(shù)在此項(xiàng)指標(biāo)上更具代表性,圖2給出了多峰函數(shù)的實(shí)驗(yàn)結(jié)果。對(duì)于PSO,種群始終處于較分散的狀態(tài)。尤其在后面的階段中,一些粒子很容易陷入至某些局部極值點(diǎn)的區(qū)域內(nèi)。比較PSO,QPSO具有更好的全局收斂性,同時(shí),在后期的階段中,QPSO中的大部分粒子可能進(jìn)入全局最優(yōu)點(diǎn)的區(qū)域中。ASPSO中的粒子明顯具有比PSO更好的聚集,并且ASPSO不會(huì)陷入局部最優(yōu)點(diǎn)區(qū)域從而導(dǎo)致早熟。而比較QPSO,ASPSO則擁有更快的收斂速度。
2)收斂性
由圖3可知,在相同初始值的條件下,ASPSO在收斂速度和收斂精確度上均優(yōu)于PSO和QPSO。QPSO通過利用聚簇得到了比PSO更高的解能力,其收斂速度也更快。而ASPSO則通過自適應(yīng)調(diào)整克服了ASPSO的缺點(diǎn),降低了對(duì)初始參數(shù)的依賴性,這可以提高算法的局部搜索和全局搜索能力。

圖3 三種算法收斂性能對(duì)比
1)實(shí)驗(yàn)數(shù)據(jù)
本文選擇的交通流信息采集自美國明尼蘇達(dá)大學(xué)數(shù)據(jù)研究實(shí)驗(yàn)室[14]公布的數(shù)據(jù),具體包含美國明尼蘇達(dá)的圣保羅及明尼阿波利斯市之間公路的交通信息及使用率信息。實(shí)驗(yàn)采集2019年1月7日到10日期間交通相關(guān)信息,在每間隔十五分鐘進(jìn)行一次數(shù)據(jù)匯總的情況下,每天獲得的數(shù)據(jù)總數(shù)為96個(gè)。為測(cè)試所使用的模型算法是否合理,擇取了前3天的288個(gè)數(shù)據(jù)來實(shí)施具體的訓(xùn)練,同時(shí)擇取第4天的96個(gè)數(shù)據(jù)來實(shí)施驗(yàn)證。具體情況見圖4,交通流信息一般呈現(xiàn)變化多變的狀態(tài),只有在不間斷的時(shí)間序列上才能呈現(xiàn)些許的規(guī)律。

圖4 交通流量數(shù)據(jù)變化曲線
2)仿真結(jié)果分析
當(dāng)前關(guān)于預(yù)測(cè)誤差的指標(biāo)種類繁雜,本文選取的是平均絕對(duì)百分比誤差(MAPE)、均方根誤差(RMSE)這兩種,具體計(jì)算公式是:

(14)

(15)
為充分展示ELM-EMD-ASPSO-GRU模型在本次預(yù)測(cè)里的優(yōu)勢(shì)所在,本文還引入了GRU模型和ELM-GRU模型,在設(shè)置方面,不管是哪一種,其GRU輸入層節(jié)點(diǎn)數(shù)都是1,隱含層節(jié)點(diǎn)數(shù)都是4,隱含層層數(shù)都是1,輸出層節(jié)點(diǎn)數(shù)都是1,初始學(xué)習(xí)率都是0.001,另外激活方程則是relu、sigmoid。圖5展示的是三種模型的預(yù)測(cè)結(jié)果,圖5則展示的是三種模型的預(yù)測(cè)誤差對(duì)比結(jié)果,表2是它們有關(guān)MAPE及RMSE的對(duì)比情況。

圖5 三種模型預(yù)測(cè)結(jié)果
從圖5、圖6、表2可以看出,ELM-EMD-ASPSO-GRU模型相對(duì)于GRU模型和ELM-GRU模型,最終數(shù)據(jù)的平均絕對(duì)百分比誤差依次減少了6.54%、3.51%,均方根誤差依次減少了4.3032、2.1633。三種模型最終獲得的預(yù)測(cè)數(shù)據(jù)和真實(shí)狀況的演變極為相似,可以清晰的展示其具體變化。比之其余兩種方法,ELM-EMD-ASPSO-GRU模型的最終數(shù)據(jù)不管是在哪種誤差上都展現(xiàn)絕對(duì)優(yōu)勢(shì),這表示此模型的精準(zhǔn)性更佳,尤其是具有非平穩(wěn)、非線性特性的短時(shí)交通流數(shù)據(jù)更加的適用。

圖6 三種模型預(yù)測(cè)誤差對(duì)比結(jié)果

表2 評(píng)價(jià)指標(biāo)對(duì)比
本文針對(duì)短時(shí)交通流數(shù)據(jù)的隨機(jī)性及復(fù)雜性,設(shè)計(jì)了以ELM-EMD-ASPSO-GRU為基礎(chǔ)的短時(shí)交通流組合預(yù)測(cè)模型。該模型主要是將短時(shí)交通流數(shù)據(jù)利用ELM模型進(jìn)行初始預(yù)測(cè),然后將預(yù)測(cè)的殘差利用EMD算法實(shí)施分解,借助于ASPSO-GRU模型測(cè)評(píng)每一殘差分量,然后通過所獲得的兩個(gè)結(jié)果數(shù)據(jù)來進(jìn)行最終數(shù)值的預(yù)測(cè)。實(shí)驗(yàn)結(jié)果表明:ELM-EMD-ASPSO-GRU模型不但有效改善了預(yù)測(cè)的精準(zhǔn)性,同時(shí)還極大地縮小了預(yù)測(cè)點(diǎn)和真實(shí)數(shù)據(jù)之間的差距,而這也為精準(zhǔn)度的提升奠定了基礎(chǔ)。而分析其主要原因是得益于對(duì)于復(fù)雜預(yù)測(cè)問題的有效分解,借助于諸多的、有序可循的分量預(yù)測(cè)來進(jìn)行了簡化,另外又借助于對(duì)預(yù)測(cè)結(jié)果的整合提升了最終數(shù)據(jù)的精準(zhǔn)性。