宋 瑞,程子龍,趙日鑫
(北京交通大學(xué) 綜合交通運(yùn)輸大數(shù)據(jù)應(yīng)用技術(shù)交通運(yùn)輸行業(yè)重點(diǎn)實(shí)驗(yàn)室,北京100044)
隨著國(guó)內(nèi)物質(zhì)水平的不斷提升,各個(gè)城市均呈現(xiàn)出機(jī)動(dòng)車保有量持續(xù)增長(zhǎng)的趨勢(shì),隨之暴露出的便是城市“停車難”問題。由于國(guó)內(nèi)各個(gè)城市智慧停車場(chǎng)建設(shè)尚未完善,駕駛者在停車過程中表現(xiàn)出獲取信息不對(duì)稱等問題,以致于造成大量機(jī)動(dòng)車在城市道路中“巡游”,造成城市道路擁堵的同時(shí)導(dǎo)致大量尾氣排放,污染城市環(huán)境。對(duì)于一些大型停車場(chǎng)來說,停車位信息是不斷變化的,僅僅提供停車位的實(shí)時(shí)信息,會(huì)忽略駕駛者在行駛過程中停車位數(shù)量的變化情況,不能保證駕駛員到達(dá)停車場(chǎng)時(shí)可以找到空閑停車位,很容易造成駕駛員“跑空”的尷尬情形,導(dǎo)致大量無效交通的產(chǎn)生。尤其是駕駛員在行駛過程中遇到中心城區(qū)擁堵現(xiàn)象的發(fā)生,則會(huì)進(jìn)一步加劇獲取信息的不對(duì)稱性。實(shí)現(xiàn)停車場(chǎng)空閑停車位的短期預(yù)測(cè),為駕駛者提供全面的停車位信息可以緩解駕駛者獲取信息不對(duì)稱問題,進(jìn)一步提高停車誘導(dǎo)成功率,改善城市停車難問題。
由于受到停車場(chǎng)類型、天氣、道路交通情況、駕駛員行為以及采集過程中的干擾等多種因素影響,停車位數(shù)據(jù)構(gòu)成的時(shí)間序列會(huì)表現(xiàn)出較高的復(fù)雜性和隨機(jī)性。對(duì)此,國(guó)內(nèi)外學(xué)者針對(duì)停車位短期預(yù)測(cè)提出了多種預(yù)測(cè)模型,筆者將其主要分為兩種。一種是以模型驅(qū)動(dòng)為主的預(yù)測(cè)模型[1-3],主要是針對(duì)停車過程建立基本模型并通過標(biāo)定參數(shù)進(jìn)行空閑停車位的短期預(yù)測(cè)。另一種是以數(shù)據(jù)驅(qū)動(dòng)為主的預(yù)測(cè)模型,包括基于數(shù)理統(tǒng)計(jì)和機(jī)器學(xué)習(xí)的方法建立模型進(jìn)行預(yù)測(cè),如JI Yanjie等[4]采用三層小波神經(jīng)網(wǎng)絡(luò)對(duì)停車場(chǎng)內(nèi)短期停車位可用率進(jìn)行預(yù)測(cè);肖雪[5]通過聚類分析停車數(shù)據(jù)獲取車輛到達(dá)和離開的規(guī)律,采用馬爾可夫生死過程建立模型進(jìn)行預(yù)測(cè),同時(shí)利用粒子群優(yōu)化LSTM(long short-term memory)對(duì)停車需求進(jìn)行了預(yù)測(cè);章偉[6]提出了傅里葉變換-最小二乘支持向量回歸的多步預(yù)測(cè)方法,進(jìn)一步提高了預(yù)測(cè)精度;A.KLAPPENECKER等[7]通過連續(xù)時(shí)間的馬爾科夫鏈進(jìn)行建模對(duì)停車位進(jìn)行預(yù)測(cè),這種方法簡(jiǎn)單快捷,但是魯棒性較差,預(yù)測(cè)結(jié)果有時(shí)存在較大誤差。這些模型中神經(jīng)網(wǎng)絡(luò)模型具有較強(qiáng)的容錯(cuò)性,但訓(xùn)練速度有待提高。
目前集成算法在各類數(shù)據(jù)科學(xué)競(jìng)賽以及不同領(lǐng)域預(yù)測(cè)方面得到廣泛應(yīng)用。相比傳統(tǒng)的神經(jīng)網(wǎng)絡(luò),集成算法擁有更快的訓(xùn)練速度,預(yù)測(cè)準(zhǔn)確率也有較大的提升。其中,XGBoost(extreme gradient boosting)是一種基于Boosting集成思想的集成算法,具有高效、靈活、便捷的特點(diǎn)。XGBoost將決策樹作為弱學(xué)習(xí)器,并通過集成多個(gè)弱學(xué)習(xí)器從而獲得更好的預(yù)測(cè)結(jié)果,具有速度快、表現(xiàn)好的優(yōu)越性。付宇等[8]對(duì)北京軌道AFC數(shù)據(jù)進(jìn)行處理并采用XGBoost預(yù)測(cè)模型對(duì)軌道交通站點(diǎn)進(jìn)出客流量進(jìn)行預(yù)測(cè);陳劍強(qiáng)等[9]采用XGBoost模型實(shí)現(xiàn)電網(wǎng)負(fù)荷短期預(yù)測(cè),并通過對(duì)比證明了所提模型具有更高的準(zhǔn)確性。通過總結(jié)發(fā)現(xiàn),相比單一預(yù)測(cè)模型,通過智能優(yōu)化算法實(shí)現(xiàn)超參數(shù)尋優(yōu)的組合預(yù)測(cè)模型具有更高的預(yù)測(cè)精度。其中,鯨魚優(yōu)化算法是一種新型啟發(fā)式算法,具有收斂速度快,全局尋優(yōu)等特點(diǎn)。對(duì)此,筆者首先對(duì)空閑停車位數(shù)據(jù)進(jìn)行預(yù)處理,然后引入XGBoost算法并結(jié)合鯨魚優(yōu)化算法實(shí)現(xiàn)初始參數(shù)的尋優(yōu),構(gòu)建組合預(yù)測(cè)模型,最后通過實(shí)例驗(yàn)證所提模型的有效性。
文中所用數(shù)據(jù)為英國(guó)伯明翰城市停車場(chǎng)數(shù)據(jù),該數(shù)據(jù)集采集時(shí)間為2016年11月1日—2016年11月30日,如圖1。首先需要對(duì)停車場(chǎng)空閑停車位數(shù)量變化的隨機(jī)性進(jìn)行分析以及預(yù)處理操作。總體而言,該數(shù)據(jù)集整體變化趨勢(shì)大致相同。

