宋相兵, 季玉龍, 俎文強(qiáng), 何 揚(yáng), 楊紅雨,
(1.四川大學(xué)視覺(jué)合成圖形圖像技術(shù)國(guó)防重點(diǎn)學(xué)科實(shí)驗(yàn)室, 成都 610065;2. 四川大學(xué)空天科學(xué)與工程學(xué)院, 成都 610065;3.四川大學(xué)計(jì)算機(jī)學(xué)院, 成都 610065)
人們對(duì)周遭環(huán)境和物體進(jìn)行探索時(shí),非常依賴觸覺(jué),并依靠觸覺(jué)感知來(lái)引導(dǎo)下一步操作.比如,人類(lèi)可以在沒(méi)有視覺(jué)的情況下靈活操縱某一物體,但是在失去觸覺(jué)后,人們操縱物體的靈活性將大大降低[1,2].同樣機(jī)器人在密集接觸的任務(wù)中也非常依賴觸覺(jué)提供的局部信息(如壓力、震動(dòng)、接觸印記[3]等),因?yàn)檫@些信息在機(jī)器人進(jìn)行靈巧操作[4]或抓握動(dòng)作[5]時(shí)起著至關(guān)重要的作用.
與視覺(jué)傳感器相比,觸覺(jué)傳感器提供的接觸信息能讓智能體更充分地感知環(huán)境和獲取交互情況,比如,感知到物體發(fā)生滑動(dòng),或者已經(jīng)牢牢抓住物體[6].通常在視覺(jué)被遮擋或者識(shí)別不準(zhǔn)確的情況下,智能體將無(wú)法準(zhǔn)確感知環(huán)境,因而無(wú)法完成任務(wù),而Wu等[7]發(fā)現(xiàn)智能體僅依靠觸覺(jué)信息仍可以通過(guò)嘗試與探索完成抓取任務(wù).因此觸覺(jué)傳感器在智能體中的應(yīng)用逐漸成為研究熱點(diǎn).目前基于視覺(jué)的觸覺(jué)傳感器因其能獲得高分辨率的反饋信息在機(jī)器人領(lǐng)域很受歡迎,并已經(jīng)產(chǎn)生了很多應(yīng)用和設(shè)計(jì).比如Dong等研發(fā)的GelSight[3]、 GelSlim 2.0[8]、GelSlim MPalm[9]、GelSlim 3.0[10],Lambeta等[11]設(shè)計(jì)的DIGIT,Padmanabha等[12]利用多個(gè)微型攝像頭制作的OmniTact傳感器,以及She等[13]在柔性手指中嵌入的觸覺(jué)傳感器等.另外TacTip[14]雖然也是通過(guò)攝像頭獲取觸覺(jué)信號(hào),但是其觸覺(jué)印記的分辨率遠(yuǎn)低于上述幾種傳感器.除此之外,陣列式傳感器在機(jī)器人領(lǐng)域也很受青睞.它們大都利用新材料將外部刺激或壓力轉(zhuǎn)化為電信號(hào),并且感知單元的布局相對(duì)規(guī)則.這類(lèi)傳感器根據(jù)感知原理主要分為:壓阻式傳感器[15]、電容式傳感器[16]和氣壓傳感器[4]等.不論信息的獲取方式是怎樣,每一個(gè)新的傳感器都有其固有的屬性,如脆性、體積、分辨率、延遲和生產(chǎn)成本等[17].
雖然基于視覺(jué)的觸覺(jué)傳感器能獲取高分辨率的觸覺(jué)信息,但由于其數(shù)據(jù)大都是圖像格式,若想獲取有效信息還需要經(jīng)過(guò)復(fù)雜處理,而基于陣列的觸覺(jué)傳感器不僅獲取觸覺(jué)信息效率較高,而且還易于進(jìn)行模擬仿真,這使得我們可以方便地根據(jù)觸覺(jué)信號(hào)給予智能體相應(yīng)的獎(jiǎng)勵(lì).因此考慮到這些特性和其不同的應(yīng)用場(chǎng)景,本文將仿真陣列傳感器進(jìn)行實(shí)驗(yàn),具體傳感器仿真細(xì)節(jié)在3.1節(jié)中詳細(xì)闡述.
在機(jī)器人抓取方面,觸覺(jué)信息大多數(shù)情況下都作為深度神經(jīng)網(wǎng)絡(luò)的輸入用于機(jī)器人訓(xùn)練.比如Hogan等[9]、Calandra等[5]和Hellman等[18]先利用機(jī)器學(xué)習(xí)訓(xùn)練了一個(gè)預(yù)測(cè)模型,然后讓機(jī)器人根據(jù)其結(jié)果來(lái)判斷狀態(tài)后再執(zhí)行相應(yīng)任務(wù).這類(lèi)方法計(jì)算復(fù)雜,會(huì)拖慢訓(xùn)練速率.而如今深度強(qiáng)化學(xué)習(xí)已在多個(gè)領(lǐng)域表現(xiàn)出巨大的潛力,如電子游戲、仿真模擬、機(jī)器人控制[19]以及圖像處理[20]等.且Dong等[21]試驗(yàn)得出強(qiáng)化學(xué)習(xí)在機(jī)器人抓取等復(fù)雜任務(wù)中的表現(xiàn)要優(yōu)于監(jiān)督學(xué)習(xí).另外Chebotar等[22]將深度學(xué)習(xí)與強(qiáng)化學(xué)習(xí)結(jié)合,利用觸覺(jué)的時(shí)空特征訓(xùn)練了一個(gè)抓握穩(wěn)定判別器,讓智能體學(xué)會(huì)以更優(yōu)姿態(tài)重新抓取物體.
而另一些研究人員則僅將觸覺(jué)信號(hào)當(dāng)成是強(qiáng)化學(xué)習(xí)環(huán)境的狀態(tài)觀測(cè)值,讓智能體通過(guò)試錯(cuò)與獎(jiǎng)勵(lì)反饋學(xué)會(huì)抓握物體,比如文獻(xiàn)[6]讓機(jī)器人學(xué)會(huì)自適應(yīng)控制力的大小避免物體掉落、文獻(xiàn)[23]研究表明加入觸覺(jué)反饋可以顯著提高多指機(jī)器人抓握物體的魯棒性,同樣的方法也被用于其他非抓取的任務(wù),如文獻(xiàn)[24]讓智能體根據(jù)觸覺(jué)反饋學(xué)會(huì)控制方塊;文獻(xiàn)[4]將氣壓傳感作為觸覺(jué)讓機(jī)械手指學(xué)會(huì)旋轉(zhuǎn)和移動(dòng)物體.這種方法雖然能提高智能體學(xué)習(xí)效率,但其本質(zhì)是增加了環(huán)境的狀態(tài)維度,提高了采樣機(jī)器人的采樣效率,而沒(méi)有真正利用有價(jià)值的觸覺(jué)信息.
與以上工作不同的是,另一些學(xué)者則根據(jù)觸覺(jué)信息制定獎(jiǎng)懲函數(shù)來(lái)誘導(dǎo)智能體嘗試和探索,比如Huang 等[25]根據(jù)觸覺(jué)反饋制定獎(jiǎng)懲機(jī)制,讓機(jī)械手學(xué)會(huì)溫柔的觸摸和操縱物體;文獻(xiàn)[26]將觸覺(jué)信號(hào)作為內(nèi)在獎(jiǎng)勵(lì),鼓勵(lì)智能體進(jìn)行更有效的探索.本文的工作也受此啟發(fā),首先基于陣列式傳感器設(shè)計(jì)了一種“倒T”字形的觸覺(jué)傳感器的排列方式,然后通過(guò)分析機(jī)械末端與物體接觸時(shí)的受力情況,提出了新的獎(jiǎng)勵(lì)函數(shù)來(lái)鼓勵(lì)智能體能以更合適、更穩(wěn)定的姿態(tài)去抓取物體,最后將該方法適配到新的機(jī)器人仿真環(huán)境中,驗(yàn)證該方法的有效性.
機(jī)器人抓取是指將物體從起始位置拾取到另一目標(biāo)位置的一套連續(xù)動(dòng)作.在強(qiáng)化學(xué)習(xí)的訓(xùn)練過(guò)程中,智能體需要不斷試錯(cuò),不停地用末端接觸物體,嘗試不同位置將其夾起.當(dāng)物體表面比較粗糙,末端和物體之間摩擦力比較大時(shí),機(jī)器人能非常輕松完成抓取任務(wù),而當(dāng)物體比較光滑且表面是弧面時(shí),機(jī)器人夾取物體的成功率則會(huì)大大降低.
機(jī)器人用剛性末端夾取光滑物體類(lèi)似于我們生活中用筷子夾取某些豆類(lèi)食物或者夾彈珠,其成功率主要取決于接觸力的大小和接觸點(diǎn)位置.如果接觸力太小,接觸點(diǎn)的摩擦力小于重力,物體自然會(huì)因此掉落;若接觸點(diǎn)處于錯(cuò)誤位置,增加接觸力只會(huì)增大物體滑落的可能性.以?shī)A取球型物體為例,如圖1a所示,當(dāng)夾具與物體接觸點(diǎn)位于物體形心上方時(shí),接觸力方向偏離形心,如果此時(shí)夾具與物體間的摩擦系數(shù)太小,將不能保證有效夾取.圖1b和1c所示的方式則可以進(jìn)行有效抓取.但是圖1b中接觸點(diǎn)和接觸力雖然處于被抓取物體的最佳位置,但該接觸點(diǎn)位于夾具邊緣,容錯(cuò)率很低,若機(jī)器稍有震動(dòng)將導(dǎo)致物體滑落.因此該夾取方式仍不是最優(yōu)解.而圖1c所示的夾取情形中,物體和夾具上的接觸點(diǎn)都到達(dá)最佳位置,即使在夾取過(guò)程中物體發(fā)生輕微偏移,也可以將物體成功抓取.圖1d展示了俯視時(shí)的最佳抓取位置.

