李林波,李 楊
(同濟大學(xué)道路與交通工程教育部重點實驗室,上海 201804)
大量研究表明,自動駕駛車輛可以顯著地提高交通效率,增強交通安全,緩解或減少交通擁堵。作為支撐自動駕駛技術(shù)的重要組成部分之一,換道規(guī)劃算法為自動駕駛車輛提供一條由當(dāng)前車道行駛至目標(biāo)車道的安全及高效的路徑。Luo等[1]基于車對車通信,提出動態(tài)自動變道機動算法,該算法由軌跡規(guī)劃算法和軌跡跟蹤算法組成。采用基于時間的5次多項式函數(shù)對參考軌跡進(jìn)行建模,以滿足自動駕駛車輛的安全性、舒適性和效率要求。Yang等[2]建立了一個動態(tài)換道軌跡規(guī)劃算法,以克服靜態(tài)換道軌跡規(guī)劃算法的缺點,該動態(tài)換道軌跡規(guī)劃算法由軌跡決策、軌跡生成和起點確定模塊組成。Zhang等[3]引入了長短時記憶神經(jīng)網(wǎng)絡(luò)來同時模擬跟馳行為和換道行為。Xie等[4]同樣也引入長短時記憶神經(jīng)網(wǎng)絡(luò)模型來模擬車輛的換道行為,采用深度信念網(wǎng)絡(luò)來描述換道的決策過程。Chen等[5]提出了一種基于注意力的分層深度強化學(xué)習(xí)算法來學(xué)習(xí)交通中的換道行為。Zheng等[6]基于Frenet坐標(biāo)系對彎曲的道路進(jìn)行建模,建立了基于四元貝塞爾曲線和危險場的換道軌跡規(guī)劃算法。Li等[7]評估了換道過程中遇到的駕駛風(fēng)險,并基于勢場理論分析了不同車輛運動狀態(tài)下的安全勢場的空間分布。Wang等[8]建立了不可避免的碰撞情況下?lián)Q道車輛的碰撞緩解算法。黃晶等[9]將個性化駕駛風(fēng)格融入自動換道軌跡規(guī)劃算法中。
雖然現(xiàn)有的研究已取得了豐碩的成果,但這些運動規(guī)劃算法往往忽略了周圍車輛的利益。盡管換道車輛可以安全高效地完成換道行為,但可能會對周圍車輛,特別是目標(biāo)車道上的尾隨車輛產(chǎn)生不利影響。這些影響反映在實際駕駛環(huán)境中,則是微觀層面上每輛車的各種成本(效率、舒適度和安全性)以及宏觀層面上形成的交通沖擊波(降低車速,影響流量)。這些負(fù)面影響往往在換道區(qū)域內(nèi)引發(fā)低效的交通流或者是幽靈堵塞的出現(xiàn)[10-11]。
本文旨在構(gòu)建一種面向帕累托最優(yōu)的換道運動規(guī)劃算法,主要由以下3部分組成:引入5次多項式模型構(gòu)建車輛橫向以及縱向的軌跡;引入IDM(intelligent driver model)模型來表征周邊車輛的跟馳行為;構(gòu)建各車各時刻的舒適、安全以及效率損失函數(shù),從而建立針對換道車輛與周邊車輛損失的多目標(biāo)優(yōu)化問題。
研究假設(shè)車輛已經(jīng)做出了換道決策,并即將執(zhí)行換道行為。選擇解析式法構(gòu)建車輛的換道軌跡,這是考慮到數(shù)據(jù)驅(qū)動法的建模過程本質(zhì)上是一個黑箱,同時車輛和道路的勢能場尚未統(tǒng)一,這兩種方法在實際應(yīng)用中會受限于數(shù)據(jù)集,難以適應(yīng)各式復(fù)雜交通場景,而基于解析式法的換道運動規(guī)劃算法能夠適應(yīng)各種場景,同時有著很強的可解釋性,因而本文引入5次多項式函數(shù)構(gòu)建換道車輛橫向及縱向的軌跡[9],其形式如下:
式中:xLC(t),yLC(t),θLC(t)為車輛橫向、縱向位置與方向角。ai,i=0,1,...5與bj,j=0,1,...5 則是相應(yīng)的系數(shù)。
理想情形下假設(shè)車輛在換道起點與終點的縱向速度和縱向加速度均為零,可得到如下約束:
引入IDM 模型[14]表征周邊車輛的駕駛行為,其形式如下:
假設(shè)t時刻,目標(biāo)車道后方有n輛車(由近到遠(yuǎn)被標(biāo)記為1~n)。優(yōu)化目標(biāo)主體包括換道車輛與后方車輛。優(yōu)化目標(biāo)函數(shù)包含舒適、效率和安全部分。引入加速度的一階導(dǎo)數(shù)量化每輛車的舒適度,當(dāng)前速度和期望速度之差被用來描述效率;相對速度和與前車的相對距離被用來量化駕駛風(fēng)險,第i輛車在時刻t的3種成本如下:
換道車輛的總損失定義如下:
式中:JLC代表換道車輛的損失。Ncomfort,Nefficiency和Nsafety是目標(biāo)函數(shù)中相應(yīng)項的歸一化值(以使單位一致)。ωcomfort,ωefficiency和ωsafety表示舒適性、效率和安全性的權(quán)重系數(shù)。
后方車輛的總損失函數(shù)定義如下:
式中:JTF代表目標(biāo)車道后方車輛的總損失;ωi代表車輛i的權(quán)重系數(shù)。對于距離近、相對速度差大的車輛,它們受換道行為的影響越大,其在目標(biāo)函數(shù)中的權(quán)重系數(shù)就越大,ωi的定義如下:
在執(zhí)行換道行為過程中,換道車輛需要滿足速度、穩(wěn)定性、舒適性以及安全等方面的要求,各變量需要在合理范圍內(nèi)變化。
式中:vmin,vmax,amin,amax,jmin,jmax,tLC,min,tLC,max,xLC,min,xLC,max代表車輛最大和最小速度、加速度、加速度導(dǎo)數(shù)、換道時長及橫向最長移動距離。
多目標(biāo)優(yōu)化問題中的各個目標(biāo)之間相互制約,使得一個目標(biāo)性能的改善往往是以損失其他目標(biāo)性能為代價,不可能存在一個使所有目標(biāo)性能都達(dá)到最優(yōu)的解,所以對于多目標(biāo)優(yōu)化問題,其解通常是一個非劣解的集合。在存在多個Pareto 最優(yōu)解的情況下,所有的Pareto 最優(yōu)解都可被認(rèn)為是同等重要的,因而需要找到盡可能多的關(guān)于該優(yōu)化問題的Pareto最優(yōu)解。除要求優(yōu)化問題的解要收斂到近似Pareto最優(yōu)域,求得的解也必須均勻稀疏地分布在Pareto最優(yōu)域上,一組在多個目標(biāo)之間好的協(xié)議解是建立在一組多樣解的基礎(chǔ)之上。
引入NSGA-II算法,求解所構(gòu)建的帕累托曲面。與NSGA的第一個版本相比,NSGA-II算法的計算復(fù)雜度更低,引入了擁擠度和擁擠度比較算子以保持種群的多樣性,采用精英策略來擴大抽樣空間,迅速提高種群水平,該算法共有3個主要步驟:
(1)隨機產(chǎn)生大小的初始種群,通過遺傳算法的選擇、交叉和變異三種基本操作,經(jīng)過非支配性排序,得到第一代子代種群;
(2)從第二代開始,父代種群與子代種群合并,進(jìn)行快速非主導(dǎo)排序,并計算每個非主導(dǎo)層中個體的擁擠程度。根據(jù)非主導(dǎo)關(guān)系和個體的擁擠程度,選擇合適的個體組成新的父代種群;
(3)通過遺傳算法的基本作用生成新的子代種群,以此類推,直到滿足程序的終點。NSGA-II算法的基本過程如圖1所示,G代表當(dāng)前的迭代次數(shù),關(guān)于算法的細(xì)節(jié)可參考文獻(xiàn)[15]。
圖1 NSGA-II算法流程Fig.1 MAPES of training results of GRU model
所有仿真均是在Python中實現(xiàn),并在i9-9700CK 3.6GHz處理器上運行,配備16GM內(nèi)存和RTX 2070。使用PYMOO軟件包中的NSGA-II算法求解多目標(biāo)問題。仿真步長為0.1s,目標(biāo)函數(shù)中相應(yīng)成本項的歸一化值被設(shè)定為:Ncomfort=8m·s-3,Nefficiency=25m·s-1,Nsafety=0.5s-1,la=5m,lb=2m,Ca=2.5m,Cb=1m,vmax=30m·s-1,vmin=5m·s-1,amax=8m·s-2,amin=-8m·s-2,jmax=8m·s-3,jmin=-8m·s-3,D0=3.5m,IDM的參數(shù)選自于文獻(xiàn)[16]。仿真環(huán)境如圖2所示,仿真時長為500s,目標(biāo)車道上共有20輛車(頭車速度為25m·s-1),經(jīng)過一段時間的仿真預(yù)熱,目標(biāo)車道上的車輛都保持穩(wěn)定的跟車距離和速度。假設(shè)在第300s,換道車輛在目標(biāo)車道縱向位置的第10輛車與第11輛車之間,換道車輛前方100m處的兩輛車突然相撞,車輛不得不進(jìn)行換道,并且已經(jīng)完成換道決策。換道車輛必須在第10輛和第11輛之間的空隙中行駛,換道車輛難以在下一個空隙中執(zhí)行換道,因為其后面有多車緊跟(換道車輛車速也為25m·s-1)。
圖2 仿真場景示意圖Fig.2 Simulation scene schematic
圖3展示了數(shù)值仿真的結(jié)果,圖3a為換道車輛與周邊車輛損失的帕累托曲面。由于換道車輛與周邊車輛損失函數(shù)的量綱是相同的,因而以前沿距原點最近的距離畫一個圓,將圓與前沿的交點作為最終最優(yōu)解??梢钥吹剑谶@個方案下,換道區(qū)域內(nèi)(換道車輛與周邊車輛)的總損失為28.35,其中換道車輛的損失為5.92,周邊車輛為22.43。曲面左側(cè)的點代表換道車輛損失較小但周邊車輛損失較大的解集(以換道車輛自身利益最大化),曲面右側(cè)的點代表換道車輛損失較大但周邊車輛損失較小的解集(以周邊車輛自身利益最大化),這兩側(cè)解的總損失均高于本文所采用的最終解,這從圖3b中的3條損失曲線可以看出。可以看到,相比于曲面最左側(cè)的解,本文所采用的解所對應(yīng)的區(qū)域總損失由35.07降低到了28.35。圖3c展示了所有車輛的橫向移動軌跡,圖3d為所有車輛的橫向車頭時距。在經(jīng)過仿真預(yù)熱后,20輛車達(dá)到穩(wěn)定跟車時距,車頭時距為3.25s。當(dāng)換道車輛插入至第10和第11輛車時,其換道行為明顯地影響了后方的跟車行為。
圖3 仿真結(jié)果Fig.3 Simulation results
為進(jìn)一步驗證算法的有效性,本節(jié)對模型參數(shù)進(jìn)行敏感性分析。圖4為車輛初速車速和初始距離的敏感性分析,可以看到在不同的參數(shù)下曲面的位置有明顯的差異。當(dāng)初始速度從18m·s-1上升到25m·s-1,以及初始距離從60m增加到100m時,帕累托曲面逐漸下移,總成本逐漸降低。
圖4 初始車速以及間距敏感性分析結(jié)果Fig.4 Initial speed and spacing sensitivity analysis results
此外,本文改變IDM模型中的最小間距和期望車頭時距,分析這兩個參數(shù)的變化對于累托曲面的影響,研究調(diào)整靜止時的最小間距為7~15m,期望的時間間隔為1s-2.5s,結(jié)果如圖5和表1所示。隨著最小靜止間距或期望車頭時距的增加,車頭時距呈現(xiàn)出逐漸上升的趨勢,相應(yīng)地總損失曲線也逐漸向上偏移。研究結(jié)果表明,雖然換道車輛試圖使自己的利益最大化,但換道區(qū)域內(nèi)的整體利益不能最小化。而且確實存在這樣一個局部最優(yōu)解,它使該區(qū)域的整體損失降到了最低值。
圖5 不同IDM模型參數(shù)下?lián)Q道車輛損失、周邊車輛損失以及總損失Fig.5 Lane-changing vehicle,surrounding vehicle and total cost under different IDM model parameters
表1 模型對比結(jié)果Tab.1 Model Comparison Results
本文構(gòu)建了一種面向帕累托最優(yōu)的換道軌跡算法,在確保換道車輛能夠安全完成換道行為的同時,盡可能降低其行為對于周邊環(huán)境的影響。基于解析式法和IDM模型構(gòu)建換道車輛與周邊車輛的舒適、安全以及效率的優(yōu)化目標(biāo)函數(shù)。研究首次將帕累托理念和NSGAII算法引入到換道軌跡規(guī)劃算法中。實驗結(jié)果表明,換道區(qū)域內(nèi)確實存在一個帕累托最優(yōu)解,本文所構(gòu)建的算法能夠有效降低換道區(qū)域內(nèi)的總損失,后續(xù)的研究將會去細(xì)化本文算法中的損失函數(shù)構(gòu)建,進(jìn)一步研究混合交通流環(huán)境下的帕累托曲面。
作者貢獻(xiàn)聲明:
李林波:相關(guān)概念及方案討論,論文語言組織;
李楊:概念討論與模型收集。