劉浚嘉,付 莊,謝榮理,張 俊,費(fèi) 健
(1.上海交通大學(xué)機(jī)械系統(tǒng)與振動(dòng)國(guó)家重點(diǎn)實(shí)驗(yàn)室,上海200240;2.上海交通大學(xué)醫(yī)學(xué)院附屬瑞金醫(yī)院,上海 200025)
經(jīng)過(guò)機(jī)械、電子、控制、計(jì)算機(jī)等領(lǐng)域長(zhǎng)達(dá)數(shù)十年的發(fā)展,機(jī)器人在服務(wù)行業(yè)的應(yīng)用逐漸興起。與工業(yè)界中的情況類似,日漸高昂的人工成本以及老齡化等社會(huì)問(wèn)題,極大地增加了人們研究與開(kāi)發(fā)服務(wù)機(jī)器人的熱情。服務(wù)機(jī)器人相較于較成熟的工業(yè)機(jī)器人,具有多任務(wù)、非結(jié)構(gòu)環(huán)境和安全可靠等復(fù)雜要求[1]。盡管基于現(xiàn)有技術(shù)設(shè)計(jì)的服務(wù)機(jī)器人還遠(yuǎn)不能滿足人們對(duì)美好生活的向往,但已經(jīng)引領(lǐng)了社會(huì)與人類生活的新潮流。
要想使服務(wù)機(jī)器人走進(jìn)家庭,就要使其具備主動(dòng)完成人類指定任務(wù)的能力。在現(xiàn)有技術(shù)支撐的前提下,一個(gè)可行的任務(wù)就是在復(fù)雜房屋中高效地到達(dá)人類指定的目標(biāo)位置。高效準(zhǔn)確的主動(dòng)目標(biāo)導(dǎo)航是一切服務(wù)的基礎(chǔ),因此,人們對(duì)移動(dòng)服務(wù)機(jī)器人的自主導(dǎo)航能力有更高的要求。移動(dòng)服務(wù)機(jī)器人需要能夠根據(jù)周圍環(huán)境的變化采取相應(yīng)的措施來(lái)提高移動(dòng)機(jī)器人的避障、導(dǎo)航能力。此外,考慮到成本因素,應(yīng)僅使用RGB-D傳感器完成上述要求[2]。因此,研究者們逐漸對(duì)將強(qiáng)化學(xué)習(xí)算法與機(jī)器人導(dǎo)航方法相結(jié)合產(chǎn)生興趣,旨在以學(xué)習(xí)的方式使機(jī)器人能夠通過(guò)與真實(shí)環(huán)境交互,自主探索并學(xué)習(xí)得到完成任務(wù)的最佳策略。
深度強(qiáng)化學(xué)習(xí)(deep reinforcement learning,DRL)在游戲與棋類任務(wù)中的成功,是建立在使用大量數(shù)據(jù)對(duì)大型神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練之上的,也就是使Model-based RL(MBRL)算法也具有這一特性。目前,先進(jìn)的智能體通常都具有很高的樣本復(fù)雜度,以近期在游戲中性能最強(qiáng)的幾種算法為例,MuZero[3]和Agent57[4]在每場(chǎng)Atari游戲中,均需要借助10~50年的經(jīng)驗(yàn),OpenAI Five[5]更是利用了相當(dāng)于人類45 000年的經(jīng)驗(yàn)來(lái)實(shí)現(xiàn)其卓越的性能。這些都是在模擬環(huán)境中通過(guò)大規(guī)模顯卡(GPU)與CPU集群的并行訓(xùn)練才實(shí)現(xiàn)的。在現(xiàn)實(shí)中,這顯然是不切實(shí)際的,與虛擬環(huán)境中的游戲不同,許多顯示任務(wù)收集交互數(shù)據(jù)的成本很高,高頻、高強(qiáng)度的交互甚至?xí)?dǎo)致系統(tǒng)的損壞,這在機(jī)器人領(lǐng)域是格外值得關(guān)注的。此外,從仿生學(xué)角度來(lái)講,這種利用大規(guī)模數(shù)據(jù)進(jìn)行并行學(xué)習(xí)的方式也不符合人類學(xué)習(xí)的直覺(jué),相比之下,人類近乎單線程的學(xué)習(xí)是十分高效的,通常可以僅通過(guò)很少的例子就掌握相關(guān)知識(shí)。要想DRL算法能夠大規(guī)模應(yīng)用到機(jī)器人的智能控制中,提高數(shù)據(jù)效率成為不可避免的技術(shù)路線[6]。
導(dǎo)致DRL算法數(shù)據(jù)利用效率低的原因有很多,Yu[7]列舉了影響數(shù)據(jù)效率的5個(gè)方面:探索策略、優(yōu)化方法、環(huán)境模型學(xué)習(xí)、經(jīng)驗(yàn)遷移與抽象化。本文結(jié)合這篇文章的觀點(diǎn),將影響因素總結(jié)為以下幾點(diǎn):
a.探索策略。常用的ε-greedy和Gibbs采樣等基礎(chǔ)探索策略是比較盲目且低效的。
b.環(huán)境模型學(xué)習(xí)。MBRL相較于Model-free RL(MFRL)在策略學(xué)習(xí)的同時(shí),利用同一組數(shù)據(jù)學(xué)習(xí)一個(gè)環(huán)境模型,會(huì)在數(shù)據(jù)的利用效率上有所提升。
c.狀態(tài)與動(dòng)作空間維度。DRL算法是將深度學(xué)習(xí)技術(shù)應(yīng)用于傳統(tǒng)強(qiáng)化學(xué)習(xí)的函數(shù)擬合與優(yōu)化中,而神經(jīng)網(wǎng)絡(luò)的參數(shù)量和擬合能力與輸入輸出維度成指數(shù)級(jí)相關(guān)性,維度越高,神經(jīng)網(wǎng)絡(luò)所需的參數(shù)量越多,擬合難度越大。
目前對(duì)高效強(qiáng)化學(xué)習(xí)的研究主要從2個(gè)方面入手:引入概率神經(jīng)網(wǎng)絡(luò)或?qū)<蚁闰?yàn)的軟約束。MBPO[8]是一種以貝葉斯神經(jīng)網(wǎng)絡(luò)為擬合工具的MBRL算法,將模型的誤差以概率的形式考慮到策略的學(xué)習(xí)中,使其不完全依賴模型對(duì)未來(lái)狀態(tài)預(yù)測(cè),從而實(shí)現(xiàn)策略在可信區(qū)間內(nèi)的魯棒預(yù)測(cè)學(xué)習(xí);此外,也可以通過(guò)引入專家示范作為軟約束,從不完美的示范數(shù)據(jù)中得到大致的探索方向[9],從而對(duì)強(qiáng)化學(xué)習(xí)的策略學(xué)習(xí)起到引導(dǎo)作用。二者均能夠提高訓(xùn)練數(shù)據(jù)的利用效率,從而加速學(xué)習(xí)進(jìn)程。
(1)
MBPO采用Soft Actor Critic (SAC)[10]作為其策略優(yōu)化算法,SAC在每一次策略估計(jì)時(shí),估算值函數(shù)為
(2)
作為動(dòng)作的評(píng)價(jià)指標(biāo),并在策略提升環(huán)節(jié)通過(guò)最小化期望KL散度Jπ(φ,D)=Est~D[DKL(π|exp{Qπ-Vπ})]來(lái)訓(xùn)練策略。本文在其基礎(chǔ)上,結(jié)合先驗(yàn)知識(shí),提出了能夠有效避免無(wú)意義探索的融合控制器,如圖1所示。
圖1 模糊先驗(yàn)引導(dǎo)融合控制框架
(3)
(4)
IPK的動(dòng)作可以確保機(jī)器人以很大概率避開(kāi)障礙物,并且避免在訓(xùn)練的初期在與目標(biāo)方位完全相反的方向進(jìn)行無(wú)意義的探索,而MBPO子系統(tǒng)仍可以在IPK的先驗(yàn)安全約束下,以一定程度的精度改進(jìn)整體的融合策略。因此,上述融合控制器就實(shí)現(xiàn)了學(xué)習(xí)過(guò)程中的安全探索。此外,它實(shí)現(xiàn)僅通過(guò)1次交互,而獲得2種不同的經(jīng)驗(yàn),這顯然會(huì)比單純的MBPO更加高效。
在初始化探索過(guò)程之后,MBPO將以高斯策略作為主要學(xué)習(xí)策略,該策略輸出符合高斯分布的動(dòng)作分布均值和方差。相應(yīng)地,IPK子系統(tǒng)也進(jìn)入了新的階段:融合控制器。盡管MBPO通過(guò)僅查詢短期推出的模型來(lái)解耦任務(wù)范圍和模型范圍,但是它仍然受到達(dá)到目標(biāo)的可能性的限制,尤其是在稀疏獎(jiǎng)勵(lì)問(wèn)題中。由于IPK的基礎(chǔ)控制器是基于規(guī)則的,因此,可以很方便地為其評(píng)估性能,從而形成了解決稀疏獎(jiǎng)勵(lì)問(wèn)題所提倡的內(nèi)在激勵(lì)。從初始Replay Buffer及其任務(wù)長(zhǎng)度的記錄中,可以將數(shù)據(jù)還原為完整格式。在每個(gè)時(shí)間步上,都可以得到動(dòng)作前后的目標(biāo)向量,然后可以容易地估計(jì)出每個(gè)動(dòng)作與預(yù)期方向的偏差。這些偏差可以描述為高斯分布。此外,SAC的原始行為也是高斯分布。因此,需要提出一種可行的方法,能夠?qū)⑦@2種有用的信息同時(shí)應(yīng)用起來(lái)。
一個(gè)非常樸素的想法就是將基本控制器輸出的高斯分布與SAC動(dòng)作分布融合在一起。卡爾曼濾波器是一種融合多個(gè)傳感器的測(cè)量信息,且比任何一個(gè)傳感器都更準(zhǔn)確的常用方法。如圖2所示,本文使用卡爾曼濾波器對(duì)2個(gè)控制器的輸出進(jìn)行融合,并獲得新的融合分布。此過(guò)程在SAC的重參數(shù)化技巧之前進(jìn)行。
圖2 模糊先驗(yàn)引導(dǎo)融合控制器的動(dòng)作分布融合原理與原生SAC的比較
(5)
(6)
針對(duì)強(qiáng)化學(xué)習(xí)以及所提出的數(shù)據(jù)高效強(qiáng)化學(xué)習(xí)控制器的仿真性能驗(yàn)證,本節(jié)采用Matterport3D[11]以及AI Habitat2020挑戰(zhàn)賽中的PointNav[12]任務(wù)作為控制器算法的評(píng)價(jià)標(biāo)準(zhǔn),并在Habitat[13]模擬器中繼續(xù)實(shí)驗(yàn)。PointNav任務(wù)使用了成功率、sPL和DTS(distance to goal)的評(píng)價(jià)指標(biāo)。sr表示在多次實(shí)驗(yàn)中找到目標(biāo)的概率,定義為
(7)
N為總實(shí)驗(yàn)次數(shù);Sui為一個(gè)二進(jìn)制值,表示第次實(shí)驗(yàn)的成功或失敗。sPL同時(shí)包含了對(duì)成功率和路徑長(zhǎng)度的考量,定義為
(8)
在第i次實(shí)驗(yàn)中,本文使用模擬器提供的最短路徑長(zhǎng)度作為L(zhǎng)i,而機(jī)器人的路徑長(zhǎng)度為Pi。DTS是每次實(shí)驗(yàn)結(jié)束時(shí),智能體到目標(biāo)物體邊界的距離,也是機(jī)器人離任務(wù)成功的距離。
本節(jié)復(fù)現(xiàn)了Habitat挑戰(zhàn)賽官方給出的基線算法——DD-PPO[14]。該算法以PPO(proximal policy optimization)[15]為核心,對(duì)其訓(xùn)練方式進(jìn)行了更改,以實(shí)現(xiàn)去中心化的分布式PPO(decentralized distributed,PPO)。DD-PPO利用分布式數(shù)據(jù)并行地將PPO無(wú)縫擴(kuò)展到數(shù)百個(gè)GPU組成的服務(wù)器集群。這些GPU集群是完全去中心化的,不含有中央服務(wù)器,這種做法可以使分布式算法不受集群規(guī)模限制。去中心化分布式的具體實(shí)現(xiàn)方式是將每一個(gè)Worker的參數(shù)使用PPO計(jì)算策略梯度,并將這些梯度分享給其他Workers,即
(9)
由于該算法的官網(wǎng)沒(méi)有給出專門針對(duì)Matterport3D數(shù)據(jù)集的預(yù)訓(xùn)練模型參數(shù),本文只能依靠現(xiàn)有設(shè)備進(jìn)行復(fù)現(xiàn)。通過(guò)使用2塊Nvidia GTX 2080Ti顯卡,分布式運(yùn)行6天、共計(jì)超過(guò)70 M(百萬(wàn))步。經(jīng)過(guò)長(zhǎng)時(shí)間的訓(xùn)練,即使僅使用2塊顯卡也可以得到不錯(cuò)的效果。其中,DTS最后達(dá)到1.2 m左右,即機(jī)器人在任務(wù)終止時(shí)到目標(biāo)點(diǎn)的平均距離是1.2 m;sr和sPL分別達(dá)到了約83.7%和0.68。很明顯,該結(jié)果還并未完全達(dá)到收斂,但考慮到時(shí)間成本與算力限制,本文只能將這個(gè)結(jié)果作為數(shù)據(jù)高效強(qiáng)化學(xué)習(xí)的對(duì)比。由于對(duì)比更加關(guān)注訓(xùn)練效率、速度,因此并不影響本文得到正確且合理的結(jié)論。
本節(jié)使用與DD-PPO相同測(cè)試環(huán)境與作圖方式,旨在展示本文所提出的數(shù)據(jù)高效強(qiáng)化學(xué)習(xí)算法的高效性。圖3展示了引入模糊先驗(yàn)引導(dǎo)的Model-based算法、原生的MBPO算法以及分布式DD-PPO算法對(duì)比。表1整理了3種算法對(duì)應(yīng)的收斂位置時(shí)的累積回報(bào)與訓(xùn)練時(shí)長(zhǎng)。本文所使用的模糊先驗(yàn),或稱作基礎(chǔ)控制器,正是上一節(jié)訓(xùn)練得到的DD-PPO模型。然而,與現(xiàn)有的遷移學(xué)習(xí)方法不同,本文以融合的方式使新的強(qiáng)化學(xué)習(xí)控制器能夠在具備一定性能的基礎(chǔ)控制器引導(dǎo)下,加速學(xué)習(xí)進(jìn)程。值得強(qiáng)調(diào)的是,該基礎(chǔ)控制器還可以使用調(diào)參后的TEB等傳統(tǒng)無(wú)圖點(diǎn)導(dǎo)航方法,甚至可以僅給出一些顯而易見(jiàn)的避障規(guī)則。
圖3 模糊先驗(yàn)引導(dǎo)的數(shù)據(jù)高效強(qiáng)化學(xué)習(xí)的性能對(duì)比
表1 3種算法收斂位置時(shí)的累積回報(bào)與訓(xùn)練輪數(shù)
由圖3的對(duì)比結(jié)果可知,Model-based的強(qiáng)化學(xué)習(xí)方法相較于普通的Model-free方法確實(shí)有數(shù)據(jù)高效的優(yōu)勢(shì),符合理論預(yù)期。而本文提出的模糊先驗(yàn)引導(dǎo)的IPK算法,能夠較另2種方法大幅提升訓(xùn)練速度,相當(dāng)于在一名知識(shí)水平尚可的教師指導(dǎo)下學(xué)習(xí)。IPK是DD-PPO先驗(yàn)與Model-based的MBPO算法的融合,其出色的訓(xùn)練速度是建立在二者基礎(chǔ)上的,因此能得到這樣的效果并不意外。當(dāng)然,這其中也有本文所提出的融合方式的貢獻(xiàn)。在具體的實(shí)驗(yàn)中,作為模糊先驗(yàn)基礎(chǔ)控制器的DD-PPO首先進(jìn)行初始化探索,通過(guò)模擬器的反饋,對(duì)自身性能以及動(dòng)作誤差有大致的了解。將這種誤差考慮到后續(xù)的動(dòng)作輸出中,使其以高斯分布的形式輸出動(dòng)作的概率分布。再將MBPO的高斯概率輸出,與該基礎(chǔ)控制器輸出分布進(jìn)行動(dòng)態(tài)Kalman融合,即得到融合動(dòng)作分布。對(duì)該分布進(jìn)行采樣,其結(jié)果即為融合動(dòng)作。顯然,該融合動(dòng)作收到模糊先驗(yàn)基礎(chǔ)控制器的軟約束,同時(shí)也保證了MBPO學(xué)習(xí)控制器能夠在這個(gè)安全限制下進(jìn)行充分的探索。
本文所提出的數(shù)據(jù)高效強(qiáng)化學(xué)習(xí)控制器具有以下特點(diǎn):
a.能夠以概率的形式融合先驗(yàn),使強(qiáng)化學(xué)習(xí)的策略學(xué)習(xí)建立在一定先驗(yàn)知識(shí)的及基礎(chǔ)上,實(shí)現(xiàn)高效訓(xùn)練。
b.強(qiáng)化學(xué)習(xí)的自主探索受到先驗(yàn)控制器的軟約束,確保了機(jī)器人在自主探索時(shí)的安全性。
c.實(shí)際的動(dòng)作是由融合控制器輸出的,提升了控制系統(tǒng)的魯棒性。