本文認(rèn)為圖1c和1d是機(jī)械臂夾取過(guò)程中非常理想的中間狀態(tài),因此我們希望塑造一個(gè)合理的獎(jiǎng)勵(lì)函數(shù)來(lái)引導(dǎo)智能體到達(dá)這種中間狀態(tài).這種中間狀態(tài)可利用觸覺(jué)傳感器來(lái)間接表示,但是在強(qiáng)化學(xué)習(xí)中,獎(jiǎng)勵(lì)塑造是一個(gè)很棘手的問(wèn)題.因?yàn)橐豁?xiàng)復(fù)雜任務(wù)往往具有多個(gè)中間狀態(tài),如果我們針對(duì)每一個(gè)狀態(tài)都進(jìn)行獎(jiǎng)勵(lì),那樣獎(jiǎng)勵(lì)函數(shù)將會(huì)非常復(fù)雜,而且這樣往往也會(huì)使智能體找到得分漏洞,然后陷入刷分的循環(huán),從而導(dǎo)致訓(xùn)練失敗[27].而如果僅將達(dá)到最終目標(biāo)作為獎(jiǎng)勵(lì)體條件,會(huì)使得智能體進(jìn)行過(guò)多隨機(jī)且無(wú)用的探索,從而拖慢訓(xùn)練速度甚至出現(xiàn)算法一直無(wú)法收斂的情況.
所以我們將用觸覺(jué)信號(hào)作為內(nèi)在獎(jiǎng)勵(lì)引導(dǎo)智能體去探索,使其更快速地到達(dá)中間狀態(tài)(即末端以更優(yōu)位置去接觸物體),但同時(shí)又允許智能體能夠進(jìn)行其他不同的探索,也就是利用現(xiàn)有的機(jī)械臂仿真環(huán)境進(jìn)行實(shí)驗(yàn),通過(guò)增加觸覺(jué)傳感區(qū)域來(lái)擴(kuò)展強(qiáng)化學(xué)習(xí)環(huán)境的狀態(tài)空間,并根據(jù)觸覺(jué)累計(jì)值修改獎(jiǎng)勵(lì)函數(shù),從而引導(dǎo)智能體進(jìn)行更有效的探索.
本文通過(guò)深度強(qiáng)化學(xué)習(xí)和內(nèi)在觸覺(jué)激勵(lì)來(lái)優(yōu)化機(jī)械臂抓取物體的任務(wù),該任務(wù)是將目標(biāo)物體夾取到一個(gè)目標(biāo)位置,從而獲得任務(wù)獎(jiǎng)勵(lì).其中機(jī)械臂抓取物體的過(guò)程可歸納為一個(gè)馬爾可夫決策過(guò)程(Markov Decision Process, MDP).該過(guò)程可以用元組(S,A,P,R,γ)來(lái)表示.其中S表示狀態(tài)空間;A表示動(dòng)作;而P表示在狀態(tài)S下執(zhí)行動(dòng)作A后,狀態(tài)變成S′的概率,可寫(xiě)作(P:S×A→S′);R表示智能體在狀態(tài)S下執(zhí)行動(dòng)作A所獲得的獎(jiǎng)勵(lì)函數(shù),即R:S×A→[0,1];γ代表折扣因子,它表示未來(lái)獎(jiǎng)勵(lì)對(duì)現(xiàn)在的重要性,其值越大代表智能體越看重未來(lái)獎(jiǎng)勵(lì),其值越小則表示智能體更重視短期回報(bào).
在整個(gè)交互過(guò)程中,機(jī)械臂作為智能體,在t時(shí)刻,觀察當(dāng)前狀態(tài),然后根據(jù)策略π選擇動(dòng)作at,at∈A(其動(dòng)作由一個(gè)四維向量表示,前三維數(shù)據(jù)表示一個(gè)與機(jī)械臂夾具中心綁定的Mocap動(dòng)作捕捉點(diǎn)的世界坐標(biāo),后一維數(shù)據(jù)表示夾具開(kāi)合的狀態(tài)),然后觀察得到新的狀態(tài)st+1,最后根據(jù)狀態(tài)計(jì)算上一步動(dòng)作的獎(jiǎng)勵(lì),再進(jìn)行接下來(lái)的決策.智能體的最終目標(biāo)就是找到最優(yōu)策略π*,得到最大化累計(jì)獎(jiǎng)勵(lì)Rt,即:
(1)
其中ri代表即時(shí)獎(jiǎng)勵(lì).
與文獻(xiàn)[26]類(lèi)似,我們?cè)跈C(jī)械臂末端夾具上添加了傳感區(qū)域,本文和他們不同的是,他們將整個(gè)夾具用一個(gè)傳感區(qū)域覆蓋,對(duì)所有接觸位置一視同仁,而我們認(rèn)為夾具的區(qū)域是有優(yōu)劣之分的,正如2.1節(jié)所講到的,物體與夾具的接觸位置不同,會(huì)影響夾取的穩(wěn)定性,因此我們根據(jù)前面定義的接觸位置的好壞給予了不同傳感器不同的重視程度(重視程度與位置關(guān)系如圖2所示),另外為了既鼓勵(lì)夾具與物體接觸,又能引導(dǎo)智能體以最優(yōu)位置夾取物體,本文在夾具上設(shè)計(jì)了如圖2所示的倒“T型”傳感區(qū)域陣列.該陣列由3個(gè)傳感區(qū)域組成,最下面的一整塊傳感區(qū)域是為了能更全面地捕捉剛接觸的信號(hào),上面的兩塊方形傳感區(qū)域是為了引導(dǎo)智能體用這些區(qū)域(尤其是區(qū)域1)去夾取物體.每當(dāng)末端夾具與物體在某一傳感區(qū)域接觸時(shí),物理引擎就會(huì)計(jì)算出相應(yīng)的值.通過(guò)獎(jiǎng)勵(lì)函數(shù)設(shè)置,我們將鼓勵(lì)智能體用末端去接觸目標(biāo)物體,并鼓勵(lì)它盡量用重視程度最高的位置去接觸物體.

