陳 滿,李茂軍,李宜偉,賴志強(qiáng)
(長沙理工大學(xué) 電氣與信息工程學(xué)院,湖南 長沙 410114)
移動機(jī)器人導(dǎo)航任務(wù)可以描述為移動機(jī)器人依據(jù)自身和周圍的環(huán)境信息,安全自主地避開障礙物并實(shí)現(xiàn)朝向目標(biāo)位置的運(yùn)動[1]. 隨著移動機(jī)器人導(dǎo)航技術(shù)的迅速發(fā)展,其應(yīng)用場景已經(jīng)逐漸從工廠等結(jié)構(gòu)化場景走向公共服務(wù)領(lǐng)域.該領(lǐng)域的場景通常存在眾多行人,并且行人的運(yùn)動隨機(jī)性較大,因此機(jī)器人需要與行人頻繁地交互并合理預(yù)測行人的運(yùn)動軌跡,這給導(dǎo)航任務(wù)帶來了難度.
目前行人環(huán)境中的導(dǎo)航方法通??梢苑譃榛谀P偷姆椒ê蛿?shù)據(jù)驅(qū)動方法.基于模型的方法使用數(shù)學(xué)或物理模型來描述機(jī)器人與行人的交互,并預(yù)測行人的運(yùn)動軌跡,然后結(jié)合傳統(tǒng)的路徑規(guī)劃算法如滾動窗口法完成導(dǎo)航任務(wù).Chik等[2]使用高斯過程模型對行人的運(yùn)動進(jìn)行建模,并進(jìn)行機(jī)器人與行人的交互,在行人環(huán)境中實(shí)現(xiàn)了導(dǎo)航任務(wù);Takanashi等[3]提出了行人隨機(jī)建模方法,通過大量行人軌跡獲取隨機(jī)模型,獲得更精確的交互效果.這類基于模型的方法需要根據(jù)不同的實(shí)驗(yàn)場景設(shè)置不同參數(shù),對于陌生的導(dǎo)航場景泛化能力有限,且導(dǎo)航效果欠佳.
隨著機(jī)器學(xué)習(xí)的發(fā)展,無模型的數(shù)據(jù)驅(qū)動方法成為行人環(huán)境下機(jī)器人導(dǎo)航的熱門研究方向. 趙英男[4]將導(dǎo)航任務(wù)抽象為“格子游戲”,使用Sarsa算法進(jìn)行移動機(jī)器人導(dǎo)航,實(shí)現(xiàn)了初步導(dǎo)航功能;Chen等[5]使用深度強(qiáng)化學(xué)習(xí)解決行人狀態(tài)下多機(jī)器人協(xié)同導(dǎo)航問題,使導(dǎo)航更高效;Chen等[6]提出了社會注意力深度強(qiáng)化學(xué)習(xí)算法,采用社會注意力網(wǎng)絡(luò)作為狀態(tài)值函數(shù),使機(jī)器人與行人的交互更充分.以上數(shù)據(jù)驅(qū)動的方法使機(jī)器人具有“學(xué)習(xí)能力”,極大地提升了場景適應(yīng)性,但也面臨著學(xué)習(xí)效率低下、收斂困難等問題.
針對上述現(xiàn)有導(dǎo)航技術(shù)中存在的不足,本文將傳統(tǒng)物理模型和數(shù)據(jù)驅(qū)動方法融合,提出勢場增強(qiáng)注意力深度強(qiáng)化學(xué)習(xí)PARL算法.主要工作有:①提出勢場注意力網(wǎng)絡(luò),有效地?cái)U(kuò)充了機(jī)器人和行人的狀態(tài)信息,促進(jìn)狀態(tài)信息的交互;②建立勢場獎勵函數(shù),并設(shè)置不同空間平衡各部分獎勵,完善了獎勵回饋機(jī)制;③提出反向近似模型,并結(jié)合綜合獎勵函數(shù)的空間劃分方式改進(jìn)動作空間,減少機(jī)器人的無效探索.
1.1 人工勢場法人工勢場法是一種虛擬力法,常用于機(jī)器人導(dǎo)航任務(wù)中[7].該方法假設(shè)機(jī)器人在目標(biāo)位置的引力勢場中受到引力作用,在障礙物的斥力勢場中受到斥力作用.引力勢場函數(shù)和斥力勢場函數(shù)分別表示為:
其中,ξ為引力勢場常數(shù),η 為斥力勢場常量,αgra為機(jī)器人當(dāng)前位置與目標(biāo)位置之間的歐氏距離,αrep為機(jī)器人當(dāng)前位置與障礙物之間的歐氏距離,α0代表障礙物的最大影響距離.引力為引力勢場的負(fù)梯度,斥力為斥力勢場的負(fù)梯度,表示為:
因此,機(jī)器人在其工作空間受到的合力為所受引力與斥力的矢量和(圖1),該合力決定機(jī)器人在該位置的運(yùn)動情況.
圖1 人工勢場受力分析Fig.1 Force analysis of artificial potential field
1.2 深度強(qiáng)化學(xué)習(xí)基本的強(qiáng)化學(xué)習(xí)以馬爾科夫決策過程(Markov Decision Process,MDP)為理論框架[8],具體過程如下:在t時(shí)刻,智能體獲取狀態(tài)st,根據(jù)給定的策略π, 選擇并執(zhí)行相應(yīng)的動作at,然后過渡到新的狀態(tài)st+1并獲取獎勵rt.智能體強(qiáng)化學(xué)習(xí)的最終目的是找到一個最優(yōu)策略π?,該策略可以最大化未來獎勵之和:
其中,γ∈[0,1)是未來獎勵的折扣系數(shù).狀態(tài)值函數(shù)V(st)可以定義為t時(shí)刻狀態(tài)st的期望獎勵,拆分成即時(shí)獎勵和后續(xù)折扣獎勵,表示為:
其中,E為數(shù)學(xué)期望.最優(yōu)策略π?可以執(zhí)行最高累計(jì)獎勵的控制動作,從而得到最佳狀態(tài)值函數(shù)V*(st),用貝爾曼最優(yōu)方程表示為[9]:
其中,為在狀態(tài)st下執(zhí)行動作at過渡到st+1的狀態(tài)轉(zhuǎn)移函數(shù).
深度強(qiáng)化學(xué)習(xí)(Deep Reinforcement Learning,DRL)算法[10]使用深度神經(jīng)網(wǎng)絡(luò)作為非線性函數(shù)近似器來近似V值,并且引入經(jīng)驗(yàn)重播方法[11]和目標(biāo)值網(wǎng)絡(luò).經(jīng)驗(yàn)重播方法將智能體與環(huán)境交互獲得的經(jīng)驗(yàn)集儲存在記憶池中,訓(xùn)練時(shí)采樣經(jīng)驗(yàn)集,打破經(jīng)驗(yàn)之間的關(guān)聯(lián)性,增加學(xué)習(xí)的效率與穩(wěn)定性.目標(biāo)值網(wǎng)絡(luò)用于更新狀態(tài)值網(wǎng)絡(luò)參數(shù),提升算法的收斂能力.
2.1 狀態(tài)空間狀態(tài)空間包括機(jī)器人狀態(tài)和行人狀態(tài)兩個方面,將機(jī)器人和行人均抽象為2D平面中的圓,目標(biāo)位置g抽象為平面中的點(diǎn),以機(jī)器人為原點(diǎn),機(jī)器人到目標(biāo)位置的方向?yàn)閤軸正方向建立坐標(biāo)系.則機(jī)器人自身的狀態(tài)B表示為:
其中,p、v、r和vo分別表示機(jī)器人的位置、速度、半徑和預(yù)設(shè)速度,dg表示機(jī)器人與目標(biāo)位置的距離.行人的狀態(tài)Hi為:
其中,n為行人的數(shù)量,pi、vi和ri分別表示行人的位置、速度和半徑,di表示機(jī)器人與行人的距離,dm和ds分別表示行人的最大影響距離和機(jī)器人與行人的安全距離.綜合(8)、(9),得到狀態(tài)s為:
2.2 勢場注意力網(wǎng)絡(luò)對于行人環(huán)境中的機(jī)器人導(dǎo)航任務(wù),需要機(jī)器人與行人充分交互,并對狀態(tài)信息進(jìn)行編碼,預(yù)測行人運(yùn)動軌跡.勢場注意力網(wǎng)絡(luò)(圖2)將人工勢場模型和注意力機(jī)制[12]融合,主要由3個模塊組成:勢能模塊、交互池化模塊、整合模塊.
圖2 勢場注意力網(wǎng)絡(luò)Fig.2 Potential field attention network
2.2.1 勢能模塊勢能模塊將行人和機(jī)器人的部分狀態(tài)用人工勢場法抽象,再合并到原有狀態(tài)中,擴(kuò)充狀態(tài)信息.首先,依據(jù)公式(1)、(2)構(gòu)建機(jī)器人勢能因素U和行人勢能因素Ui,表示為:
其中, ξ1為引力勢能因子, η1為斥力勢能因子.則融合勢能因素的機(jī)器人狀態(tài)B′和行人的狀態(tài)分別為:
經(jīng)過勢場模塊擴(kuò)充后的狀態(tài)s′為:
2.2.2 交互池化模塊交互池化模塊使用多個多層感知器(Multi-Layer Perceptron,MLP)[13]構(gòu)建,將擴(kuò)充后的狀態(tài)信息編碼為長度固定的向量,獲取機(jī)器人與行人的交互特征,然后使用注意力機(jī)制構(gòu)建行人對機(jī)器人的影響力,最后得到人群特征.首先將狀態(tài)s′編碼到固定長度的向量ei中:
其中,We為 φe的權(quán)重, φe使用ReLU激活. 再將ei輸入到后續(xù)的MLPρf中,獲得機(jī)器人與行人的交互特征:
其中, ρf表示全連接層,使用ReLU激活,W f為fi的權(quán)重.然后使用MLPφψ獲取行人注意力分?jǐn)?shù)ψi,用于表征行人對機(jī)器人的影響力,表示為:
其中,φψ使用ReLU激活,Wψ為 φψ的權(quán)重.最后將交互特征fi和行人注意力分?jǐn)?shù)ψi加權(quán)線性組合,得人群特征:
2.2.3 整合模塊整合模塊用于計(jì)算狀態(tài)值網(wǎng)絡(luò)輸出結(jié)果.將B′和人群特征N輸入到整合模塊的MLPzv中,則輸出狀態(tài)值函數(shù)的輸出結(jié)果V(s)為:
其中,zv使用ReLU激活,Wv為zv的權(quán)重.
2.3 勢場獎勵函數(shù)對于行人導(dǎo)航環(huán)境,需要機(jī)器人準(zhǔn)確避開行人,并盡量以最短的時(shí)間到達(dá)目標(biāo)位置,因此需要設(shè)置一種合理的獎勵策略.受人工勢場理論的啟發(fā),構(gòu)建勢場獎勵函數(shù),該獎勵函數(shù)由位置獎勵函數(shù)和方向獎勵函數(shù)構(gòu)成,并設(shè)計(jì)勢場獎勵函數(shù)空間平衡各部分獎勵.
2.3.1 位置獎勵函數(shù)位置獎勵函數(shù)由目標(biāo)引導(dǎo)獎勵函數(shù)和避障獎勵函數(shù)組成,目標(biāo)引導(dǎo)獎勵使機(jī)器人快速到達(dá)目標(biāo)點(diǎn),避障獎勵使機(jī)器人與行人保持一定距離.首先,使用引力勢場函數(shù)構(gòu)建目標(biāo)引導(dǎo)獎勵函數(shù):
其中, ξ2為引力獎勵因子.使用斥力勢場函數(shù)構(gòu)建避障獎勵函數(shù)部分,設(shè)置該獎勵為負(fù)數(shù),隨著機(jī)器人與行人相對距離di的減小而減?。?/p>
其中, η2為斥力獎勵因子.
2.3.2 方向獎勵函數(shù)機(jī)器人導(dǎo)航任務(wù)中,機(jī)器人的當(dāng)前方向?qū)τ诤侠韺?dǎo)航起到了重要的影響.考慮到人工勢場法中機(jī)器人受到的合力方向可以良好地契合機(jī)器人的運(yùn)動方向,故依此設(shè)計(jì)方向獎勵函數(shù),對當(dāng)前機(jī)器人的方向做出評價(jià).由公式(3)可知,機(jī)器人所受目標(biāo)位置的引力大小Fg為:
引力方向?yàn)闄C(jī)器人指向目標(biāo)位置.由公式(4)可知,機(jī)器人所受行人的斥力大小Fi為:
斥力方向?yàn)樾腥酥赶驒C(jī)器人.合力表示為全體引力和斥力的矢量相加:
使用合力Fj的方向表示預(yù)期方向.機(jī)器人預(yù)期方向和實(shí)際方向之間的契合程度表示為:
其中Fa表示機(jī)器人實(shí)際運(yùn)動向量,φ為預(yù)期方向與實(shí)際方向Fa的夾角.考慮公式(26),設(shè)計(jì)方向獎勵函數(shù)rori(φ),表示為:
其中,τ為角度因子.
2.3.3 勢場獎勵函數(shù)空間如圖3所示,以行人為中心構(gòu)建勢場獎勵函數(shù)空間,依次將行人周圍空間劃分為方向引導(dǎo)空間、綜合空間和目標(biāo)引導(dǎo)空間.其中方向引導(dǎo)空間和綜合空間使用半徑為ds的圓區(qū)分,綜合空間和目標(biāo)引導(dǎo)空間使用半徑為dm的圓區(qū)分,如公式(9),ds為行人的最大影響距離,dm為機(jī)器人與行人的安全距離.勢場獎勵函數(shù)空間使用權(quán)重向量表示:
圖3 勢場獎勵函數(shù)空間Fig.3 Potential field reward function space
綜合公式(21)、(22)、(27)、(28),得到勢場獎勵函數(shù)為:
2.4 動作空間
2.4.1 反向近似模型受基于近似動作模型策略選擇的Q-學(xué)習(xí)算法[14]啟發(fā),提出反向近似模型,用于在新的環(huán)境狀態(tài)下刪減部分動作選項(xiàng),減少不必要的探索.假設(shè)機(jī)器人的原始動作空間為Mmax,新環(huán)境狀態(tài)為O,定義反向近似動作空間Mrev為:
其中,J表示反向近似函數(shù).
2.4.2 動作空間假設(shè)移動機(jī)器人可以朝任何方向移動,其動作at主要包括速度v、速度偏差vdev、 方向ω和方向偏差ωdev4個要素,其中vdev和 ωdev用于表征機(jī)器人內(nèi)部故障或外部環(huán)境因素對速度和方向造成的偏差.則at表示為:
其中,v可取5個值,分別在( 0,vo] 呈指數(shù)間隔分布,ω可取16個值,分別在[0,2π)均勻分布,vdev和ωdev與機(jī)器人內(nèi)部狀態(tài)和實(shí)際導(dǎo)航場景有關(guān),為了簡化動作空間,實(shí)驗(yàn)中均設(shè)置為0,因此原始動作空間A為80種離散動作的集合.
依據(jù)綜合獎勵函數(shù)空間劃分方式將狀態(tài)分為Sa、Sb和Sc3類,結(jié)合反向近似模型,將動作空間重新改進(jìn)(圖4).其中,Sa表示環(huán)境中存在機(jī)器人位于行人的方向引導(dǎo)空間中,此時(shí)機(jī)器人的動作空間為A;Sb表示機(jī)器人位于所有行人的目標(biāo)引導(dǎo)空間中,采用動作空間Ab,由公式(30)得:
圖4 反向近似模型Fig.4 Reverse approximation model
該動作空間的方向ω可取11個值,有55種離散動作;Sc表示機(jī)器人同時(shí)位于綜合空間和目標(biāo)引導(dǎo)空間(或均位于綜合空間)中,采用動作空間Ac,該動作空間的ω 有13種取值,有65種離散動作.
2.5 訓(xùn)練過程當(dāng)機(jī)器人從零開始學(xué)習(xí)時(shí),獲得的獎勵具有稀疏性,收斂速度較慢,因此使用ORCA算法[15]收集3 000個經(jīng)驗(yàn)集并預(yù)訓(xùn)練50輪,目的是初始化狀態(tài)值網(wǎng)絡(luò)V和目標(biāo)值網(wǎng)絡(luò)V′的權(quán)重,讓機(jī)器人具有一般的導(dǎo)航能力,即保證機(jī)器人總體上能夠朝向目標(biāo)點(diǎn)運(yùn)動,但是不能保證機(jī)器人不發(fā)生碰撞,也不能保證其導(dǎo)航時(shí)間最短.
強(qiáng)化學(xué)習(xí)訓(xùn)練過程使用ε-貪婪策略選擇最優(yōu)動作或隨機(jī)動作,最優(yōu)動作由最優(yōu)策略π?決定.引入記憶池D,采用隨機(jī)經(jīng)驗(yàn)重播方法[16]選擇經(jīng)驗(yàn)集.其中π?表示為:
其中,Δt為相鄰兩個動作決策之間的時(shí)間間隔,V*(st)為最佳狀態(tài)值函數(shù).由于相鄰兩個動作決策之間的時(shí)間間隔 Δt較小,因此可使用等速模型近似[17],則π?簡化為:
最終,得到勢場增強(qiáng)注意力深度強(qiáng)化學(xué)習(xí)(potential field enhanced attention deep reinforcement learning,PARL)算法,用該算法進(jìn)行訓(xùn)練,算法訓(xùn)練過程如圖5所示.
圖5 PARL算法訓(xùn)練過程示意圖Fig.5 Schematic diagram of the training process of PARL algorithm
算法1勢場增強(qiáng)注意力深度強(qiáng)化學(xué)習(xí)
輸入未來獎勵折扣γ、預(yù)訓(xùn)練學(xué)習(xí)率αP、強(qiáng)化學(xué)習(xí)學(xué)習(xí)率αR、 目標(biāo)網(wǎng)絡(luò)權(quán)重更新周期C、貪婪因子ε、記憶池容量L、最大運(yùn)行時(shí)間tmax;
輸出狀態(tài)值網(wǎng)絡(luò)V的權(quán)重參數(shù)θ,目標(biāo)值網(wǎng)絡(luò)V′的權(quán)重 θ′;
步驟1預(yù)訓(xùn)練狀態(tài)值網(wǎng)絡(luò)V并獲得權(quán)重θ,初始化目標(biāo)值網(wǎng)絡(luò)V′和權(quán)重θ′,使θ′=θ;
步驟2初始化機(jī)器人導(dǎo)航場景,獲取初始狀態(tài)s0;
步驟3判斷當(dāng)前狀態(tài)類別并選擇動作空間;
步驟4使用ε-貪婪策略選擇動作at:在當(dāng)前動作空間內(nèi)隨機(jī)選擇動作或選擇最優(yōu)動作at=(Vθ表示狀態(tài)值網(wǎng)絡(luò)V的狀態(tài)值函數(shù));
步驟5執(zhí)行動作at,過渡到新狀態(tài)空間st+Δt,并獲得獎勵r(st,at);
步驟6若記憶池D中經(jīng)驗(yàn)集的數(shù)量為L,則刪除最早的經(jīng)驗(yàn)集,并將新的經(jīng)驗(yàn)集存入D中,并使用隨機(jī)經(jīng)驗(yàn)重播方法從記憶池D中抽取經(jīng)驗(yàn)集;
步驟7依據(jù)經(jīng)驗(yàn)集和目標(biāo)值網(wǎng)絡(luò)V′計(jì)算目標(biāo)值表示目標(biāo)值網(wǎng)絡(luò)V′的狀態(tài)值函數(shù));
步驟8根據(jù)目標(biāo)值y,使用梯度下降方法更新狀態(tài)值網(wǎng)絡(luò)V的權(quán)重參數(shù)θ;
步驟9目標(biāo)值網(wǎng)絡(luò)權(quán)重更新,即在一輪中,若機(jī)器人導(dǎo)航到當(dāng)前位置所用的總時(shí)間小于tmax,則每隔C步動作決策更新一次目標(biāo)值網(wǎng)絡(luò)V′的權(quán)重θ′,使θ′=θ;
步驟10更新貪婪因子ε;
步驟11判斷是否滿足終止條件,即機(jī)器人到達(dá)目標(biāo)點(diǎn)或?qū)Ш綍r(shí)間大于tmax,若滿足則終止本輪循環(huán);否則,轉(zhuǎn)到步驟3;
步驟12判斷是否達(dá)到設(shè)定的輪次,若滿足則結(jié)束訓(xùn)練;否則,轉(zhuǎn)到步驟2.
3.1 實(shí)驗(yàn)環(huán)境和參數(shù)如圖6所示,使用V-REP仿真軟件建立仿真環(huán)境.機(jī)器人的導(dǎo)航空間S為10 m×10 m 正方形區(qū)域,為了防止訓(xùn)練過程中移動機(jī)器人運(yùn)動到工作空間S之外,在其邊緣設(shè)置墻壁.機(jī)器人的起始位置p 和目標(biāo)位置g均在圖6中表示,預(yù)設(shè)最大速度vo為1 m /s,半徑r取值為0.3 m,相鄰兩個動作決策之間的時(shí)間間隔Δt為0.25s,最大運(yùn)行時(shí)間tmax設(shè)置為25 s.行人數(shù)量n取值為5,行人的運(yùn)動使用隨機(jī)模型控制[3].
圖6 移動機(jī)器人V-REP仿真環(huán)境Fig.6 V-REP simulation environment for mobile robot
使用PyTorch框架建立PARL算法模型控制機(jī)器人,其中預(yù)訓(xùn)練學(xué)習(xí)率為0.01,強(qiáng)化學(xué)習(xí)學(xué)習(xí)率為0.001,未來獎勵的折扣系數(shù)γ為0.9,貪婪因子ε 在5 000輪訓(xùn)練中從0.5線性衰減到0.1.
3.2 訓(xùn)練實(shí)驗(yàn)本實(shí)驗(yàn)將一輪定義為一次完整的機(jī)器人導(dǎo)航過程,按照導(dǎo)航結(jié)果的不同,可將每次導(dǎo)航分為以下3種情況:①導(dǎo)航成功,即機(jī)器人在最大運(yùn)行時(shí)間tmax內(nèi)成功到達(dá)目標(biāo)位置;②超出導(dǎo)航時(shí)間,即機(jī)器人運(yùn)行時(shí)間超過tmax,且未發(fā)生碰撞;③發(fā)生碰撞,即機(jī)器人在tmax內(nèi)碰到行人或墻壁.在每輪導(dǎo)航過程中,機(jī)器人每隔Δt進(jìn)行一次迭代,直到完成此輪導(dǎo)航為止.
使用PARL算法對移動機(jī)器人進(jìn)行5 000輪訓(xùn)練,使用SARL算法[6]和CADRL算法[5]作為對比實(shí)驗(yàn).如圖7、8所示,分別繪制機(jī)器人平均導(dǎo)航成功率和平均導(dǎo)航時(shí)間曲線,其中橫坐標(biāo)表示訓(xùn)練輪數(shù),縱坐標(biāo)分別表示未來200輪訓(xùn)練的平均導(dǎo)航時(shí)間和平均導(dǎo)航成功率,發(fā)生情況②和③時(shí)導(dǎo)航時(shí)間均視為tmax.
圖7 不同算法機(jī)器人平均導(dǎo)航成功率Fig.7 Average navigation success rate of robots with different algorithms
圖8 不同算法機(jī)器人平均導(dǎo)航時(shí)間Fig.8 Average navigation time of robots
由圖7、8可知,隨著訓(xùn)練輪數(shù)的增加,機(jī)器人導(dǎo)航時(shí)間減少,導(dǎo)航成功率提高,說明機(jī)器人在行人環(huán)境下具有自主學(xué)習(xí)能力,導(dǎo)航效果隨著自主學(xué)習(xí)逐漸變好. 訓(xùn)練過程中,PARL和SARL的導(dǎo)航時(shí)間和導(dǎo)航成功率均顯著優(yōu)于CADRL,這是因?yàn)镃ADRL的狀態(tài)值函數(shù)只能考慮機(jī)器人與最近行人的關(guān)系,交互不充分,導(dǎo)致訓(xùn)練效果較差.相比于SARL,PARL在訓(xùn)練過程中的導(dǎo)航時(shí)間更少,成功率更高,并且訓(xùn)練曲線的收斂速度更快,這說明PARL將物理模型和數(shù)據(jù)驅(qū)動結(jié)合的方式,可以提升機(jī)器人訓(xùn)練過程中的自主學(xué)習(xí)效率.值得注意的是,PARL在前期對平均導(dǎo)航時(shí)間的改善尤為明顯,而且SARL的平均導(dǎo)航時(shí)間在700輪左右出現(xiàn)大幅度下跌,且曲線整體平滑程度較差,這是說明SARL在訓(xùn)練前期的探索效果較差,而融合了APFM的PARL改善了這一情況,使前期的訓(xùn)練更具有合理性.
3.3 測試實(shí)驗(yàn)分別對訓(xùn)練5 000輪的PARL、SARL和CADRL進(jìn)行500次測試,計(jì)算平均結(jié)果.除了訓(xùn)練過程所采用的3種強(qiáng)化學(xué)習(xí)算法之外,添加ORCA算法作為對比實(shí)驗(yàn),用于反映基于模型的算法和強(qiáng)化學(xué)習(xí)算法的性能差異,同樣進(jìn)行500次測試實(shí)驗(yàn),計(jì)算平均結(jié)果.
對于每組測試實(shí)驗(yàn)設(shè)置5個實(shí)驗(yàn)指標(biāo):①平均成功率;②平均碰撞率;③平均導(dǎo)航時(shí)間,即機(jī)器人完成情況①所需的平均時(shí)間;④平均安全率,用于表征發(fā)生情況①時(shí)機(jī)器人和行人距離大于行人安全距離ds的概率,表示為:
其中W為測試實(shí)驗(yàn)導(dǎo)航成功總次數(shù),ta為機(jī)器人第a次成功導(dǎo)航過程中相對于所有行人均處于安全距離的時(shí)間,T a為機(jī)器人第a次成功導(dǎo)航所用的總時(shí)間;⑤平均導(dǎo)航時(shí)間標(biāo)準(zhǔn)差,用于表征導(dǎo)航動作魯棒性,發(fā)生情況②和③的測試實(shí)驗(yàn)不參與計(jì)算,表示為:
由表1可知,測試實(shí)驗(yàn)中的PARL的平均成功率和平均安全率達(dá)到100%和98.2%,PAPL和SARL的導(dǎo)航成功率均大幅度高于CADRL,這是因?yàn)樽⒁饬C(jī)制可以充分考慮機(jī)器人與導(dǎo)航場景中各行人的位置關(guān)系,而CADRL只能考慮最近行人的位置,對導(dǎo)航場景存在短視現(xiàn)象,從而引起較多碰撞.ORCA的導(dǎo)航成功率分別低于PARL和SARL58.2%和56.6%,這是因?yàn)镺RCA這類基于模型的方法僅考慮當(dāng)前一定范圍的導(dǎo)航場景,對于較遠(yuǎn)距離行人運(yùn)動的預(yù)測不夠充分.PARL的導(dǎo)航成功率不僅遠(yuǎn)高于CADRL和ORCA,也比同樣擁有注意力機(jī)制SARL高出1.6%,表明PARL這種將數(shù)據(jù)驅(qū)動和物理模型融合的方法,對機(jī)器人導(dǎo)航任務(wù)具有積極作用.
表1 測試實(shí)驗(yàn)各指標(biāo)數(shù)據(jù)對比Tab.1 Comparison of various index data of test experiment
平均導(dǎo)航時(shí)間方面,PAPL比其他3種算法縮短0.14~1.11 s,CADRL的平均導(dǎo)航時(shí)間不僅遠(yuǎn)高于PARL和SARL,也比基于模型的ORCA高,這是因?yàn)镃ADRL驅(qū)動的機(jī)器人沒有系統(tǒng)的規(guī)劃路徑能力,不會快速靠近目標(biāo)位置,因此也出現(xiàn)了超出最大導(dǎo)航時(shí)間(情況②)的現(xiàn)象,同為短視算法的ORCA可以更快地靠近目標(biāo)位置,但是更容易發(fā)生碰撞.另外,PARL和SARL的機(jī)器人平均導(dǎo)航時(shí)間分別比ORCA低,說明PARL和SARL在快速接近目標(biāo)位置的能力上優(yōu)于ORCA.PARL算法的平均導(dǎo)航時(shí)間相比于SARL下降了1.3%,說明在導(dǎo)航過程中,PARL驅(qū)動的機(jī)器人運(yùn)動路徑更加合理,能夠更快到達(dá)目標(biāo)位置.
平均安全率方面,PARL分別高于SARL和CADRL3.3%和17.5%,這表明PARL在導(dǎo)航過程中對行人安全距離ds的控制較為精確,在快速到達(dá)目標(biāo)位置的同時(shí),又保證了導(dǎo)航的安全性.
平均導(dǎo)航時(shí)間標(biāo)準(zhǔn)差方面,使用CADRL驅(qū)動的機(jī)器人,其魯棒性不僅遠(yuǎn)低于PARL和SARL,也低于ORCA,這同樣是因?yàn)樵撍惴ǖ娜狈ο到y(tǒng)的規(guī)劃路徑能力,因此平均導(dǎo)航時(shí)間的波動幅度較大,魯棒性較差.PARL的平均導(dǎo)航時(shí)間標(biāo)準(zhǔn)差相對于SARL降低了55.9%,這說明PARL可以提升機(jī)器人導(dǎo)航的魯棒性,使機(jī)器人的導(dǎo)航動作更加穩(wěn)定.
由上述實(shí)驗(yàn)結(jié)果和分析可知,本文提出的PARL對移動行人導(dǎo)航場景具有較好的效果,在導(dǎo)航成功率、導(dǎo)航時(shí)間、導(dǎo)航安全性和導(dǎo)航動作魯棒性等方面均優(yōu)于對比實(shí)驗(yàn).
根據(jù)公共服務(wù)領(lǐng)域行人場景中的機(jī)器人導(dǎo)航任務(wù),本文提出了PARL算法.該算法將物理模型和數(shù)據(jù)驅(qū)動從狀態(tài)值函數(shù)、獎勵函數(shù)和動作空間3個方面融合,分別以勢場注意力網(wǎng)絡(luò)作為狀態(tài)值網(wǎng)絡(luò),使用人工勢場思想設(shè)計(jì)獎勵函數(shù),使用反向近似模型改進(jìn)動作空間.實(shí)驗(yàn)結(jié)果表示,PARL可以使移動機(jī)器人的自主學(xué)習(xí)效率得到提高,且平均導(dǎo)航成功率和安全率分別為100%和98.2%,與SARL、CADRL、ORCA算法相比,平均導(dǎo)航時(shí)間縮短0.14~1.11s,且導(dǎo)航動作魯棒性更強(qiáng).在未來的工作中,將集成更多的功能到深度強(qiáng)化學(xué)習(xí)框架中,使移動機(jī)器人更加適應(yīng)真實(shí)的行人環(huán)境.同時(shí),拓展該算法到具體的移動行人場景中,也是未來研究工作的重要課題.