李佩鈺
(長(zhǎng)安大學(xué) 信息工程學(xué)院,陜西 西安 710064)
交通流量是短時(shí)交通流狀態(tài)的基本參數(shù)之一,因此交通流量的異常變化是交通誘導(dǎo)的重要參考因素。城市路網(wǎng)的交通流狀態(tài)識(shí)別需要準(zhǔn)確和實(shí)時(shí)的交通流預(yù)測(cè),才能更好地指導(dǎo)智能交通、緩解交通擁堵、加快智慧城市的建設(shè)。
針對(duì)城市道路短時(shí)交通流動(dòng)態(tài)預(yù)測(cè),國(guó)內(nèi)外學(xué)者也做了許多相關(guān)的研究。研究方法大體可以分為以下四類:第一類是針對(duì)交通參數(shù)的方法,諸如回歸預(yù)測(cè)和時(shí)間序列預(yù)測(cè)[1-3];第二類是基于混沌理論[4-5]的一些預(yù)測(cè)方法;第三類是利用人工神經(jīng)網(wǎng)絡(luò)[6-13]訓(xùn)練學(xué)習(xí)的預(yù)測(cè)方法;第四類是組合理論[14-17]方法,將各模型的優(yōu)點(diǎn)有機(jī)結(jié)合在一起,以達(dá)到更高效準(zhǔn)確的預(yù)測(cè)結(jié)果。近年來,各種預(yù)測(cè)模型與小波理論的組合被相繼提出,如竇慧麗等提出的基于小波分析和ARIMA模型的交通流預(yù)測(cè)[18],王川等提出的基于小波分析與隱馬爾可夫模型的短時(shí)交通流預(yù)測(cè)[19]等。
短時(shí)交通流具有時(shí)變性、非線性與周期穩(wěn)定性,受實(shí)際環(huán)境中的諸多因素干擾,導(dǎo)致實(shí)際采樣的交通流參數(shù)數(shù)據(jù)不準(zhǔn)確,從而影響短時(shí)交通流的預(yù)測(cè)結(jié)果。
文中提出的小波理論和BP神經(jīng)網(wǎng)絡(luò)結(jié)合的短時(shí)交通流預(yù)測(cè)組合模型,首先對(duì)實(shí)際采樣的原始交通流數(shù)據(jù)進(jìn)行小波消噪處理,然后采用BP神經(jīng)網(wǎng)絡(luò)模型對(duì)短時(shí)交通流進(jìn)行預(yù)測(cè),有效提高了預(yù)測(cè)精度。
20世紀(jì)80年代后期,小波變換被提出。小波變換是信號(hào)在時(shí)頻和頻域同時(shí)進(jìn)行多尺度聯(lián)合分析的重要工具。小波分析中一個(gè)重要的概念是多分辨率分析[20-21],即由粗到細(xì)的逐級(jí)分析,將函數(shù)的多分辨率空間分解與小波變換建立聯(lián)系。一個(gè)函數(shù)空間L2(R)的多分辨率分析是由一系列閉子空間序列{Vj}j∈Z嵌套而成,函數(shù)空間平方可積。
設(shè){Vj}j∈Z是由尺度函數(shù)φ(t)生成的多分辨率分析,并有尺度方程:
(1)
小波函數(shù)定義為:
(2)
其中,gk=(-1)kh1-k。
假設(shè)f是要處理的實(shí)際信號(hào),可看作f∈L2(R),測(cè)得的信號(hào)為fi,設(shè)fi∈Vj。由于{ψjk(x)}k∈Z是Vj的標(biāo)準(zhǔn)正交基,故有:
(3)
用φjk與上式兩端作內(nèi)積,得
cjk=〈f,φjk〉
(4)
由于Vj=Vj-1⊕Wj-1,且Vj-1⊥Wj-1,所以{φj-1,k(x)}k∈Z∪{ψj-1,k(x)}k∈Z也是Vj的標(biāo)準(zhǔn)正交基,故有:
(5)
再分別用φj-1,k和ψj-1,k與上式兩端作內(nèi)積,得:
cj-1,k=〈fj,φj-1,k〉
(6)
及
dj-1,k=〈fj,ψj-1,k〉
(7)
將尺度方程1寫成一般形式:
(8)
將式8代入式6得:
(9)
類似的,將式2寫成一般形式:
(10)
代入式7,并利用式4,可得:
(11)
式9和式11就是著名的Mallat分解算法。相反過程,由式5求出式3,將兩尺度方程的一般形式,即式8和式10,代入式5,得:
(12)
Mallat算法可以變?yōu)槿缦滦问剑?/p>
分解公式:
(13)
重構(gòu)公式:
(14)
小波閾值去噪的原理是將原始信號(hào)經(jīng)小波分解后,信號(hào)的小波系數(shù)幅值要大于噪聲的系數(shù)幅值。通過選取一個(gè)合適的閾值,保留大于閾值的小波系數(shù),小于閾值的系數(shù)置零,將有效信號(hào)與噪聲分離。
小波變換具有很強(qiáng)的去相關(guān)性,可以將信號(hào)的自身能量集中。應(yīng)用小波閾值去噪的基本過程為:
(1)分解:選取合適的小波基后,對(duì)信號(hào)進(jìn)行多層小波分解;
(2)閾值處理:分解后選取一個(gè)閾值,用閾值對(duì)各層系數(shù)進(jìn)行處理;
(3)重建:用閾值處理后的小波系數(shù)重構(gòu)原始信號(hào)。
小波閾值去噪過程中,最重要一環(huán)即是對(duì)小波系數(shù)進(jìn)行處理。應(yīng)用不同的閾值函數(shù)對(duì)小波系數(shù)的處理方式也不同。常用的閾值函數(shù)有硬閾值和軟閾值函數(shù)。
硬閾值函數(shù):
(15)
軟閾值函數(shù):
(16)
其中,ω為原小波系數(shù);η(ω)為閾值化后的小波系數(shù);T為閾值。
由公式可看出,重構(gòu)信號(hào)采用硬閾值函數(shù)處理更加準(zhǔn)確,但伴有局部振蕩。而重構(gòu)信號(hào)采用軟閾值處理后誤差變大,但得到的信號(hào)平滑性較好。
多分辨率分析也稱多尺度分析。原始交通流數(shù)據(jù)分解幾次即為其分解尺度。當(dāng)近似信號(hào)部分和細(xì)節(jié)部分分解到圖形平滑穩(wěn)定時(shí)分解結(jié)束。
實(shí)驗(yàn)采用一天的交通流量數(shù)據(jù),采用db10、db5、db1小波函數(shù),利用Mallat算法進(jìn)行尺度N為4層的金字塔式分解,分解前后曲線如圖1所示。
圖1 利用db10進(jìn)行小波分解后近似部分和細(xì)節(jié)部分
通過實(shí)驗(yàn)對(duì)比,采用db10小波函數(shù)分解得到的第4層細(xì)節(jié)部分比采用db5、db1函數(shù)分解得到的細(xì)節(jié)部分的曲線更加平滑,故實(shí)驗(yàn)采用db10小波作為母小波。
圖2為原始交通數(shù)據(jù),對(duì)其分解后的曲線進(jìn)行重構(gòu);圖3為單支重構(gòu)后第一層近似部分a1??梢园l(fā)現(xiàn),后者的曲線較為平滑。
圖2 原始數(shù)據(jù)信號(hào)曲線
圖3 單支重構(gòu)后第一層近似部分a1
采用FFT和小波分析方法分別對(duì)原始交通數(shù)據(jù)進(jìn)行閾值去噪處理,并分別采用硬閾值函數(shù)和軟閾值函數(shù)處理后進(jìn)行對(duì)比,實(shí)驗(yàn)采用db10作為小波函數(shù),分解尺度值為4。實(shí)驗(yàn)結(jié)果如表1所示。
表1 小波去噪與傅里葉變換去噪對(duì)比結(jié)果分析
其中rigrsure為硬閾值,sqtwolog為軟閾值。使用信噪比(SNR)和均方根誤差(RMSE)作為評(píng)判指標(biāo)。SNR越高,RMSE越小,去噪后的交通數(shù)據(jù)就越接近原始交通數(shù)據(jù),去噪的結(jié)果也越好。通過比較可以發(fā)現(xiàn),采用小波軟閾值去噪方法對(duì)交通數(shù)據(jù)進(jìn)行去噪處理的效果更佳。
神經(jīng)網(wǎng)絡(luò)的一個(gè)重要應(yīng)用是進(jìn)行預(yù)測(cè)。BP神經(jīng)網(wǎng)絡(luò)是一個(gè)基于Widrow-Hoff學(xué)習(xí)規(guī)則的正向傳遞工作信號(hào)反向傳遞誤差信號(hào)的多層網(wǎng)絡(luò)。一般由輸入層、輸出層和隱含層(一層或若干層)構(gòu)成。BP神經(jīng)網(wǎng)絡(luò)采用多層感知器的設(shè)計(jì)解決了單層感知器不能很好解決的線性不可分問題。
BP神經(jīng)網(wǎng)絡(luò)的正向傳遞子過程描述如下:
(17)
xj=f(Sj)
(18)
其中,wij為節(jié)點(diǎn)i和j之間的權(quán)值;bj為節(jié)點(diǎn)j的閾值;xj為每個(gè)節(jié)點(diǎn)的輸出值;f為激活函數(shù)。
而誤差反向傳遞子過程是基于Widrow-Hoff學(xué)習(xí)規(guī)則,通過沿著相對(duì)誤差平方和的最速下降方向,不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,來減少實(shí)際輸出和期望輸出的誤差。
一個(gè)用于預(yù)測(cè)的BP神經(jīng)網(wǎng)絡(luò)模型需要確定輸入、輸出、隱含層的節(jié)點(diǎn)數(shù),激活函數(shù)以及訓(xùn)練函數(shù)。
BP神經(jīng)網(wǎng)絡(luò)的激活函數(shù)一般使用相比線性函數(shù)更加光滑、可微的Sigmoid函數(shù)。實(shí)驗(yàn)中隱含層神經(jīng)元的激活函數(shù)設(shè)置為Sigmoid函數(shù)中輸出值包含負(fù)值的Tan-Sigmoid函數(shù)。
確定好網(wǎng)絡(luò)中各層的激活函數(shù)后,需要確定網(wǎng)絡(luò)的訓(xùn)練函數(shù),通過不斷對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,將得到的誤差作對(duì)比,選擇出使得誤差較小的訓(xùn)練函數(shù),從而最終確定最佳節(jié)點(diǎn)數(shù)目。
選擇traingd作為訓(xùn)練函數(shù)時(shí),即使用梯度下降算法進(jìn)行訓(xùn)練后,平均誤差為0.021 4,訓(xùn)練次數(shù)為1 000,但未達(dá)到訓(xùn)練效果;選擇traingdx作為訓(xùn)練函數(shù),即使用動(dòng)量及自適應(yīng)學(xué)習(xí)率的梯度遞減算法進(jìn)行訓(xùn)練后,平均誤差為0.019 9,訓(xùn)練次數(shù)為140,達(dá)到了訓(xùn)練目標(biāo);選擇trainlm作為訓(xùn)練函數(shù),即使用L-M算法進(jìn)行訓(xùn)練后,平均誤差為0.019 2,訓(xùn)練次數(shù)為5,最終也達(dá)到了訓(xùn)練目標(biāo)。
由于交通流量數(shù)據(jù)只有一類,最終確定了隱含層為一層,各層神經(jīng)元節(jié)點(diǎn)數(shù)為1-12-1,訓(xùn)練函數(shù)為trainlm的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),并使用訓(xùn)練好的網(wǎng)絡(luò)對(duì)交通量數(shù)據(jù)進(jìn)行預(yù)測(cè)。
采用文中提出的預(yù)測(cè)方法,對(duì)西安市某路段時(shí)間間隔為5 min的某一天的交通流量進(jìn)行預(yù)測(cè)。圖4從上到下分別展示了對(duì)原始交通流數(shù)據(jù)采用BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)后的結(jié)果、將原始數(shù)據(jù)經(jīng)過小波去噪,再采用BP神經(jīng)網(wǎng)絡(luò)模型得到的預(yù)測(cè)結(jié)果、采用卡爾曼濾波預(yù)測(cè)模型[22-23]和GM(1,1)預(yù)測(cè)模型[24-25]對(duì)相同的交通流進(jìn)行預(yù)測(cè)得到的結(jié)果。
圖4 三種預(yù)測(cè)模型的預(yù)測(cè)結(jié)果
對(duì)這三種預(yù)測(cè)模型的誤差參數(shù)分析如表2所示。
表2 三種預(yù)測(cè)模型各誤差參數(shù)
誤差指標(biāo)分別為:相對(duì)誤差(mreer)、平均絕對(duì)相對(duì)誤差(marerr)、最大絕對(duì)相對(duì)誤差(mxarerr)、相對(duì)誤差平方和均值平方根(nnrerr)、均等系數(shù)(EC)和均方誤差(MSE)。
從實(shí)驗(yàn)結(jié)果對(duì)比可以看出,基于小波變換的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)方法和卡爾曼濾波模型預(yù)測(cè)擬合度都高于0.90,而GM(1,1)預(yù)測(cè)方法的擬合度低于0.90。經(jīng)分析,GM(1,1)模型適用于具有指數(shù)增長(zhǎng)的序列,即增長(zhǎng)率穩(wěn)定在一個(gè)值附近波動(dòng),對(duì)于非線性的短時(shí)交通流量預(yù)測(cè)不能達(dá)到較為理想的預(yù)測(cè)精度。再比較基于小波變換的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型和卡爾曼濾波預(yù)測(cè)模型,卡爾曼濾波模型的平均絕對(duì)相對(duì)誤差(marerr)和相對(duì)誤差平方和均值平方根(nnrerr)明顯大于基于小波變換的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型。因此,結(jié)合小波去噪的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型運(yùn)用到短時(shí)交通流量方面展現(xiàn)出了較好的準(zhǔn)確性和可行性。
考慮到交通流數(shù)據(jù)采集過程中受實(shí)際環(huán)境影響等使得交通流預(yù)測(cè)精度不高,結(jié)合小波分析的消噪原理,建立基于BP神經(jīng)網(wǎng)絡(luò)的短時(shí)交通流預(yù)測(cè)模型。實(shí)驗(yàn)結(jié)果表明,小波分析和BP神經(jīng)網(wǎng)絡(luò)結(jié)合的交通流預(yù)測(cè)模型具有較高的預(yù)測(cè)精度,為后續(xù)交通擁堵動(dòng)態(tài)預(yù)警的實(shí)時(shí)預(yù)測(cè)提供了一種新思路。