圖2 傳感器布局與相應(yīng)區(qū)域重視程度
接著為了證明本文方法的有效性,我們?cè)谔岣咴既蝿?wù)難度的情況下(即增加了目標(biāo)位置在空中生成的概率和高度,以及將目標(biāo)物體由方塊替換成圓球和橢球),使用不添加傳感器、只加傳感器、最新內(nèi)在獎(jiǎng)勵(lì)[26]以及本文內(nèi)在獎(jiǎng)勵(lì)4種方法分別進(jìn)行球形抓取和橢球抓取的任務(wù)訓(xùn)練,通過(guò)對(duì)比它們各自?shī)A取的成功率來(lái)佐證本文觀點(diǎn).
強(qiáng)化學(xué)習(xí)算法旨在讓智能體學(xué)習(xí)一種能在環(huán)境中獲得最大長(zhǎng)期回報(bào)的策略,而在大多數(shù)任務(wù)中這些獎(jiǎng)勵(lì)都是稀疏的,即智能體只有完成了目標(biāo)才能獲得相應(yīng)獎(jiǎng)勵(lì).這就會(huì)讓智能體產(chǎn)生太多無(wú)意義的嘗試,從而降低學(xué)習(xí)效率.因此,為了提高智能體探索的效率,本文引入了內(nèi)部激勵(lì)機(jī)制[28,29]來(lái)鼓勵(lì)智能體進(jìn)行更有效的探索.我們的獎(jiǎng)勵(lì)函數(shù)由外部獎(jiǎng)勵(lì)rext(s,g)和與目標(biāo)無(wú)關(guān)的內(nèi)部獎(jiǎng)勵(lì)rint(s)兩部分組成,其表示如下.
r(s,g)=ωext*rext(s,g)+ωint*rint(s)
(2)
其中ωext和ωint分別表示外部獎(jiǎng)勵(lì)和內(nèi)部獎(jiǎng)勵(lì)的權(quán)重.外部獎(jiǎng)勵(lì)是完成目標(biāo)后獲得的稀疏獎(jiǎng)勵(lì),只要物體位置在目標(biāo)范圍之內(nèi)即返回1,否則返回0,具體表示如下.
(3)
其中g(shù)表示目標(biāo)位置;xobj表示物體位置;εpos表示距離閾值.而本文內(nèi)部獎(jiǎng)勵(lì)又分為兩部分,表示如下.
rint(st)=ωc_frc_f+ωc_prc_p
(4)
其中c_f、c_p分別表示接觸力和接觸位置.接觸力獎(jiǎng)勵(lì)僅根據(jù)觸覺(jué)信號(hào)來(lái)設(shè)定,只要一幕訓(xùn)練過(guò)程中所有觸覺(jué)信號(hào)累計(jì)值∑v超過(guò)閾值εtouch就返回1,否則返回.其表示如下.
(5)
而對(duì)于接觸位置獎(jiǎng)勵(lì),我們按照?qǐng)D2傳感區(qū)域的重要程度,根據(jù)接觸信號(hào)累計(jì)值的區(qū)域的不同給予不同獎(jiǎng)勵(lì),其表示如下.
(6)
其中,v1i、v2i、v3i分別表示區(qū)域1、2、3的觸覺(jué)信號(hào)值.
4組實(shí)驗(yàn)結(jié)果如圖3所示,4幅圖中的黃色曲線分別表示所選參數(shù)在各自最優(yōu)值下的訓(xùn)練效果.最終本文確定以表1中的值作為獎(jiǎng)勵(lì)函數(shù)的參數(shù).

