熊明強(qiáng),譙 杰,夏 芹
(1.汽車(chē)噪聲振動(dòng)和安全技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,重慶 401122;2.中國(guó)汽車(chē)工程研究院股份有限公司 重慶 401122)
自動(dòng)駕駛近年受到全世界廣泛關(guān)注[1-10],普遍認(rèn)為該技術(shù)可以有效解決交通擁堵,提高交通安全性[1,6,11]。目前一些自動(dòng)駕駛廠(chǎng)商已經(jīng)進(jìn)行了大規(guī)模的道路測(cè)試,比如谷歌自動(dòng)駕駛汽車(chē)和蘋(píng)果自動(dòng)駕駛汽車(chē)。然而,由于交通系統(tǒng)的復(fù)雜性,現(xiàn)在的自動(dòng)駕駛或多或少都存在著一些安全性問(wèn)題,導(dǎo)致這些自動(dòng)駕駛車(chē)輛在進(jìn)行測(cè)試時(shí)發(fā)生了一系列事故,其主要原因是自動(dòng)駕駛車(chē)輛內(nèi)部的自動(dòng)駕駛算法不足以應(yīng)對(duì)動(dòng)態(tài)變化的交通環(huán)境。據(jù)研究[12],目前近三分之一的交通事故是由不安全的換道操作導(dǎo)致的。
利用機(jī)器學(xué)習(xí)進(jìn)行人類(lèi)換道執(zhí)行模型屬于數(shù)據(jù)驅(qū)動(dòng)模型,其模型參數(shù)需要經(jīng)過(guò)大量換道執(zhí)行數(shù)據(jù)的訓(xùn)練而確定。目前,利用機(jī)器學(xué)習(xí)進(jìn)行人類(lèi)換道軌跡規(guī)劃的研究還很少[13-15],YAO Wen 等[13]將k最近鄰算法應(yīng)用到換道軌跡規(guī)劃中,然而該模型用到的數(shù)據(jù)量非常有限;考慮到已有的機(jī)器學(xué)習(xí)算法只能預(yù)測(cè)換道車(chē)輛的位置,DING Chenxi 等[14]構(gòu)建了兩層BP 神經(jīng)網(wǎng)絡(luò)對(duì)車(chē)輛換道進(jìn)行實(shí)時(shí)預(yù)測(cè),該模型對(duì)NGSIM 數(shù)據(jù)[16]進(jìn)行學(xué)習(xí),在已有研究的基礎(chǔ)上擴(kuò)大了數(shù)據(jù)量。但是,換道數(shù)據(jù)是一種時(shí)間序列,以上兩種機(jī)器學(xué)習(xí)方法只是單一的復(fù)制車(chē)輛在某個(gè)狀態(tài)下的位置,并沒(méi)有考慮到換道時(shí)每個(gè)規(guī)劃步長(zhǎng)之間的換道數(shù)據(jù)存在聯(lián)系[17]。在此基礎(chǔ)上,XIE Dongfan 等[15]構(gòu)建了LSTM 神經(jīng)網(wǎng)絡(luò)對(duì)車(chē)輛換道軌跡進(jìn)行預(yù)測(cè),對(duì)于人類(lèi)換道軌跡學(xué)習(xí)取得了99%以上的精度。盡管都是在對(duì)人類(lèi)換道行為進(jìn)行學(xué)習(xí),但這些研究沒(méi)有考慮到換道過(guò)程中產(chǎn)生的安全性問(wèn)題,而基于規(guī)則的換道模型對(duì)于換道軌跡的數(shù)學(xué)描述不統(tǒng)一,產(chǎn)生了大量的軌跡曲線(xiàn)方程,比如極坐標(biāo)多項(xiàng)式軌跡和五次多項(xiàng)式的軌跡等[18-27]。此外,對(duì)何種方程可以最佳地描述換道軌跡曲線(xiàn)尚無(wú)定論,當(dāng)前對(duì)換道過(guò)程的運(yùn)動(dòng)學(xué)模型描述也有較大的誤差,考慮到現(xiàn)有方法存在的不足,本文對(duì)LSTM 神經(jīng)網(wǎng)絡(luò)進(jìn)行了改造,提出了一種新的基于安全性敏感的改進(jìn)長(zhǎng)短期記憶網(wǎng)絡(luò)的自動(dòng)駕駛換道軌跡規(guī)劃模型。
用傳統(tǒng)運(yùn)動(dòng)學(xué)描述自動(dòng)駕駛換道軌跡規(guī)劃的方式存在著誤差大、無(wú)法發(fā)現(xiàn)隱形因素之間的關(guān)系、不能充分利用真實(shí)數(shù)據(jù)等方面的不足。LSTM[28]神經(jīng)網(wǎng)絡(luò)可以彌補(bǔ)以上不足,且相對(duì)其他深度學(xué)習(xí)方法可以更好地處理時(shí)間序列數(shù)據(jù),但經(jīng)典LSTM 神經(jīng)網(wǎng)絡(luò)無(wú)法對(duì)換道數(shù)據(jù)的安全性進(jìn)行判別和校驗(yàn),因此選擇LSTM 神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn)。傳統(tǒng)LSTM 神經(jīng)網(wǎng)絡(luò)主要由“遺忘門(mén)、輸入門(mén)、輸出門(mén)、狀態(tài)”組成,這些“門(mén)”結(jié)構(gòu)實(shí)際上是全連接神經(jīng)網(wǎng)絡(luò)構(gòu)成的,如圖1 所示。
圖1 經(jīng)典LSTM 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
LSTM 神經(jīng)網(wǎng)絡(luò)有著高效的學(xué)習(xí)優(yōu)勢(shì),這種神經(jīng)網(wǎng)絡(luò)被認(rèn)為是研究和預(yù)測(cè)時(shí)間序列極佳的方法,但由于神經(jīng)網(wǎng)絡(luò)中隱層神經(jīng)元的物理作用不明確,訓(xùn)練過(guò)程不可控,這樣建立的換道軌跡規(guī)劃模型可能隱含著人類(lèi)不良駕駛習(xí)慣,最終無(wú)法滿(mǎn)足安全性和舒適性的換道要求,所以在傳統(tǒng)LSTM 神經(jīng)網(wǎng)絡(luò)中引入“安全門(mén)”,在訓(xùn)練過(guò)程中對(duì)數(shù)據(jù)進(jìn)行安全性監(jiān)控和校驗(yàn),有目的地提高模型安全性,“安全門(mén)”輸入的運(yùn)動(dòng)學(xué)軌跡包括最優(yōu)軌跡約束和安全性約束數(shù)據(jù),從而提出安全性敏感的自動(dòng)駕駛換道軌跡規(guī)劃LSTM 神經(jīng)網(wǎng)絡(luò)模型,嵌入結(jié)構(gòu)如圖2虛線(xiàn)框所示。
圖2 改進(jìn)LSTM 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
在這個(gè)結(jié)構(gòu)中,神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù)xt包括換道車(chē)輛以及周邊車(chē)輛的軌跡數(shù)據(jù),xt將會(huì)同時(shí)被傳遞給各個(gè)“門(mén)”結(jié)構(gòu)以及嵌入的運(yùn)動(dòng)學(xué)模型結(jié)構(gòu),進(jìn)行神經(jīng)網(wǎng)絡(luò)的迭代訓(xùn)練。改進(jìn)之后的LSTM 神經(jīng)網(wǎng)絡(luò)如圖3 所示。
圖3 改進(jìn)LSTM 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
1.1.1 神經(jīng)網(wǎng)絡(luò)各個(gè)部分的計(jì)算方式
當(dāng)前時(shí)刻數(shù)據(jù)傳入長(zhǎng)短期記憶網(wǎng)絡(luò)時(shí)要決定哪些歷史數(shù)據(jù)需要從細(xì)胞狀態(tài)ht-1中刪除。這是由遺忘門(mén)決定的:
式中:Wf為遺忘門(mén)的權(quán)重;ht-1為上一時(shí)刻神經(jīng)網(wǎng)絡(luò)的狀態(tài);xt為NGSIM 數(shù)據(jù)中換道軌跡規(guī)劃數(shù)據(jù);bf為遺忘門(mén)的偏置項(xiàng);σ為一個(gè)sigmoid 函數(shù),用于增強(qiáng)神經(jīng)網(wǎng)絡(luò)的非線(xiàn)性擬合能力,其表達(dá)式為:
神經(jīng)元?jiǎng)h除歷史數(shù)據(jù)后還需決定哪些新的信息需要被存儲(chǔ)進(jìn)細(xì)胞狀態(tài):輸入門(mén)中包括一個(gè)類(lèi)似于遺忘門(mén)的結(jié)構(gòu),用于在訓(xùn)練過(guò)程中決定需要更新的數(shù)據(jù),然后一個(gè)tanh 函數(shù)會(huì)從當(dāng)前時(shí)刻的輸入數(shù)據(jù)中確定更新的向量,從而更新到神經(jīng)元狀態(tài)中:
式中:Wi為輸入門(mén)中決定遺忘的數(shù)據(jù)權(quán)重;bi為對(duì)應(yīng)的偏置項(xiàng);~Ct為準(zhǔn)備更新的數(shù)據(jù)矩陣;Wc為更新數(shù)據(jù)的權(quán)重矩陣;bc為更新數(shù)據(jù)的偏執(zhí)項(xiàng)。tanh 為雙曲正切函數(shù),同樣用于增強(qiáng)神經(jīng)網(wǎng)絡(luò)的非線(xiàn)性擬合能力,其函數(shù)表達(dá)式為:
最后決定將要輸出的部分。輸出通過(guò)一個(gè)sigmoid 函數(shù)層來(lái)決定Ct中哪些部分需要被更新,然后將Ct經(jīng)過(guò)一個(gè)tanh 函數(shù)處理(歸一化),并將遺忘門(mén)里sigmoid 層的輸出相乘,從而決定輸出,如式(8)所示。
式中:Ot為神經(jīng)元的預(yù)測(cè)輸出值;Wo為輸出門(mén)的輸出權(quán)重;bo為輸出門(mén)偏置項(xiàng)。
改進(jìn)后更安全的原因如下,改進(jìn)前細(xì)胞狀態(tài)為:
這樣,更新的數(shù)據(jù)值很有可能等于遺忘的數(shù)據(jù)值,如初始狀態(tài)[ht-1, 0.5xt]經(jīng)過(guò)遺忘門(mén)之后細(xì)胞狀態(tài)變?yōu)閇ht-1, 0.5xt],而輸入門(mén)更新的數(shù)據(jù)又恰是0.5xt,那么經(jīng)過(guò)輸入門(mén)以后,細(xì)胞狀態(tài)變回為[ht-1,0.5xt]。顯然,這對(duì)于自動(dòng)駕駛換道的安全性是無(wú)法保證的,所以提出的改進(jìn)LSTM 神經(jīng)網(wǎng)絡(luò)模型彌補(bǔ)了經(jīng)典LSTM 神經(jīng)網(wǎng)絡(luò)在自動(dòng)駕駛車(chē)輛換道軌跡規(guī)劃安全性方面的不足,使訓(xùn)練過(guò)程變得部分可控,改進(jìn)后的細(xì)胞狀態(tài)為:
輸出為:
式中:Pt為車(chē)輛在運(yùn)動(dòng)學(xué)模型經(jīng)過(guò)歸一化處理后的動(dòng)力學(xué)輸出值。
經(jīng)過(guò)多次試驗(yàn),該模型將改進(jìn)的LSTM 神經(jīng)網(wǎng)絡(luò)的層數(shù)設(shè)置為兩層,隱層神經(jīng)元個(gè)數(shù)為8 個(gè)。輸入變量確定為縱向位置x0,橫向位置y1和速度v0,輸出變量為下一時(shí)刻規(guī)劃的速度,采取的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)率是0.01。
由于車(chē)輛行駛過(guò)程中要求加速度連續(xù)變化,所以自動(dòng)駕駛換道軌跡所采用的多項(xiàng)式曲線(xiàn)不應(yīng)少于3次,為了避免多項(xiàng)式曲線(xiàn)次數(shù)太高造成的參數(shù)求解過(guò)于復(fù)雜,將多項(xiàng)式曲線(xiàn)確定為三次多項(xiàng)式曲線(xiàn)。其表達(dá)式為:
式中:a0、a1、a2、a3為需要后期確定的參數(shù);xn為換道車(chē)輛縱向位置;yn為換道車(chē)輛橫向位置。
確定各項(xiàng)參數(shù)有:
式中:θi為規(guī)劃步長(zhǎng)起點(diǎn)的航向角。
Gipps 模型[29]是領(lǐng)域內(nèi)經(jīng)典的車(chē)輛安全距離模型,可以較好地?cái)M合兩輛跟馳車(chē)輛之間的行駛狀態(tài),但其將車(chē)輛視作質(zhì)點(diǎn),沒(méi)有考慮車(chē)輛的車(chē)身長(zhǎng)度,所以在經(jīng)典Gipps 模型的基礎(chǔ)上加入車(chē)身長(zhǎng)度進(jìn)行改進(jìn),作為三次軌跡曲線(xiàn)的約束條件。
車(chē)輛換道過(guò)程中受到周?chē)?chē)輛實(shí)時(shí)的影響,為了保證換道過(guò)程的安全性,需要實(shí)時(shí)檢測(cè)周?chē)?chē)輛的行駛狀態(tài),并對(duì)周?chē)?chē)輛的行駛狀態(tài)進(jìn)行預(yù)測(cè)。
式中:j為車(chē)輛n-1;xj(t0)和vj分別為當(dāng)前狀態(tài)各個(gè)車(chē)輛的縱向位置坐標(biāo)和速度;xj(t)為t時(shí)刻車(chē)輛j的縱向位置坐標(biāo)。
Gipps 模型求解的是當(dāng)前車(chē)輛緊急停車(chē)時(shí),后車(chē)在經(jīng)過(guò)反應(yīng)時(shí)間τ后也采取緊急停車(chē)動(dòng)作,從而不和前車(chē)發(fā)生碰撞的速度。在經(jīng)典的Gipps 模型中,車(chē)身的長(zhǎng)度沒(méi)有被考慮到,也沒(méi)有考慮到實(shí)際跟馳過(guò)程中前后兩車(chē)的時(shí)變速度,針對(duì)此情況,對(duì)經(jīng)典Gipps 模型進(jìn)行改進(jìn),如圖4 所示。
圖4 安全距離示意圖
后車(chē)緊急制動(dòng)距離如式(17)和式(18)所示:
使用的是美國(guó)聯(lián)邦高速公路公布的NGSIM[16]數(shù)據(jù)。作為高精度且高可靠性實(shí)車(chē)數(shù)據(jù),其被廣泛應(yīng)用于車(chē)輛研究[30-32]。NGSIM 數(shù)據(jù)包括車(chē)輛位置、速度等,非常符合仿真研究的要求。更多詳細(xì)的介紹參見(jiàn)相關(guān)文獻(xiàn)。數(shù)據(jù)采集選用的兩段高速公路路段,如圖5 所示。
圖5 NGSIM 高速公路路段示意圖
對(duì)于基于LSTM 神經(jīng)網(wǎng)絡(luò)的換道軌跡規(guī)劃模型訓(xùn)練和測(cè)試,同樣基于Python 通過(guò)深度學(xué)習(xí)的Tensorflow 框架搭建所需的LSTM 神經(jīng)網(wǎng)絡(luò)。
在迭代過(guò)程中,訓(xùn)練誤差隨著迭代次數(shù)的增加而變化的情況如圖6 所示。在迭代次數(shù)小于20 次時(shí),訓(xùn)練誤差下降較快,隨著迭代次數(shù)的增加,訓(xùn)練誤差下降緩慢。迭代次數(shù)達(dá)到25 次左右時(shí),訓(xùn)練誤差趨于收斂。因此,將基于LSTM 神經(jīng)網(wǎng)絡(luò)的換道軌跡規(guī)劃模型的迭代次數(shù)設(shè)為30 次。
圖6 迭代次數(shù)設(shè)為30 次
如圖7 所示,藍(lán)色曲線(xiàn)是理想的安全性換道軌跡曲線(xiàn),黃色曲線(xiàn)是本模型預(yù)測(cè)的換道軌跡曲線(xiàn),綠色曲線(xiàn)是真實(shí)換道軌跡曲線(xiàn)。由圖可知,經(jīng)過(guò)本模型的訓(xùn)練和預(yù)測(cè),輸出的軌跡曲線(xiàn)更靠近安全性換道軌跡曲線(xiàn),又保留了一些人類(lèi)原始換道軌跡曲線(xiàn)的特征且比人類(lèi)更早地完成了換道。
圖7 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)效果
擬用平均絕對(duì)誤差(Mean Absolute Error,MAE)以及平均絕對(duì)相對(duì)誤差(Root Mean Squared Error,MARE)這兩個(gè)統(tǒng)計(jì)學(xué)中常用的統(tǒng)計(jì)量對(duì)模型進(jìn)行誤差統(tǒng)計(jì):
式中:N為測(cè)試數(shù)據(jù)樣本數(shù);dr,i為第i輛車(chē)的真實(shí)值;ds,i為第i輛車(chē)的預(yù)測(cè)值。
針對(duì)實(shí)際情況,定義如下:MAEreal和MAREreal分別表示預(yù)測(cè)值與真實(shí)值的平均絕對(duì)誤差和平均絕對(duì)相對(duì)誤差,這兩個(gè)統(tǒng)計(jì)量可以表征實(shí)際值和預(yù)測(cè)值的誤差。
本節(jié)對(duì)改進(jìn)LSTM 神經(jīng)網(wǎng)絡(luò)的輸出軌跡和真實(shí)軌跡進(jìn)行誤差統(tǒng)計(jì),結(jié)果顯示,兩個(gè)統(tǒng)計(jì)量數(shù)值都比較小,見(jiàn)表1。
表1 誤差對(duì)比表
CarSim 是用于車(chē)輛動(dòng)力學(xué)的專(zhuān)用仿真軟件,該軟件可以對(duì)駕駛員、路面條件以及空氣動(dòng)力等方面進(jìn)行仿真輸入,對(duì)車(chē)輛制動(dòng)性、穩(wěn)定性參數(shù)等進(jìn)行輸出。CarSim可以方便靈活地定義試驗(yàn)環(huán)境和試驗(yàn)過(guò)程[33]。
將提出的深度學(xué)習(xí)模型輸出的車(chē)輛軌跡數(shù)據(jù)作為CarSim 輸入,擬用該軟件對(duì)模型軌跡進(jìn)行可跟蹤性、平穩(wěn)性等參數(shù)的評(píng)估。
圖8 顯示了CarSim 在車(chē)輛換道成功場(chǎng)景下的換道軌跡、加速度輸出結(jié)果的對(duì)比。CarSim 對(duì)真實(shí)換道軌跡跟蹤情況如圖8a 所示,其中紅色曲線(xiàn)為CarSim 仿真軟件對(duì)于原始數(shù)據(jù)的跟蹤結(jié)果,藍(lán)色曲線(xiàn)為原始軌跡曲線(xiàn),可以看出CarSim 跟蹤的換道軌跡曲線(xiàn)和真實(shí)換道軌跡曲線(xiàn)相對(duì)存在較大誤差。CarSim 對(duì)本模型預(yù)測(cè)的換道軌跡曲線(xiàn)的跟蹤情況如圖8b 所示,可以看出CarSim 能較完美地跟蹤本模型輸出的換道軌跡,且軌跡很平滑。CarSim 對(duì)真實(shí)軌跡的加速度仿真結(jié)果如圖8c 所示,可以看出真實(shí)軌跡的加速度變化較為劇烈,乘客舒適性體驗(yàn)不高。CarSim 對(duì)本模型輸出軌跡的加速度仿真結(jié)果如圖8d 所示,可見(jiàn)相對(duì)真實(shí)軌跡的加速度變化而言,CarSim 對(duì)于本模型軌跡曲線(xiàn)加速度仿真結(jié)果更均勻,乘客的舒適性體驗(yàn)較好。
圖8 CarSim 仿真結(jié)果
以研究自動(dòng)駕駛的車(chē)輛換道技術(shù)為目的,在自動(dòng)駕駛領(lǐng)域提出一種改進(jìn)LSTM 神經(jīng)網(wǎng)絡(luò)的換道軌跡規(guī)劃算法。從安全性和效率兩個(gè)角度入手建立深度學(xué)習(xí)換道軌跡規(guī)劃模型,改進(jìn)LSTM 神經(jīng)網(wǎng)絡(luò)模型在一定程度上提高了車(chē)輛換道過(guò)程的安全性,使車(chē)輛一邊學(xué)習(xí)一邊利用基于規(guī)則算法對(duì)軌跡進(jìn)行安全性監(jiān)督和修正。另外還驗(yàn)證了改進(jìn)LSTM 神經(jīng)網(wǎng)絡(luò)模型的舒適性和效率比真實(shí)軌跡更高,并通過(guò)Python 仿真結(jié)果分析了換道車(chē)輛和周?chē)h(huán)境車(chē)輛對(duì)車(chē)輛換道過(guò)程的影響。雖然常規(guī)換道軌跡規(guī)劃模型在換道執(zhí)行過(guò)程中對(duì)目標(biāo)軌跡學(xué)習(xí)精度很高,但是忽略了車(chē)輛周?chē)h(huán)境的變化,換道車(chē)輛無(wú)法對(duì)突發(fā)情況做出反應(yīng),因此在安全性方面還存在不足。得到以下主要結(jié)論:
(1)利用本模型可以規(guī)劃出一條合適的自動(dòng)駕駛換道軌跡,且能保證換道車(chē)輛更安全、更舒適地完成換道。
(2)在規(guī)劃過(guò)程中,LSTM-NN 模型可能比人更早完成換道,主要是因?yàn)樵撃P筒粌H考慮了安全性還考慮了效率。
(3)CarSim 的仿真顯示,提出的模型所規(guī)劃出的換道軌跡和速度能夠很好地被自動(dòng)駕駛跟蹤,車(chē)輛行駛穩(wěn)定性良好。