丁瑋,翟藝偉
(1.中國人民解放軍32801 部隊,北京 100000;2.中國電子科技集團公司第二十研究所,陜西 西安 710000)
近年來,多無人機協(xié)同作戰(zhàn)涌現(xiàn)的編隊智能表現(xiàn)出巨大的軍事潛力。目前,多無人機編隊的自主決策算法成為國內(nèi)外學(xué)者的研究熱點[1-2]。傳統(tǒng)的自主決策算法有人工勢場法[3]、Voronoi 算法[4]、模型預(yù)測控制算法[5]、A*算法[6]、智能優(yōu)化算法[7-8]等,這些算法多關(guān)注全局信息下的自主決策,但真實的戰(zhàn)場環(huán)境具有未知性和不確定性。近些年來,深度強化學(xué)習(xí)的快速發(fā)展為無人機自主決策提供了新的解決思路[9-12],結(jié)合深度學(xué)習(xí)的感知能力和強化學(xué)習(xí)的決策能力,有望實現(xiàn)在線、動態(tài)的無人機自主決策。
通過建立多無人機自主決策問題模型,運用多智能體強化學(xué)習(xí)的相關(guān)知識,對無人機編隊的動作進行規(guī)劃,使之實現(xiàn)在復(fù)雜環(huán)境下的避障路徑規(guī)劃。
多無人機自主決策問題可以描述為在一定的戰(zhàn)場環(huán)境內(nèi)存在靜態(tài)或者動態(tài)的障礙物,無人機的目標(biāo)是根據(jù)自身的傳感器信息,從初始任務(wù)區(qū)域出發(fā),最終到達目標(biāo)區(qū)域。
無人機的二維運動學(xué)模型如圖1 所示,無人機的位置為(px,py),速度為(vx,vy),雷達探測距離為R,雷達探測角度為θr,無人機的航向角為φu。無人機在飛行過程中需要躲避的區(qū)域建模為圖1 所示的半徑為Robs的圓形。
圖1 無人機二維運動模型
強化學(xué)習(xí)的基本過程如圖2 所示,環(huán)境的狀態(tài)因為智能體決策的動作發(fā)生改變,同時,智能體接受環(huán)境對于動作優(yōu)劣的判斷[13-15]。
圖2 強化學(xué)習(xí)基本過程
馬爾可夫決策過程的目標(biāo)就是尋找一個最優(yōu)策略π,使得智能體的累計回報值最大。在馬爾可夫決策過程中,狀態(tài)價值函數(shù)vπ(s)和動作價值函數(shù)qπ(s,a)定義如下:
其中,Gt代表累計回報。
時間差分方法[16]是應(yīng)用最廣的強化學(xué)習(xí)算法,SARSA 算法和Q-learning 算法是其中的兩種代表性算法。SARSA 算法也是一種在線策略(on-policy)算法,其動作價值函數(shù)的更新公式為:
其中,α代表學(xué)習(xí)速率。
Q-learning 則是一種離線策略(off-policy)算法,它的動作價值函數(shù)更新公式為:
深度確定性策略梯度(DDPG)算法[17]借鑒了DQN算法[18]的經(jīng)驗回放機制和雙網(wǎng)絡(luò)結(jié)構(gòu),同時利用確定性梯度的特點,通過Actor 網(wǎng)絡(luò)直接輸出具體的動作,使其能夠應(yīng)用在高維的動作空間。DDPG 算法采用Actor-Critic 算法框架,其算法框架如圖3 所示。
圖3 Actor-Critic算法框架
具體地,DDPG 算法設(shè)計了四種網(wǎng)絡(luò),即Actor 當(dāng)前網(wǎng)絡(luò)、Actor 目標(biāo)網(wǎng)絡(luò)、Critic 當(dāng)前網(wǎng)絡(luò)和Critic 目標(biāo)網(wǎng)絡(luò)。其中,Actor 當(dāng)前網(wǎng)絡(luò)和Critic 當(dāng)前網(wǎng)絡(luò)的參數(shù)更新公式如下:
其中,θ是Actor 當(dāng)前網(wǎng)絡(luò)的參數(shù),θ′是Actor 目標(biāo)網(wǎng)絡(luò)的參數(shù),w是Critic 當(dāng)前網(wǎng)絡(luò)的參數(shù),w′是Critic 目標(biāo)網(wǎng)絡(luò)的參數(shù),Actor 當(dāng)前網(wǎng)絡(luò)輸出的確定性動作為a=μ(s;θ),m是經(jīng)驗池中隨機采樣的數(shù)據(jù)總數(shù),yi是目標(biāo)Q值。
Actor 目標(biāo)網(wǎng)絡(luò)和Critic 目標(biāo)網(wǎng)絡(luò)的參數(shù)通過軟更新的方式進行更新,使得算法更加穩(wěn)定。
由于DDPG 算法應(yīng)用于多智能體時無法利用全局智能體的狀態(tài)信息,因此,Critic 網(wǎng)絡(luò)給出的狀態(tài)值函數(shù)并不十分準(zhǔn)確,同時算法的穩(wěn)定性會受到智能體之間的影響。為了解決這些問題,文獻[19]提出了多智能體深度確定性策略梯度(MADDPG)算法。
MADDPG 算法的Actor 網(wǎng)絡(luò)結(jié)構(gòu)只考慮單個智能體的局部狀態(tài)信息,但是Critic 網(wǎng)絡(luò)結(jié)構(gòu)考慮了其他智能體的狀態(tài)和動作信息。
對于MADDPG 算法,第i個智能體的策略梯度公式可以表示為式(5):
其中,θi是第i個智能體Actor當(dāng)前網(wǎng)絡(luò)的參數(shù)。
第i個智能體的Critic 網(wǎng)絡(luò)參數(shù)更新可以表示為式(6)-(7):
其中,ai代表第i個智能體的動作,wi是第i個智能體Critic 當(dāng)前網(wǎng)絡(luò)的參數(shù),是第i個智能體Critic 目標(biāo)網(wǎng)絡(luò)的參數(shù),yi代表目標(biāo)Q值。
多無人機自主決策問題可以描述為在有限任務(wù)區(qū)域中,無人機躲避環(huán)境中的障礙物,最終到達各自的任務(wù)區(qū)域。如圖4 所示,多無人機自主決策環(huán)境中包含無人機、目標(biāo)和障礙物。其中,是無人機的位置坐標(biāo),是目標(biāo)中心點的位置坐標(biāo),是障礙物中心點的位置坐標(biāo)。
圖4 多無人機自主決策環(huán)境
多無人機自主決策問題中的狀態(tài)空間、動作空間和回報函數(shù)可表示如下。
第i架無人機的狀態(tài)信息由無人機速度、位置、無人機相對目標(biāo)的距離、無人機相對其他無人機的距離、無人機相對障礙物的距離組成。具體可表示為。
無人機的動作空間由各個方向的外力表示,第i架無人機的動作空間可以表征為。
為了避免稀疏回報問題,將多無人機自主決策的回報函數(shù)表示為式(8):
其中,dis(·)表示二維空間中的歐式距離,Rt是目標(biāo)半徑,Ro是障礙物半徑,Ru是無人機碰撞距離。r1是無人機到達目標(biāo)區(qū)域獲得的獎勵值,r2是任務(wù)失敗的獎勵值,包括無人機發(fā)生碰撞、無人機進入障礙物區(qū)域,rdis是無人機與目標(biāo)的距離帶來的獎勵項,robs是無人機與障礙物的距離帶來的獎勵項。
在實驗中,DDPG 算法和MADDPG 算法的Critic網(wǎng)絡(luò)結(jié)構(gòu)有所區(qū)分,DDPG 算法的Critic 網(wǎng)絡(luò)輸入局部狀態(tài)觀測值和動作值,MADDPG 算法的Critic 網(wǎng)絡(luò)則輸入所有智能體的狀態(tài)觀測值和動作值。
算法中的其他參數(shù)設(shè)置如下:每一回合的最大長度為400,學(xué)習(xí)率為0.001,折扣因子為0.95,經(jīng)驗池的大小為1×106,批量訓(xùn)練集大小為1 024,目標(biāo)網(wǎng)絡(luò)的更新率τ=0.01。
回合平均回報值(Episode Average Return,EAR)是智能體在有限回合所獲得的獎勵值,收斂時獎勵值越高,說明算法越具有優(yōu)勢,具體如式(9):
式中,N表示有限回合的個數(shù),|En|代表第n個回合的長度,無人機的數(shù)量為Nu,r(ui,j)表示無人機在第j步的獎勵值。
在有15個障礙物的自主決策環(huán)境中,利用DDPG算法和MADDPG 算法對無人機編隊進行訓(xùn)練,學(xué)習(xí)過程中的回合平均回報值的變化如圖5 所示。
圖5 多無人機自主決策訓(xùn)練過程
圖5 橫坐標(biāo)代表訓(xùn)練的回合數(shù),縱坐標(biāo)代表回合平均回報值。分析圖5,由于訓(xùn)練過程中存在隨機噪聲,算法呈現(xiàn)一定的震蕩,但兩種算法在訓(xùn)練一段時間后均呈收斂趨勢,不過兩種算法收斂的速度和時間存在一些差異。相比之下,MADDPG 算法比DDPG 算法更早的收斂,且收斂后的回報值高于DDPG算法。
為了測試算法收斂后的性能,分別利用訓(xùn)練完成的兩種算法模型在障礙物數(shù)量為0 個、8 個、15 個的環(huán)境中,對多無人機自主決策能力進行測試。測試任務(wù)成功率如圖6 所示,在不同密度的障礙物測試環(huán)境中,MADDPG 算法能取得比DDPG 算法更高的成功率。
圖6 測試任務(wù)成功率
以多無人機自主決策為研究背景,構(gòu)建了多無人機自主決策環(huán)境,通過描述馬爾科夫決策過程,分析了深度確定性策略梯隊算法和MADDPG 算法。仿真實驗結(jié)果驗證了應(yīng)用在多智能體領(lǐng)域的MADDPG 算法能有效地對多無人機進行路徑規(guī)劃,在有障礙環(huán)境中實現(xiàn)自主決策。隨著多智能體數(shù)量的增多,MADDPG 算法將難以收斂,如何改進算法網(wǎng)絡(luò),提高采樣效率,值得進一步地開展研究。