深度強化學習處理真實世界的自動駕駛
arXiv論文“Tackling Real-World Autonomous Driving using Deep Reinforcement Learning“,上傳于2022年7月5日,作者來自意大利的帕爾馬大學Vislab和安霸公司(收購Vislab)。
在典型的自主駕駛流水線中,規(guī)控系統(tǒng)代表了兩個最關(guān)鍵的組件,其中傳感器檢索的數(shù)據(jù)和感知算法處理的數(shù)據(jù)用于實現(xiàn)安全舒適的自動駕駛行為。特別是,規(guī)劃模塊預(yù)測自動駕駛汽車在執(zhí)行正確的高級操作時應(yīng)遵循的路徑,同時控制系統(tǒng)執(zhí)行一系列低級操作,控制轉(zhuǎn)向、油門和制動。
這項工作提出一種無模型(model- free)深度強化學習(DRL)規(guī)劃器,訓練一個預(yù)測加速度和轉(zhuǎn)向角的神經(jīng)網(wǎng)絡(luò),從而獲得一個用自主駕駛汽車的定位和感知算法輸出的數(shù)據(jù)駕駛車輛的單個模塊。特別是,經(jīng)過充分模擬訓練的系統(tǒng)能夠在模擬和真實(帕爾馬城區(qū))無障礙環(huán)境中平穩(wěn)安全地駕駛,證明了該系統(tǒng)具有良好的泛化能力,也可以在訓練場景以外的環(huán)境駕駛。此外,為了將系統(tǒng)部署在真實的自動駕駛汽車上,并減少模擬性能和真實性能之間的差距,作者還開發(fā)一個由微型神經(jīng)網(wǎng)絡(luò)表示的模塊,該模塊能夠在模擬訓練期間復現(xiàn)真實環(huán)境的汽車動態(tài)行為。
在過去幾十年中,從簡單的、基于規(guī)則的方法到實現(xiàn)基于AI的智能系統(tǒng),車輛自動化水平的提高取得了巨大進展。特別是,這些系統(tǒng)旨在解決基于規(guī)則的方法的主要局限性,即缺乏與其他道路使用者的協(xié)商和交互,以及對場景動態(tài)性理解較差。
強化學習(RL)廣泛用于解決使用離散控制空間輸出的任務(wù),如圍棋、Atari游戲或國際象棋以及連續(xù)控制空間的自主駕駛。特別是,RL算法廣泛應(yīng)用于自主駕駛領(lǐng)域,用于開發(fā)決策和機動執(zhí)行系統(tǒng),如主動變道、車道保持、超車機動、十字路口和環(huán)島處理等。
本文采用D-A3C的延遲版本,屬于所謂的Actor-Critics算法家族。特別由兩個不同的實體組成:Actor和Critics。Actor的目的是選擇智體必須執(zhí)行的動作,而Critics 估計狀態(tài)值函數(shù),即智體特定狀態(tài)的良好程度。換句話說,Actor是動作上的概率分布π(a | s;θπ)(其中θ是網(wǎng)絡(luò)參數(shù)),critics是估計狀態(tài)值函數(shù)v(st;θv)=E(Rt | st),其中R是期待的回報。
內(nèi)部開發(fā)的高清地圖實現(xiàn)了仿真模擬器;場景的示例如圖a所示,是在真實自動駕駛汽車測試系統(tǒng)的部分地圖區(qū)域,而圖b顯示智體感知的周圍視圖,對應(yīng)于50×50米的區(qū)域,被分為四個通道:障礙物(圖c),可駕駛空間(圖d)、智體應(yīng)遵循的路徑(圖e)和停止線(圖f)。模擬器中高清地圖允許檢索有關(guān)外部環(huán)境的多個信息,如位置或車道數(shù)、道路限速等。
專注于實現(xiàn)平穩(wěn)安全的駕駛風格,因此在靜態(tài)場景中訓練智體,不包括障礙物或其他道路使用者,學習遵循路線并遵守速度限制。
使用如圖所示的神經(jīng)網(wǎng)絡(luò)對智體進行訓練,每100毫秒預(yù)測一次轉(zhuǎn)向角和加速度。分為兩個子模塊:第一個子模塊能夠定義轉(zhuǎn)向角sa,第二個子模塊用于定義加速度acc。這兩個子模塊的輸入由4個通道(可駕駛空間、路徑、障礙物和停止線)表示,對應(yīng)于智體的周圍視圖。每個視覺輸入通道包含4個84×84像素的圖像,以便為智體提供過去狀態(tài)的歷史。與此視覺輸入一起,網(wǎng)絡(luò)接收5個標量參數(shù),包括目標速度(道路速度限制)、智體的當前速度、當前速度-目標速度比,以及與轉(zhuǎn)向角和加速度相關(guān)的最后動作。
為了保證探索(exploration),采用兩個高斯分布對兩個子模塊輸出進行采樣,獲得相對加速度(acc=N(μacc,σacc))和轉(zhuǎn)向角(sa=N(μsa,σsa))。標準差σacc和σsa在訓練階段由神經(jīng)網(wǎng)絡(luò)進行預(yù)測和調(diào)制,估計模型的不確定性。此外,該網(wǎng)絡(luò)使用兩個不同的獎勵函數(shù)R-acc-t和R-sa-t,分別與加速度和轉(zhuǎn)向角相關(guān),生成相應(yīng)的狀態(tài)值估計(vacc和vsa)。
神經(jīng)網(wǎng)絡(luò)在帕爾馬城市的四個場景進行訓練。對于每個場景,創(chuàng)建多個實例,智體在這些實例上相互獨立。每個智體遵循運動學自行車模型,取值轉(zhuǎn)向角為[-0.2,+0.2],加速度為[-2.0 m,+2.0 m]。在該片段開始時,每個智體以隨機速度([0.0, 8.0])開始駕駛,并遵循其預(yù)定路徑,并遵守道路速度限制。該城區(qū)的道路速度限制在4 ms到8.3 ms之間。
最后,由于訓練場景中沒有障礙物,因此片段可以在以下一種終端狀態(tài)下結(jié)束:
- 達成目標:智體達到最終目標位置。
- 駕駛出道路:智體超出其預(yù)定路徑,錯誤地預(yù)測轉(zhuǎn)向角。
- 時間到了:完成片段的時間失效;這主要是由于加速度輸出的謹慎預(yù)測,駕駛速度低于道路速度限制。
為了獲得能夠在模擬和真實環(huán)境中順利駕駛汽車的策略,獎勵成型對實現(xiàn)預(yù)期行為至關(guān)重要。特別是,定義兩個不同的獎勵函數(shù)來分別評估兩個動作:R-acc-t和R-sa-t分別與加速度和轉(zhuǎn)向角有關(guān),定義如下:
其中
R-sa-t和R-acc-t在公式中都有一個元素,用于懲罰兩個連續(xù)動作,其加速度和轉(zhuǎn)向角的差值分別大于某個閾值δacc和δsa。特別是,兩個連續(xù)加速度之間的差值計算如下:?acc=| acc(t)? acc(t? 1) | ,而racc_indecision的定義如下:
相反,轉(zhuǎn)向角的兩個連續(xù)預(yù)測之間的差值計算為?sa=| sa(t)? sa(t? 1)|, 而 rsa_indecision定義如下:
最后,R-acc-t和R-sa-t取決于智體實現(xiàn)的終端狀態(tài):
- 達成目標:代理達到目標位置,因此兩個獎勵的rterminal設(shè)置為+1.0;
- 駕駛出道路:智能體偏離其路徑,主要是由于對轉(zhuǎn)向角的預(yù)測不準確。因此,將負信號-1.0指定給Rsa,t,負信號0.0給R-acc-t;
- 時間到了:完成該片段的可用時間失效,這主要是由于智體的加速預(yù)測過于謹慎;因此,rterminal假設(shè)?1.0給R-acc-t,0.0給R-sa-t。
與模擬器相關(guān)的主要問題之一在于模擬數(shù)據(jù)和真實數(shù)據(jù)之間的差異,這是由于難以在模擬器內(nèi)真實再現(xiàn)真實世界的情況造成的。為了克服這個問題,用一個合成模擬器以簡化神經(jīng)網(wǎng)絡(luò)的輸入,并減少模擬數(shù)據(jù)和真實數(shù)據(jù)之間的差距。事實上,作為神經(jīng)網(wǎng)絡(luò)輸入的4個通道(障礙物、駕駛空間、路徑和停止線)包含的信息可以通過感知和定位算法以及嵌入在真實自動駕駛汽車上的高清地圖輕松再現(xiàn)。
此外,使用模擬器的另一個相關(guān)問題與模擬智體執(zhí)行目標動作與自動駕駛汽車執(zhí)行該命令的兩個方式不同有關(guān)。實際上,在時間t計算的目標動作,理想情況下可以在模擬的同一精確時刻立即生效。不同的是,這不會發(fā)生在真實車輛上,因為真實情況是,此類目標動作將以某種動態(tài)執(zhí)行,從而導致執(zhí)行延遲(t+δ)。因此,有必要在仿真中引入此類響應(yīng)時間,以便在真正的自動駕駛汽車上訓練智體去處理此類延遲。
為此,為了實現(xiàn)更真實的行為,首先訓練智體,將低通濾波器添加到智體必須執(zhí)行的神經(jīng)網(wǎng)絡(luò)預(yù)測目標動作中。如圖所示,藍色曲線表示在模擬中采用目標動作(其示例的轉(zhuǎn)向角)發(fā)生的理想和瞬時響應(yīng)時間。然后,引入低通濾波器后,綠色曲線識別模擬的智體響應(yīng)時間。相反,橙色曲線顯示自動駕駛車輛在執(zhí)行相同轉(zhuǎn)向動作的行為。然而,可以從圖中注意到,模擬車輛和真實車輛之間的響應(yīng)時間差異仍然相關(guān)。
事實上,神經(jīng)網(wǎng)絡(luò)預(yù)先設(shè)定的加速度和轉(zhuǎn)向角點不是可行的命令,并且沒有考慮一些因素,例如系統(tǒng)的慣性、執(zhí)行器的延遲和其他非理想因素。因此,為了盡可能真實地再現(xiàn)真實車輛的動力學,開發(fā)一個由3個全連接層(深度響應(yīng))組成的小型神經(jīng)網(wǎng)絡(luò)組成的模型。深度響應(yīng)行為的曲線圖如上圖的紅色虛線所示,可以注意到與代表真實自動駕駛汽車的橙色曲線非常相似。鑒于訓練場景沒有障礙物和交通車輛,所描述的問題對于轉(zhuǎn)向角的活動更為明顯,但同樣的想法已應(yīng)用于加速度輸出。
用自動駕駛汽車上收集的數(shù)據(jù)集訓練深度響應(yīng)模型,其中輸入對應(yīng)于人類駕駛員給車輛的命令(加速器壓力和方向盤轉(zhuǎn)動),輸出對應(yīng)于車輛的油門、制動和彎曲,可以用GPS、里程計或其他技術(shù)測量。通過這種方式,將此類模型嵌入模擬器中,獲得更具可擴展性的系統(tǒng),從而再現(xiàn)自動駕駛汽車的行為。因此,深度響應(yīng)模塊對于轉(zhuǎn)向角的校正至關(guān)重要,但即使以不太明顯的方式,對于加速度也是必要的,并且隨著障礙物的引入,這一點將清晰可見。
在真實數(shù)據(jù)上測試了兩種不同的策略,以驗證深度響應(yīng)模型對系統(tǒng)的影響。隨后,驗證車輛正確地沿著路徑行駛,并且遵守高清地圖得到的速度限制。最后,證明通過模仿學習(Imitation Learning)對神經(jīng)網(wǎng)絡(luò)進行預(yù)訓練可以顯著縮短總訓練時間。
策略如下:
- 策略1:不使用深度響應(yīng)模型進行訓練,但使用低通濾波器模擬真實車輛對目標動作的響應(yīng)。
- 策略2:通過引入深度響應(yīng)模型進行訓練,確保更現(xiàn)實的動態(tài)。
在模擬中執(zhí)行的測試對這兩種策略都產(chǎn)生了良好的結(jié)果。事實上,無論是在訓練過的場景,還是在沒有訓練的地圖區(qū)域,智體都能夠在100%的情況下以平穩(wěn)安全的行為達到目標。
通過在真實場景中測試策略,得到了不同的結(jié)果。策略1無法處理車輛動力學,與模擬中的智體相比,其執(zhí)行預(yù)測動作的方式不同;通過這種方式,策略1將觀察到其預(yù)測結(jié)果的意外狀態(tài),導致自動駕駛汽車上的含噪和不舒適行為。
這種行為也會影響系統(tǒng)的可靠性,事實上,有時需要人工協(xié)助以避免自動駕駛汽車駛出道路。
相反,在對自動駕駛汽車進行的所有真實測試中,策略2從未要求人類接管,因為知道車輛動態(tài)以及系統(tǒng)將如何演變?yōu)轭A(yù)測動作。唯一需要人為干預(yù)的情況是避免其他道路使用者;然而,這些情況不被視為失敗,因為策略1和策略2都是在無障礙場景中訓練的。
為了更好地理解策略1和策略2之間的差異,如圖是神經(jīng)網(wǎng)絡(luò)預(yù)測的轉(zhuǎn)向角以及在真實世界測試的短時窗口內(nèi)到中心車道的距離??梢宰⒁獾竭@兩種策略行為是完全不同的,策略1(藍色曲線)與策略2(紅色曲線)相比是嘈雜和不安全的,這證明了深度響應(yīng)模塊對于在真正自動駕駛汽車上部署策略至關(guān)重要。
為了克服RL的限制,即需要數(shù)百萬片段才能達到最優(yōu)解,通過模仿學習(IL)進行了預(yù)訓練。此外,即使IL的趨勢是訓練大型模型,也使用相同的小型神經(jīng)網(wǎng)絡(luò)(約100萬個參數(shù)),因為想法是繼續(xù)使用RL框架訓練系統(tǒng),以確保更具魯棒性和泛化能力。這樣,不會增加硬件資源的使用,考慮到未來可能的多智體訓練,這一點至關(guān)重要。
IL訓練階段使用的數(shù)據(jù)集由模擬智體生成,這些智體遵循基于規(guī)則的方法運動。特別是,對于彎曲,用pure pursuit的跟蹤算法,其中智體的目的是沿著特定的航路點移動。相反,用IDM模型來控制智體的縱向加速度。
為了創(chuàng)建數(shù)據(jù)集,基于規(guī)則的智體在四個訓練場景上運動,每100毫秒保存一次標量參數(shù)和四個視覺輸入。相反,輸出由pure pursuit算法和IDM模型給出。
與輸出相對應(yīng)的兩個橫向和縱向控件僅表示元組(μacc,μsa)。因此,在IL訓練階段,不估計標準差(σacc,σsa)的值,也不估計值函數(shù)(vacc,vsa)。這些特征以及深度響應(yīng)模塊在IL+RL訓練階段學習。
如圖所示,展示從預(yù)訓練階段(藍色曲線,IL+RL)開始訓練同一神經(jīng)網(wǎng)絡(luò),并和四種情況下RL(紅色曲線,純RL)結(jié)果比較。即使IL+RL訓練需要的次數(shù)比純RL少,并且趨勢也更穩(wěn)定,但這兩種方法都取得良好的成功率(如圖a)。
此外,圖b中所示的獎勵曲線證明,使用純RL方法獲得的策略(紅色曲線)甚至沒有達到更多訓練時間的可接受解,而IL+RL策略在幾個片段內(nèi)達到最優(yōu)解(圖b中的藍色曲線)。這種情況下,最優(yōu)解由橙色虛線表示。該基線表示,用在4個場景執(zhí)行50000片段的模擬智體獲得的平均獎勵。模擬的智體遵循確定性規(guī)則,與收集IL預(yù)訓練數(shù)據(jù)集的規(guī)則相同,即用pure pursuit規(guī)則做彎曲和IDM規(guī)則做縱向加速度。這兩種方法之間的差距可能更明顯,訓練系統(tǒng)執(zhí)行更復雜的機動,其中可能需要智體交互。