圖1 2016年11月1日—11月7日空閑停車位數(shù)據(jù)
停車場(chǎng)空閑停車位數(shù)據(jù)在采集過程中會(huì)受到多種隨機(jī)因素的干擾,造成數(shù)據(jù)的劇烈變化。對(duì)此筆者采用波動(dòng)率來更好地描述空閑停車位數(shù)據(jù)的隨機(jī)性,如圖2。假設(shè)時(shí)間序列為XN,則某一時(shí)間點(diǎn)數(shù)據(jù)的波動(dòng)率vk=[(Xk+1-Xk)/Xk],k=1,2,…,N-1,其中N為數(shù)據(jù)總長(zhǎng)度,k為對(duì)應(yīng)的序號(hào)。

圖2 空閑停車位數(shù)量序列波動(dòng)率
由圖2可知,該數(shù)據(jù)具有很強(qiáng)的波動(dòng)性且波動(dòng)規(guī)律性較弱,存在較大的噪聲干擾。對(duì)比小波分析,奇異譜分析可以更好地的提取數(shù)據(jù)的有用信息剔除噪聲數(shù)據(jù)[10]。筆者將采用奇異譜分析實(shí)現(xiàn)對(duì)數(shù)據(jù)的預(yù)處理。奇異譜分析結(jié)合了線性代數(shù)、多元統(tǒng)計(jì)、動(dòng)力系統(tǒng)、信號(hào)處理等傳統(tǒng)時(shí)間序列分析方法。在對(duì)非線性時(shí)間序列進(jìn)行處理時(shí),奇異譜分析根據(jù)原始時(shí)間序列構(gòu)造軌跡矩陣,并對(duì)軌跡矩陣進(jìn)行分解和重構(gòu),從而實(shí)現(xiàn)對(duì)原始時(shí)間序列不同成分的提取以及噪聲的剔除。
首先,對(duì)原始時(shí)間序列進(jìn)行軌跡矩陣的構(gòu)造,選擇合適的窗口長(zhǎng)度M,采用滑動(dòng)窗口的方式進(jìn)行等間隔采樣,將原始時(shí)間序列進(jìn)行滯后排列,從而得到原始時(shí)間序列的軌跡矩陣。假設(shè)原始時(shí)間序列為X={X1,X2,…,XN},其中N為原始時(shí)間序列長(zhǎng)度。M為給定窗口長(zhǎng)度,取值范圍為1≤M≤N/2。由此可得出L=N-M+1,則軌跡矩陣Y為M×L的矩陣:
(1)
其次,對(duì)軌跡矩陣Y進(jìn)行奇異值分解和分組。最后通過對(duì)角平均化可以將分組得到的矩陣轉(zhuǎn)化為一系列長(zhǎng)度為N的新序列,可根據(jù)貢獻(xiàn)率選擇貢獻(xiàn)大的成分序列進(jìn)行重構(gòu)從而達(dá)到原始序列降噪的目的。筆者采用后驗(yàn)的方法,設(shè)置窗口長(zhǎng)度為256,提取前14個(gè)主成分,對(duì)停車場(chǎng)數(shù)據(jù)進(jìn)行重構(gòu),重構(gòu)序列如圖3。