(b)

(c)

(d)

表1 獎(jiǎng)勵(lì)函數(shù)中的參數(shù)值
由于機(jī)器人抓取是一個(gè)連續(xù)動(dòng)作控制問(wèn)題,所以本文采用集成了時(shí)間差分學(xué)習(xí)和策略梯度的深度確定性策略梯度算法(Deep Deterministic Policy Gradient,DDPG)[30]來(lái)訓(xùn)練智能體,并且將之與事后經(jīng)驗(yàn)回放技術(shù)(Hindsight Experience Replay,HER)[31]結(jié)合來(lái)提高數(shù)據(jù)利用效率.
其中,DDPG是一種基于演員-評(píng)論家(Actor-Critic)框架的離線策略(Off-policy)算法,即使用兩套不同的網(wǎng)絡(luò)進(jìn)行動(dòng)作的選擇和評(píng)價(jià).其中Actor是直接學(xué)習(xí)策略的網(wǎng)絡(luò),它接收從環(huán)境中獲取的當(dāng)前狀態(tài)S,然后根據(jù)策略π,輸出相應(yīng)的動(dòng)作A.而Critic網(wǎng)絡(luò)則根據(jù)當(dāng)前狀態(tài)和動(dòng)作計(jì)算Q值來(lái)評(píng)價(jià)動(dòng)作的好壞,即學(xué)習(xí)動(dòng)作價(jià)值函數(shù)Qπ.在訓(xùn)練期間,Actor網(wǎng)絡(luò)通過(guò)行為策略去探索環(huán)境,該行為策略是目標(biāo)策略加上了一些噪聲后的策略,即πb=π(s)+N(0,1).在式(7)中, Critic通過(guò)最小化rt+γQ(st+1,π(st+1))和Q(st,at)的lossLc來(lái)更新網(wǎng)絡(luò).
Lc=rt+γQ(st+1,π(st+1))-Q(st,at)
(7)
其中,rt+γQ(st+1,π(st+1))表示真實(shí)的動(dòng)作狀態(tài)值;Q(st,at)表示估計(jì)的動(dòng)作狀態(tài)值.而Actor使用策略梯度通過(guò)損失函數(shù)的梯度下降來(lái)訓(xùn)練網(wǎng)絡(luò),該損失函數(shù)表示為
La=-Es[Q(s,π(s))]
(8)
其中,s是從經(jīng)驗(yàn)回放池采樣而來(lái).而La關(guān)于Actor網(wǎng)絡(luò)的參數(shù)的梯度可以通過(guò)結(jié)合了Critic和Actor網(wǎng)絡(luò)的反向傳播計(jì)算得到.
HER[31]是Andrychwicz等提出的一種數(shù)據(jù)增強(qiáng)技術(shù).在機(jī)器人任務(wù)中,如果目標(biāo)比較復(fù)雜而且獎(jiǎng)勵(lì)很稀疏,那么智能體在學(xué)到一些經(jīng)驗(yàn)前會(huì)進(jìn)行很多失敗且無(wú)效的嘗試.因此HER就鼓勵(lì)智能體從失敗的經(jīng)驗(yàn)中學(xué)習(xí)一些東西.在探索過(guò)程中,智能體根據(jù)真實(shí)目標(biāo)對(duì)一些軌跡進(jìn)行采樣.HER的主要思想就是將選定的一次狀態(tài)轉(zhuǎn)移中的原始目標(biāo)替換為已經(jīng)達(dá)到的目標(biāo),即用一個(gè)虛擬目標(biāo)替換真實(shí)目標(biāo).這樣智能體就可以獲得足夠數(shù)量的獎(jiǎng)勵(lì)信號(hào)來(lái)開(kāi)始學(xué)習(xí).
HER包含4種采樣策略,每種策略具體內(nèi)容如下:(1) future模式:當(dāng)回放某一狀態(tài)轉(zhuǎn)移時(shí),從同一幕的該狀態(tài)之后,隨機(jī)選擇k個(gè)狀態(tài)進(jìn)行回放,即,如果現(xiàn)在的樣本為(st,at,st+1),就從t+1開(kāi)始到最后的狀態(tài)中選擇k個(gè)已經(jīng)達(dá)到的目標(biāo)(achieved goal)作為新目標(biāo);(2) final模式:把每一幕的最后一個(gè)已達(dá)到目標(biāo)作為新目標(biāo);(3) episode模式:與future模式有些類(lèi)似,但是該模式直接從同一幕中隨機(jī)選擇k個(gè)已達(dá)到目標(biāo)作為新目標(biāo),沒(méi)有限制是否要往后采樣;(4) random模式:隨機(jī)選擇整個(gè)訓(xùn)練過(guò)程中的k個(gè)狀態(tài)進(jìn)行回放;
本文采用的是future模式,HER計(jì)算流程圖如圖4所示,其主要步驟如下.
(1) 隨機(jī)選取一幕訓(xùn)練的完整樣本;
(2) 用智能體當(dāng)前的已完成狀態(tài)替換掉最終目標(biāo)(desired goal);
(3) 更新“info”信息;
(4) 重新計(jì)算獎(jiǎng)勵(lì).

