韓興豪,曹志敏,劉家祺,李旭輝
(江蘇自動化研究所,江蘇 連云港 222061)
目前,在軍事作戰中主要靠指揮員以自己的直覺和經驗做出實時決策。然而現代作戰態勢愈加復雜,場面瞬息萬變,獨以人力很難在短時間內根據復雜的戰場信息完成最優決策。而現有的輔助決策技術效率低,決策質量差強人意,智能輔助決策水平亟待提高。為突破基于流程和規則的分層決策空間和基于決策樹的分支推演技術,深度強化學習為現代作戰智能決策技術的升級換代提供了強有力的理論與技術支持。
近年來深度網絡在各個領域的廣泛應用及卓越成效為強化學習的發展提供了又一次機遇,它針對強化學習的價值函數逼近問題提供了有效的解決方案,讓強化學習重新煥發了生命力。深度強化學習在很多應用方面經過一系列發展已經可以交出一份讓人滿意的答卷,比如在Atari環境、三維虛擬環境、機器人控制等領域的應用取得了相當卓越的成果。但這些環境在復雜度上相比一些實際問題仍有著云泥之別。比如在海面作戰環境中,就包括數十種作戰單位,每種平臺對應一種智能體,如何在同一環境下快速有效地學習自主決策是個極大的挑戰。
現代全域作戰態勢復雜度過高,利用深度強化學習為指揮員在作戰中提供輔助決策,將指揮員從一部分作戰決策中解放出來,使其聚焦于戰場調度等更重要的決策,是目前軍事智能化的一大前景。但是,若想將每個作戰平臺同時實現智能化決策,其難度堪比大海撈針;另一方面,若僅在簡單對戰場景中構建深度強化學習智能體,例如空戰1V1,其態勢特征太過簡單,對實戰的參考價值十分有限,而且無法體現出深度網絡提取態勢特征的優勢。基于以上2個原因,本文將復雜的戰場態勢在智能決策方面進行簡化,在其他作戰平臺皆基于規則進行決策的仿真推演環境中,為執行輔助防空反導任務的殲擊機構建智能體進行強化學習,探索逐步為現代多域作戰全面實現智能化的道路。
然而強化學習在實際應用中,需要很久的訓練時間,甚至可能不收斂。另一方面,仿真推演中可以明確地觸發收益的“狀態-動作”二元組很少,相互之間相隔時間步很遠,且表示向目標靠近的收益更加稀缺,智能體可能會長期沒有目的地漫游,即強化學習中所謂“高原問題”。良好的獎勵函數可以有效縮短智能體學習時間,讓算法更快地收斂。
解決稀疏獎勵問題的典型方法是利用逆向強化學習,從專家樣本中進行學習,逆推出獎勵函數,但是這一方法對具有較強隨機性的高維問題卻無能為力。本文采用獎勵重塑的方法,加入好奇心機制,可以在一定程度上解決稀疏獎勵,激勵智能體在環境中進行有效探索以獲得最大累積獎勵。
本文實驗環境為某戰役級仿真平臺,支持聯合作戰模擬的戰役戰術一體化仿真推演。對戰雙方控制各自兵力進行對抗,包括進行機動、開關傳感器、武器發射等,從而做出探測、跟蹤、打擊等命令,最終決出勝負。模型庫中包括實際作戰中的多種平臺的仿真模型,比如飛機、水面艦艇、機場等,每個平臺的指令類型可以是任務驅動(包括巡邏任務、打擊任務、伴機/艦飛行等),也可以由實時指令驅動(如航線規劃、目標打擊等)。仿真環境中的單位可以按照已編輯好的想定過程和規則進行決策動作,并且內置裁決系統,每一局對戰結束后,可以統計彈藥消耗與平臺毀傷程度,根據每個平臺的價值,計算對戰雙方得分,從而判定勝負。進行多次推演,每局對戰訓練流程如圖1所示,對勝負次數加以統計,評價智能體自主決策效果。

