聶文川,樊志強(qiáng)
(中國電科智能科技研究院,北京 100083)
隨著我軍不斷地信息化改革,研究人員探索了眾多的人工智能技術(shù)[1-5]。強(qiáng)化學(xué)習(xí)技術(shù)近年來逐漸火熱,強(qiáng)化學(xué)習(xí)是可以自學(xué)習(xí)的,它適用于決策,已經(jīng)應(yīng)用于許多領(lǐng)域,如流量控制、無人機(jī)控制、網(wǎng)絡(luò)構(gòu)建等[6-9]。博弈是指一個理性的人或團(tuán)隊從選擇行為或策略,到最終獲取相應(yīng)的利益。強(qiáng)化學(xué)習(xí)算法通過博弈對抗中產(chǎn)生的回報來優(yōu)化策略選擇。強(qiáng)化學(xué)習(xí)的最主流應(yīng)用仍在游戲領(lǐng)域中,近年來,強(qiáng)化學(xué)習(xí)征服了象棋、圍棋等完全信息游戲,以及撲克等不完全信息游戲,在電子游戲競賽中的戰(zhàn)爭迷霧和復(fù)雜狀態(tài)空間以及動作空間的游戲,如Dota、星際爭霸等[10-12],人類玩家也逐漸被強(qiáng)化學(xué)習(xí)算法超越,而這就是算法有效性最強(qiáng)有力的體現(xiàn)。
本文基于現(xiàn)實海上反艦場景中導(dǎo)彈機(jī)動的強(qiáng)化學(xué)習(xí)進(jìn)行了研究,將他們遷移到仿真的場景中,尤其是導(dǎo)彈集群反艦任務(wù)。針對異構(gòu)多智能體博弈對抗的情況,本文將MADDPG(multi-agent deep deterministic strategy gradient)算法應(yīng)用到多智能體彈群反艦任務(wù)的場景中,通過分析在巨大狀態(tài)空間和動作空間的收斂速度,聚焦真實報酬稀疏的問題。同時,通過設(shè)計仿真實驗來驗證算法的有效性。
復(fù)雜對抗場景一直是強(qiáng)化學(xué)習(xí)的熱點和難點之一。隨著深度強(qiáng)化學(xué)習(xí)的發(fā)展,該算法應(yīng)用到了各種場景。然而目前的主流應(yīng)用是在圍棋等游戲領(lǐng)域[13-15],一個重要的原因就是游戲場景具有現(xiàn)成的游戲環(huán)境和自洽的規(guī)則以及獎懲機(jī)制,便于強(qiáng)化學(xué)習(xí)的應(yīng)用。但在自動駕駛等真實場景中,由于仿真環(huán)境的仿真完成度和獎懲機(jī)制的不確定性,無法實現(xiàn)強(qiáng)化學(xué)習(xí)算法。因此在仿真系統(tǒng)中,仍需大量的工作來促進(jìn)強(qiáng)化學(xué)習(xí)算法的進(jìn)步,同時在類似的仿真系統(tǒng)中,強(qiáng)化學(xué)習(xí)算法本身也有很大的發(fā)展?jié)摿?。在歷史上,計算機(jī)的發(fā)展首先運用于軍事領(lǐng)域,用來協(xié)助人類計算以及密碼破譯,在現(xiàn)代,人工智能依舊可以運用在軍事領(lǐng)域?;趶?qiáng)化學(xué)習(xí)的博弈對抗推理是維持軍隊?wèi)?zhàn)斗力的重要手段之一。近年來,軍事象棋推演成為人們普遍關(guān)注的熱點,人工智能在推理和分析的過程中起到重要的作用。本文將強(qiáng)化學(xué)習(xí)應(yīng)用于多智能體博弈對抗仿真系統(tǒng)中,選取了紅藍(lán)兩面異構(gòu)的博弈對抗場景,即近海反艦作戰(zhàn)場景,紅色攻擊和藍(lán)色防御,實現(xiàn)仿真作戰(zhàn)。本文將多智能體強(qiáng)化學(xué)習(xí)算法應(yīng)用于異構(gòu)多智能體系統(tǒng),增強(qiáng)了智能體之間的協(xié)作性,提高了算法的能力。
導(dǎo)彈集群協(xié)作智能化具有以下4個重要特點:
1)去中心化:任何一枚導(dǎo)彈的消失或者功能喪失,彈群的目標(biāo)依然可以有序?qū)崿F(xiàn)[16]。同時每一顆導(dǎo)彈都可以協(xié)作其他導(dǎo)彈實現(xiàn)戰(zhàn)術(shù)目標(biāo)。
2)自主性:戰(zhàn)場態(tài)勢瞬息萬變,依賴指揮官根據(jù)戰(zhàn)場態(tài)勢進(jìn)行決斷勢必會浪費寶貴的作戰(zhàn)時間,甚至可能錯過稍縱即逝的機(jī)會。因此為了節(jié)省人為決策消耗的時間,飛行期間導(dǎo)彈采取的一切機(jī)動操作均可進(jìn)行自主判斷并及時決策,且彈群內(nèi)的所有導(dǎo)彈只控制自身飛行,但可以觀察其他導(dǎo)彈位置,不對其他導(dǎo)彈產(chǎn)生影響。
3)高動態(tài):導(dǎo)彈需要根據(jù)戰(zhàn)場態(tài)勢變化做出快速響應(yīng)。傳統(tǒng)預(yù)先規(guī)劃的形式已經(jīng)無法滿足現(xiàn)在瞬息萬變的戰(zhàn)場環(huán)境,而導(dǎo)彈的作戰(zhàn)時間非常短暫,因此要求彈群在收集到戰(zhàn)場態(tài)勢信息后迅速做出決策。
4)自治化:所有的導(dǎo)彈形成一個穩(wěn)定的集群,并且各自承擔(dān)相應(yīng)的功能,當(dāng)某一導(dǎo)彈喪失功能造成集群結(jié)構(gòu)的缺失后,其他導(dǎo)彈應(yīng)及時調(diào)整并重新構(gòu)成穩(wěn)定的集群結(jié)構(gòu)[17-18]。
綜合來看,目前多彈頭集群協(xié)同突防技術(shù)的研究仍處于初級階段,因為該技術(shù)要求各個彈頭具有高度自主性,面臨復(fù)雜任務(wù)可以快速響應(yīng),因此對于彈載計算機(jī)的要求較高[19]。
導(dǎo)彈的運動學(xué)方程為 :
(1)
式(1)中,i=p,e;ωi為攔截導(dǎo)彈或突防導(dǎo)彈的角速度大??;vi為攔截導(dǎo)彈或突防導(dǎo)彈的速度,其為一個固定值,即導(dǎo)彈在飛行過程中的速度不改變。
導(dǎo)彈的運動控制變量約束為:
(2)
式(2)中,ωpmax,ωemax分別為攔截導(dǎo)彈和突防導(dǎo)彈的最大角速度,其計算方程為:
(3)
式(3)中,i=p,e;ΔT為方針的時間步長;ri為導(dǎo)彈的機(jī)動半徑;rimin為導(dǎo)彈的最小機(jī)動半徑;Δψi為ΔT時間內(nèi)的航向最大轉(zhuǎn)彎角;nimax為導(dǎo)彈的最大側(cè)向過載。因此,由式(4)可得最大角速度的確定公式為:
(4)
攔截捕獲條件為式(5),在攔截半徑范圍內(nèi),即我方導(dǎo)彈進(jìn)入敵方攔截導(dǎo)彈的作用范圍,便會被攔截捕獲。
(5)
由于本文假定的突防問題是在有限的二維平面內(nèi)進(jìn)行的,因此導(dǎo)彈在設(shè)定的環(huán)境邊界內(nèi)運動需要滿足式(6):
(6)
式(6)中,n=[1,...,4];xmin、xmax分別為環(huán)境邊界,本文的邊界為-250~250;ymin、ymax分別為環(huán)境邊界,本文的邊界為-250~250。
在研究中,定義速度比為攔截導(dǎo)彈的最大速度與突防導(dǎo)彈的最大速度之比:
(7)
(8)
在彈群攻防對抗的場景中,除了雙方彈群之間的對抗,彈群內(nèi)部的導(dǎo)彈也需要協(xié)同完成任務(wù),使得場景要素更加復(fù)雜,且對抗雙方的對抗性更強(qiáng)。針對在作戰(zhàn)空域內(nèi)的多導(dǎo)彈協(xié)同攻防對抗場景,本文將對抗場景的預(yù)設(shè)為:作戰(zhàn)空域內(nèi)同時存在多顆攔截導(dǎo)彈和突防導(dǎo)彈,雙方具有相反的戰(zhàn)術(shù)目標(biāo)。攔截導(dǎo)彈的目標(biāo)是追擊并攔截突防導(dǎo)彈,而突防導(dǎo)彈的目標(biāo)是盡可能地突破攔截導(dǎo)彈的封鎖,或者盡可能地保護(hù)其他導(dǎo)彈進(jìn)行突防。彈群突防的對抗場景如圖1所示。
圖1 導(dǎo)彈追捕場景
圖1中,E為進(jìn)攻方導(dǎo)彈,P1P2為攔截方導(dǎo)彈,P0為進(jìn)攻方目標(biāo)(攔截方保護(hù)目標(biāo);ve為進(jìn)攻方導(dǎo)彈的速度大小及方向,vp1vp2為攔截方導(dǎo)彈的速度大小及方向;φe為進(jìn)攻方的導(dǎo)彈的速度航向角,φp1φp2為攔截防導(dǎo)彈的速度航向角。針對以上導(dǎo)彈集群攻防問題描述構(gòu)造彈群攻防博弈數(shù)學(xué)模型[25],建立了有控制約束的多無人機(jī)追捕對抗零和微分博弈模型。
考慮到我們簡化的二維平面區(qū)域的追逃博弈,可以使用直角坐標(biāo)系來表示對抗雙方導(dǎo)彈的實時運動狀態(tài)。圖2展示了數(shù)學(xué)幾何模型。
圖2 導(dǎo)彈運動模型
圖2中,δ為目標(biāo)視線(LOS,line of sight)的夾角-視線角,目標(biāo)視線指攻防導(dǎo)彈Ε的射線,(xpn,ypn)(n=1,2,…,N)、(xe,ye)分別為攻擊方導(dǎo)彈和攔截方導(dǎo)彈的位置坐標(biāo)。
攔截方導(dǎo)彈的目標(biāo)是通過最短時間內(nèi)攔截目標(biāo)。而突防導(dǎo)彈的目標(biāo)是躲避攔截導(dǎo)彈,以避免在作戰(zhàn)時間段內(nèi)被導(dǎo)彈攔截捕獲?;蛘弑M可能延遲其他突防導(dǎo)彈被攔截的時間。攻防雙方博弈標(biāo)準(zhǔn)微分博弈數(shù)學(xué)描述為:
Tc=f[vp1,ψp1,L1,…,vpn,ψpn,Ln,…,
vpN,ψpN,LN,ve,ψe]
(9)
式(9)中,Ln(n=1,2,…,N)為攔截導(dǎo)彈n到突防導(dǎo)彈的距離;Tc為攔截導(dǎo)彈P攔截突防導(dǎo)彈E的時刻。其中導(dǎo)彈攔截的最優(yōu)時刻是Tcmin,導(dǎo)彈突防的最優(yōu)時刻是Tcmax。
獎勵設(shè)計是指導(dǎo)增強(qiáng)學(xué)習(xí)算法性能改進(jìn)的重要組成部分。攻防雙方之間的對抗最終結(jié)果只有一個真正的獎賞。在引導(dǎo)智能體產(chǎn)生足夠智能的策略中,人工設(shè)計的內(nèi)在回報是關(guān)鍵。 本文設(shè)計了攻擊方導(dǎo)彈、攔截方導(dǎo)彈的獎勵,以指導(dǎo)其各自的策略。 突防導(dǎo)彈根據(jù)爆炸時距離目標(biāo)位置扣10分到加10分不等,給予隨距離變化的負(fù)獎勵,系數(shù)為 0.001,并引導(dǎo)突防方導(dǎo)彈盡快獲得正獎勵;當(dāng)攔截導(dǎo)彈處于攔截任務(wù)時,攔截成功的目標(biāo)越多,得到的獎勵越多,以引導(dǎo)攔截導(dǎo)彈盡可能同時攔截多個突防導(dǎo)彈。同時,為了防止進(jìn)攻方導(dǎo)彈耗盡燃料,將給予隨著時間變化的負(fù)獎勵。 攻擊上,殲敵航母加50分,引爆多個攔截導(dǎo)彈加5到20分,自身損壞扣5分。這種設(shè)置是鼓勵進(jìn)攻方導(dǎo)彈重視協(xié)作的重要性,引導(dǎo)導(dǎo)彈進(jìn)行掩護(hù)任務(wù)。同時,為鼓勵導(dǎo)彈進(jìn)攻敵方航母,將距敵航母的距離設(shè)為正獎勵,系數(shù)為 0.000 000 1。 防御方面,攔截方將敵導(dǎo)彈和航空母艦的距離作為負(fù)獎勵,系數(shù)為 0.000 000 1,可防止導(dǎo)彈太近。
2.3.1 MADDPG算法
MADDPG算法是一種針對多智能體協(xié)同決策的強(qiáng)化學(xué)習(xí)算法,在導(dǎo)彈協(xié)同領(lǐng)域具有以下優(yōu)勢:1)基于策略梯度的方法,能夠有效地處理非線性、高維、連續(xù)的動作空間,更適合于導(dǎo)彈協(xié)同問題;2)可以學(xué)習(xí)合作策略,MADDPG算法可以學(xué)習(xí)到智能體之間的合作策略,從而在導(dǎo)彈協(xié)同中實現(xiàn)協(xié)同作戰(zhàn)和任務(wù)分配,提高協(xié)同效率和任務(wù)完成率[21-23]。而其他單智能體算法往往只能處理獨立策略的問題;3)具有策略共享機(jī)制,MADDPG算法具有策略共享機(jī)制,能夠讓智能體之間共享策略信息,提高學(xué)習(xí)效率并減少訓(xùn)練時間;4)具有經(jīng)驗回放機(jī)制:MADDPG算法還具有經(jīng)驗回放機(jī)制,能夠利用過去的經(jīng)驗進(jìn)行學(xué)習(xí),減小樣本相關(guān)性,提高算法的穩(wěn)定性和收斂性。 綜上所述,MADDPG算法在導(dǎo)彈協(xié)同相比其他方法具有更好的學(xué)習(xí)效果、更高的協(xié)同效率和任務(wù)完成率。
“集中訓(xùn)練,分散執(zhí)行”是一種方法,它在訓(xùn)練階段集中資源進(jìn)行模型學(xué)習(xí)和優(yōu)化,然后在執(zhí)行階段將訓(xùn)練好的模型分散到不同計算節(jié)點或設(shè)備上進(jìn)行并行計算和推理。這樣做可以通過訓(xùn)練學(xué)習(xí)得到最優(yōu)的訓(xùn)練策略,使算法得到高效靈活地執(zhí)行。在運行該算法時,利用智能體的觀測信息可以求出最優(yōu)解,從而得出想要的最優(yōu)策略。
在“集中訓(xùn)練”階段,為了計算出更精確的Q值反饋給“表演者”網(wǎng)絡(luò),可以根據(jù)DDPG算法平臺添加額外數(shù)據(jù),包括其他智能體的運動狀態(tài)、觀察值或動作。智能體還可以根據(jù)其他智能體的動作價值以及自身的觀察值和動作來判斷當(dāng)前輸出動作的價值。
“分散執(zhí)行”是指在訓(xùn)練完成后,每個Actor根據(jù)自身的觀測值選擇適當(dāng)?shù)膭幼?,無需其他智能體的動作信息。在MADDPG算法中,“表演者”網(wǎng)絡(luò)和“評論家”網(wǎng)絡(luò)協(xié)同工作。每個智能體都有自己的“表演者”網(wǎng)絡(luò),用于輸出確定的動作。然而,“評論家”網(wǎng)絡(luò)不僅考慮自身的觀測狀態(tài)和動作,同時也要考慮其他智能體的動作信息。每個智能體都有一個中心化的“評論家”網(wǎng)絡(luò),該網(wǎng)絡(luò)同時接收所有智能體的“表演者”網(wǎng)絡(luò)生成的數(shù)據(jù)。[24]。
2.3.2 基于經(jīng)驗池篩選機(jī)制的算法策略改進(jìn)
采取原始MADDPG算法時,每一個評論家都需要觀察到所有agent的狀態(tài),而對于本文中涉及的大量不確定agent的場景,不是特別適用,而且當(dāng)按agent數(shù)量特別多時,狀態(tài)空間太過于巨大,導(dǎo)致難以收斂。同時每一個agent都對應(yīng)了一個評論家和表演者網(wǎng)絡(luò),數(shù)量多時,存在大量的模型,增加算法的計算時間。
針對上述問題,設(shè)計基于經(jīng)驗池篩選的EPF-MADDPG算法。從兩個方面對算法進(jìn)行改進(jìn):1)引入長短期記憶(LSTM)網(wǎng)絡(luò)保存過往訓(xùn)練信息;2)加入閾值篩選機(jī)制對算法經(jīng)驗回放策略做出調(diào)整。
MADDPG算法的經(jīng)驗回放策略沒有考慮到動作前后的相關(guān)性,在遇到從未見過的情況時,往往需要大量的嘗試才能學(xué)習(xí)到最優(yōu)動作。LSTM網(wǎng)絡(luò)主要用于處理環(huán)境狀態(tài)信息的輸入,基于“門”來控制信息的丟棄或增加,從而實現(xiàn)遺忘或者記憶的功能,達(dá)到緩解梯度消失的作用。
LSTM網(wǎng)絡(luò)中的遺忘門、記憶門以及輸出門是LSTM神經(jīng)網(wǎng)絡(luò)中的3種門控機(jī)制,用于控制輸入、輸出和忘記之前的信息。其中,遺忘門用于決定之前輸入的信息被遺忘的程度;輸入門用于控制新輸入信息的加入程度;輸出門用于控制當(dāng)前狀態(tài)的輸出程度。網(wǎng)絡(luò)的整體結(jié)構(gòu)如圖3所示。
圖3 LSTM網(wǎng)絡(luò)結(jié)構(gòu)
遺忘門:控制歷史狀態(tài)流經(jīng)當(dāng)前狀態(tài)后允許多少進(jìn)入當(dāng)前狀態(tài)的門控設(shè)備。
記憶門:控制從當(dāng)前狀態(tài)向長期記憶中存儲哪些信息的門控設(shè)備。
輸出門:控制從長期記憶中向當(dāng)前狀態(tài)輸出哪些信息的門控設(shè)備。
經(jīng)驗池閾值的設(shè)置由預(yù)訓(xùn)練決定,將預(yù)訓(xùn)練的樣本數(shù)據(jù)按照從大到小依次排列為一序列,序列樣本總數(shù)為n,設(shè)定參數(shù)α代表正式訓(xùn)練時使用序列樣本的比例,選取α×n位置的樣本所對應(yīng)的值作為預(yù)值。為設(shè)立合理的閾值進(jìn)行預(yù)訓(xùn)練,按優(yōu)先級從高到低的順序?qū)?shù)據(jù)列表進(jìn)行排序,然后從高斯隨機(jī)數(shù)值生成器中獲取一個0~1之間的隨機(jī)數(shù)α,其中α在0~1之間取值的概率呈正態(tài)分布,這樣就可以盡可能取到中間的數(shù)值,避免出現(xiàn)接近0或接近1的極端情況。
對于正式訓(xùn)練的樣本數(shù)據(jù),只有大于預(yù)設(shè)閾值的樣本才會放入經(jīng)驗池中。在基于經(jīng)驗池篩選的MADDPG算法中,采用純粹貪婪優(yōu)先方法對樣本進(jìn)行排序,確保被采樣的頻率在繼承優(yōu)先級上是單調(diào)的。同時在排序好的樣本隊列中加入均勻隨機(jī)采樣,避免了高優(yōu)先級產(chǎn)生的過擬合問題。
2.3.3 算法框架實現(xiàn)
本文采用的MADDPG算法框架如圖4所示。在訓(xùn)練過程中,首先初始化整體的狀態(tài)和策略網(wǎng)絡(luò)。智能體根據(jù)當(dāng)前時刻的狀態(tài)輸入Actor網(wǎng)絡(luò),生成對應(yīng)的動作。環(huán)境返回智能體執(zhí)行當(dāng)前動作時所獲得的獎勵和轉(zhuǎn)移到的下一狀態(tài)。智能體將生成的四元組數(shù)據(jù)存儲到經(jīng)驗回放緩存中,以備后續(xù)的“表演者”網(wǎng)絡(luò)和“評論家”網(wǎng)絡(luò)更新時使用。然后智能體從緩存池中采樣多個批次的機(jī)動軌跡,每一條機(jī)動軌跡是智能體與環(huán)境進(jìn)一步交互得的。輸入 Actor 網(wǎng)絡(luò)進(jìn)行訓(xùn)練的數(shù)據(jù)是智能體當(dāng)前時刻的狀態(tài)。智能體利用已更新的模型與環(huán)境進(jìn)行下一步的交互,然后利用生成的數(shù)據(jù)更新經(jīng)驗回放緩存池。當(dāng)然,每個智能體都有自己的 “表演者”網(wǎng)絡(luò)和 “評論家”網(wǎng)絡(luò),還有一個所有智能體共有的 “評論家”網(wǎng)絡(luò),每個智能體自身的 “評論家”網(wǎng)絡(luò)學(xué)習(xí)單個智能體每輪訓(xùn)練的期望收益,所有智能體共有的 “評論家”網(wǎng)絡(luò)學(xué)習(xí)團(tuán)隊的期望收益。
圖4 MADDPG算法框架
下面是本文的整體算法設(shè)計。
Forepisode = 1 to MaxEpisode do
在設(shè)定的范圍內(nèi)隨機(jī)初始化突防導(dǎo)彈、 攔截導(dǎo)彈的初始狀態(tài)
Fort = 1 to MaxStep do
獲得仿真環(huán)境初始狀態(tài)st
/*全局Critic網(wǎng)絡(luò)更新*/
/*Actor網(wǎng)絡(luò)和局部Critic網(wǎng)絡(luò)更新*/
For Agenti=1 toNdo
End For
End For
End For
為了驗證所提方法的優(yōu)越性,本實驗的硬件配置為,CPU:Intel○RCoreTMi7-13700KF CPU @4.20 GHz;內(nèi)存:32 G;顯卡:Geforce RTX4070Ti(12 G內(nèi)存)上,基于Windows10平臺,顯存位寬為64位DDRM。
圖5為在不同范圍的仿真場景下的所有智能體的算法回報,圖中隨著場景的一步步擴(kuò)大,算法收斂得到的回報也逐漸提高,說明在更大的作戰(zhàn)范圍中突防導(dǎo)彈可以更好地達(dá)到任務(wù)目標(biāo),攔截方導(dǎo)彈在更小的作戰(zhàn)范圍內(nèi),攔截的成功率就越高。同時在1 000*1 000(km)以后,場景得到的回報提升就不再顯著。
圖5 范圍-回報變化
本文實驗針對海域上的導(dǎo)彈集群攻防博弈情形進(jìn)行了設(shè)計。假設(shè)在某海域中,我方發(fā)射兩枚導(dǎo)彈對敵方航母發(fā)起打擊,在相對坐標(biāo)1 000*1 000(km)的區(qū)域內(nèi)敵方發(fā)射三枚攔截導(dǎo)彈,實施突防策略。為了使實驗具有可操作性,設(shè)定突防導(dǎo)彈的機(jī)動能力比攔截導(dǎo)彈的機(jī)動能力大,同時規(guī)定為距離的安全約束,當(dāng)其中有一個攔截導(dǎo)彈靠近了突防導(dǎo)彈該距離約束值內(nèi),追捕成功,博弈結(jié)束。為加速收斂,忽略z軸的動力學(xué)模型,得到一個平面內(nèi)二維的博弈場景[26-27]。實驗設(shè)計的訓(xùn)練參數(shù)如表1所示。
表1 算法訓(xùn)練超參
首先,實驗分析了該場景下MADDPG算法的收斂性。圖6為MADDPG與DQN算法的回報獎勵,其中DQN的學(xué)習(xí)率設(shè)置為0.001,采用批量梯度下降的方式進(jìn)行學(xué)習(xí),經(jīng)驗池大小與批樣本數(shù)與EPF-MADDPG算法保持一致。經(jīng)過 14 000 輪的訓(xùn)練后,網(wǎng)絡(luò)的loss值逐漸降低,且趨于穩(wěn)定,說明網(wǎng)絡(luò)收斂,各個智能體都能產(chǎn)生更合適的動作。 從圖5、6中可以看出,MADDPG算法相較于DQN算法具有更快的收斂速度,以及更優(yōu)秀的回報獎勵。同時,各單元參與者網(wǎng)絡(luò)的下降趨勢相似,關(guān)鍵網(wǎng)絡(luò)的下降趨勢也相似。
同時,根據(jù)圖6所示,基于經(jīng)驗池篩選策略的MADDPG算法耗時明顯低于傳統(tǒng)的MADDPG算法,其最大時延為320 ms,而DQN算法需要400 ms。EPF-MADDPG相較于DQN算法提升了8%左右,滿足實際場景中的實時性需求。
隨著不斷地訓(xùn)練,敵方智能體也會學(xué)習(xí)到一些策略,這就會導(dǎo)致回報的下降,但這也會促進(jìn)我方智能體的學(xué)習(xí),最后收斂到一個穩(wěn)定的回報。
隨著不斷地學(xué)習(xí),智能體會逐漸學(xué)習(xí)到一些策略,用來欺騙敵方。圖7中是智能體的行動軌跡,我們可以看到智能體會做出“假動作”誘使敵方智能體做出錯誤的判斷,并加速通過速度優(yōu)勢越過攔截導(dǎo)彈的攔截。
圖7 智能體機(jī)動行為
并且經(jīng)過訓(xùn)練的智能體也表現(xiàn)出協(xié)作的特征,圖8中顏色較深的智能體作為誘餌,吸引了敵方3枚導(dǎo)彈的圍追堵截,通過消滅攔截方的3枚導(dǎo)彈,為己方的突防導(dǎo)彈創(chuàng)造了條件,另一枚導(dǎo)彈最后順利完成任務(wù)目標(biāo)。
圖8 智能體協(xié)同行為
實驗經(jīng)過100次仿真模擬,如表2所示,經(jīng)過EPF-MADDPG算法訓(xùn)練的突防方導(dǎo)彈勝率可以達(dá)到73%,實驗結(jié)果表明,訓(xùn)練出來的協(xié)同突防策略具有明顯合作以及欺騙對手的行為,突防導(dǎo)彈不僅簡單的依靠速度進(jìn)行突防,同時表現(xiàn)出一些高級的協(xié)同行為,極大提高了突防策略的訓(xùn)練效率。
表2 各個算法突防成功率
為了在仿真環(huán)境中實現(xiàn)多智能體對抗的智能決策,提出了一種基于 MADDPG 的異構(gòu)多智能體對抗決策算法,輔助決策者進(jìn)行導(dǎo)彈集群突防方案的制訂,并且在方案執(zhí)行的過程中具有一定的自主決策能力。為了進(jìn)一步地驗證MADDPG算法對于導(dǎo)彈突防場景的可行性,本文還從仿真的角度進(jìn)行驗證,經(jīng)過基于經(jīng)驗池篩選策略的MADDPG算法計算的突防策略成功率達(dá)到73%。
本文還存在待改進(jìn)的方面:首先,對于導(dǎo)彈突防任務(wù)來講,不僅有同波次導(dǎo)彈間的協(xié)同配合,同時還應(yīng)有多波次導(dǎo)彈的協(xié)同配合,對于任務(wù)分解規(guī)劃,以及戰(zhàn)場態(tài)勢的偵察獲取,還需要進(jìn)行深入的研究改進(jìn),得到一個簡單易行的方法;其次,本算法的仿真業(yè)務(wù)場景具有特殊性,仍需進(jìn)行改進(jìn)學(xué)習(xí),在不同環(huán)境不同維度進(jìn)行推演驗證。