圖4 HER計(jì)算流程圖Fig.4 The calculation flow chart of HER
本實(shí)驗(yàn)環(huán)境是在OpenAI Gym[32]中的Fetch機(jī)器人抓取與放置(Fetch-PickAndPlace)仿真實(shí)驗(yàn)環(huán)境的基礎(chǔ)上進(jìn)行的改進(jìn),其整個(gè)實(shí)驗(yàn)場(chǎng)景如圖5所示.該實(shí)驗(yàn)環(huán)境是以MuJoCo[33]作為物理引擎.在機(jī)器人運(yùn)動(dòng)仿真過(guò)程中,MuJoCo具備關(guān)節(jié)防卡死、多約束、多驅(qū)動(dòng)以及細(xì)節(jié)化仿真等特點(diǎn),十分適用于機(jī)器人姿態(tài)控制及機(jī)械臂運(yùn)動(dòng)仿真.MuJoCo可以仿真許多類(lèi)型的傳感器,比如觸摸傳感器、慣性測(cè)量單元、力傳感器、力矩傳感器、關(guān)節(jié)速度傳感器等.這些傳感器在仿真環(huán)境里不參與模型的碰撞計(jì)算,它們只為用戶的計(jì)算提供相關(guān)信息數(shù)據(jù)信息.例如觸摸傳感器是在執(zhí)行器上定義一塊特定形狀的傳感區(qū)域,只要執(zhí)行器在該區(qū)域與其他物體產(chǎn)生接觸行為,相應(yīng)的接觸力就會(huì)被計(jì)算出來(lái).該傳感器的讀數(shù)是非負(fù)標(biāo)量,它是通過(guò)將被包含在接觸區(qū)域的所有法向力(標(biāo)量)相加來(lái)計(jì)算的.