圖1 對戰訓練流程
本實驗重點研究海面全域作戰中殲擊機在輔助防空反導任務中的自主決策水平,目前僅構建殲擊機的強化學習智能體,在仿真環境的基礎上對態勢信息進行提取與封裝,便于算法實現與智能體構建。圖2為對戰訓練框架。

圖2 對戰訓練框架
為了便于強化學習建模與訓練,決策模型采用指令集合,將多維輸出映射到指令集中。對戰訓練框架如圖2所示,將殲擊機指令模型化為探測、突擊、攔截等。指令參數包括以下幾種:(1)是否選擇敵方單位作為打擊目標,用0~1表示;(2)目標選擇,包括敵方預警機、戰斗機及敵方發射的反艦、防空導彈等,用敵方單位編號表示;(3)傳感器開關,為發現、跟蹤敵方單位并防止自己被敵方探測或跟蹤;(4)突擊方向,即相對正北方向角度,順時針最大360°;(5)武器選擇,一方面針對不同運動介質中的平臺分配不同類型的武器,包括反艦導彈、空空導彈等,另一方面根據武器的打擊范圍與毀傷能力進行部署;(6)武器齊射數量,根據武器的打擊能力與目標平臺的毀傷程度分配適量的武器,盡量避免武器的浪費或打擊不充分;(7)武器發射距離與最大射程百分比,當前武器發射與目標平臺的距離與武器最大打擊距離的比例,比值越小命中率越高。
n
個時刻的態勢作為第一維,智能體的數量作為第二維,每個智能體的態勢信息作為第三維,組成仿真環境的狀態空間,作為智能體的決策依據。在復雜的作戰仿真環境中,收益稀疏的問題愈發顯著。及時提供非零收益讓智能體逐步實現目標,已經是一個十分困難的挑戰,而讓智能體高效地從各種各樣的初始狀態下進行學習無疑難上加難。本章節探討完成獎勵計算模塊,根據態勢信息計算獎勵,作為決策動作的反饋,嵌入仿真環境中與智能體進行交互。
如何設計并重塑一個適用于一般作戰想定的獎勵函數,獲得較為顯著的訓練效果,提高決策質量,是本文研究的創新點和重點。作戰過程一般會持續比較久的時間,期間每次決策獎勵的延遲時間也長短不一,所設計的獎勵函數要能夠在一定程度上體現出每次決策的效果。本文主要為執行輔助防空反導作戰任務的殲擊機重塑獎勵函數。
單個平臺每做出一次決策,即選擇一個動作,或機動到指定點,或選擇武器進行攻擊,或開關傳感器等,都會從環境獲得獎勵。
2.1.1 機動指令獎勵
提出一種基于相對方向與相對位置的獎勵函數設計方法,以敵方每個平臺對我方智能體的威脅系數為權值,對距離進行加權求和。采取機動指令會根據該平臺方位的變化所帶來的影響來計算獎勵,獎勵的大小由以下因素決定:
(1) 與己方單位的平均距離D
。該指標在一定程度上可以體現出其安全系數,與己方單位距離較近時,方便互相之間進行協同,能夠快速形成以多打少的局面,避免出現孤立無援的情況,存活率較高,獎勵值會相對較大。采用加權距離D
,計算方式如下:D
=w
1d
1+w
2d
2+…+w
d
(1)
式中:w
與d
表示平臺1~n
的重要性系數及其與智能體的距離。(2) 與敵方單位的平均距離D
。該指標可以體現出平臺受威脅系數。一方面避免孤軍深入;另一方面為防止仿真作戰過程中,智能體一直游離在戰場環境之外,在廣泛的時空域中反復進行無效的探索,需要利用獎勵函數引導作戰單位與敵方拉近距離進行對戰。D
=w
1d
1+w
2d
2+…+w
d
(2)
式中:w
與d
分別表示敵方平臺的威脅系數及其相對我方智能體的距離。為防止我方平臺進入敵方單位集火范圍,應盡量與敵方某一落單目標拉近距離,而與其他平臺保持距離。
(3) 是否在敵方單位的武器打擊范圍內。充分發揮武器射程優勢,盡量保持在敵方攻擊范圍之外,保證己方安全又使敵方單位在我武器打擊范圍之內,對敵方單位進行“風箏”式攻擊。
對這些因素進行加權求和,在單位采樣步長的變化值即為機動指令獎勵值r
。2.1.2 武器發射獎勵
發射武器首先會反饋比較小的負獎勵,不同的武器根據成本和威力大小對應不同的獎勵值。武器發射一方面表示彈藥消耗,會從環境獲得即時的負獎勵。另一方面預示著可能給敵方平臺帶來損傷,即命中獎勵,將此部分歸結為武器命中事件,屬于事件獎勵,將在后續進行介紹。
在作戰推演過程中,所有平臺的狀態處于不斷變化中,包括油量、毀傷程度等。油量的變化主要由機動和加油引起,機動過程引起油量的降低會獲得負獎勵;在油量越低的情況下進行加油獲取的獎勵越大。毀傷情況分為不同平臺、不同部位的毀傷,根據命中目標的不同,獲取不同的獎勵,從導彈、轟炸機到殲擊機獎勵逐漸增大。對敵方平臺,按照其威脅程度,威脅越大的目標受損時獲得的獎勵越大;對我方平臺,按照重要性升序,越重要的平臺受損獲得越大的負獎勵。
現代戰場可以說是信息的較量,誰在作戰中掌握了更多信息,誰就掌握了戰場的主動權,對取得作戰勝利起著至關重要的作用。將信息表征為各種關鍵事件的發生,將事件類型分為:(1)探測事件,包括捕獲目標、捕獲目標消失、目標識別、目標跟蹤等;(2)武器系統事件,包括發射失敗、彈藥耗盡、武器命中、超出武器射程、目標跟蹤丟失等,其中命中事件的觸發需要武器發射后相當一段時間才能進行判定,因此該動作獎勵有較大的延遲問題。本文采用長短期記憶網絡(LSTM)對一段時間內的狀態、動作進行記憶與傳遞,間接反映出決策的優劣,進而對后續動作產生影響;(3)干擾事件,包括遭受干擾、受干擾結束等;(4)通信事件,包括數據鏈建鏈、數據鏈結束、網絡開通、收發、網絡結束等。多數時候純以動作的獎勵無法反映出這些事件所帶來的影響,因此需要為這些事件單獨設計獎勵,從態勢中獲取事件信息,觸發獎勵。
初步確定超參數,包括仿真回合數、仿真速度、決策間隔、最大決策步數、學習速率等。引入Pytorch深度學習框架實現神經網絡結構,利用Python語言搭建智能體構成Agents模塊,實現以下功能:重置智能體、計算動作狀態價值、計算損失函數、計算優勢函數、動作選取與價值評論等。
深度網絡對數據有更強的信息提取能力,本文采用卷積與循環神經網絡(CRN)。網絡結構如圖3所示。與傳統神經網絡相似,它由一系列帶有權重與偏置的神經元組成,每個神經元從上一層接受輸入,先進行矩陣運算,再利用激活函數進行非線性處理。將當前連續時刻的狀態數據進行堆疊作為網絡的輸入,卷積網絡(CNN)能夠取代傳統的人工,更高效地對態勢環境進行特征提取。但這增加了網絡的存儲和計算難度,因此插入循環神經網絡(LSTM),對時間軸上的歷史狀態信息進行提取與記憶,做出優化決策。經驗表明,在部分可觀測模型中,CRN網絡結構表現出比其他網絡更好的性能,也更適用于作戰仿真中復雜任務的訓練。各神經網絡模塊功能見表1。

