盧 銳,彭鵬菲
(海軍工程大學(xué)電子工程學(xué)院,武漢 430030)
現(xiàn)代空襲目標技戰(zhàn)術(shù)性能的快速提高給海上編隊協(xié)同反導(dǎo)帶來了巨大挑戰(zhàn),防空作戰(zhàn)形勢日趨嚴峻。編隊間協(xié)同目標分配的快速確定和優(yōu)化,是提高對空作戰(zhàn)能力,保護編隊生命力的關(guān)鍵。程明提出一種目標分配方法,基于受限時段資源對艦艇防空武器進行了合理的調(diào)度,得到多目標攔截武器分配方案[1]。周菁提出的目標分配算法為每個個體安排最佳的攻擊目標,使集群的協(xié)同攻擊效能最大[2]。白建保等提出了一種基于命中概率模型的反艦導(dǎo)彈目標分配方法,完善了相關(guān)數(shù)學(xué)模型[3]。曹璐提出了基于決策圖貝葉斯優(yōu)化算法的多無人艇協(xié)同目標分配方法,結(jié)合約束條件構(gòu)建了多無人艇協(xié)同目標分配數(shù)學(xué)模型[4]。孫鵬等研究了基于突發(fā)事件的任務(wù)分配,將目標函數(shù)設(shè)為最小完成時間,通過貪婪算法進行可執(zhí)行任務(wù)的動態(tài)分配,但此研究忽略了任務(wù)截止時間的約束[5]。
上述傳統(tǒng)方法雖然快速有效但是理論性不強,且需要大量的專業(yè)知識和試錯,無法被廣泛使用,并且這些啟發(fā)式算法只是針對某一特定環(huán)境求取最優(yōu)解,面對環(huán)境變化時,往往需要重新求解,實時性差。而強化學(xué)習(xí)算法擁有自決策的特點,可以根據(jù)戰(zhàn)場狀態(tài)進行快速響應(yīng)和調(diào)整,但其在解決大規(guī)模問題和維度較高時性能較差,深度強化學(xué)習(xí)的出現(xiàn)可以有效解決此難題。MNIH 等提出了DQN網(wǎng)絡(luò)[6],其同時具有強化學(xué)習(xí)和深度學(xué)習(xí)的特點,其有效性在多個領(lǐng)域得到了證實,并不斷被更新優(yōu)化。朱建文等使用Q-Learning 算法對導(dǎo)彈的選取和分配方式進行智能決策[7]。代琪等提出了一種基于強化學(xué)習(xí)與深度神經(jīng)網(wǎng)絡(luò)的算法,在動態(tài)多無人機任務(wù)分配問題的求解中具有良好的性能[8]。黃亭飛等采用一種基于深度Q 網(wǎng)絡(luò)(DQN)的模型對無人機動態(tài)任務(wù)分配問題進行了求解[9]。丁振林等提出一種基于強化學(xué)習(xí)與深度神經(jīng)網(wǎng)絡(luò)的動態(tài)目標分配算法,火力攔截成功率得到明顯的提升[10]。龍騰等提出了一種基于神經(jīng)網(wǎng)絡(luò)的防空武器目標智能分配方法,能得到相對最優(yōu)的分配方案[11]。相關(guān)研究雖然在一定程度上彌補了傳統(tǒng)算法的不足,但缺乏對實際戰(zhàn)場環(huán)境下的編隊協(xié)同防空任務(wù)分配數(shù)學(xué)模型的適應(yīng)性改進,綜合效益值仍有上升空間。
本文在現(xiàn)有研究的基礎(chǔ)上,建立和完善相關(guān)數(shù)學(xué)優(yōu)化模型,提出了一種基于深度強化學(xué)習(xí)的海上編隊協(xié)同防空任務(wù)分配方法,利用兩種結(jié)構(gòu)簡單的深度強化學(xué)習(xí)算法對模型求解,進行任務(wù)分配的決策,可在時間成本較低的情況下實現(xiàn)較高的任務(wù)分配綜合效益值。
在任務(wù)分配問題中,目標函數(shù)的合理選擇,是較為重要的一個環(huán)節(jié),是算法求解的對象,并且目標函數(shù)側(cè)重的方面會根據(jù)研究者所關(guān)注的問題不同而有所區(qū)別,但一般來說都表述為一個極值問題[12]。如圖1 所示,本文將編隊內(nèi)各火力平臺看作一個整體,假設(shè)共有k 艘艦船,共m 個防空火力單元,空中來襲目標共有n 批,各個目標對編隊的威脅度為ωj(j=1,2,…,n)。
圖1 任務(wù)分配示意圖Fig.1 Schematic diagram of the task assignment
假設(shè)Pij為第i 個防空火力單元對第j 個空中目標的射擊有利度(殺傷概率),每個空中目標被分配給火力單元的最大值為L。當空中目標被分配的所有火力射擊有利度之和大于1 時即被移除出分配對象范疇。第Xi個防空火力單元打擊第j 個空中目標表示為Xij,且有:
則基于毀傷效能指標的綜合效益值目標函數(shù)可以表示為:
約束條件如下:
強化學(xué)習(xí)是人工智能領(lǐng)域重要的分支,是無監(jiān)督學(xué)習(xí)的代表算法,目前已在眾多大規(guī)模決策問題中得到應(yīng)用。強化學(xué)習(xí)主要包含智能體、環(huán)境、行動、獎勵4 個要素,通過智能體采取行動與環(huán)境進行交互,獲得相應(yīng)獎勵并不斷調(diào)整策略的方式進行學(xué)習(xí)。深度強化學(xué)習(xí)則是深度神經(jīng)網(wǎng)絡(luò)與強化學(xué)習(xí)結(jié)合的產(chǎn)物,利用神經(jīng)網(wǎng)絡(luò)來解決傳統(tǒng)強化學(xué)習(xí)狀態(tài)過多無法存儲的問題。本章主要介紹深度強化學(xué)習(xí)算法相關(guān)理論知識。
當系統(tǒng)的下一個狀態(tài)與之前狀態(tài)無關(guān),只由當前狀態(tài)決定時,則稱該系統(tǒng)具有馬爾可夫性,可以根據(jù)當前狀態(tài)和采取的動作來對未來狀態(tài)和獲取的獎勵進行預(yù)測。馬爾可夫決策過程則是序貫決策的數(shù)學(xué)模型,用于在系統(tǒng)狀態(tài)具有馬爾可夫性質(zhì)的環(huán)境中模擬智能體可實現(xiàn)的隨機性策略與回報,可用元組(S,A,P,r,γ)來表示。其中,S 表示有限數(shù)量的狀態(tài)集合,A 為動作集合,P 為狀態(tài)轉(zhuǎn)移概率,r 為獎勵函數(shù),γ 為折扣因子。完整過程如圖2 所示,在時刻t,智能體從環(huán)境中觀測狀態(tài)st?S,根據(jù)策略π(a|s)選擇動作at?A,執(zhí)行該動作并以概率轉(zhuǎn)移到下一個狀態(tài),同時接收環(huán)境反饋的獎勵r。
圖2 馬爾可夫決策過程框圖Fig.2 The Markov decision-making process block diagram
強化學(xué)習(xí)中有一類基于值函數(shù)的算法,Qlearning 則是其中具有代表性的一種。它通過表格式存儲各狀態(tài)動作對Q 值的方式來記錄探索過程中每個策略對應(yīng)的價值,但當應(yīng)用場景狀態(tài)空間和動作空間維度較大時,表格式存儲變得難以實現(xiàn)。受神經(jīng)網(wǎng)絡(luò)強大的擬合非線性函數(shù)能力啟發(fā),相關(guān)研究人員提出用神經(jīng)網(wǎng)絡(luò)替代表格式存儲Q 值的方法,通過訓(xùn)練來對Q 價值函數(shù)進行擬合,即深度Q網(wǎng)絡(luò)(DQN)。
DQN 使用參數(shù)化的神經(jīng)網(wǎng)絡(luò)來對Q 函數(shù)進行擬合逼近,找到最優(yōu)的策略。訓(xùn)練的損失函數(shù)為:
利用深度強化學(xué)習(xí)方法研究協(xié)同防空任務(wù)分配問題,需將協(xié)同防空任務(wù)分配問題轉(zhuǎn)化為馬爾可夫決策過程,便于問題的表示和解決,然后定義狀態(tài)空間、動作空間與獎懲函數(shù)如下。
3.1.1 狀態(tài)空間
本文將來襲目標和艦船的特征視為狀態(tài),并用3 個矩陣表示。第1 個為殺傷概率矩陣,第2 個為來襲各目標相對威脅度,第3 個為當前步長分配結(jié)果矩陣。例如3 艘艦船對3 個來襲目標進行火力打擊,則狀態(tài)矩陣表示如下:
3.1.2 動作空間
在海上編隊協(xié)同防空場景下,對于編隊火力單元來說,動作空間為在當前狀態(tài)下各艦船可采取動作的集合,表示為C={a1,a2,…,ap}。假設(shè)可選動作:
1)攻擊威脅度最大的來襲目標;
2)攻擊火力單元殺傷概率最大的來襲目標;
3)攻擊上級指定的目標;
4)攻擊重點目標;
5)攻擊射擊有利的目標;
6)攻擊先到達的目標。
3.1.3 獎勵函數(shù)
獎勵函數(shù)的選取深度強化學(xué)習(xí)的最終目的就是使累計獎勵最大化,其效果與獎勵函數(shù)的選取息息相關(guān)。累計獎勵即每個動作產(chǎn)生的獎勵總和,代表所有短期獎勵產(chǎn)生的短期影響累積。
根據(jù)協(xié)同防空任務(wù)分配問題的數(shù)學(xué)描述,算法的最終目標是最大化綜合效益值Z1:
每個動作的獎勵設(shè)置如下:
本文使用在Evolving Reinforcement Learning Algorithms[13]一文中提到的兩個算法,他們在眾多環(huán)境測試中均優(yōu)于傳統(tǒng)DQN,網(wǎng)絡(luò)結(jié)構(gòu)簡單,效率更高。兩種表現(xiàn)較好的算法DQNReg 和DQNClipped具體如下:
設(shè)
3.2.1 DQNClipped
DQNClipped 是DQN 在3 種訓(xùn)練環(huán)境(Lunar Lander、Mini Grid-Dynamic-Obstacles-5,5Mini Grid Lava GapS5)中自舉訓(xùn)練出來的。它在訓(xùn)練和未見環(huán)境中的表現(xiàn)都優(yōu)于DQN 和Double DQN,Dueling DQN。其損失函數(shù)表明,如果Q 值過大(當Q(st,at)>δ2+ Yt),損失將作用于最小化Q(st,at)而不是傳統(tǒng)的δ2。或者可認為當δ 足夠小時,損失只是為了最小化Q(st,at)。具體損失函數(shù)如下:
3.2.2 DQNReg
DQNReg 是DQN 在3 種訓(xùn)練環(huán)境(Key Corridor S3R1,Dynamic-Obstacles-6x6,DoorKey-5x5)中通過自舉訓(xùn)練出來的。與DQNClipped 相比,DQNReg 直接用一個始終有效的加權(quán)項來規(guī)范Q 值,但兩個損失函數(shù)都為了將Q 值正則化為較低的值而修改了原始的DQN 損失函數(shù)。DQNReg 雖然相當簡單,但它在眾多公開訓(xùn)練和測試環(huán)境中,包括從經(jīng)典控制和Minigrid 中,都與基線相匹配或超過了基線。在一些測試環(huán)境(Simple Crossing S9N1、Door Key-6x6和Unlock)中表現(xiàn)特別好,并在其他方法無法獲得任何獎勵時解決了這些任務(wù)。因此,它更穩(wěn)定,種子之間的差異更小,在測試環(huán)境(Lava GapS5、Empty-6x6、Empty-Random-5x5)上的采樣效率更高。損失函數(shù)如下:
神經(jīng)網(wǎng)絡(luò)的訓(xùn)練是一個最優(yōu)化問題,最優(yōu)化一個損失函數(shù)loss function,也就是標簽和網(wǎng)絡(luò)輸出的偏差,目標是讓損失函數(shù)最小化。為此,需要有樣本,巨量的有標簽數(shù)據(jù),而Q-learning 利用Reward 和Q計算出來的目標Q 值即可作為標簽,DQN 網(wǎng)絡(luò)結(jié)構(gòu)如圖3 所示。第1 層為狀態(tài)空間輸入層,之后連接3個卷積層,在進行卷積操作后,將提取的特征通過全連接層輸出Q 值,卷積層激活函數(shù)選用Relu。
然后通過反向傳播使用梯度下降的方法來更新神經(jīng)網(wǎng)絡(luò)的參數(shù)。在DQN 中強化學(xué)習(xí)Q-Learning算法和深度學(xué)習(xí)的SGD 訓(xùn)練是同步進行的,通過Q-Learning 獲取無限量的訓(xùn)練樣本,然后對神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,流程如圖4 所示。
綜上,基于深度強化學(xué)習(xí)的海上編隊協(xié)同防空任務(wù)分配算法核心步驟如下:
Step 1 初始化經(jīng)驗回放D,價值函數(shù)Q,折扣因子,Q 網(wǎng)絡(luò)參數(shù)為θ;
Step 2 輸入艦船的各特征值,來襲目標各特征值
Step 3 for i=1,M do;for t=1,T do
Step 4 初始化狀態(tài)s;
Step 5 使用ε-貪婪算法進行動作選擇,即以ε的概率隨機選取動作空間內(nèi)的可執(zhí)行動作,以1-ε的概率選取當前時間步內(nèi)Q 值最大的一個動作at;
Step 6 根據(jù)動作at 計算相應(yīng)的獎勵rt,并轉(zhuǎn)入下一個狀態(tài)st+1;
Step 7 將(st,at,rt,st+1)存儲于D 中;
Step 8 隨機從D 中選取適量的小批量樣本(st',at',rt',st'+1);
Step 9 使用隨機梯度下降法訓(xùn)練網(wǎng)絡(luò)結(jié)構(gòu);
Step 10 更新參數(shù)θ、θ-、Q(st,a;θ)、Qtarget(st,a;θ-);
Step 11 結(jié)束循環(huán),保存Q 估計值網(wǎng)絡(luò)結(jié)構(gòu),算法結(jié)束。
為了驗證上述兩種新的深度強化學(xué)習(xí)算法,在海上編隊協(xié)同防空任務(wù)分配場景中同樣具有優(yōu)良的性能,設(shè)置了一個仿真環(huán)境,假設(shè)海上編隊共有4艘艦船,共20 個防空火力單元,空中來襲目標共有12 批(個),各個目標對編隊的威脅度和部分武器對目標殺傷概率設(shè)置如表1 和表2 所示。
表1 來襲目標威脅度(目標數(shù)12)Table 1 The threat level of raid-goal(the number of goals is 12)
表2 武器殺傷概率(目標數(shù)12)Table 2 The weapon kill probabilit(the number of goals is 12)
深度強化學(xué)習(xí)算法的神經(jīng)網(wǎng)絡(luò)部分實現(xiàn)是基于TensorFlow 深度學(xué)習(xí)框架的,實驗使用CPU 為intel(R)Core(TM)i7-8550U,內(nèi)存為16GiB,GPU 為NVIDIA GeForce RTX 2080 的計算機。將算法訓(xùn)練1 000 個周期,其余相關(guān)參數(shù)設(shè)置如表3 所示。
由圖5 累計獎勵值可以看出,訓(xùn)練剛開始時,算法處于探索階段,之后隨著訓(xùn)練步數(shù)不斷增長,累計獎勵值也隨之快速增加。在訓(xùn)練中期,算法定期更新參數(shù)會導(dǎo)致增長速度趨穩(wěn)但略有變化。訓(xùn)練后期,累計獎勵值逐漸趨定,并略微有上升,這說明此時已學(xué)習(xí)到了任務(wù)分配的策略。
圖5 累計獎勵值Fig.5 The Cumulative reward value
使用的兩個新的算法DQNReg 和DQNClipped,在仿真環(huán)境中具有良好的性能。算法的Q-eval,cost,total training time 隨訓(xùn)練時間步的變化如圖6~圖8 所示。
圖6 損失值變化Fig.6 The change of loss value
圖7 Q-eval 變化Fig.7 The change of Q-eval
圖8 總體訓(xùn)練時間Fig.8 The overall training time
圖6~圖8 展現(xiàn)了訓(xùn)練過程中兩種算法的各種性能變化,說明了模型在訓(xùn)練的過程中,目標函數(shù)被不斷地優(yōu)化,求解模型的有效性得到證實。
本文利用現(xiàn)有的DQN 算法,遺傳算法(GA),貪婪算法以及DQNReg 和DQNClipped 算法進行防空任務(wù)分配訓(xùn)練。實驗設(shè)為兩組,分別是來襲目標為12 批,20 批情況下綜合效益值隨訓(xùn)練時間步的對比實驗。
圖9 表示了來襲目標為12 批次情況下,各算法的綜合效益值隨時間步的變化情況??梢钥闯?,訓(xùn)練得到的兩種算法能實現(xiàn)較大綜合效益值。在訓(xùn)練初期,兩種訓(xùn)練得到的算法實現(xiàn)的綜合效益值基本相同。在中后期,兩種算法交叉獲取最高效益值,這是因為兩種算法有不同的損失函數(shù)和分配策略,但均高于其他算法?;谶z傳算法的防空武器任務(wù)分配耗時平均約為5.6 s,貪婪隨機選擇算法平均為10.3 s,而基于深度強化學(xué)習(xí)的防空武器任務(wù)分配耗時均小于1 s,具體分配方案如表4 所示。從結(jié)果可以看出,在當前仿真環(huán)境下,對于來襲目標威脅度較大的目標,分配了多個對該目標殺傷概率大的武器進行打擊,以提高防空綜合效益值,說明了任務(wù)分配方法的有效性。
表4 分配結(jié)果(目標數(shù)12)Table 4 The assignment results(when the number of goals is 12)
圖9 來襲目標為12 批次時Fig.9 When the target is 12
圖10 表示了來襲目標為20 批次情況下,各算法的綜合效益值隨訓(xùn)練時間步的變化情況,各個目標對編隊的威脅度和部分殺傷概率設(shè)置如表5、表6 所示。當來襲目標增多時,訓(xùn)練所得的算法實現(xiàn)的綜合效益值還是明顯高于DQN,GA 和貪婪算法。與之前交叉上升不同的是,在訓(xùn)練后期DQNReg 明顯超過了DQNClipped,這是因為當來襲目標增多時,各種時間約束則更多,說明訓(xùn)練所得的DQNReg 算法更適應(yīng)這種情況。同時也說明了本文訓(xùn)練的算法在任務(wù)量增大時依然能實現(xiàn)最大綜合效益值?;谶z傳算法的防空任務(wù)分配耗時平均約為6.7 s,貪婪隨機選擇算法平均為13.5 s,而基于深度強化學(xué)習(xí)的防空任務(wù)分配耗時均小于1 s,具體分配方案如表7 所示。從具體分配結(jié)果可以看出,在來襲目標數(shù)量更多的情況下,對于威脅度高的來襲目標,分配了殺傷概率高的火力單元對其進行攻擊,證實了任務(wù)分配方法的合理性。
表5 來襲目標威脅度(目標數(shù)20)Table 5 The threat level of raid-goa(when the number of goals is 20)
表6 武器殺傷概率(目標數(shù)20)Table 6 The weapon kill probability(when the number of goals is 20)
表7 分配結(jié)果(目標數(shù)20)Fig.7 The assignment result(when the number of goals is 20)
圖10 來襲目標為20 時Fig.10 When the number of raid-goals is 20
綜上,由各情況下實驗結(jié)果可以看出,使用的兩個新算法在不同情況下的任務(wù)分配效果都要明顯好于之前的任務(wù)分配算法,能實現(xiàn)最大綜合效益值。其中,對于不同的防空任務(wù),兩種算法在不同時期分別具有最好的表現(xiàn),這說明在訓(xùn)練前期和中期,算法擁有不同的分配策略,但總體而言均高于之前已提出的算法,證實了算法的有效性。
本文研究了海上編隊協(xié)同防空任務(wù)分配問題,提出了一種基于深度強化學(xué)習(xí)的分配方法。創(chuàng)新性地將問題建模成馬爾可夫決策過程,并使用兩種最新的深度強化學(xué)習(xí)算法對問題優(yōu)化求解,進行任務(wù)分配的決策,實現(xiàn)綜合效益值的最大化。仿真結(jié)果表明,相較傳統(tǒng)任務(wù)分配方法,本文方法在實現(xiàn)防空綜合效益最大化方面有一定優(yōu)勢,且計算效率更高,更能滿足實時性決策的需要,對相關(guān)領(lǐng)域的研究具有一定意義。