圖5 實(shí)驗(yàn)場(chǎng)景Fig.5 The experimental scene
該實(shí)驗(yàn)任務(wù)就是將桌上的目標(biāo)物體抓取并移動(dòng)到空中紅色的目標(biāo)位置,只要物體與目標(biāo)的距離不超過(guò)閾值即可判定完成任務(wù).
而本文對(duì)環(huán)境的主要修改如圖2所示.這3塊傳感區(qū)域的寬度都相等,而第3塊區(qū)域的長(zhǎng)度是前兩塊的3倍,且與末端夾具等寬.同時(shí),為了避免智能體在探索過(guò)程中產(chǎn)生誤觸(如夾具觸碰桌面而產(chǎn)生讀數(shù)),本文將3塊傳感區(qū)域沿末端長(zhǎng)邊依次上移了2.5 mm.然后將這3塊區(qū)域作為site被綁定在末端夾具body實(shí)體下,其在xml文件中的表現(xiàn)形式如下:
(其他屬性)……
(其他site)……
最終將環(huán)境的觀察值增加了2*3維,即從25維增加到31維.最終改進(jìn)后的環(huán)境狀態(tài)信息如表2所示.

表2 仿真環(huán)境狀態(tài)值信息
本實(shí)驗(yàn)中的所有超參數(shù)以及訓(xùn)練過(guò)程都在文獻(xiàn)[31,34]中有詳細(xì)描述,并且這些超參數(shù)和強(qiáng)化學(xué)習(xí)算法都被集成于OpenAI的Baselines[35]中.Baselines是基于TensorFlow而開(kāi)發(fā)的一套強(qiáng)化學(xué)習(xí)算法的實(shí)現(xiàn)框架.本文利用其中的DDPG和HER來(lái)訓(xùn)練智能體.
本文設(shè)置了4組實(shí)驗(yàn)環(huán)境,每組環(huán)境完成2項(xiàng)不同物體(球體和橢球體)的夾取任務(wù).其中,1組為本文的實(shí)驗(yàn)環(huán)境,其觀察值如4.1節(jié)所述是31維.另外3組為對(duì)比實(shí)驗(yàn)環(huán)境,而對(duì)比實(shí)驗(yàn)環(huán)境中2組的觀察值也是31維,另一空白組的觀察值只有初始的25維,每組詳細(xì)設(shè)置如表3所示.

