劉 峰, 魏瑞軒, 丁 超, 姜龍亭, 李 天
(空軍工程大學(xué)航空工程學(xué)院, 西安, 710051)
無人機集群是一種新型作戰(zhàn)樣式,具有作戰(zhàn)成本低、沖突勝算大、生存能力強、作戰(zhàn)效能高的特點。這些重要特征使得無人機集群在局部沖突中扮演著越來越重要的角色[1-2]。協(xié)同圍捕問題屬于無人機集群作戰(zhàn)的典型應(yīng)用場景之一,有重要的理論研究價值和廣泛的應(yīng)用前景。
在協(xié)同圍捕方法設(shè)計上,已有不少學(xué)者做了相關(guān)研究[3-7]。張紅強等[3]設(shè)計了一種基于簡化虛擬受力模型,借助勢域函數(shù)使機器人在未知動態(tài)環(huán)境下完成圍捕。李瑞珍等[4]采用協(xié)商法為機器人分配動態(tài)圍捕點,建立包含圍捕路徑損耗和包圍效果的目標(biāo)函數(shù)并優(yōu)化航向角,從而實現(xiàn)協(xié)同圍捕。Michael Rubenstein等[5]以1 000個機器人為載體,分邊緣檢測、梯度上升、協(xié)同定位3部分算法設(shè)計,并通過局部交互進行合作,完成給定圖片的不規(guī)則圖形圍捕演示,以人工集群的手段匯聚出自然蜂群的能力。
以上研究均是基于分布式控制,將協(xié)同圍捕問題轉(zhuǎn)換為集群任務(wù)分配、路徑規(guī)劃、群體一致性問題,從而達到圍捕的效果,但在群體智能涌現(xiàn)方面仍有待提升。
近年來,也有部分學(xué)者探索通過強化學(xué)習(xí)方法來解決協(xié)同圍捕問題[8-10]。吳子沉等[8]將圍捕行為離散化后,設(shè)計能夠應(yīng)對復(fù)雜環(huán)境的圍捕策略,但其存儲機制仍有待優(yōu)化。陳亮等[9]提出混合DDPG算法,有效協(xié)同異構(gòu)agent之間的工作,同時,Q函數(shù)重要信息丟失及過估計等問題有待解決。Ryan Lowe[10]于2017年提出MADDPG算法,采用“集中訓(xùn)練,分散執(zhí)行”的框架解決了環(huán)境不穩(wěn)定的問題,但是該算法隨著agent數(shù)目的增加,Actor-Critic網(wǎng)絡(luò)難以訓(xùn)練和收斂。
針對以上分析,本文提出一種多無人機協(xié)同圍捕算法Att-MADDPG(即Attention-MADDPG)。
在一個無限大且無障礙的二維環(huán)境中,隨機分布n(n≥3)架圍捕無人機Ui和一架目標(biāo)無人機T,其速度分別為vi、vT,且滿足vi>vT,航向角分別為φi、φT,其中i∈In={1,2,…,n},如圖1所示。
圖1 圍捕環(huán)境示意圖
假設(shè)對于任意無人機,都能將自身的參數(shù)通過通信網(wǎng)絡(luò)G實現(xiàn)與其他無人機實時信息交換。本文的目的就是基于這種信息共享,設(shè)計控制方法,使n架圍捕無人機通過協(xié)作,在有限時間t內(nèi),在目標(biāo)無人機周圍形成圍捕包圍圈,迫使目標(biāo)無人機T停止運動,從而完成圍捕任務(wù)。理想的圍捕包圍圈通常是圍捕無人機群均勻分布在以目標(biāo)無人機T為圓心,圍捕半徑r的圓上[5],以n=4為例,理想的圍捕包圍圈如圖2所示。
圖2 圍捕包圍圈示意圖
設(shè)無人機i當(dāng)前時刻的位置為[x,y]T,構(gòu)建非線性運動學(xué)方程如下:
(1)
式中:ui為無人機的控制輸入,ui∈[-ω0,ω0];ω0為無人機角速度上限。圍捕控制策略就是根據(jù)圍捕態(tài)勢確定每架無人機的ui,使圍捕無人機集群實現(xiàn)對目標(biāo)無人機的有效圍捕。
強化學(xué)習(xí)(reinforce learning,RL)是機器學(xué)習(xí)的一種,不同于監(jiān)督學(xué)習(xí)或無監(jiān)督學(xué)習(xí),強化學(xué)習(xí)是通過與環(huán)境的交互進行不斷試錯-學(xué)習(xí),以達成回報最大化或?qū)崿F(xiàn)特定目標(biāo),如圖3所示。
圖3 智能體與環(huán)境交互圖
強化學(xué)習(xí)的常見模型是標(biāo)準(zhǔn)的馬爾可夫決策過程(markov decision process,MDP)。由四元組〈S,A,R,Ps,a〉表示,其中,S表示狀態(tài)集,A表示動作集,R表示獎勵函數(shù),Ps,a表示狀態(tài)轉(zhuǎn)移概率?;诋?dāng)前狀態(tài)st,執(zhí)行動作at,以一定的狀態(tài)轉(zhuǎn)移概率達到下一時刻狀態(tài)st+1,獲得即時獎勵Rt,但強化學(xué)習(xí)是尋找最大化累積回報的學(xué)習(xí)過程[11]。定義累積獎勵期望值Qπ(s,a):
(2)
式中:γ為折扣因子,0<γ≤1,表示注重長期獎勵的程度。π為策略,即狀態(tài)到動作的映射。給出Q-Learning算法中Q值迭代計算表達式:
Q(st,at)←Q(st,at)+α[Rt+γmaxQ(st+1,at+1)-Q(st,at)]
且st狀態(tài)下最優(yōu)策略為:
Dietterich.T.G[12]從值函數(shù)分解的角度,完成了Q-Learning算法中Q值累加的收斂性證明。
多智能體深度確定性策略梯度算法(multi-agent deep deterministic policy gradient,MADDPG)是對深度確定性策略梯度(deep deterministic policy gradient,DDPG)算法進行拓展,使其能夠適用于傳統(tǒng)強化方法無法處理的多智能體合作問題的一種智能算法[10]。MADDPG算法采用“集中訓(xùn)練,分散執(zhí)行”的框架進行學(xué)習(xí),見圖4。
圖4 MADDPG算法流程圖
每個agent擁有一套獨立的Actor-Critic網(wǎng)絡(luò),其中Actor為行動網(wǎng)絡(luò),Critic為評價網(wǎng)絡(luò)。在訓(xùn)練過程中(圖4中紅色部分),每個agent的Critic獲取全信息狀態(tài),同時包含所有agent的動作。當(dāng)模型訓(xùn)練完畢,每個agent的Actor利用局部信息完成與環(huán)境的交互(圖4中藍色部分)。令Ot表示agent對環(huán)境的觀測,IA和at分別表示Actor的輸入和輸出,IC和Qi分別表示Critic的輸入和輸出,那么對于第i個agent,網(wǎng)絡(luò)輸入輸出為:
IA=Ot,at=πi(st)
IC=[Ot,a1,a2,…,an],Qi=Qi(IC)
(3)
當(dāng)agent數(shù)量增多時,由式(3)中IC可知,Critic的輸入維度也呈線性增長,這將導(dǎo)致網(wǎng)絡(luò)難以訓(xùn)練和收斂。文獻[10]和[13]同樣指出,盡管集中訓(xùn)練,分散執(zhí)行的結(jié)構(gòu)具有諸多優(yōu)勢,但是隨著agent數(shù)量的增加,集中訓(xùn)練中Critic網(wǎng)絡(luò)規(guī)模會快速增長,因而無法處理大規(guī)模多智能體的學(xué)習(xí)問題。同樣的,由Facebook AI實驗室和Google AI聯(lián)合贊助的二維網(wǎng)格環(huán)境炸彈人平臺,在測試時最多也只能容納4個agent。
近年來,注意力機制(attention mechanism)被廣泛用于基于深度學(xué)習(xí)的自然語言處理、圖像分類、機器翻譯可視化對齊、語音識別等各種任務(wù)中,并取得了不錯的效果[14]。2017年6月,Google機器翻譯團隊借助自注意力機制在WMT2014語料中的英德和英法翻譯任務(wù)上取得了優(yōu)異成績,翻譯錯誤率降低了60%,并且訓(xùn)練速度遠優(yōu)于其他主流模型[15]。
圍捕過程中也存在類似的注意力問題。每架無人機更多的關(guān)注與自己近鄰的無人機,對距離較遠的無人機的態(tài)勢關(guān)注的較少,甚至不關(guān)注。這就是圍捕過程中的注意力現(xiàn)象。我們將這種現(xiàn)象引入到圍捕策略的設(shè)計,形成面向圍捕的注意力機制。以無人機協(xié)同圍捕的場景程闡釋注意力機制如下:
定義圍捕無人機集群的聯(lián)合動作為Source,待處理信息為Target:
Source=〈p1,p2,…,pm〉
Target=〈q1,q2,…,qn〉
其中,pi(i=1,2,…,m)表示第i架無人機動作,qi(i=1,2,…,n)表示待處理信息。Attention機制[16-17]最常用的是編碼器-解碼器(Encoder-Decoder)框架,如圖5所示。Encoder對輸入的Source進行編碼,通過神經(jīng)網(wǎng)絡(luò)的非線性變換轉(zhuǎn)化為注意力分布C,C={c1,c2,…,cLp},其中Lp為Source的長度,Decoder根據(jù)注意力分布C和n-1時刻無人機的位置生成n時刻的信息qn,即圍捕無人機集群待處理信息。給出注意力分布ci(i=1,2,…,Lp)的表達式:
圖5 基于Attention機制的Encoder-Decoder框架
qn=Attention(ci,qn-1)
(4)
式中:wij為Source中第j架無人機的注意力權(quán)重系數(shù);pj為Source中第j架無人機的動作信息;Attention為非線性變換函數(shù)。
給出基于Attention機制下注意力分布ci的具體計算過程:
1)計算2架圍捕無人機之間的相關(guān)性系數(shù):Similarityi=ln(Distanceij/D),其中Distanceij為兩架圍捕無人機之間距離,D為有效利用區(qū)域半徑。
2)引入Softmax函數(shù)對第1階段的相關(guān)性系數(shù)進行歸一化處理,得到注意力權(quán)重系數(shù)ωi。一方面將原始分值映射成所有元素權(quán)重之和為1的概率分布,另一方面通過Softmax的內(nèi)在機制突出重要元素的注意力權(quán)重系數(shù)。
(5)
3)根據(jù)注意力權(quán)重系數(shù)對圍捕無人機信息進行加權(quán)求和,計算注意力分布ci值。
本文2.2節(jié)中分析MADDPG算法由于IC的計算中使用了所有agent的信息,使得其訓(xùn)練收斂受到影響。因此,我們引入Attention機制對信息進行注意力篩選,從而提高信息的有效利用率,算法框圖如圖6所示。
圖6 基于Attention機制改進的MADDPG算法框圖
與MADDPG算法不同之處在于中心化的大腦(即Critic)協(xié)調(diào)所有圍捕無人機的動作之前,經(jīng)各自Attention模塊進行非線性處理,對有效利用區(qū)域內(nèi)的圍捕無人機信息進行策略評估(圖6中紅色部分所示)。當(dāng)模型訓(xùn)練完畢,依據(jù)Actor利用局部信息完成與環(huán)境的交互(圖6中藍色部分所示)。則圍捕無人機i的有效利用區(qū)域值函數(shù)為:
因此,每架圍捕無人機的Critic網(wǎng)絡(luò)擬合的是有效利用區(qū)域的全局值函數(shù),而非圍捕無人機自身的值函數(shù)。這樣,只需要圍捕無人機的策略朝著有效利用區(qū)域的全局值函數(shù)的方向更新即可。使用MADDPG算法中雙網(wǎng)絡(luò)進行更新:
(6)
式中:yi為目標(biāo)網(wǎng)絡(luò)的值函數(shù),由即時獎勵和下一步確定策略值函數(shù)構(gòu)成;L(θi)為目標(biāo)Critic網(wǎng)絡(luò)損失函數(shù),θi為網(wǎng)絡(luò)中參數(shù)集合。目標(biāo)Actor網(wǎng)絡(luò)和目標(biāo)Critic網(wǎng)絡(luò)采用周期性平穩(wěn)滑動方法從Actor-Critic網(wǎng)絡(luò)中復(fù)制參數(shù)進行更新。目標(biāo)Critic網(wǎng)絡(luò)損失梯度通過鏈?zhǔn)椒▌t進行求導(dǎo),其梯度為:
(7)
式中:狀態(tài)s為有效利用區(qū)域全局觀測;si為圍捕無人機自身觀測。Att-MADDPG算法流程見圖7。
圖7 Att-MADDPG算法流程圖
Att-MADDPG算法偽代碼如下所示:
初始化環(huán)境參數(shù)、參數(shù)變量;判斷是否圍捕成功;for episode=1 to Mdo 初始化隨機噪聲N; 初始化圍捕無人機狀態(tài)S; fort=1 to max-episode-length do 每架圍捕無人機采用隨機策略執(zhí)行一次動作A,與環(huán)境交互后得到即時獎勵R,并達到新的狀態(tài)S'; 存儲到經(jīng)驗池中,S←S'; for圍捕無人機i=1 tondo 從經(jīng)驗池中采樣
為驗證所設(shè)計Att-MADDPG算法的有效性及智能性,取圍捕無人機數(shù)量n=4進行動態(tài)協(xié)同圍捕仿真實驗,并對比MADDPG算法進行訓(xùn)練,測試相關(guān)性能指標(biāo)。
設(shè)置圍捕無人機獎勵函數(shù)如下:
仿真環(huán)境參數(shù)設(shè)置如表1所示。
表1 仿真場景設(shè)置
配置相同的四機協(xié)同圍捕環(huán)境,設(shè)置相同的獎勵函數(shù),MADDPG算法及Att-MADDPG算法的訓(xùn)練過程如圖8~9所示。如圖8所示,采用MADDPG算法訓(xùn)練的圍捕無人機集群大致完成協(xié)同圍捕任務(wù),但訓(xùn)練過程中仍存在一些片段無法有效圍捕。
圖8 MADDPG算法訓(xùn)練過程圖
由圖9可知,經(jīng)過訓(xùn)練,Att-MADDPG算法的平均獎勵在150片段后收斂,并大致均勻分布570左右,圍捕無人機集群能夠有效完成協(xié)同圍捕任務(wù),并獲得較高獎勵。
圖9 Att-MADDPG算法訓(xùn)練過程圖
引入Att-MADDPG算法及MADDPG算法在穩(wěn)定收斂后1 000個片段的均方差,對比驗證算法的穩(wěn)定性,見表2。Att-MADDPG算法較MADDPG算法在協(xié)同圍捕上更加穩(wěn)定,根據(jù)3σ原則,記錄穩(wěn)定收斂后1 000個片段不在此范圍內(nèi)的平均獎勵數(shù)目,見表3,Att-MADDPG算法穩(wěn)定性較MADDPG算法提高8.9%。
表2 穩(wěn)定收斂后1 000個片段的均方差
表3 1 000個片段內(nèi)不在3σ原則范圍內(nèi)的數(shù)目
設(shè)定目標(biāo)無人機的運動策略為固定直線軌跡,對經(jīng)過Att-MADDPG算法訓(xùn)練后的4架智能圍捕無人機進行驗證,驗證集參數(shù)見表4。
表4 動態(tài)協(xié)同圍捕驗證集參數(shù)
由圖10可知,圍捕無人機通過相互協(xié)作完成圍捕。在圍捕過程中,無人機實時判斷圍捕態(tài)勢,引入注意力機制觀察有效利用區(qū)域半徑內(nèi)的其他無人機狀態(tài)信息,達到形成圍捕包圍圈的目的,各無人機經(jīng)過協(xié)作使系統(tǒng)涌現(xiàn)出更加智能化的協(xié)同圍捕行為。
圖10 動態(tài)協(xié)同圍捕軌跡圖
環(huán)境配置相同,采用MADDPG算法進行驗證,Att-MADDPG算法完成協(xié)同圍捕總用時264 s,MADDPG算法本文算法總用時326.4 s,減少19.12%。
無人機集群作戰(zhàn)在局部沖突中發(fā)揮著越來越重要的作用,協(xié)同圍捕是無人機集群作戰(zhàn)的典型應(yīng)用場景之一,也是集群作戰(zhàn)中的重要問題。本文針對MADDPG算法隨著agent數(shù)量的增加,訓(xùn)練難以收斂的不足,基于注意力機制提出Att-MADDPG圍捕控制方法,較MADDPG算法的訓(xùn)練穩(wěn)定性提高8.9%,任務(wù)完成耗時減少19.12%,且經(jīng)學(xué)習(xí)后的圍捕無人機通過協(xié)作配合使集群涌現(xiàn)出更具智能化圍捕行為。
為使本文所提算法能夠適用于更加復(fù)雜的環(huán)境,仍需研究基于群智匯聚的協(xié)同圍捕機理,并優(yōu)化在三維環(huán)境下的協(xié)同圍捕策略,使圍捕行為更具智能化。