圖3 停車場(chǎng)數(shù)據(jù)SSA處理結(jié)果
鯨魚優(yōu)化算法(whale optimization algorithm,WOA)是由S.MIRJALILI等[11]于2016年提出的一種啟發(fā)式優(yōu)化算法,通過模擬座頭鯨狩獵行為找尋問題最優(yōu)解,具有調(diào)整參數(shù)少、全局搜索能力強(qiáng)、操作簡(jiǎn)單的特點(diǎn)。筆者將其應(yīng)用于XGBoost超參數(shù)的尋優(yōu)。鯨魚優(yōu)化通過隨機(jī)選擇的鯨魚位置來更新其他鯨魚的位置,避免陷入局部最優(yōu),從而實(shí)現(xiàn)全局最優(yōu)搜索。x(t)為鯨魚當(dāng)前位置;t為當(dāng)前迭代次數(shù),通過系數(shù)A實(shí)現(xiàn)全局尋優(yōu),其數(shù)學(xué)模型如式(2):
(2)
式中:xrand為群體中隨機(jī)選擇的鯨魚位置;A和c為系數(shù);r1,r2為[0,1]中的隨機(jī)數(shù);Tmax為最大迭代次數(shù)。
在包圍獵物過程中,WOA算法將會(huì)假定當(dāng)前的最佳候選解是目標(biāo)獵物或接近最優(yōu)解,然后其他鯨魚個(gè)體會(huì)朝著最優(yōu)位置更新位置,數(shù)學(xué)模型如式(3):
(3)
式中:x*(t)表示當(dāng)前最優(yōu)解。
同時(shí)座頭鯨在狩獵過程中會(huì)在一個(gè)縮小的圓圈內(nèi)繞著獵物游動(dòng),同時(shí)螺旋式靠近獵物。為了更好地表達(dá)這一行為,通過設(shè)置概率系數(shù)p,當(dāng)p≥0.5時(shí),采用螺旋式更新位置,反之采用包圍式更新位置,數(shù)學(xué)模型如式(4)、式(5):
(4)
(5)
式中:b=1;l∈[-1,1];pi取值為0.5。
XGBoost算法是一種基于Boosting集成思想的算法,使用了一階偏導(dǎo)和二階偏導(dǎo)。二階導(dǎo)數(shù)的應(yīng)用有利于梯度下降得更快更準(zhǔn)。同時(shí)為了防止模型過擬合,XGBoost在目標(biāo)函數(shù)中加入了正則項(xiàng),用于控制模型的復(fù)雜度。其目標(biāo)函數(shù)定義如式(6)、式(7):
(6)
(7)