表3 實(shí)驗(yàn)環(huán)境信息
然后基于以上4種環(huán)境在Windows平臺(tái)Intel 16核電腦上用15核通過(guò)MPI實(shí)現(xiàn)150回合的并行訓(xùn)練,最終以每回合訓(xùn)練結(jié)束后測(cè)試抓取的成功率作為主要判斷指標(biāo),以第一次達(dá)到基準(zhǔn)成功率的回合數(shù)作為輔助判斷指標(biāo).抓取成功率就是在每回合訓(xùn)練結(jié)束后,再在每個(gè)核心上進(jìn)行10次確定性的測(cè)試試驗(yàn),接著綜合計(jì)算所有核心上試驗(yàn)夾取成功次數(shù)而得到的成功率.
本實(shí)驗(yàn)通過(guò)夾取球體(圖6)和橢球體(圖7)任務(wù)對(duì)比了3.1節(jié)中提到的4種情況(即未加傳感器的原始情況、只加傳感器不修改獎(jiǎng)勵(lì)函數(shù)、最新提出的傳感器結(jié)合內(nèi)在獎(jiǎng)勵(lì)機(jī)制以及本文的傳感器結(jié)合內(nèi)在獎(jiǎng)勵(lì)機(jī)制,后文中這些情況簡(jiǎn)稱如表3最后一列所示),所得結(jié)果如圖8、圖9、表4以及表5所示.其中圖8、圖9橫坐標(biāo)表示訓(xùn)練回合,縱坐標(biāo)表示每回合得出的抓取成功率.表4前4列給出了4種情況下130~150回合的平均成功率,后兩列計(jì)算了本文平均成功率與情況1和2平均成功率的比率(由于在150回合內(nèi)情況3的成功率未見(jiàn)顯著提升,因此本文未計(jì)算該情況下的比率).表5以表4中情況1的平均成功率(由于情況2在150回合內(nèi)未見(jiàn)收斂的趨勢(shì),故不予考慮)作為基準(zhǔn)成功率,列出了情況1與本文環(huán)境第一次到達(dá)該成功率的回合數(shù)以及回合比率.比如,情況1的圓球抓取任務(wù)中第一次達(dá)到0.861成功率的回合是第133回合,而本文環(huán)境第一次達(dá)到該成功率則是在112回合,收斂速度是前者的1.188倍.

圖6 實(shí)驗(yàn)中的球體

圖7 實(shí)驗(yàn)中的橢球體
圖8和圖9中藍(lán)色實(shí)線是本文所使用的方法得出的抓取成功率曲線,橘黃色虛線是Vulin等[26]提出的傳感器結(jié)合內(nèi)在獎(jiǎng)勵(lì)方法(即情況1)得出的結(jié)果,紅色和綠色虛線分別表示只加傳感器不修改獎(jiǎng)勵(lì)(即情況2,僅拓展智能體的觀測(cè)空間)和沒(méi)加傳感器(即情況3)情況下的訓(xùn)練情況.可以看出,在球體和橢球體抓取任務(wù)中,加入傳感器增加了觀測(cè)空間后,智能體的學(xué)習(xí)效率相較于不加傳感器的情況有較大改善.而橘黃色虛線則表明情況1的確能大大提高智能體的學(xué)習(xí)效率.不過(guò),結(jié)合表4和表5可知本文所提方法同樣遠(yuǎn)遠(yuǎn)優(yōu)于未經(jīng)

