王天方 , 劉學(xué)淵 ,2
(1.西南林業(yè)大學(xué)機(jī)械與交通學(xué)院,云南 昆明 650224;2.云南省高校高原山區(qū)機(jī)動(dòng)車(chē)環(huán)保與安全重點(diǎn)實(shí)驗(yàn)室,云南 昆明 650224)
隨著人們生活水平和購(gòu)買(mǎi)力的不斷提高,每個(gè)家庭擁有一輛車(chē)似乎已經(jīng)成為一種標(biāo)配,因此,我國(guó)的機(jī)動(dòng)車(chē)保有量每年都在大幅增加。然而,汽車(chē)在改善人們生活品質(zhì)的同時(shí),也會(huì)帶來(lái)相應(yīng)的交通問(wèn)題和環(huán)境問(wèn)題。機(jī)動(dòng)車(chē)保有量的逐年增加,給有限的道路交通資源帶來(lái)了極大的壓力,導(dǎo)致交通事故頻發(fā)、道路擁擠等一系列交通問(wèn)題。特別是在早晚上下班這個(gè)特殊時(shí)間段,堵車(chē)已經(jīng)成為一種常態(tài)化現(xiàn)象。除了交通問(wèn)題,機(jī)動(dòng)車(chē)尾氣排放也對(duì)環(huán)境造成了嚴(yán)重的破壞,主要原因是汽車(chē)排放物是污染物的一個(gè)主要來(lái)源?!吨袊?guó)移動(dòng)源環(huán)境管理年報(bào)(2021)》[1]顯示,2020年,全國(guó)機(jī)動(dòng)車(chē)四項(xiàng)污染物排放總量達(dá)到了1 593萬(wàn)t。無(wú)論是交通問(wèn)題還是排放污染問(wèn)題都與人們息息相關(guān),如何應(yīng)對(duì)這些問(wèn)題已成為社會(huì)各界關(guān)注的焦點(diǎn)。
跟馳行為是城市交通中常見(jiàn)的車(chē)輛行駛狀態(tài),其特性對(duì)交通和環(huán)境有重要影響,所以對(duì)車(chē)輛跟馳行為的研究,對(duì)解決交通問(wèn)題和排放問(wèn)題具有很重要的現(xiàn)實(shí)意義。早在1950年,人們就開(kāi)始對(duì)跟馳行為進(jìn)行研究,并提出了一系列模型,如刺激-反應(yīng)模型[2-3]、安全距離模型[4-5]、心理-生理學(xué)模型[6-7]等。雖然這些模型能夠很好地模擬跟馳場(chǎng)景,但是這些模型都是建立在準(zhǔn)確的數(shù)學(xué)公式之上,所以傳統(tǒng)的跟馳模型在實(shí)際應(yīng)用中會(huì)受到很大的限制。隨著科學(xué)技術(shù)的發(fā)展,能夠獲取的跟馳數(shù)據(jù)更多,并且精度更高,使得數(shù)據(jù)驅(qū)動(dòng)類跟馳模型[8]的研究在近年來(lái)得到了一定發(fā)展,而且很多學(xué)者都對(duì)其進(jìn)行過(guò)相關(guān)的研究。例如,Zhou等[9]提出了一種基于遞歸神經(jīng)網(wǎng)絡(luò)的跟馳模型,該模型能夠預(yù)測(cè)和捕捉交通震蕩。孫倩等[10]提出了一種基于長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)的跟馳模型,基于該模型進(jìn)行交通仿真并研究駕駛員的記憶效應(yīng)影響因素。蔣華濤等[11]將最小安全距離模型與灰色神經(jīng)網(wǎng)絡(luò)結(jié)合,提出了灰色神經(jīng)網(wǎng)絡(luò)跟馳模型,該模型能夠提前預(yù)知前車(chē)未來(lái)車(chē)速和制動(dòng)跡象。Hao等[12]提出了一種不包含數(shù)學(xué)分析的人工智能跟馳模型,該模型能夠精準(zhǔn)地模仿人類駕駛員。
在智能化技術(shù)高度發(fā)展的今天,將跟馳行為融入智能化輔助駕駛系統(tǒng),對(duì)于減輕人們的駕駛壓力并保障交通安全有重要意義。實(shí)現(xiàn)這一過(guò)程需要準(zhǔn)確的數(shù)學(xué)模型來(lái)支撐,但是,在實(shí)際駕駛過(guò)程中駕駛員受到的影響因素并不唯一,如駕駛員經(jīng)常會(huì)同時(shí)受到交通信號(hào)、其他車(chē)輛和行人的影響。對(duì)于這種比較復(fù)雜的情況,不能用單一的數(shù)學(xué)模型進(jìn)行建模,要使用人工神經(jīng)網(wǎng)絡(luò)等方法來(lái)描述。因此,課題組以實(shí)際采集的實(shí)驗(yàn)數(shù)據(jù)為基礎(chǔ),建立BP神經(jīng)網(wǎng)絡(luò)跟馳模型。
在本次實(shí)驗(yàn)過(guò)程中,使用兩臺(tái)實(shí)驗(yàn)車(chē)輛,一輛作為前導(dǎo)車(chē),一輛作為跟馳車(chē),在前、后車(chē)輛上都安裝全球定位系統(tǒng)(Global Positioning System, GPS),然后通過(guò)實(shí)驗(yàn)設(shè)備獲取實(shí)際道路車(chē)輛的跟馳行為數(shù)據(jù)。實(shí)驗(yàn)道路為昆明市的北京路。選擇的實(shí)驗(yàn)路段為主干道,整體車(chē)流量較大,在實(shí)驗(yàn)過(guò)程中,為了保證跟馳的真實(shí)性,駕駛員將會(huì)按照自己在日常生活中的駕駛習(xí)慣正常駕駛實(shí)驗(yàn)車(chē)輛。跟馳行為數(shù)據(jù)主要由GPS獲取,GPS可以獲取車(chē)輛速度、經(jīng)緯度、海拔等數(shù)據(jù)。
以實(shí)際跟馳行為數(shù)據(jù)為基礎(chǔ),選取一個(gè)典型且連續(xù)的跟車(chē)過(guò)程,運(yùn)用BP神經(jīng)網(wǎng)絡(luò)構(gòu)建跟馳模型。在進(jìn)行BP神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)時(shí),首先需要一個(gè)樣本訓(xùn)練數(shù)據(jù)集,然后確定模型的輸入輸出參數(shù)。將實(shí)際道路采集到的跟馳行為數(shù)據(jù)作為訓(xùn)練樣本,然后根據(jù)獲取的數(shù)據(jù)提取前車(chē)車(chē)速V1(km/h)、相對(duì)距離Rs(m)、前車(chē)對(duì)后車(chē)的相對(duì)速度RV(km/h)和后車(chē)車(chē)速V2(km/h)作為輸入,后車(chē)下一時(shí)刻的速度V(t+1)(km/h)作為輸出。輸入、輸出確定之后,需要從以下幾個(gè)方面對(duì)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行設(shè)計(jì)。
BP神經(jīng)網(wǎng)絡(luò)的層數(shù)設(shè)計(jì)可以根據(jù)自己的需求而定,一般單層的網(wǎng)絡(luò)就可以滿足大部分的應(yīng)用,因?yàn)橹恍枰黾由窠?jīng)元節(jié)的個(gè)數(shù)就可以完成任意的非線性映射。但是,樣本的數(shù)量較多時(shí),可以選擇增加一個(gè)隱含層,能夠減少網(wǎng)絡(luò)規(guī)模并提高輸出精度。所以,本文將建立雙隱含層的BP神經(jīng)網(wǎng)絡(luò)跟馳模型。
對(duì)于BP神經(jīng)網(wǎng)絡(luò)而言,輸入層神經(jīng)元節(jié)點(diǎn)數(shù)一般為輸入?yún)?shù)的個(gè)數(shù),因?yàn)楸疚倪x擇的輸入?yún)?shù)有4個(gè),所以輸入層的神經(jīng)元個(gè)數(shù)為4。輸出層節(jié)點(diǎn)數(shù)和輸入層類似,根據(jù)輸出參數(shù)個(gè)數(shù)確定,因此輸出層的神經(jīng)元個(gè)數(shù)為1。
隱含層節(jié)點(diǎn)數(shù)一般是根據(jù)試湊法得出選取范圍,然后根據(jù)訓(xùn)練時(shí)不同神經(jīng)元對(duì)模型的影響,選出最佳個(gè)數(shù)。確定神經(jīng)元個(gè)數(shù)的主要公式如下:
式中:n為輸入層神經(jīng)元個(gè)數(shù),m為輸出層神經(jīng)元個(gè)數(shù),M為隱含層神經(jīng)元個(gè)數(shù),a為[0,10]之間的常數(shù)。公式(1)是比較常用的經(jīng)驗(yàn)公式,第一隱含層根據(jù)試湊法確定神經(jīng)元個(gè)數(shù)為6;第二隱含層神經(jīng)元個(gè)數(shù)等于輸出節(jié)點(diǎn)數(shù)時(shí),模型的預(yù)測(cè)效果較好[13],因此第二隱含層神經(jīng)元個(gè)數(shù)設(shè)置為1。BP神經(jīng)網(wǎng)絡(luò)跟馳模型的結(jié)構(gòu)為4-6-1-1。
BP神經(jīng)網(wǎng)絡(luò)的傳遞函數(shù)可以使用線性函數(shù)或Sigmoid函數(shù),文中隱含層的傳遞函數(shù)選擇Sigmoid函數(shù),輸出層選擇線性函數(shù),因?yàn)槿绻敵鰧舆x用Sigmoid函數(shù)會(huì)限制輸出數(shù)值的范圍。
標(biāo)準(zhǔn)的BP網(wǎng)絡(luò)使用的學(xué)習(xí)算法是最速下降法,也稱為梯度下降法,采用最速下降法對(duì)網(wǎng)絡(luò)的權(quán)值進(jìn)行調(diào)整的過(guò)程,是一個(gè)沿著網(wǎng)絡(luò)逐層反向調(diào)整的過(guò)程,具體為先對(duì)輸出層和隱含層的權(quán)值進(jìn)行調(diào)整,然后再對(duì)隱含層與輸入層之間的權(quán)值進(jìn)行調(diào)整。在實(shí)際使用最速下降法訓(xùn)練的過(guò)程中,會(huì)存在收斂速度慢的問(wèn)題,針對(duì)最速下降法的這個(gè)缺點(diǎn),提出了LM(Levenberg Marquardt)算法。LM算法是在最速下降法的基礎(chǔ)上改進(jìn)而來(lái)的,同時(shí)具有擬牛頓法的局部收斂特性和最速下降法全局特性,因此在本次建模過(guò)程中,選用LM算法作為學(xué)習(xí)算法。LM算法調(diào)整網(wǎng)絡(luò)權(quán)值的公式為:
式中,J是雅克比矩陣,I是單位矩陣,μ是比例系數(shù),且μ>0。
在確定了上述參數(shù)之后,將需要訓(xùn)練的數(shù)據(jù)進(jìn)行歸一化處理,然后輸入模型中進(jìn)行學(xué)習(xí)和訓(xùn)練。
利用遺傳算法(Genetic Algorithm, GA)來(lái)優(yōu)化BP神經(jīng)網(wǎng)絡(luò),即優(yōu)化神經(jīng)的初始權(quán)值和閾值,可以避免BP神經(jīng)網(wǎng)絡(luò)在訓(xùn)練時(shí)容易陷入局部最優(yōu)的缺點(diǎn),同時(shí)提高網(wǎng)絡(luò)對(duì)樣本的預(yù)測(cè)能力。許多研究者都使用了遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),如郭艷君等[14]利用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)跟車(chē)模型,表明GA在優(yōu)化神經(jīng)的初始權(quán)值和閾值方面有較好的效果;王志紅等[15]利用GA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)排放預(yù)測(cè)模型,也取得了較好的預(yù)測(cè)效果。GA的具體操作步驟如下。
1)初始化種群[16],種群規(guī)模為40。采用浮點(diǎn)編碼對(duì)個(gè)體進(jìn)行編碼,因?yàn)楦↑c(diǎn)編碼能夠解決二進(jìn)制編碼中編碼串過(guò)長(zhǎng)的問(wèn)題,計(jì)算得到編碼長(zhǎng)度為38,計(jì)算公式如下:
式中,n為輸入層神經(jīng)元個(gè)數(shù),m為輸出層神經(jīng)元個(gè)數(shù),M1和M2分別為第一、第二隱含層神經(jīng)元個(gè)數(shù)。
2)適應(yīng)度函數(shù)。適應(yīng)度函數(shù)表示預(yù)測(cè)輸出與期望輸出之間的誤差絕對(duì)值,公式如下:
式中,yi為i節(jié)點(diǎn)的期望輸出,xi為i節(jié)點(diǎn)的預(yù)測(cè)輸出,n1為節(jié)點(diǎn)數(shù),a為系數(shù)。
3)選擇操作。本文使用經(jīng)典的輪盤(pán)賭法,根據(jù)個(gè)體適應(yīng)度大小,對(duì)個(gè)體進(jìn)行選擇操作,每一個(gè)個(gè)體被選擇的概率計(jì)算公式如下:
式中,fi為個(gè)體i的適應(yīng)度值,m1為種群中個(gè)體總數(shù)。
4)交叉。從選擇好的個(gè)體中對(duì)其進(jìn)行基因互換,即交叉操作,產(chǎn)生下一代。交叉概率控制著個(gè)體之間發(fā)生交叉概率的大小。一般交叉概率為0.4~1,本文設(shè)定的交叉概率為0.8。
5)變異。對(duì)交叉之后的個(gè)體以一定的概率使其發(fā)生變異,從而產(chǎn)生新的個(gè)體。其中,變異概率決定變異發(fā)生的可能性,變異概率一般為0.001~0.1。本文設(shè)定的變異概率為0.02。
6)當(dāng)算法運(yùn)行結(jié)果達(dá)到最大的精度要求或者最大的迭代次數(shù)時(shí),結(jié)束遺傳算法操作過(guò)程,然后需要把優(yōu)化好的權(quán)值和閾值帶入BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練[17]。
以標(biāo)準(zhǔn)均方根誤差(NRMSE),平均絕對(duì)百分誤差(MAPE)和決定系數(shù)(R2)作為評(píng)價(jià)指標(biāo)。NRMSE反映了模型輸出值與實(shí)際值之間的差異性;MAPE是衡量預(yù)測(cè)模型精度的一個(gè)重要指標(biāo);R2代表模型的非線性擬合性和預(yù)測(cè)精度。計(jì)算公式如下:
式中,yi表示實(shí)驗(yàn)值,表示模型輸出值,表示實(shí)驗(yàn)值的平均值,N為測(cè)試集樣本數(shù)量。
將從實(shí)驗(yàn)中采集到的數(shù)據(jù)分別輸入到上述建立的BP神經(jīng)網(wǎng)絡(luò)和遺傳算法優(yōu)化后的BP神經(jīng)網(wǎng)絡(luò)跟馳模型中進(jìn)行訓(xùn)練和預(yù)測(cè),結(jié)果分別如圖1和圖2所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)模型
圖2 GA-BP神經(jīng)網(wǎng)絡(luò)模型
從圖1和圖2中可以看到,BP神經(jīng)網(wǎng)絡(luò)模型和GA-BP神經(jīng)網(wǎng)絡(luò)模型的預(yù)測(cè)值基本都能捕獲實(shí)際值的變化趨勢(shì),雖然在圖中可以發(fā)現(xiàn)極值點(diǎn)部分預(yù)測(cè)可能相對(duì)較差,但是整體趨勢(shì)預(yù)測(cè)依然準(zhǔn)確。對(duì)比BP神經(jīng)網(wǎng)絡(luò)模型和GA-BP神經(jīng)網(wǎng)絡(luò)模型,從圖中可以明顯看到GA-BP神經(jīng)網(wǎng)絡(luò)模型具有更好的預(yù)測(cè)性能,預(yù)測(cè)值與實(shí)際值的誤差也相對(duì)較小。由此可見(jiàn),利用遺傳算法對(duì)BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值進(jìn)行優(yōu)化,能夠使模型達(dá)到更好的預(yù)測(cè)效果[18-19]。
為了進(jìn)一步分析模型預(yù)測(cè)偏差,根據(jù)模型預(yù)測(cè)的結(jié)果計(jì)算模型性能的評(píng)價(jià)指標(biāo)值,具體結(jié)果如表1所示。從表中可以看到GA-BP神經(jīng)網(wǎng)絡(luò)的評(píng)價(jià)指標(biāo)NRMSE、MAPE和R2都優(yōu)于BP神經(jīng)網(wǎng)絡(luò)模型,具體為NRMSE和MAPE分別降低了20.83%、37.83%,R2提高了3.16%,表明GA優(yōu)化了BP神經(jīng)網(wǎng)絡(luò)的效果。
表1 模型性能評(píng)價(jià)指標(biāo)
為了對(duì)模型的預(yù)測(cè)偏差進(jìn)行分析,把實(shí)際值減預(yù)測(cè)值定義為模型的誤差。在實(shí)驗(yàn)中,用實(shí)際值減去BP神經(jīng)網(wǎng)絡(luò)模型和GA-BP神經(jīng)網(wǎng)絡(luò)模型的預(yù)測(cè)值,結(jié)果如圖3所示。
從圖3中可以看到,GA-BP神經(jīng)網(wǎng)絡(luò)模型相比BP神經(jīng)網(wǎng)絡(luò)模型,誤差更加集中分布在零誤差線左右,偏移相對(duì)較小。由此可知,建立的GA-BP神經(jīng)網(wǎng)絡(luò)模型比BP神經(jīng)網(wǎng)絡(luò)模型擁有更好的泛化能力和預(yù)測(cè)性能,能較好地對(duì)跟馳行為進(jìn)行預(yù)測(cè)。
圖3 預(yù)測(cè)誤差對(duì)比
課題組以真車(chē)實(shí)驗(yàn)采集到的數(shù)據(jù)為基礎(chǔ),先使用BP神經(jīng)網(wǎng)絡(luò)構(gòu)建跟馳模型,然后再使用GA對(duì)BP神經(jīng)網(wǎng)絡(luò)跟馳模型進(jìn)行優(yōu)化,結(jié)果表明,構(gòu)建的GA-BP神經(jīng)網(wǎng)絡(luò)模型性能的評(píng)價(jià)指標(biāo)、預(yù)測(cè)誤差都要優(yōu)于BP神經(jīng)網(wǎng)絡(luò)跟馳模型。所以,利用GA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)模型,能夠有效地提高BP神經(jīng)網(wǎng)絡(luò)跟馳模型預(yù)測(cè)結(jié)果的準(zhǔn)確率。