最后通過泰勒展開公式獲得最終目標(biāo)函數(shù)如式(8):
(8)

筆者將通過鯨魚優(yōu)化算法實(shí)現(xiàn)對(duì)XGBoost模型中樹的深度、學(xué)習(xí)率、子模型數(shù)量進(jìn)行參數(shù)尋優(yōu),進(jìn)一步提高模型精度。其中適應(yīng)度函數(shù)采用模型訓(xùn)練的均方根誤差進(jìn)行計(jì)算。首先,確定XGBoost模型拓?fù)浣Y(jié)構(gòu),確定尋優(yōu)參數(shù)。其次,初始化種群,計(jì)算每個(gè)個(gè)體的適應(yīng)度值,不斷進(jìn)行位置更新。最終,記錄最優(yōu)個(gè)體適應(yīng)度值以及位置并將其傳輸至XGBoost模型,對(duì)模型進(jìn)行訓(xùn)練獲得最終預(yù)測(cè)模型。具體流程如圖4。

圖4 WOA-XGBoost流程
選取英國(guó)伯明翰城市停車場(chǎng)數(shù)據(jù)2016年11月1日—11月29日的數(shù)據(jù)作為訓(xùn)練集,11月30日數(shù)據(jù)作為測(cè)試集,采用均方根誤差等作為評(píng)價(jià)指標(biāo),用來驗(yàn)證模型的有效性。
鯨魚優(yōu)化算法具有參數(shù)少、易操作的特點(diǎn),對(duì)此筆者設(shè)置參數(shù)b為默認(rèn)值1,種群數(shù)量為30,迭代次數(shù)為50。由于只針對(duì)XGBoost模型的學(xué)習(xí)率、樹的最大深度、生成的最大樹數(shù)目進(jìn)行尋優(yōu),故設(shè)置鯨魚優(yōu)化算法維度為3。設(shè)置XGBoost模型初始樹的最大深度為5,學(xué)習(xí)率為0.05,生成最大樹的數(shù)目為100,測(cè)試集預(yù)測(cè)結(jié)果的ERMS=7.753,在此基礎(chǔ)上可通過優(yōu)化算法求得最優(yōu)超參數(shù),進(jìn)一步提高預(yù)測(cè)精度。在實(shí)現(xiàn)對(duì)XGBoost模型參數(shù)尋優(yōu)的過程中需對(duì)參數(shù)的范圍進(jìn)行界定,設(shè)置參數(shù)范圍:max_depth∈[3,50],learing_rate∈[50,200],n_estimators∈[0.01,0.30]。
圖5反映了隨著迭代次數(shù)的增加鯨魚優(yōu)化算法適應(yīng)度值的變化情況。從圖5可以看出,鯨魚優(yōu)化算法在一開始便找到了相對(duì)較好的參數(shù)組合,相較于默認(rèn)參數(shù)情況下均方根誤差為7.753,初始均方根誤差為5.094,效果較明顯。同時(shí)算法具有較快的收斂速度,在第20次迭代后,算法收斂,并找到最優(yōu)參數(shù)組合為[7,0.279,140],均方根誤差為4.310。

圖5 適應(yīng)度曲線
為了驗(yàn)證提出模型的有效性,筆者將提出的WOA-XGBoost與默認(rèn)參數(shù)情況下的XGBoost模型以及WOA-SVR模型預(yù)測(cè)結(jié)果進(jìn)行對(duì)比分析。其中RBF核函數(shù)具有較高的預(yù)測(cè)準(zhǔn)確率,泛化能力較好[12],故SVR模型采用RBF核函數(shù)。評(píng)價(jià)指標(biāo)采用平均絕對(duì)誤差EMA、均方根誤差ERMS、回歸模型決定系數(shù)R2,如式(9)—式(11)。
(9)
(10)
(11)