圖8 圓球抓取任務(wù)結(jié)果Fig.8 The result of grasping sphere

圖9 橢球抓取任務(wù)結(jié)果Fig.9 The result of grasping ellipsoid
優(yōu)化的傳統(tǒng)方法(情況2和情況3),而且在同樣條件下,比最新的情況1提前約20回合收斂,并且在后者收斂之前就達(dá)到了最優(yōu)的正確率.這是由于情況1沒(méi)對(duì)接觸位置作區(qū)分,僅僅是鼓勵(lì)智能體去接觸目標(biāo)物體,而忽略了接觸位置的差異,從而導(dǎo)致智能體在訓(xùn)練過(guò)程中仍會(huì)多次嘗試以2.1節(jié)中描述的次優(yōu)或最差姿態(tài)去接觸物體,最終導(dǎo)致夾取失敗而拖慢訓(xùn)練速度.

表4 130~150回合平均成功率

表5 第一次到達(dá)基準(zhǔn)平均成功率的回合數(shù)
因此,本文所提方法極大地提高了智能體抓取球形物體時(shí)的學(xué)習(xí)效率.在本實(shí)驗(yàn)中,我們利用了傳感器提供的位置和壓力信息,有效地捕捉到了物體的接觸信息,然后通過(guò)內(nèi)在獎(jiǎng)勵(lì)機(jī)制鼓勵(lì)智能體進(jìn)行有效的探索.在這里內(nèi)在獎(jiǎng)勵(lì)就像一個(gè)指導(dǎo)員,引導(dǎo)智能體達(dá)到一個(gè)容易達(dá)到且有意義的狀態(tài).有了內(nèi)在獎(jiǎng)勵(lì)引導(dǎo),智能體能夠返回一個(gè)比較合適的狀態(tài),并且不會(huì)因?yàn)殡S機(jī)探索而丟失該軌跡,因此內(nèi)在獎(jiǎng)勵(lì)機(jī)制可以提高智能體有意義的探索.
針對(duì)智能體在對(duì)球形物體進(jìn)行抓取時(shí)容易產(chǎn)生滑動(dòng)的問(wèn)題,本文提出了一種新的呈“倒T”形排布傳感器陣列和相應(yīng)的內(nèi)在獎(jiǎng)勵(lì)函數(shù);并且結(jié)合DDPG+HER強(qiáng)化學(xué)習(xí)算法在MuJoCo仿真環(huán)境中對(duì)比了4種方法;最后驗(yàn)證了以觸覺(jué)傳感器累計(jì)值和接觸位置作為內(nèi)在獎(jiǎng)勵(lì)信號(hào)能夠引導(dǎo)智能體更快地完成球體的夾取任務(wù),同時(shí)又不會(huì)限制智能體探索其他狀態(tài).
當(dāng)然,我們可以設(shè)計(jì)一個(gè)完美的末端夾具來(lái)執(zhí)行相關(guān)任務(wù).但在現(xiàn)實(shí)世界,物體的形狀有成千上萬(wàn)種,要設(shè)計(jì)這樣一種末端機(jī)械裝置十分困難,因此目前的大多數(shù)末端執(zhí)行器能達(dá)到的都只是在特定情況下的最優(yōu)控制[36].人類(lèi)的手之所以能抓握大部分物體,除了因?yàn)槠潇`活的關(guān)節(jié)外,還因?yàn)槠渚哂忻翡J的觸覺(jué).所以在現(xiàn)有末端裝置條件下加入觸覺(jué)傳感是提高物體抓取的有效途徑.
未來(lái),我們將繼續(xù)開(kāi)展相關(guān)工作,如將該方法應(yīng)用于更多類(lèi)型的物體,包括但不限于圓柱體、正方體以及不規(guī)則物體等;并且將該方法應(yīng)用于不同類(lèi)型的末端執(zhí)行器上來(lái)驗(yàn)證該方法的魯棒性.此外,本文是僅在仿真環(huán)境下進(jìn)行的相關(guān)實(shí)驗(yàn),下一步我們會(huì)將算法遷移到真實(shí)機(jī)器人上,在復(fù)雜真實(shí)的環(huán)境中驗(yàn)證其效果.