王興眾,王敏,羅威
中國(guó)艦船研究設(shè)計(jì)中心,湖北 武漢 430064
人工智能技術(shù)的快速發(fā)展正在加速戰(zhàn)爭(zhēng)形態(tài)的演變,軍事智能化已成為新一輪軍事變革的核心驅(qū)動(dòng)力[1]。認(rèn)知速度是智能時(shí)代制勝之道的根本。在認(rèn)知域,自主決策將逐步取代輔助決策。在認(rèn)知戰(zhàn)這種全新智能化戰(zhàn)爭(zhēng)需求推動(dòng)下,智能決策問(wèn)題亟待解決。作戰(zhàn)仿真推演系統(tǒng)是體系作戰(zhàn)的重要決策判斷工具,利用從戰(zhàn)爭(zhēng)或軍事訓(xùn)練中抽象得到的作戰(zhàn)規(guī)則,對(duì)戰(zhàn)場(chǎng)環(huán)境、軍事力量、作戰(zhàn)行動(dòng)等要素進(jìn)行形式化描述和建模,依據(jù)模型,推演分析作戰(zhàn)過(guò)程及其結(jié)果和傷亡等情況,是軍隊(duì)開(kāi)展模擬訓(xùn)練、科學(xué)評(píng)估作戰(zhàn)預(yù)案的有效途徑。一旦認(rèn)知戰(zhàn)成為未來(lái)體系對(duì)抗的主戰(zhàn)場(chǎng),仿真推演系統(tǒng)將成為研究對(duì)抗戰(zhàn)術(shù)的虛擬戰(zhàn)場(chǎng),而智能決策則是影響戰(zhàn)爭(zhēng)走向的機(jī)關(guān)樞紐[2]。
傳統(tǒng)的作戰(zhàn)推演決策主要依靠固化在模型中的決策部件,它可直接實(shí)現(xiàn)仿真模型對(duì)戰(zhàn)場(chǎng)態(tài)勢(shì)的理解,輸出對(duì)應(yīng)的決策方案[3]。而外部決策模型則是與之相對(duì)的另一種傳統(tǒng)決策建模方法,其將指揮員的決策知識(shí)和判斷經(jīng)驗(yàn)錄入知識(shí)庫(kù),作為該模型進(jìn)行仿真推演的依據(jù),例如基于規(guī)則和條件的決策建模方法。但是,一旦狀態(tài)空間規(guī)模增加,上述決策方法將難以維護(hù),而行為樹(shù)的模塊化和可復(fù)用性使其可成為了強(qiáng)有力的決策工具[4]。2017年4月26日,美國(guó)國(guó)防部率先提出成立“算法戰(zhàn)跨功能小組(AWCFT)”,以推動(dòng)人工智能和大數(shù)據(jù)等技術(shù)加速融入軍事領(lǐng)域,正式開(kāi)啟了認(rèn)知智能軍事化應(yīng)用探索的進(jìn)程。2019年12月31日,美國(guó)智庫(kù)“戰(zhàn)略與預(yù)算評(píng)估中心(CSBA)”發(fā)布了《奪回海上優(yōu)勢(shì):為實(shí)施“決策中心戰(zhàn)”推進(jìn)美國(guó)水面艦艇部隊(duì)轉(zhuǎn)型》的報(bào)告,指出“決策中心戰(zhàn)”作戰(zhàn)概念將成為美軍智能化轉(zhuǎn)型建設(shè)的理論牽引。為此,國(guó)內(nèi)也在積極開(kāi)展相關(guān)研究。國(guó)防科技創(chuàng)新特區(qū)于2018年起舉辦了戰(zhàn)術(shù)級(jí)別的“先知兵圣”人機(jī)對(duì)抗挑戰(zhàn)賽,對(duì)抗雙方基于“兵棋陸戰(zhàn)”平臺(tái),在城市和山地等多地形、多地貌虛擬場(chǎng)景下進(jìn)行自主推演、決策執(zhí)行和“奪控點(diǎn)”的爭(zhēng)搶?zhuān)罱K以雙方對(duì)抗的勝負(fù)來(lái)評(píng)估相關(guān)人工智能算法在作戰(zhàn)決策中的影響程度。
軍事對(duì)抗面臨的突出問(wèn)題是規(guī)則不完備、信息不完全、響應(yīng)高實(shí)時(shí)等,而強(qiáng)化學(xué)習(xí)(RL)中的智能體在與環(huán)境交互過(guò)程中可以不斷試錯(cuò),以最大化累積回報(bào)作為目標(biāo),不斷探索最優(yōu)策略,展現(xiàn)出強(qiáng)大的決策力,這為解決上述問(wèn)題提供了新的有效途徑。例如,利用殘差網(wǎng)絡(luò)(ResNets)與蒙特卡羅搜索樹(shù)(MCTS)[5]相結(jié)合的方式建立決策模型,采用單智能體對(duì)回合作戰(zhàn)進(jìn)行決策,使兵棋推演系統(tǒng)具備智能決策能力。然而,機(jī)器學(xué)習(xí)方法一般普遍存在的問(wèn)題是模型過(guò)擬合、泛化能力差;因此,基于深度強(qiáng)化學(xué)習(xí)(DRL)的智能決策框架成為了研究熱點(diǎn)。利用深度學(xué)習(xí)(DL)算法分析處理戰(zhàn)場(chǎng)感知數(shù)據(jù),有助于指揮員迅速辨別戰(zhàn)場(chǎng)態(tài)勢(shì);利用RL算法進(jìn)行輔助決策,有利于提高指揮員的謀略水平,奪取競(jìng)爭(zhēng)性優(yōu)勢(shì)[6]。未來(lái)戰(zhàn)爭(zhēng)的作戰(zhàn)模式是“以快吃慢”,決策模型的策略輸出速度同樣不容忽視。壓縮網(wǎng)絡(luò)結(jié)構(gòu)(例如采用參數(shù)修剪和低秩分解等方法[7])將深度網(wǎng)絡(luò)變?yōu)檩p量級(jí)網(wǎng)絡(luò),以滿足實(shí)際作戰(zhàn)響應(yīng)高實(shí)時(shí)的特點(diǎn)。
目前,針對(duì)決策空間巨大、信息不完全的智能策略對(duì)抗技術(shù)尚未完全取得突破,基于DRL的理論與方法仍處于起步階段。面對(duì)作戰(zhàn)需求,決策優(yōu)勢(shì)是核心,其將成為現(xiàn)代戰(zhàn)爭(zhēng)制勝的關(guān)鍵,在OODA(觀察、判斷、決策、行動(dòng))環(huán)路中,決策還是制約循環(huán)速度的瓶頸。鑒此,本文將主要從智能決策模型構(gòu)建角度,研究將深度神經(jīng)網(wǎng)絡(luò)(deep neural network )與SAC(soft actor-critic)強(qiáng)化學(xué)習(xí)算法應(yīng)用于作戰(zhàn)仿真推演系統(tǒng)的途徑,以及應(yīng)用仿真推演平臺(tái),以艦載直升機(jī)反潛想定為例,驗(yàn)證決策模型的有效性和相關(guān)算法的適用性。
SAC算法[8]包含3個(gè)關(guān)鍵要素:1)利用最大熵框架增強(qiáng)模型的穩(wěn)定性,并提高智能體的探索能力;2)采用離線策略更新,重復(fù)利用先前收集的數(shù)據(jù),提高效率;3)基于actor- critic (AC) 體系結(jié)構(gòu),其策略網(wǎng)絡(luò)與價(jià)值網(wǎng)絡(luò)相互獨(dú)立,將策略稱(chēng)為Actor,價(jià)值函數(shù)稱(chēng)為Critic。
馬爾科夫決策過(guò)程(Markov decision process,MDP)是強(qiáng)化學(xué)習(xí)問(wèn)題在數(shù)學(xué)上的理想化形式[9]。用五元組 (S,A,P,r,γ)定義無(wú)限視界MDP,其中:S為狀態(tài)空間,A為動(dòng)作決策空間,二者的空間連續(xù);P:S×S×A→[0,∞),為狀態(tài)轉(zhuǎn)移概率,表示在給定當(dāng)前時(shí)刻的狀態(tài)st∈S和探索動(dòng)作at∈A時(shí),轉(zhuǎn)移到下一時(shí)刻狀態(tài)st+1∈S的概率密度;γ為折扣因子,表示每個(gè)時(shí)刻獲得的收益對(duì)總回報(bào)的影響程度;r為每次狀態(tài)轉(zhuǎn)換環(huán)境給予的有界回報(bào),r:S×A→[rmin,rmax]。
智能體的目標(biāo)是學(xué)習(xí)一種策略 π:S→A,使累積期望回報(bào)值最大化,如式(1)所示。
式中,ρπ為策略生成的軌跡(st,at,st+1,at+1,st+2,at+2,···)的邊緣分布。
如式(2)所示,最大熵強(qiáng)化學(xué)習(xí)是在式(1)的基礎(chǔ)上增加了可調(diào)整熵值項(xiàng)H,智能體的目標(biāo)變?yōu)閷ふ伊罾鄯e期望回報(bào)和熵值同時(shí)最大化的最優(yōu)策略。信息熵越大,說(shuō)明分布越均勻。最大化信息熵,有利于增加模型的探索能力。
式中,α為溫度參數(shù), α→0時(shí),式(2)等同于式(1)。
離線策略更新采用兩個(gè)策略,一個(gè)策略用于智能體學(xué)習(xí),并最終成為最優(yōu)策略,稱(chēng)為目標(biāo)策略πtar;另一個(gè)策略用于生成智能體軌跡樣本,稱(chēng)為行動(dòng)策略πact。此時(shí),由于智能體用于學(xué)習(xí)的數(shù)據(jù)與待學(xué)習(xí)的目標(biāo)策略相互分離,因此離線策略更新一般方差大且收斂慢。但是,這種分離的優(yōu)點(diǎn)在于,當(dāng)行動(dòng)策略對(duì)所有可能的動(dòng)作繼續(xù)進(jìn)行采樣時(shí),可以采用確定性的目標(biāo)策略。
在處理預(yù)測(cè)問(wèn)題時(shí),目標(biāo)策略和行動(dòng)策略固定,旨在學(xué)習(xí)狀態(tài)價(jià)值函數(shù)v?≈vπ( 給定策略π的狀態(tài)價(jià)值函數(shù))或動(dòng)作價(jià)值函數(shù)q?≈qπ( 給定策略π的動(dòng)作價(jià)值函數(shù))。對(duì)于控制問(wèn)題,兩個(gè)策略在智能體學(xué)習(xí)過(guò)程中會(huì)不斷變化,目標(biāo)策略πtar逐漸變成關(guān)于q?的 貪心策略,而行動(dòng)策略πact逐漸變成關(guān)于q?的某種探索性策略。
AC體系采用時(shí)序差分(TD)的方法,使用獨(dú)立的模型估計(jì)狀態(tài)?動(dòng)作序列的長(zhǎng)期回報(bào),而非直接采用真實(shí)回報(bào)。如圖1所示,策略網(wǎng)絡(luò)被稱(chēng)為Actor,用于動(dòng)作選擇;價(jià)值網(wǎng)絡(luò)稱(chēng)為Critic,用于評(píng)估動(dòng)作的優(yōu)劣。采用式(3)所示的TD形式來(lái)評(píng)估最新選擇的探索動(dòng)作at, 其中V為Critic的狀態(tài)價(jià)值。若TD誤差(即δt)為正,則應(yīng)加強(qiáng)選擇探索動(dòng)作at的趨勢(shì);若TD誤差為負(fù),則應(yīng)降低選擇探索動(dòng)作at的頻率。
圖1 AC體系架構(gòu)圖[10]Fig.1 The architecture of Actor-Critic[10]
式中,rt+1為下一時(shí)刻環(huán)境給予的回報(bào)值。
如圖2所示,采用離線策略更新的AC體系由在線評(píng)估網(wǎng)絡(luò)和目標(biāo)網(wǎng)絡(luò)構(gòu)成,網(wǎng)絡(luò)結(jié)構(gòu)和初始化參數(shù)均相同。首先,提取經(jīng)驗(yàn)緩存數(shù)據(jù),通過(guò)目標(biāo)網(wǎng)絡(luò)得到目標(biāo)回報(bào)值;然后,根據(jù)TD誤差更新評(píng)估網(wǎng)絡(luò)中的Critic網(wǎng)絡(luò);最后,更新評(píng)估網(wǎng)絡(luò)中的Actor網(wǎng)絡(luò),其中動(dòng)作的探索和Actor網(wǎng)絡(luò)的更新分別采用不同策略。
圖2 采用離線策略更新的AC體系Fig.2 AC architecture updated by off-policy
導(dǎo)彈驅(qū)逐艦搭載直升機(jī)反潛想定設(shè)定的場(chǎng)景如下:藍(lán)方海軍有2艘潛艇停泊在某海域,紅方海軍得到情報(bào),派遣艦載反潛直升機(jī)(以下稱(chēng)反潛機(jī))前往搜尋藍(lán)方海軍的潛艇。紅方海軍反潛機(jī)的作戰(zhàn)目標(biāo)是通過(guò)在目標(biāo)水域投放聲吶浮標(biāo),發(fā)現(xiàn)并摧毀藍(lán)方潛艇,其水面艦船主要為反潛機(jī)提供魚(yú)雷和反潛火箭彈等武器支援。而藍(lán)方海軍潛艇的作戰(zhàn)目標(biāo)是隱藏航跡,避免被消滅。紅藍(lán)雙方海軍的兵力編成如表1和表2所示。
表1 紅方海軍兵力編成Table1 The navy strength of red team
表2 藍(lán)方海軍兵力編成Table2 The navy strength of blue team
聲吶浮標(biāo)系統(tǒng)按直線通路探測(cè)、水面反射探測(cè)和匯聚區(qū)探測(cè)依次進(jìn)行判斷。以9.874 73 n mile為直線探測(cè)距離基數(shù),根據(jù)敵我深度d、目標(biāo)所處海底地形m和目標(biāo)距海底高度h,修正得到直線探測(cè)距離RD,如式(4)所示。
式中,以聲吶最大理論探測(cè)距離為基數(shù),根據(jù)d,m,h和探測(cè)方速度v及目標(biāo)信號(hào)特征強(qiáng)度Ts,修正得到匯聚區(qū)的有效探測(cè)范圍RC,如(5)式所示。
式中,Rmax為聲吶的最大理論探測(cè)距離。通常,直線探測(cè)距離遠(yuǎn)大于匯聚區(qū)探測(cè)范圍,即RD?RC。式(4)與式(5)中f均為與變量相關(guān)的修正系數(shù)。
對(duì)于水面反射,如圖3所示,設(shè)探測(cè)點(diǎn)和目標(biāo)點(diǎn)距海底高度分別為a和b,計(jì)算聲波通過(guò)水面反射的位置,該位置與探測(cè)點(diǎn)的水平距離為w,探測(cè)點(diǎn)與目標(biāo)點(diǎn)的水平距離為c,根據(jù)式(6)計(jì)算w。以探測(cè)點(diǎn)所在海面位置處為原點(diǎn),向目標(biāo)方向以距離w確定反射點(diǎn)P0。
圖3 水面反射探測(cè)Fig.3 Water surface reflection detection
計(jì)算探測(cè)點(diǎn)經(jīng)反射點(diǎn)到目標(biāo)點(diǎn)的直線累加距離Dh:
式中:e為反射點(diǎn)與探測(cè)點(diǎn)的直線距離;g為反射點(diǎn)與目標(biāo)點(diǎn)的直線距離。
若修正系數(shù)f小于1,則由式(8)對(duì)RC進(jìn) 行修正:
比較修正后的探測(cè)距離R′C與 反射直線累加距離Dh。若Dh<R′C,則表明經(jīng)水面反射有可能探測(cè)到目標(biāo);若Dh>R′C,則判斷為水面反射不可探測(cè)。
針對(duì)仿真推演想定中的紅方作戰(zhàn)單元進(jìn)行深度強(qiáng)化學(xué)習(xí)訓(xùn)練,使紅方反潛機(jī)在與環(huán)境反復(fù)交互中學(xué)會(huì)自主決策,最終自動(dòng)摧毀藍(lán)方潛艇。采用五元組 (S,A,Pa,J,γ)表示MDP,其中,S為實(shí)時(shí)獲取的紅方反潛機(jī)狀態(tài)空間,A為紅方反潛機(jī)的動(dòng)作決策空間,Pa(s′,s)為紅方反潛機(jī)在狀態(tài)s和動(dòng)作a下 進(jìn)入下一個(gè)狀態(tài)s′的概率,J為紅方反潛機(jī)的優(yōu)化目標(biāo),折扣因子 γ∈(0,1)。
1) 狀態(tài)空間設(shè)置。
紅方反潛機(jī)返回的態(tài)勢(shì)數(shù)據(jù)約有一百多個(gè)維度,為了確保模型收斂,選擇了影響任務(wù)成敗的關(guān)鍵因素(例如經(jīng)、緯度和航向)作為狀態(tài)信息要素,亦即S=[經(jīng)度,緯度,航向]。如圖4所示,利用經(jīng)、緯度坐標(biāo)信息表示反潛機(jī)當(dāng)前的位置,航向β表示紅方反潛機(jī)當(dāng)前的飛行方向與藍(lán)方目標(biāo)潛艇的偏差角度,vx和vy分別表示反潛機(jī)在x和y方向的速度。
圖4 紅方反潛直升機(jī)狀態(tài)分析Fig.4 State analysis of red team's ASW helicopter
2) 動(dòng)作空間設(shè)置。
紅方反潛機(jī)可以執(zhí)行的動(dòng)作也有幾十種,動(dòng)作空間選擇最能夠影響任務(wù)成敗的動(dòng)作。例如,反潛機(jī)的航向以及是否投放聲吶探測(cè)潛艇,亦即A=[航向,是否投放聲吶]。
3) 優(yōu)化目標(biāo)設(shè)置。
如式(9)所示[8],紅方反潛機(jī)的優(yōu)化目標(biāo)J是同時(shí)最大化回報(bào)函數(shù)r和策略的期望熵H。式中:T為視界長(zhǎng)度;α為溫度參數(shù),它決定了熵項(xiàng)對(duì)回報(bào)的相對(duì)重要性,從而控制了最優(yōu)策略的隨機(jī)性[11]。與傳統(tǒng)的優(yōu)化累積回報(bào)值相比,增加H項(xiàng)將鼓勵(lì)紅方進(jìn)行更廣泛的探索,放棄無(wú)法獲得最終勝利的規(guī)劃路徑,與此同時(shí),還將顯著提高紅方反潛機(jī)的學(xué)習(xí)速度。
回報(bào)函數(shù)r設(shè)置如下:紅方靠近目標(biāo)區(qū)域(以經(jīng)緯度坐標(biāo)(34°17'55" E,43°48'74" N)為圓心,半徑為5 km的范圍)會(huì)獲得正回報(bào),偏離目標(biāo)區(qū)域則獲得負(fù)回報(bào),偏離目標(biāo)越近或越遠(yuǎn)獲得的回報(bào)絕對(duì)值越大。具體計(jì)算如式(10)所示,其中η表示反潛機(jī)目標(biāo)朝向與當(dāng)前朝向的絕對(duì)偏差。
當(dāng)紅方反潛機(jī)與藍(lán)方潛艇間距離小于目標(biāo)區(qū)域半徑(5 km)時(shí)紅方反潛機(jī)投放聲吶。若在當(dāng)前態(tài)勢(shì)中紅方捕獲的藍(lán)方標(biāo)識(shí)符(GUID)與目標(biāo)潛艇相同,則判定紅方反潛機(jī)發(fā)現(xiàn)了藍(lán)方潛艇。為緩解強(qiáng)化學(xué)習(xí)中的稀疏獎(jiǎng)勵(lì)問(wèn)題,紅方反潛機(jī)投放聲吶和發(fā)現(xiàn)潛艇都將會(huì)獲得10分的回報(bào)值。
推演系統(tǒng)的輸入是神經(jīng)網(wǎng)絡(luò)推算的作戰(zhàn)單元?jiǎng)幼髁斜?,依此判斷紅藍(lán)雙方作戰(zhàn)單元是否被擊落。若未被擊落(即狀態(tài)量非全為0)且執(zhí)行的動(dòng)作存在,則該作戰(zhàn)單元的動(dòng)作將會(huì)被執(zhí)行;若紅方反潛機(jī)被消滅,將獲得 ?100分回報(bào)值,而擊毀藍(lán)方潛艇會(huì)獲得150分回報(bào)值。
在經(jīng)典AC體系的基礎(chǔ)上增加價(jià)值網(wǎng)絡(luò),構(gòu)建紅方反潛智能體的決策網(wǎng)絡(luò)。如圖5所示,其主要包括價(jià)值網(wǎng)絡(luò)、策略網(wǎng)絡(luò)和軟Q網(wǎng)絡(luò)這3個(gè)部分,分別引入?yún)?shù)化狀態(tài)價(jià)值函數(shù)Vψ(st)、策略π?(at|st)以 及軟Q函數(shù)Qθ(st,at)進(jìn)行描述。3個(gè)網(wǎng)絡(luò)單元分別具有相同結(jié)構(gòu)和參數(shù)的目標(biāo)網(wǎng)絡(luò)以及在線網(wǎng)絡(luò),利用經(jīng)驗(yàn)緩存數(shù)據(jù) (st,at,rt,st+1)對(duì)目標(biāo)網(wǎng)絡(luò)進(jìn)行離線策略訓(xùn)練,通過(guò)計(jì)算損失函數(shù)L并求解梯度(價(jià)值網(wǎng)絡(luò)梯度 ?ψJV(ψ)、策略網(wǎng)絡(luò)梯度??Jπ(?)、 軟Q網(wǎng)絡(luò)梯度 ?θJQ(θ)),循環(huán)更新在線網(wǎng)絡(luò)參數(shù),不僅可以降低樣本之間的相關(guān)性,而且針對(duì)仿真推演此類(lèi)大規(guī)模連續(xù)域問(wèn)題,還可有效提高數(shù)據(jù)利用率。同時(shí),對(duì)目標(biāo)網(wǎng)絡(luò)參數(shù)進(jìn)行軟更新,可穩(wěn)定整個(gè)訓(xùn)練過(guò)程[12]。
圖5 基于SAC的紅方直升機(jī)決策網(wǎng)絡(luò)Fig.5 Decision-making network of red team's helicopter based on SAC
引入獨(dú)立的價(jià)值網(wǎng)絡(luò)可以使紅方反潛智能體的訓(xùn)練更加穩(wěn)定且易于與其他網(wǎng)絡(luò)同步訓(xùn)練。將式(9)中的熵值項(xiàng)H按照期望的形式展開(kāi),將其作為價(jià)值網(wǎng)絡(luò)更新的目標(biāo)之一,得到式(11)所示的狀態(tài)價(jià)值函數(shù)。如圖6所示,價(jià)值網(wǎng)絡(luò)共有4層,前3層為隱藏層,隱藏單元個(gè)數(shù)均為256;神經(jīng)網(wǎng)絡(luò)的最后一層是單維度的輸出層,輸出相應(yīng)的狀態(tài)價(jià)值V。隱藏層神經(jīng)元使用Relu激活函數(shù),以提升價(jià)值網(wǎng)絡(luò)的非線性建模能力。
圖6 價(jià)值網(wǎng)絡(luò)結(jié)構(gòu)Fig.6 The structure of value network
如圖7所示,策略網(wǎng)絡(luò)共有5層,前3層為隱藏層,隱藏單元個(gè)數(shù)分別為256,128,64;第4層神經(jīng)網(wǎng)絡(luò)對(duì)前一層的輸出信息進(jìn)行標(biāo)準(zhǔn)化處理,輸出包含均值和標(biāo)準(zhǔn)差的高斯分布;策略網(wǎng)絡(luò)的最后一層是2維度的輸出層,根據(jù)輸入狀態(tài)輸出相應(yīng)的動(dòng)作。策略網(wǎng)絡(luò)生成的策略經(jīng)高斯分布輸出后(即 π?(at|st)),將為不同動(dòng)作分配不同的概率值,這有利于紅方智能體探索,提高長(zhǎng)期回報(bào);策略網(wǎng)絡(luò)參數(shù)?可直接通過(guò)最小化KL散度進(jìn)行更新,如式(12)所示。通過(guò)重參數(shù)化,得到紅方智能體要執(zhí)行的隨機(jī)動(dòng)作,并獲得新的軟Q函數(shù)值Qθ(st,f?),保證目標(biāo)函數(shù)可微及可進(jìn)行梯度更新。
圖7 策略網(wǎng)絡(luò)結(jié)構(gòu)Fig.7 The structure of policy network
式中:Zθ(st)為配分函數(shù),使分布標(biāo)準(zhǔn)化;DKL為KL距離;f?(εt;st)為經(jīng)神經(jīng)網(wǎng)絡(luò)變換后的重參數(shù)化策略。
將式(13)的動(dòng)作函數(shù)代入式(12),策略網(wǎng)絡(luò)的目標(biāo)表達(dá)式可寫(xiě)為
式中:E表示期望函數(shù);εt為輸入的噪聲;N表示噪聲呈高斯分布。
軟Q網(wǎng)絡(luò)交替進(jìn)行策略評(píng)估和策略改進(jìn)環(huán)節(jié),使紅方智能體獲得更優(yōu)策略,增強(qiáng)決策水平。在策略評(píng)估步驟,根據(jù)式(9)中的最大熵目標(biāo)計(jì)算智能體采用當(dāng)前策略π的價(jià)值。對(duì)于固定策略,可以從任何函數(shù)Q:S×A→R開(kāi)始(R表示回報(bào)集),利用修正貝爾曼輔助算子Tπ[13]及根據(jù)軟貝爾曼方程[14],迭代計(jì)算動(dòng)作價(jià)值函數(shù)Q,如式(15)所示。在動(dòng)作集A有界的情況下,迭代次數(shù)k→∞時(shí) ,序列Qk將收斂到Qπ。
式中,p為狀態(tài)轉(zhuǎn)移概率。
策略改進(jìn)步驟中,策略集Π 中策略π′朝與新Q函數(shù)的指數(shù)分布呈正比的方向離線更新。首先,每個(gè)狀態(tài)根據(jù)式(16)更新紅方智能體策略,以保證新策略優(yōu)于舊策略,即Qπnew(st,at)≥Qπold(st,at)。然后,以最小化KL散度形式減小2個(gè)分布間的差異,其中Zπold(st)為對(duì)Q值進(jìn)行歸一化分布。最后,經(jīng)策略迭代,紅方智能體找到最優(yōu)策略π?。
如圖8所示,軟Q網(wǎng)絡(luò)有狀態(tài)和動(dòng)作2個(gè)輸入維度,輸入狀態(tài)經(jīng)過(guò)4層隱藏層,隱藏單元數(shù)分別為(256,128,256,128),輸入動(dòng)作經(jīng)過(guò)3層隱藏層,隱藏單元數(shù)分別為(128,256,128)。進(jìn)入第3層隱藏層前,將輸入狀態(tài)和動(dòng)作2個(gè)分支的輸出結(jié)果合并,經(jīng)過(guò)最后單維度的輸出層,輸出動(dòng)作狀態(tài)價(jià)值Q。
圖8 Soft Q網(wǎng)絡(luò)結(jié)構(gòu)Fig.8 The structure of soft Q network
若紅方智能體單純執(zhí)行當(dāng)前策略選擇回報(bào)值最大的動(dòng)作,則會(huì)因探索不充分而陷入局部最優(yōu)困境。為了盡快發(fā)現(xiàn)藍(lán)方目標(biāo)以及提高長(zhǎng)期回報(bào),在紅方智能體訓(xùn)練過(guò)程中,要擴(kuò)大對(duì)動(dòng)作狀態(tài)空間的探索。鑒于OU隨機(jī)過(guò)程(Ornstein-Uhlenbeck process)時(shí)序相關(guān)性較好,故在策略網(wǎng)絡(luò)輸出確定性動(dòng)作后引入OU噪聲[15],將策略隨機(jī)化,再?gòu)漠?dāng)前策略中對(duì)動(dòng)作值進(jìn)行采樣,得到探索動(dòng)作at,如圖9所示。
圖9 紅方智能體的探索動(dòng)作選擇Fig.9 The action choice of red team agent for exploration
算法偽代碼包括如下步驟:
步驟1:初始化價(jià)值網(wǎng)絡(luò)參數(shù)ψ、策略網(wǎng)絡(luò)參數(shù)?以及軟Q網(wǎng)絡(luò)參數(shù)θ。
步驟3:初始化經(jīng)驗(yàn)緩存空間D和標(biāo)志位done。
步驟4:對(duì)每個(gè)episode重復(fù)執(zhí)行如下操作。
1) 獲取環(huán)境狀態(tài)s0。
2) 若紅方反潛機(jī)存在(未被藍(lán)方潛艇摧毀或未摧毀藍(lán)方潛艇結(jié)束推演)并且執(zhí)行步數(shù)小于最大規(guī)定步數(shù),循環(huán)執(zhí)行如下操作:
(1) 將當(dāng)前狀態(tài)st輸入策略網(wǎng)絡(luò),選擇動(dòng)作并加入OU噪聲,即at~π?(st)+N;
(2) 執(zhí)行動(dòng)作at, 獲得回報(bào)rt并進(jìn)入下一狀態(tài)st+1;
(3) 將 (st,at,rt,st+1)存入經(jīng)驗(yàn)緩存空間D;
(4) 若數(shù)據(jù)量大于經(jīng)驗(yàn)回放緩存空間容量Ns,則從D中采集Ns個(gè)樣本(sit,ati,rti,st+1i),i=1,2,···,Ns;
(5) 根據(jù)目標(biāo)價(jià)值函數(shù)Vψˉ,計(jì)算軟Q目標(biāo)網(wǎng)絡(luò)的期望回報(bào)值Q?:
(6) 計(jì)算價(jià)值網(wǎng)絡(luò)的損失函數(shù)JV(ψ),計(jì)算梯度ψJV(ψ), 更新價(jià)值網(wǎng)絡(luò)的所有參數(shù)ψ,其中
(7) 計(jì)算軟Q網(wǎng)絡(luò)的損失函數(shù)JQ(θ),計(jì)算梯度θJQ(θ), 更新軟Q網(wǎng)絡(luò)的所有參數(shù)θ,其中
(8) 計(jì)算策略網(wǎng)絡(luò)的損失函數(shù)Jπ(?),計(jì)算梯度?Jπ(?), 更新策略網(wǎng)絡(luò)的所有參數(shù)?;
Q?(st,at)=r(st,at)+γEst+1~p[Vψˉ(st+1)]
3)若藍(lán)方潛艇被消滅(done=1)或者達(dá)到最大的規(guī)定步數(shù),結(jié)束2)循環(huán)。
步驟5:若達(dá)到最大規(guī)定的episode數(shù),結(jié)束整個(gè)循環(huán)。
利用作戰(zhàn)仿真推演平臺(tái)驗(yàn)證決策模型的適用性,其整體框架如圖10所示。作戰(zhàn)仿真推演系統(tǒng)具備數(shù)據(jù)管理、指揮控制、效能評(píng)估等功能。人工智能研究平臺(tái)包括Python開(kāi)發(fā)包和AI處理模塊兩部分,與作戰(zhàn)仿真推演系統(tǒng)協(xié)同配合,實(shí)現(xiàn)具體研究案例的智能學(xué)習(xí)。其中,人工智能研究平臺(tái)的具體程序開(kāi)發(fā)環(huán)境和相關(guān)接口如圖11所示,主要由AI業(yè)務(wù)界面、仿真交互接口、命令池、態(tài)勢(shì)池、態(tài)勢(shì)適配器、算法庫(kù)、通信界面組成。利用PyTorch框架編寫(xiě)SAC決策算法并存儲(chǔ)到算法庫(kù),在AI業(yè)務(wù)界面中創(chuàng)建智能體對(duì)象和環(huán)境對(duì)象,調(diào)用算法庫(kù)中的決策算法,將仿真操作命令傳遞給服務(wù)端執(zhí)行,實(shí)時(shí)接收通信界面返回的服務(wù)端態(tài)勢(shì)信息,使反潛智能體在與環(huán)境信息的不斷交互中學(xué)會(huì)自主決策。
圖10 仿真推演平臺(tái)總體框架圖Fig.10 Overall framework of simulation platform
圖11 AI開(kāi)發(fā)平臺(tái)總體框架圖Fig.11 Overall framework of AI development platform
在4.1節(jié)介紹的仿真實(shí)驗(yàn)環(huán)境下開(kāi)展仿真推演,驗(yàn)證訓(xùn)練的紅方智能體能否作出智能決策。如圖12所示,在紅方反潛智能體訓(xùn)練開(kāi)始階段,獲得的回報(bào)值相對(duì)較低,每輪回報(bào)值的波動(dòng)性較大。隨著迭代episode數(shù)的增加,回報(bào)值相應(yīng)上升,迭代進(jìn)行到600輪左右時(shí),回報(bào)值逐漸趨于平穩(wěn)。相應(yīng)地,在訓(xùn)練初期,紅方反潛機(jī)不斷投放聲吶,四處搜尋藍(lán)方潛艇,隨機(jī)性較強(qiáng),經(jīng)過(guò)不斷的訓(xùn)練學(xué)習(xí),其發(fā)現(xiàn)潛艇所用的時(shí)間逐漸減少,最終實(shí)現(xiàn)自主決策,找到目標(biāo)后自動(dòng)擊毀。具體訓(xùn)練超參數(shù)設(shè)置如表3所示。
圖12 紅方智能體訓(xùn)練過(guò)程Fig.12 The training process of red team agent
表3 超參數(shù)設(shè)置Table3 The hyper-parameter settings
圖13所示為“海鷹”反潛機(jī)摧毀“魚(yú)鰓-NN”級(jí)常規(guī)潛艇的過(guò)程。圖中,左上角是“魚(yú)鰓-NN”級(jí)常規(guī)潛艇,左下角是“阿利·伯克”級(jí)導(dǎo)彈驅(qū)逐艦,中間是紅方反潛機(jī)為搜索藍(lán)方潛艇而布放的聲吶浮標(biāo)。圖14所示為對(duì)應(yīng)的航跡圖。圖中,“海鷹”反潛機(jī)從 (34°13'E,43°48'N) 位置處出發(fā),不斷投放聲吶來(lái)搜尋藍(lán)方潛艇,最終在目標(biāo)位置處 (33°85'E,43°74'N) 摧毀“魚(yú)鰓-NN”級(jí)常規(guī)潛艇。
圖13 紅方擊毀藍(lán)方常規(guī)潛艇Fig.13 Red team destroys blue team's conventional submarines
圖14 紅方擊毀藍(lán)方常規(guī)潛艇航跡圖Fig.14 Track map of red team destroying blue team's conventional submarine
圖15所示為“海鷹”反潛機(jī)摧毀“北風(fēng)之神”級(jí)戰(zhàn)略核潛艇的過(guò)程。圖中,右下角是“北風(fēng)之神”級(jí)戰(zhàn)略核潛艇級(jí),左下角是“阿利?伯克” 級(jí)導(dǎo)彈驅(qū)逐艦。圖16為對(duì)應(yīng)的航跡圖,圖中,“海鷹”反潛作戰(zhàn)機(jī)從(34°13'E,43°48'N)位置處出發(fā),不斷投放聲吶搜尋藍(lán)方潛艇,最終在目標(biāo)位置處(34°65'E,43°4'N)摧毀“北風(fēng)之神”級(jí)戰(zhàn)略核潛艇。
圖15 紅方擊毀藍(lán)方核潛艇Fig.15 Red team destroys blue team's nuclear submarine
圖16 紅方擊毀藍(lán)方核潛艇航跡圖Fig.16 Track map of red team destroying blue team's nuclear submarine
將改進(jìn)SAC決策算法與DDPG決策算法對(duì)比分析,結(jié)果如圖17所示。由圖可見(jiàn):在訓(xùn)練開(kāi)始階段,兩種算法的平均回報(bào)均較快增長(zhǎng)。其中,DDPG算法訓(xùn)練的智能體采用確定性策略作決策,經(jīng)迭代300次左右開(kāi)始收斂,回報(bào)值趨于穩(wěn)定;而改進(jìn)SAC算法采用的是探索性策略,收斂相對(duì)較慢,隨著迭代次數(shù)的增加,其平均回報(bào)明顯高于DDPG算法。此外,在兩種算法訓(xùn)練的智能體性能趨于穩(wěn)定后,各自隨機(jī)進(jìn)行了60次仿真推演實(shí)驗(yàn),其中每6次實(shí)驗(yàn)劃分為一組,共計(jì)10組實(shí)驗(yàn)。基于此,對(duì)10組獲勝概率進(jìn)行比較分析,結(jié)果如圖18所示。由圖可見(jiàn),采用DDPG算法,紅方反潛智能體的平均獲勝概率為49.32%;采用改進(jìn)SAC決策算法,紅方平均獲勝概率為73.85%,比前者提高近24.53%。
圖17 兩種決策算法的平均回報(bào)對(duì)比Fig.17 Comparison of average return of two decision algorithms
圖18 紅方獲勝概率對(duì)比Fig.18 Comparison of winning probability of red team
本文針對(duì)作戰(zhàn)仿真推演中的決策問(wèn)題,提出了一種基于SAC算法的智能決策模型,使紅方智能體在不具備先驗(yàn)知識(shí)的情況下,通過(guò)與環(huán)境不斷交互,學(xué)會(huì)發(fā)現(xiàn)藍(lán)方目標(biāo),自主決策,最終獲得勝利?;谂炤d反潛機(jī)反潛想定進(jìn)行仿真推演,結(jié)果表明,本文所構(gòu)建的決策模型在利用經(jīng)驗(yàn)緩存數(shù)據(jù)開(kāi)展離線策略訓(xùn)練后,展現(xiàn)出了較強(qiáng)的學(xué)習(xí)和判斷能力,紅方反潛智能體成功探測(cè)到了藍(lán)方潛艇并進(jìn)行了摧毀,從而證明了智能決策模型的有效性。在未來(lái)研究中,可以增加智能體數(shù)量,通過(guò)分析多智能體博弈特點(diǎn)來(lái)改進(jìn)算法,以實(shí)現(xiàn)基于多智能體DRL的作戰(zhàn)推演智能決策。