用上述模型分別對(duì)測(cè)試集進(jìn)行預(yù)測(cè),得到結(jié)果如表1和表2,同時(shí)將各模型預(yù)測(cè)值與原始值進(jìn)行對(duì)比,繪制曲線如圖6。
通過表1和表2可知,3種預(yù)測(cè)模型均表現(xiàn)良好,具有較好的擬合度,其中筆者提出的WOA-XGBoost預(yù)測(cè)方法具有較高的精度,平均絕對(duì)誤差為3.164輛、均方根誤差為4.310輛、R2=0.986。此外,相比其他預(yù)測(cè)模型,WOA-XGBoost模型預(yù)測(cè)值擬合度較好,相對(duì)誤差最大值為3.226%,最小值為0.352%。通過對(duì)比WOA-XGBoost模型與XGBoost模型預(yù)測(cè)結(jié)果可知,利用鯨魚優(yōu)化算法有利于找到全局最優(yōu)的參數(shù)組合,從而在一定程度上降低了預(yù)測(cè)誤差。通過對(duì)比XGBoost模型與WOA-SVR預(yù)測(cè)結(jié)果可知,基于Boosting集成思想的XGBoost模型在停車場(chǎng)空閑停車位短期預(yù)測(cè)方面的可應(yīng)用性豐富了停車位短期預(yù)測(cè)模型體系。同時(shí)對(duì)比3組預(yù)測(cè)結(jié)果,驗(yàn)證了WOA-XGBoost模型在停車場(chǎng)空閑停車位短期預(yù)測(cè)方面具有較好的預(yù)測(cè)結(jié)果,穩(wěn)定性較好,進(jìn)一步提高了預(yù)測(cè)的可靠性。

表1 不同預(yù)測(cè)模型評(píng)價(jià)指標(biāo)對(duì)比

圖6 預(yù)測(cè)值對(duì)比

表2 空閑停車位部分預(yù)測(cè)值和真實(shí)值對(duì)比
1)停車場(chǎng)空閑停車位數(shù)據(jù)在采集過程中可能會(huì)受到多種因素的影響,致使數(shù)據(jù)集具有很強(qiáng)的波動(dòng)性。奇異譜分析可以更好地提取數(shù)據(jù)的有用信息,通過奇異譜分析對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,進(jìn)一步提高數(shù)據(jù)集的可靠性。
2)將集成算法引入到停車場(chǎng)空閑停車位短期預(yù)測(cè)當(dāng)中,在此基礎(chǔ)上采用鯨魚優(yōu)化算法實(shí)現(xiàn)對(duì)XGBoost預(yù)測(cè)模型參數(shù)的優(yōu)化,進(jìn)一步降低人工設(shè)置參數(shù)的隨機(jī)性以及提高整體預(yù)測(cè)精度。
3)通過與其他預(yù)測(cè)模型進(jìn)行對(duì)比,證明了筆者提出的組合預(yù)測(cè)模型具有較好的預(yù)測(cè)結(jié)果以及可靠性。
綜上所述,筆者提出的WOA-XGBoost組合預(yù)測(cè)模型在停車場(chǎng)空閑停車位短期預(yù)測(cè)方面具有較好的預(yù)測(cè)結(jié)果,可以為駕駛者提供全面的停車位信息,進(jìn)一步提高誘導(dǎo)成功率,解決城市停車難問題。在未來研究中可以考慮不同停車影響因素對(duì)預(yù)測(cè)結(jié)果造成的影響,同時(shí)引進(jìn)精英策略等對(duì)鯨魚優(yōu)化算法進(jìn)行改進(jìn)以提升搜索能力,提高組合預(yù)測(cè)模型的預(yù)測(cè)精度。