劉澄
哈曼(中國)投資有限公司 上海 200235
自動駕駛車輛是一個集環(huán)境感知、決策規(guī)劃和智能控制等功能于一體的綜合系統(tǒng),是智能交通系統(tǒng)的重要組成部分,也是智能車輛領(lǐng)域研究的熱點和汽車工業(yè)增長的新動力。自動駕駛汽車的控制技術(shù)是整個自動駕駛系統(tǒng)中的關(guān)鍵環(huán)節(jié),也是國內(nèi)外廣大學(xué)者重點研究的領(lǐng)域。自動駕駛系統(tǒng)一般采用分層結(jié)構(gòu),其中控制層的功能是將來自決策和規(guī)劃層的指令轉(zhuǎn)化為各執(zhí)行機構(gòu)的動作,并控制各執(zhí)行機構(gòu)完成相應(yīng)的動作,以此準(zhǔn)確地跟蹤路徑并合理地控制速度。
自動駕駛汽車(Autonomous Car)是指一類能夠自我感知環(huán)境、規(guī)劃路徑并對實時路況進行合理決策的智能汽車。行為決策模塊是自動駕駛汽車的“大腦”,受到傳統(tǒng)車企乃至相關(guān)高校的高度關(guān)注。強化學(xué)習(xí)在20世紀(jì)80年代已經(jīng)興起,但隨著問題的復(fù)雜度逐漸增大,傳統(tǒng)的表格式強化學(xué)習(xí)已經(jīng)難以解決龐大的狀態(tài)空間和搜索空間,因此,利用深度神經(jīng)網(wǎng)絡(luò)擬合Q值或輸出行為策略的深度強化學(xué)習(xí)被提出,并在策略游戲、直升機特技表演、火電廠控制等領(lǐng)域取得了極大的成功。自動駕駛車輛的控制可分為橫向控制和縱向控制,傳統(tǒng)的橫/縱向控制的方法大多需要精確的數(shù)學(xué)解析模型,并對受控系統(tǒng)進行精確的數(shù)值求解。然而精度較高的模型一般也比較復(fù)雜,參數(shù)較多。復(fù)雜的模型也造成了較高的計算代價,使得求解困難,往往難以保證實時性。隨著互聯(lián)網(wǎng)+、大數(shù)據(jù)和人工智能的迅速發(fā)展,研究人員開始基于機器學(xué)習(xí)方法開發(fā)智能汽車決策和控制算法,開辟了一條不同于汽車工程專家的研究思路。根據(jù)現(xiàn)代決策理論的發(fā)展,可以將行為決策理論分為理性決策理論和行為決策理論,理性決策理論在20世紀(jì)80年代之前一直處于主導(dǎo)地位,之后隨著行為科學(xué)研究的興起,行為決策理論逐步發(fā)展壯大。行為決策理論是一個多學(xué)科交叉的研究領(lǐng)域,旨在探討“人們實際是怎樣決策的”以及“這樣決策的根據(jù)是什么”,目前,關(guān)于機器人的行為決策理論較為成熟,從機器人學(xué)科的角度來看,無人駕駛汽車可以看作是一種移動輪式機器人,因此移動機器人的行為決策方法也可以應(yīng)用在無人駕駛汽車中。無人駕駛行為決策的目標(biāo)是對可能出現(xiàn)的駕駛的道路環(huán)境都給出一個合理的、實時的行為策略,核心任務(wù)是消化上層規(guī)劃模塊的輸出軌跡點,通過一系列結(jié)合自身屬性和外界物理因素的動力學(xué)計算,轉(zhuǎn)換成對汽車控制的油門、剎車、方向盤信號。
隨機性策略梯度算法被廣泛應(yīng)用于解決大型空間或者連續(xù)動作空間的強化學(xué)習(xí)問題中,直到2014年,效力于谷歌公司旗下Deepmind實驗室的DavidSilver提出確定性策略梯度理論,不僅從數(shù)學(xué)上證明了確定性策略梯度的存在,同時提出確定性策略梯度算法(DeterministicPolicyGradient,DPG)。DDPG便是深度神經(jīng)網(wǎng)絡(luò)與DPG算法結(jié)合的產(chǎn)物,實現(xiàn)端到端的學(xué)習(xí)。
(2)DPG算法。DPG算法包括在線策略確定性AC、離線策略確定性AC兩種,確定性策略在進行強化學(xué)習(xí)時,智能體對于給定狀態(tài)s和策略參數(shù)時,動作是固定的。也就是說,智能體的初始狀態(tài)確定后,通過確定性策略產(chǎn)生的軌跡會永遠是固定的,這樣就會導(dǎo)致智能體無法探索到其他的狀態(tài),從而無法學(xué)習(xí)到相對完整的“經(jīng)驗知識”,離線策略的引入可以有效解決上述問題,即:行動策略是隨機策略,評估策略是確定性策略。
(3)DDPG算法。DQN是強化學(xué)習(xí)中第一個將深度學(xué)習(xí)與強化學(xué)習(xí)結(jié)合的產(chǎn)物,通過神經(jīng)網(wǎng)絡(luò)的引入,使智能體可以從高維視頻像素中直接學(xué)習(xí)控制策略的方法,但是,DQN對于連續(xù)動作問題便顯得無能為力,而DPG算法可以有效解決動作空間連續(xù)問題,DDPG結(jié)合DQN與DPG,實現(xiàn)了從原始數(shù)據(jù)中進行端到端學(xué)習(xí)。
(1)行為決策。根據(jù)接口定義,通過調(diào)整油門(throttle)、方向盤(steer)、剎車(brake)信號實現(xiàn)自動駕駛車輛的控制。
(2)深度卷積網(wǎng)絡(luò)。預(yù)處理,原始輸入圖像為RGB圖像,這樣不僅浪費算力,還導(dǎo)致深度卷積網(wǎng)絡(luò)的計算時間較長,因此,將RGB圖像編碼成單通道的灰度圖像。
(3)獎勵函數(shù)。經(jīng)過對比訓(xùn)練,設(shè)計復(fù)合獎勵函數(shù)如下:
r=rc+ra+rv式中,rc是碰撞的懲罰項,發(fā)生碰撞:rc=-100,否則rc=0.1;ra是駛出道路的懲罰項,駛出道路:ra=-10,否則ra=0.5;rv是速度的懲罰項,速度大于80或者小于10:rv=-5,否則rv=0.5.
(4)探索策略。本文通過給確定性策略添加噪聲N來構(gòu)建行為策略,保證智能體可以高效的探索:式中,N選擇隨機噪聲。
(1)仿真環(huán)境。Carla作為一款專業(yè)的自動駕駛模擬環(huán)境,提供多元化的Python接口實現(xiàn)地圖切換、傳感器信號切換、汽車控制等。
(2)實驗環(huán)境。實驗環(huán)境為ubuntu18.04操作系統(tǒng)、256G內(nèi)存、TeslaV100顯卡*(4)Carla0.9.2、python3.7。訓(xùn)練7000個回合,每個回合500步。
(3)實驗結(jié)果。①獎勵??梢钥闯觯珼DPG算法引導(dǎo)的自動駕駛車輛經(jīng)過大約3000個回合后,獎勵逐漸趨于穩(wěn)定。②指定路線成功率。測試選擇20條不同的路線,每條路線測試5次,成功率達到95%。
本文采用深度強化學(xué)習(xí)的方法,通過設(shè)計合理的獎勵函數(shù)、深度卷積網(wǎng)絡(luò)、探索策略,實現(xiàn)車輛指定路線的自動駕駛。同時,通過測試回放發(fā)現(xiàn),車輛在包含環(huán)島路況的路線時效果欠佳,未來的工作,將針對此進行算法優(yōu)化和改進。