圖3 網絡結構

表1 網絡模塊說明
t
,智能體從環境中獲取狀態數據s
,然后根據策略和約束條件從動作空間中選取可執行的動作a
,再從環境獲取獎勵r
,直到環境的終止狀態。訓練目的是獲得一個策略函數(即從狀態s
到動作a
的映射),使智能體采取一系列動作之后所獲取的累積獎勵最大。由于仿真環境中戰爭迷霧的存在,使典型的局部可觀測馬爾可夫決策過程(POMDP)。本文中MDP包括無限的狀態空間與有限的動作空間,以及獎勵函數r
:×→,表示智能體在狀態s
下采取動作a
獲得的期望獎勵,策略p
:→表示從狀態到動作的映射。智能體在t
時刻獲取到帶有獎勵r
與動作a
的狀態觀測o
,態勢狀態為s
,那么t
時刻的獎勵R
:+定義為累積折扣獎勵:
(3)
式中:γ
為折扣系數。算法的目標就是將累積獎勵最大化。加入并行機制,即在一臺計算機上使用多個線程進行訓練,每個線程單獨與環境進行交互并計算梯度。這種方法可以免去發送梯度參數的通信消耗。各線程中使用不同的探索策略,平行地運行多個動作-評論網絡可以更快速有效地對環境中的各個部分進行探索。將多個線程結合在一起,進一步減弱了探索事件的相關性,利于程序的收斂。
本文采用強化學習的典型算法異步優勢行動者-評論者算法。A3C算法是由行動-評論者(Actor-Critic)算法發展進化而來,智能體包括兩部分:行動者和評論者,通過對環境的探索與利用來獲得兩者更好的表現。訓練流程如圖4所示。行動者用策略函數p
(a
|s
;θ)表示,評論者用價值函數V(s
,θ
)表示,用深度神經網絡對策略與價值函數進行近似與逼近。狀態s
的狀態價值為:
圖4 A3C算法流程圖
V
(s
)=E
(R
:∞|s
=s
,p
)=E
()(r
+γV
(s
′))(4)
式中:E
表示在狀態s
下采用策略p
的期望;s
′為s
的后繼狀態。狀態-動作價值函數為:
Q
(s
|a
)=E
(R
:∞|s
=s
,a
=a
,p
)=r
+γV
(s
′)(5)
利用時間差分將Actor網絡和Critic網絡連接起來,計算時序差分(TD)誤差為:
δ
=Q
(s
,a
)-V
(s
)=r
+γV
(s
′)-V
(s
)(6)
定義優勢函數:
A
(s
,a
)=Q
(s
,a
)-V
(s
)(7)
在異步算法中,將優勢函數進一步細化為:

γ
V
(s
+,θ
)-V
(s
;θ
)(8)
式中:k
表示時間步長,最大不超過t
。為了評估策略的優劣,定義目標函數J
(p
),表示從初始狀態開始得到的所有狀態價值的平均值:J
(p
)=E
[V
(s
)](9)
根據策略梯度定理,得到其梯度:
▽J
(p
)=E
~,~()[A
(s
,a
)·▽lgp
(a
|s
)](10)
嘗試最大化目標函數。采用異步并行訓練方式,其算法架構如圖5所示,策略函數與價值函數每經過t
時間步或到達終止狀態后進行參數更新。將每個線程中的運行結果反饋給主網絡,同時從主網絡獲取最新的參數更新,最終達到優化網絡參數的目的。
圖5 A3C異步架構圖
在基于規則的仿真環境中加入紅方殲擊機智能體進行推演與學習,訓練前,智能體決策質量差,而且經常會游離在主戰場之外,導致紅方勝率很低。但經初步仿真訓練,在多次推演迭代后,反復更新智能體策略網絡參數。對每百次實驗結果進行記錄,并統計紅方勝率,可以發現紅方勝率有明顯提升。雖然現階段智能決策水平相比基于規則的決策方法尚有差距,但其發展空間很大,隨著迭代次數與技術水平的提高,達到超越人類專家的決策水平的目標已不再遙不可及。
現在國際局勢撲朔迷離,瞬息萬變,但有一點毋庸置疑,于我不利。小規模沖突不斷,雖然發生大規模作戰的概率不高,但仍需我軍提高警惕,時刻準備作戰。實現軍事決策智能化對我軍實現戰術升級、減小損耗、降低傷亡有著重要意義。本文探索了一條實現現代作戰智能化的道路,對模型相似的作戰單位構建智能體進行學習,未來逐步實現預警機、護衛艦等作戰平臺的智能體,為護國強軍保駕護航。