程浩鵬,朱 涵,楊高奇,晏為民,王慧婷
(1.中國民用航空飛行學(xué)院計(jì)算機(jī)學(xué)院,廣漢 618300;2.中國民用航空飛行學(xué)院理學(xué)院,廣漢 618300)
機(jī)器人技術(shù)自上世紀(jì)六十年代起就有學(xué)者開始了相關(guān)的研究,并隨著自動(dòng)控制技術(shù)與傳感器技術(shù)的進(jìn)步,電子工業(yè)的逐步發(fā)展,經(jīng)過近半個(gè)世紀(jì)的不斷發(fā)展,各類機(jī)器人幾乎應(yīng)用到了各行各業(yè)[1]。在進(jìn)入21 世紀(jì)以來,機(jī)器人技術(shù)熱度不減,并被工業(yè)界認(rèn)為是可以引領(lǐng)未來產(chǎn)業(yè)發(fā)展的重要技術(shù)[2]。
機(jī)器人的使用領(lǐng)域從傳統(tǒng)工業(yè)制造領(lǐng)域不斷擴(kuò)展,現(xiàn)已應(yīng)用于醫(yī)療服務(wù)、教育服務(wù)、地質(zhì)地理勘探、生物工程、搶險(xiǎn)救災(zāi)等不同領(lǐng)域[3]。按照作業(yè)空間來對(duì)機(jī)器人做劃分,可分類為:陸地移動(dòng)機(jī)器人、水下作業(yè)機(jī)器人、無人飛機(jī)、外星探索機(jī)器人等[4]。目前需要突破的機(jī)器人關(guān)鍵技術(shù)包括:環(huán)境感知、導(dǎo)航和運(yùn)動(dòng)規(guī)劃、類人操作、人機(jī)交互、行為安全等[5]。本文選取小型移動(dòng)機(jī)器人在路徑規(guī)劃上的應(yīng)用作為典型研究對(duì)象進(jìn)行分析。
路徑規(guī)劃作為機(jī)器人關(guān)鍵技術(shù)之一,其原型可視為早在上世紀(jì)60 年代就被提出的旅行商問題(Traveling Salesman Problem,TSP)[6],旅行商問題后被證明是組合優(yōu)化中的一個(gè)NP-難問題[7]。由旅行商問題可延伸到物流業(yè)中的車輛路徑規(guī)劃問題(Vehicle Routing Problem,VRP),最早是由Dantzig 等[8]提出的卡車調(diào)度問題。經(jīng)典的車輛路徑規(guī)劃問題就是在一定約束條件下,尋找車輛從起點(diǎn)到終點(diǎn)狀態(tài)的無碰撞最優(yōu)或次優(yōu)路徑[9]。此約束條件由車輛本身內(nèi)在約束的運(yùn)動(dòng)學(xué)和車輛動(dòng)力學(xué)模型約束[10],車輛所處環(huán)境的約束[11]等。移動(dòng)機(jī)器人路徑規(guī)劃問題也可作為此類問題之一,是移動(dòng)機(jī)器人導(dǎo)航和運(yùn)動(dòng)規(guī)劃研究內(nèi)容的重要組成部分。
路徑規(guī)劃問題的求解,有傳統(tǒng)路徑規(guī)劃算法和智能仿生學(xué)路徑規(guī)劃算法,以及嘗試將深度學(xué)習(xí)與強(qiáng)化學(xué)習(xí)應(yīng)用到路徑規(guī)劃問題的求解等方法??蓮娜郑?2]、局部或是全局靜態(tài)與局部動(dòng)態(tài)結(jié)合[13]的概念來對(duì)路徑規(guī)劃算法加以分類。除了路徑規(guī)劃問題求解,在小型移動(dòng)機(jī)器人上的路徑規(guī)劃問題通常還包含環(huán)境建圖[14]這個(gè)子問題。此問題使用的建圖方式有可視圖法[15]、Voronoi 圖方法[16]、柵格圖法、SLAM 建圖等方法。
隨著人工智能技術(shù)的不斷發(fā)展,讓機(jī)器來學(xué)習(xí),并像人類一樣思考是廣大人工智能領(lǐng)域研究者的目標(biāo)。機(jī)器學(xué)習(xí)作為實(shí)現(xiàn)人工智能技術(shù)的一部分,經(jīng)過了半個(gè)多世紀(jì)的研究后也有了很多分支,在模型上,有神經(jīng)網(wǎng)絡(luò)和N個(gè)網(wǎng)絡(luò)疊加的深度神經(jīng)網(wǎng)絡(luò)等;學(xué)習(xí)方法上,包括監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí)以及強(qiáng)化學(xué)習(xí)等方式。強(qiáng)化學(xué)習(xí)相比于其他需要更多先驗(yàn)知識(shí)來進(jìn)行訓(xùn)練的學(xué)習(xí)方式,其具有直接與環(huán)境進(jìn)行交互,通過環(huán)境的反饋信息來優(yōu)化決策的特點(diǎn)。強(qiáng)化學(xué)習(xí)在游戲、機(jī)器人、推薦系統(tǒng)、廣告以及金融等各領(lǐng)域都有相關(guān)應(yīng)用。但是最令人印象深刻的一次應(yīng)用即是2016年AlphaGo[17-18]在圍棋上戰(zhàn)勝人類頂尖棋手,展示了超凡的學(xué)習(xí)和決策能力,其原理是將深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)與強(qiáng)化學(xué)習(xí)結(jié)合。
圖1展示了強(qiáng)化學(xué)習(xí)與人工智能各個(gè)部分之間的關(guān)系。
圖1 強(qiáng)化學(xué)習(xí)與人工智能的關(guān)系
強(qiáng)化學(xué)習(xí)與DNN 結(jié)合的算法為機(jī)器人的路徑?jīng)Q策提供了新的思路。本文針對(duì)小型移動(dòng)機(jī)器人這一具體機(jī)器人種類,梳理深度強(qiáng)化學(xué)習(xí)的研究進(jìn)展以及其中關(guān)于此類問題的解決方案。本文將從基于值函數(shù)的深度強(qiáng)化學(xué)習(xí)和基于策略的深度強(qiáng)化學(xué)習(xí)兩個(gè)方面做介紹。
強(qiáng)化學(xué)習(xí)方法是在1954 年由Minsky[19]提出,但當(dāng)時(shí)的研究僅僅限于有限的探索階段,并沒有引起太多的重視。強(qiáng)化學(xué)習(xí)是通過智能體/環(huán)境接口來實(shí)現(xiàn)學(xué)習(xí)的。其要素包括策略、獎(jiǎng)勵(lì)函數(shù)、值函數(shù)和模型,強(qiáng)化學(xué)習(xí)的一種建模方法是Markov 決策過程[20]。強(qiáng)化學(xué)習(xí)問題的歸類可以從環(huán)境映射和學(xué)習(xí)方式兩方面分析,如圖2所示。
具體算法類型有值函數(shù)與策略函數(shù)。圖3簡(jiǎn)要說明了兩者方法所產(chǎn)生的算法發(fā)展脈絡(luò),其中包含了對(duì)兩者結(jié)合使用的算法。
值函數(shù)更新的強(qiáng)化學(xué)習(xí)關(guān)鍵原理在于狀態(tài)動(dòng)作價(jià)值函數(shù)Q(St,At)的設(shè)計(jì):
通過使用此公式計(jì)算每個(gè)狀態(tài)的獎(jiǎng)勵(lì)值,評(píng)估智能體在狀態(tài)St下所能獲得的長期價(jià)值,并對(duì)價(jià)值求期望,以此指導(dǎo)智能體選擇期望值最大的動(dòng)作來幫助智能體決策。
深度強(qiáng)化學(xué)習(xí)自2013 年被Silver 及其團(tuán)隊(duì)提出深度Q 網(wǎng)絡(luò)[21]之后,便獲得研究者們的廣泛關(guān)注,并在此基礎(chǔ)上對(duì)其進(jìn)行各種改進(jìn)。其團(tuán)隊(duì)提出的深度Q 網(wǎng)絡(luò)是基于多層卷積神經(jīng)網(wǎng)絡(luò),并與值函數(shù)學(xué)習(xí)中的經(jīng)典算法Q-learning算法結(jié)合,使用深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Net?works,DNN)來逼近值函數(shù)。在Atari 游戲平臺(tái)的良好表現(xiàn)證明此方法的良好適用性,但是DQN 也存在過估計(jì)、局部最優(yōu)與全局最優(yōu)的平衡、學(xué)習(xí)效率低、算法穩(wěn)定性不高、智能體探索環(huán)境效率差等問題。
過估計(jì)問題不僅僅是在DQN 中產(chǎn)生的,而是在其基礎(chǔ)算法Q-learning 中已經(jīng)產(chǎn)生,在Q-learning 中,更新Q值是通過價(jià)值函數(shù)來進(jìn)行的,在每次選擇Q值時(shí),都會(huì)選擇最大價(jià)值,然后再對(duì)價(jià)值求期望。正因如此,對(duì)于估計(jì)Q值的更新,勢(shì)必會(huì)比真實(shí)值大,就出現(xiàn)了過估計(jì)的問題,因而影響最終結(jié)果。Double DQN[22]是DQN 算法的改進(jìn)版本,證明了在DQN 的某一些實(shí)驗(yàn)平臺(tái)上存在過估計(jì)的問題,通過隨機(jī)分配經(jīng)驗(yàn)池中的兩套已有參數(shù)來更新值函數(shù),對(duì)值函數(shù)更新兩次產(chǎn)生兩組權(quán)重,從而降低過估計(jì)的影響。多個(gè)對(duì)照實(shí)驗(yàn)都表明Double DQN 獲得了比DQN 更高的分?jǐn)?shù)。除了過估計(jì)問題導(dǎo)致的動(dòng)作選擇差異,算法的不穩(wěn)定性也會(huì)對(duì)性能造成影響。Ansche 等[23]提出了Averaged-DQN,對(duì)DQN 進(jìn)行了擴(kuò)展,基于之前學(xué)習(xí)的Q值估計(jì)進(jìn)行平均,通過減少目標(biāo)值中的近似誤差方差,從而具有更穩(wěn)定的訓(xùn)練過程并提高性能,顯著提高了穩(wěn)定性和性能。Dong 等[24]提出了動(dòng)態(tài)目標(biāo)雙深度網(wǎng)絡(luò)(Dynamic Target Double Deep Q Network,DTDDQN),融合了Averaged-DQN 對(duì)Double DQN 進(jìn)行改進(jìn),充分利用先驗(yàn)知識(shí)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,使得網(wǎng)絡(luò)輸出更接近真實(shí)值。
針對(duì)DQN 算法采樣效率不高的問題,Nair等[25]展示了第一個(gè)用于深度強(qiáng)化學(xué)習(xí)的大規(guī)模分布式架構(gòu)Gorila架構(gòu),該架構(gòu)使用分布式重放內(nèi)存和分布式神經(jīng)網(wǎng)絡(luò)并行地行動(dòng)和學(xué)習(xí)。利用大規(guī)模并行性,Gorila DQN 在49 款游戲中的41 款游戲中顯著優(yōu)于單DQN。上述方式通過多機(jī)器同時(shí)訓(xùn)練達(dá)到訓(xùn)練效率的提升,在采樣方式上進(jìn)行改進(jìn)同樣也可以提高算法的性能,Google DeepMind 團(tuán)隊(duì)的Horgan 等[26]為深度強(qiáng)化學(xué)習(xí)中的優(yōu)先回放機(jī)制設(shè)計(jì)了一個(gè)分布式框架。這種架構(gòu)將行為與學(xué)習(xí)解耦,依賴于優(yōu)先經(jīng)驗(yàn)回放,只關(guān)注生成的最重要的數(shù)據(jù)。在Atari 平臺(tái)上,在其中的近50 種游戲上得到了比單純使用DQN 平均提高了80%,對(duì)單一游戲場(chǎng)景的最大提升可達(dá)106%。在強(qiáng)化學(xué)習(xí)采樣過程中,樣本所能提供的信息量比較少,這也是導(dǎo)致采樣效率不高的原因之一。Bellemare 等[27]提出了價(jià)值分布的理論,構(gòu)建模型輸出對(duì)價(jià)值的分布估計(jì),將傳統(tǒng)貝爾曼方程去掉了期望值,引入隨機(jī)變量Zπ的完全分布,將其稱為價(jià)值分布。并提出了一種基于分布貝爾曼最優(yōu)算子的算法,并且在算法中使用51 個(gè)原子,生成了分類DQN(Categorical DQN)算法,結(jié)果顯示C51 的訓(xùn)練性能優(yōu)于完全訓(xùn)練的DQN。在5000 萬幀內(nèi),C51在57 場(chǎng)比賽中的45 場(chǎng)比賽中的表現(xiàn)都優(yōu)于經(jīng)過全面訓(xùn)練的DQN。
為了提升學(xué)習(xí)的效率,決斗網(wǎng)絡(luò)架構(gòu)DQN(Dueling DQN)[28]使用改進(jìn)的網(wǎng)絡(luò)架構(gòu)可以獲得更高的平均獎(jiǎng)勵(lì),提高穩(wěn)定性,能夠有效地學(xué)習(xí)狀態(tài)值函數(shù)。隨著決斗架構(gòu)中Q 值的每次更新,價(jià)值流V 都會(huì)更新,這樣為V 分配了更多的資源,因此可以更好地逼近狀態(tài)值。在實(shí)驗(yàn)中,當(dāng)動(dòng)作數(shù)量很大時(shí),決斗架構(gòu)相對(duì)于單流Q 網(wǎng)絡(luò)的優(yōu)勢(shì)會(huì)增加。由于DQN 需要大量的訓(xùn)練才能達(dá)到理想的性能要求,在學(xué)習(xí)時(shí)的表現(xiàn)很差,Todd Hester 的團(tuán)隊(duì)[29]提出了Deep Qlearning from Demonstrations(DQfD),引入了監(jiān)督學(xué)習(xí)的部分思想,使用少量的先驗(yàn)數(shù)據(jù)來加速強(qiáng)化學(xué)習(xí)的過程,使用預(yù)訓(xùn)練的過程來對(duì)學(xué)習(xí)進(jìn)行加速,結(jié)果表明DQfD 比Prioritized Duel?ing Double Deep Q-Networks(PDD DQN)等三種算法的初始性能都更好,在42 場(chǎng)游戲環(huán)節(jié)中的41 場(chǎng)的前一百萬步中得分更高。Deep Mind 團(tuán)隊(duì)[30]在分析了DQN 的各種改進(jìn)版本之后,將各版本算法的優(yōu)劣進(jìn)行比較,并提出了集合優(yōu)點(diǎn)后的算法Rainbow。同樣是在Atari 游戲中進(jìn)行測(cè)試,結(jié)果顯示算法更能應(yīng)對(duì)復(fù)雜環(huán)境,相比于其他算法能有更好的表現(xiàn)。
基于值函數(shù)深度強(qiáng)化學(xué)習(xí)進(jìn)行移動(dòng)機(jī)器人的自動(dòng)決策和路徑規(guī)劃,是強(qiáng)化學(xué)習(xí)在實(shí)際應(yīng)用當(dāng)中的探索之一,很多研究者在上述提出的算法當(dāng)中進(jìn)行了改進(jìn)以及實(shí)驗(yàn)。
Chen 等[31]將強(qiáng)化學(xué)習(xí)的經(jīng)典算法Qlearning 算法應(yīng)用在智能船舶的路徑?jīng)Q策上,船舶在模擬航道中使用Nomoto 模型進(jìn)行建模。將距離、障礙物和禁區(qū)規(guī)則化為獎(jiǎng)勵(lì)或懲罰,用于判斷船舶的性能或操縱決策,經(jīng)過足夠多的訓(xùn)練輪次后,產(chǎn)生令人信服的路徑和操縱策略。該方法在自學(xué)習(xí)和持續(xù)優(yōu)化方面更有效,因此更接近人類操縱的結(jié)果。Lei 等[32]使用雙Q 網(wǎng)絡(luò)(DDQN)應(yīng)用于未知環(huán)境的動(dòng)態(tài)路徑規(guī)劃。在不同的訓(xùn)練階段,動(dòng)態(tài)調(diào)整起始位置和目標(biāo)位置,將卷積神經(jīng)網(wǎng)絡(luò)(CNN)用于泛化環(huán)境狀態(tài)。結(jié)果表明,經(jīng)過不同動(dòng)態(tài)環(huán)境的訓(xùn)練和新環(huán)境的測(cè)試,智能體能夠在未知?jiǎng)討B(tài)環(huán)境下成功到達(dá)局部目標(biāo)位置。Yan 等[33]提出了一種基于全局態(tài)勢(shì)信息的無人機(jī)路徑規(guī)劃深度強(qiáng)化學(xué)習(xí)方法,以STAGE Scenario 軟件作為仿真環(huán)境,采用了決斗雙深度Q 網(wǎng)絡(luò)(D3QN)算法,證明了所提出的方法在靜態(tài)和動(dòng)態(tài)任務(wù)設(shè)置下的性能。Gao等[34]提出將DRL 算法Twin Delayed Deep Deter?ministic Policy gradients(TD3)與傳統(tǒng)的全局路徑規(guī)劃算法Probabilistic Roadmap(PRM)相結(jié)合,作為一種新穎的路徑規(guī)劃器(PRM+TD3)。實(shí)驗(yàn)結(jié)果表明,增量訓(xùn)練模式可以顯著提高開發(fā)效率。而且,PRM+TD3 路徑規(guī)劃器可以有效提高模型的泛化能力。
強(qiáng)化學(xué)習(xí)的另一個(gè)狀態(tài)更新方式是基于策略的更新,和基于值函數(shù)的更新方式不同,基于策略的更新方式是根據(jù)狀態(tài)St輸出的行動(dòng)概率,由行動(dòng)概率來計(jì)算狀態(tài)的價(jià)值[35]。在基于策略處理的深度強(qiáng)化學(xué)習(xí)中,策略梯度的使用非常廣泛。其參數(shù)更新方式如下:
通過使用DNN 來逼近策略的方法就是基于策略的更新方式。值函數(shù)由于其需要對(duì)動(dòng)作進(jìn)行采樣,就只能處理離散動(dòng)作的情況,而基于策略的算法則是直接利用整體策略對(duì)動(dòng)作進(jìn)行選擇,因而可以用于處理連續(xù)動(dòng)作空間的情況?,F(xiàn)在最先進(jìn)的深度強(qiáng)化學(xué)習(xí)研究都是以值函數(shù)與策略更新方式二者結(jié)合方式進(jìn)行,將兩種更新方式中的優(yōu)良思想融合,也能獲得很好的效果。基于策略的深度強(qiáng)化學(xué)習(xí)可以從基于深度確定性策略梯度[36](Deterministic Policy Gradi?ent,DPG),行動(dòng)者-評(píng)論家[37](Actor-Critic,AC)以及策略優(yōu)化[38](Policy Optimization,PO)三個(gè)角度來進(jìn)行改進(jìn)。
3.1.1 AC框架和確定性策略梯度方法
單獨(dú)使用價(jià)值更新的方式在AC 框架中被稱為Critic-only 方法,完全依賴于價(jià)值函數(shù)近似,旨在學(xué)習(xí)貝爾曼方程的近似解,然后有望制定一個(gè)接近最優(yōu)的策略,但在結(jié)果策略的接近最優(yōu)性方面缺乏可靠的保證。而單獨(dú)使用基于策略更新的方式在AC 框架中被稱為Actor-only 方法,存在的問題主要是學(xué)習(xí)效率低下、環(huán)境探索度不高[39]。結(jié)合兩者的優(yōu)點(diǎn)就提出了Actor-Critic 算法,訓(xùn)練時(shí)可以交替更新參數(shù),一定程度上提高了算法的性能。但是高樣本復(fù)雜性和對(duì)超參數(shù)的脆弱性仍然未能解決。Haarnoja等[40]推出了基于最大熵RL 框架的軟策略Actor-Critic 算法(Soft Actor-Critic,SAC)。能夠提供樣本高效學(xué)習(xí),同時(shí)保留熵最大化和穩(wěn)定性的優(yōu)勢(shì),使用軟策略迭代收斂到最優(yōu)策略。Za?havy 等[41]提出自調(diào)整AC 算法(Self-Tuning Actor-Critic,STAC)。通過元梯度下降自動(dòng)在線調(diào)整超參數(shù),并使用一種新的V-trace 算子來改進(jìn)離策略學(xué)習(xí)。當(dāng)應(yīng)用于Arcade 學(xué)習(xí)環(huán)境時(shí),STAC 中將人類標(biāo)準(zhǔn)化分?jǐn)?shù)的中位數(shù)從243%提高到364%。Flet-Berliac 等[42]提出了第三個(gè)角色:對(duì)手。并形成了對(duì)抗性引導(dǎo)下的AC 算法(Adversarially Guided Actor-Critic,AGAC),使行動(dòng)者行為在獎(jiǎng)勵(lì)極為罕見的任務(wù)中具有創(chuàng)新性。實(shí)驗(yàn)分析表明,由此產(chǎn)生的對(duì)抗性引AGAC算法會(huì)導(dǎo)致更詳盡的探索。在異步學(xué)習(xí)方式上,Babaeizadeh 等[43]使用異步優(yōu)化方式稱為Asynchronous Advantage Actor-Critic(A3C)的新型輕量級(jí)并行方法,在許多游戲任務(wù)上實(shí)現(xiàn)了最先進(jìn)的結(jié)果。當(dāng)使用適當(dāng)?shù)膶W(xué)習(xí)率時(shí),A3C從原始屏幕輸入中學(xué)習(xí)玩Atari 游戲比以前的方法更快、更有效。
確定性策略梯度算法是由Silver 等[44]在AC架構(gòu)上提出的,可以從探索性行為策略中學(xué)習(xí)確定性目標(biāo)策略?;舅枷胧峭ㄟ^參數(shù)概率分布來表示策略。根據(jù)參數(shù)向量θ隨機(jī)選擇狀態(tài)s中的動(dòng)作a。策略梯度算法通常通過對(duì)該隨機(jī)策略進(jìn)行采樣并朝著更大累積獎(jiǎng)勵(lì)的方向調(diào)整策略參數(shù)來進(jìn)行。深度確定性策略梯度算法(De?terministic Policy Gradient,DDPG)[45]是由確定性策略梯度算法演變而來的,適合于連續(xù)控制的場(chǎng)景,在AC 架構(gòu)基礎(chǔ)上,同時(shí)又結(jié)合了DQN,使之具有深度的特點(diǎn)。此算法只需要一個(gè)簡(jiǎn)單的actor-critic 架構(gòu)和學(xué)習(xí)算法,幾乎沒有“移動(dòng)部件”,使其易于實(shí)現(xiàn)和擴(kuò)展到更困難的問題和更大的網(wǎng)絡(luò)。
和其他DRL 方法一樣,高估偏差和大量的訓(xùn)練時(shí)間是制約DDPG 算法應(yīng)用的主要瓶頸。為了克服Actor-Critic 中的高估現(xiàn)象,雙延遲深度確定性(Twin Delayed DDPG,TD3)策略梯度算法[46]應(yīng)用了一對(duì)critic 函數(shù)進(jìn)行值估計(jì),并在這兩個(gè)估計(jì)之間取最小值進(jìn)行目標(biāo)更新。這種最小化操作可以有效緩解連續(xù)控制設(shè)置中的高估現(xiàn)象,但可能會(huì)在每次更新迭代時(shí)造成低估偏差,對(duì)此有一個(gè)簡(jiǎn)單的解決方案,即批量約束深度Q 學(xué)習(xí)(BCQ)[47],用于限制TD3 中的低估現(xiàn)象。為了平衡高估和低估的現(xiàn)象,Wu等[48]提出了三元平均深度確定性策略梯度算法(Triplet-Average Deep Deterministic Policy Gradi?ent,TADDPG)。算法采用三元批評(píng)者的加權(quán)動(dòng)作值和平均Q 值方法來進(jìn)行穩(wěn)健的目標(biāo)更新,此方法在OpenAI gym 的幾個(gè)控制任務(wù)上實(shí)現(xiàn)了比原始方法更好的性能。對(duì)于深度確定性策略梯度算法也有很多其他的改進(jìn),Dirichlet DDPG(D3PG)是Ale 等[49]提出的基于DDPG 的算法,這樣就能夠解決連續(xù)動(dòng)作空間并滿足移動(dòng)邊緣計(jì)算(Mobile Edge Computing,MEC)任務(wù)劃分的約束。為了滿足動(dòng)作空間約束,使用了Dirich?let distribution(狄利克雷分布)來捕獲受限動(dòng)作。另一種D3PG(Decomposed Deep Deterministic Policy Gradient,分解的深度確定性策略梯度)的算法是由Dong等[50]提出的,是DDPG的多代理擴(kuò)展,將全局評(píng)論家分解為局部評(píng)論家的加權(quán)和,提出了一種在學(xué)習(xí)過程中學(xué)習(xí)權(quán)重的方法,以捕獲智能體之間不同級(jí)別的依賴關(guān)系,另一個(gè)優(yōu)點(diǎn)是它能夠提供對(duì)最終學(xué)習(xí)策略的明確解釋以及學(xué)習(xí)機(jī)器人關(guān)節(jié)之間的潛在依賴關(guān)系。關(guān)于DDPG改進(jìn)的另一個(gè)方案是分布式深度確定性策略梯度算法[51](Distributed Distributional Deep Determinis?tic Policy Gradient,D4PG)。使用ApeX 框架[52]大大節(jié)省了困難控制任務(wù)的掛鐘(wall-clock)時(shí)間。算法實(shí)現(xiàn)了分布式評(píng)論家更新、分布式并行參與者的使用、N 步返回(N-step returns)和優(yōu)先經(jīng)驗(yàn)回放。該算法在各種控制任務(wù)硬操作和運(yùn)動(dòng)任務(wù)(Hard Manipulation and Locomotion Tasks)中獲得了最先進(jìn)的性能。
3.1.2 策略優(yōu)化方法
在強(qiáng)化學(xué)習(xí)策略優(yōu)化方法中,更新過程中適當(dāng)?shù)牟介L對(duì)訓(xùn)練效率有著很大的影響。信任域方法是一類流行的算法,其中包括信任區(qū)域策略優(yōu)化(TRPO)和近端策略優(yōu)化(PPO)。在這些方法中,需要迭代地最小化兩項(xiàng)內(nèi)容:目標(biāo)函數(shù)的線性化以及限制兩個(gè)連續(xù)更新到彼此互相接近的臨近項(xiàng),例如Mirror Descent(MD)[53]?;诖?,Schulman 等[54]提出了信賴域策略優(yōu)化(Trust Region Policy Optimization,TRPO)算法,分析了優(yōu)化隨機(jī)控制策略的信任域方法,該算法使用KL 散度懲罰反復(fù)優(yōu)化策略的預(yù)期成本的局部近似值。實(shí)驗(yàn)證明,其算法在神經(jīng)網(wǎng)絡(luò)上的優(yōu)化是非常有效的,并且具有可擴(kuò)展性,此算法可以讓由各種關(guān)節(jié)組成的類人智能體學(xué)習(xí)跳躍、行動(dòng)等復(fù)雜策略。在使用策略優(yōu)化方法進(jìn)行模型優(yōu)化時(shí),傾向于利用沒有足夠數(shù)據(jù)來訓(xùn)練模型的區(qū)域,導(dǎo)致訓(xùn)練不穩(wěn)定,這也被稱為模型偏差。Kurutach 等[55]分析了基于vanilla模型的強(qiáng)化學(xué)習(xí)方法的行為,為了解決上述問題,使用模型集合來保持模型的不確定性并規(guī)范學(xué)習(xí)過程,并提出了模型集成信任域策略優(yōu)化(Model-Ensemble Trust-Region Policy Optimi?zation,ME-TRPO)算法,與連續(xù)控制基準(zhǔn)任務(wù)的無模型深度RL 方法相比,顯著降低了樣本復(fù)雜度。Kamyar 等[56]提出了廣義信任區(qū)域策略優(yōu)化(Generalized Trust Region Policy Optimization,GTRPO),將模型假設(shè)放寬到回合設(shè)置和具有無記憶策略的部分可觀察模型。算法上,使用Q函數(shù)的變體,使得計(jì)算效率很高。GTRPO 中的策略更新提高了預(yù)期的累積回報(bào),并且GTRPO保證能夠收斂。Li 等[57]將信任區(qū)域策略優(yōu)化(TRPO)擴(kuò)展到多智能體強(qiáng)化學(xué)習(xí)(MARL)問題。轉(zhuǎn)化為多智能體案例的分布式共識(shí)優(yōu)化問題。通過對(duì)共識(shí)優(yōu)化模型進(jìn)行一系列近似,提出了一種去中心化的MARL 算法,稱之為多智能體TRPO(MATRPO)算法,可以基于局部觀測(cè)和個(gè)體獎(jiǎng)勵(lì)來優(yōu)化分布式策略。實(shí)驗(yàn)證明了它在復(fù)雜的MARL任務(wù)上的強(qiáng)大性能。
信任域方法的另一種策略梯度方法是近端策略優(yōu)化類型方法?;A(chǔ)算法由Schulman 等[58]提出,使用隨機(jī)梯度上升優(yōu)化“代理”目標(biāo)函數(shù)。提出了一種新的目標(biāo)函數(shù),可實(shí)現(xiàn)小批量更新的多個(gè)訓(xùn)練次數(shù),稱之為鄰近策略優(yōu)化(Proximal Policy Optimization,PPO)。此算法具有信任區(qū)域策略優(yōu)化(TRPO)的一些優(yōu)點(diǎn),但它們實(shí)現(xiàn)起來更簡(jiǎn)單、更通用,并且具有更好的樣本復(fù)雜度(根據(jù)經(jīng)驗(yàn))。在模擬機(jī)器人運(yùn)動(dòng)和Atari 游戲的實(shí)驗(yàn)上,表明PPO 優(yōu)于其他在線策略梯度方法,并且總體上在樣本復(fù)雜性、簡(jiǎn)單性和掛鐘時(shí)間之間取得了良好的平衡。Zou等[59]提出了一種適度的強(qiáng)化學(xué)習(xí)策略更新方法,基于最大熵框架建立了分離的信任區(qū)域并進(jìn)行優(yōu)化,稱之為策略均值和方差分離信任方法(Sepa?rated Trust Region for policy Mean and Variance,STRMV),是對(duì)鄰近策略優(yōu)化(PPO)的擴(kuò)展,但它對(duì)策略更新更溫和,對(duì)探索更活躍。實(shí)驗(yàn)表明,STRMV 優(yōu)于以前最先進(jìn)的on-policy 方法,不僅獲得了更高的獎(jiǎng)勵(lì),而且提高了樣本效率。針對(duì)近端策略優(yōu)化(PPO)容易出現(xiàn)探索不足的風(fēng)險(xiǎn),導(dǎo)致訓(xùn)練失敗或陷入糟糕的局部最優(yōu)。Wang 等[60]提出了信任區(qū)域引導(dǎo)PPO(Trust Region-Guided PPO,TRGPPO),它可以自適應(yīng)地調(diào)整信任區(qū)域內(nèi)的裁剪范圍。方法不僅提高了信任區(qū)域內(nèi)的探索能力,而且具有更好的性能界限。表1展示了各算法的總結(jié)。
表1 深度強(qiáng)化學(xué)習(xí)模型改進(jìn)總結(jié)
續(xù)表1
Lakshmanan 等[61]提出了一個(gè)完整的覆蓋路徑規(guī)劃(CCPP)模型,基于Tetromino 的可重構(gòu)機(jī)器人平臺(tái)hTetro,使用經(jīng)驗(yàn)回放的Actor Critic(ACER)強(qiáng)化學(xué)習(xí)算法訓(xùn)練具有長短期記憶(LSTM)層的卷積神經(jīng)網(wǎng)絡(luò)(CNN)。該模型還與基于旅行商問題(TSP)的遺傳算法(GA)和蟻群優(yōu)化(ACO)方案進(jìn)行了比較。所提出的方案生成了一條成本較低的路徑,需要較少的時(shí)間來生成。該模型也非常健壯,可以在任何預(yù)訓(xùn)練的環(huán)境中生成路徑。
近年來,對(duì)于多智能體的協(xié)同控制以及多智能體強(qiáng)化學(xué)習(xí)的研究也是強(qiáng)化學(xué)習(xí)研究的熱點(diǎn)之一,Qie 等[62]針對(duì)無人機(jī)協(xié)同控制系統(tǒng)中多無人機(jī)目標(biāo)分配與路徑規(guī)劃(MUTAPP)問題,提出了一種基于多智能體深度確定性策略梯度(MADDPG)算法,被稱為同步目標(biāo)分配和路徑規(guī)劃(STAPP),由于系統(tǒng)中使用的神經(jīng)網(wǎng)絡(luò)簡(jiǎn)單,因此可以保證實(shí)時(shí)性能。Sunehag 等[63]、Iqbal等[64]從多機(jī)器人協(xié)作控制方面進(jìn)行了研究,都取得了比較好的效果。
本文主要關(guān)注深度強(qiáng)化學(xué)習(xí)的兩種基本類型,以及兩者結(jié)合的算法的發(fā)展歷程。關(guān)注移動(dòng)機(jī)器人路徑規(guī)劃這一場(chǎng)景,雖然現(xiàn)在深度強(qiáng)化學(xué)習(xí)的模型較為豐富,各種改進(jìn)方法層出不窮,但是其效果主要是在視頻游戲平臺(tái)、機(jī)械臂仿真等仿真環(huán)境,在實(shí)際應(yīng)用上,還是未能完全替代已經(jīng)成熟的路徑規(guī)劃算法。這主要是因?yàn)樯疃葟?qiáng)化學(xué)習(xí)的特點(diǎn),需要大量的樣本來進(jìn)行學(xué)習(xí),而實(shí)際環(huán)境空間過大,也會(huì)有無法快速探索的問題,這就在效率方面對(duì)算法應(yīng)用提出了要求。
未來在深度強(qiáng)化學(xué)習(xí)算法落地上還是有不小的挑戰(zhàn),需要在環(huán)境、智能體、狀態(tài)、動(dòng)作空間、深度網(wǎng)絡(luò)結(jié)構(gòu)、迭代方式上進(jìn)行改進(jìn),并且在算法的選擇上還需要慎重,每種算法的特點(diǎn)各不相同,適用領(lǐng)域也有區(qū)別,在算法落地方面也需要進(jìn)行不同程度的改進(jìn),以適應(yīng)場(chǎng)景。未來對(duì)DRL 的研究也可以從多學(xué)科合作開展,在移動(dòng)機(jī)器人傳感器、運(yùn)動(dòng)學(xué)與自動(dòng)控制理論上的分析研究等也可以減輕DRL 應(yīng)用上的困難,讓DRL向著更智能、更實(shí)用的方向發(fā)展。