周攀,黃江濤,*,章勝,劉剛,舒博文,3,唐驥罡
1.中國(guó)空氣動(dòng)力研究與發(fā)展中心 空天技術(shù)研究所,綿陽(yáng) 621000
2.中國(guó)空氣動(dòng)力研究與發(fā)展中心,綿陽(yáng) 621000
3.西北工業(yè)大學(xué) 航空學(xué)院,西安 710072
近年來(lái),隨著無(wú)人機(jī)技術(shù)的不斷發(fā)展,無(wú)人作戰(zhàn)飛行器(Unmanned Combating Air Vehicle, UCAV)在戰(zhàn)場(chǎng)上發(fā)揮著越來(lái)越重要的作用。與傳統(tǒng)有人機(jī)相比,UCAV 具有成本低、安全風(fēng)險(xiǎn)系數(shù)小、可承受過(guò)載大等優(yōu)點(diǎn),可以預(yù)見(jiàn)UCAV 將成為未來(lái)空戰(zhàn)的主角之一。然而,想要充分發(fā)揮UCAV 的性能,實(shí)現(xiàn)高強(qiáng)度空戰(zhàn)對(duì)抗,UCAV 必須脫離地面控制,具備高度自主決策能力。與此同時(shí),深度神經(jīng)網(wǎng)絡(luò)與機(jī)器學(xué)習(xí)的結(jié)合則掀起了人工智能新的研究熱潮。2016 年,AlphaGo[1]擊敗了人類(lèi)圍棋冠軍,引起了全世界的關(guān)注,AlphaGo 的勝利一方面將強(qiáng)化學(xué)習(xí)推上了歷史舞臺(tái),另一方面還驗(yàn)證了強(qiáng)化學(xué)習(xí)在博弈問(wèn)題中的應(yīng)用潛力。 在DARPA(Defense Advanced Research Projects Agency)于2020 年8 月份舉辦的“AlphaDogfight trials”人機(jī)對(duì)抗賽中,美國(guó)蒼鷺公司設(shè)計(jì)的智能飛行自主決策系統(tǒng)駕駛F-16 戰(zhàn)機(jī)以5∶0 的比分完勝了F-16 的飛行教官[2],吸引了全世界軍事強(qiáng)國(guó)的目光,飛行器智能空戰(zhàn)決策已成為當(dāng)今各軍事強(qiáng)國(guó)的研究熱點(diǎn)。
國(guó)內(nèi)外針對(duì)智能空戰(zhàn)展開(kāi)了大量研究?,F(xiàn)有的空戰(zhàn)自主決策方法大致可以分為基于博弈理論的方法、基于優(yōu)化理論的方法和基于人工智能的方法[3]。Park 等將微分博弈方法用作可視范圍內(nèi)空對(duì)空作戰(zhàn)UCAV 的自動(dòng)機(jī)動(dòng)生成算法[4]。Weintraub 等使用微分博弈方法解決空戰(zhàn)中格斗雙方的追逃博弈問(wèn)題[5]。McGrew 將動(dòng)態(tài)規(guī)劃方法用于一對(duì)一空戰(zhàn)機(jī)動(dòng)決策[6]。Kaneshige 等使用進(jìn)化算法和遺傳算法進(jìn)行戰(zhàn)斗機(jī)的機(jī)動(dòng)決策[7]。薛羽等提出了一種用于空戰(zhàn)決策的啟發(fā)式自適應(yīng)離散差分進(jìn)化(H-SDDE)算法[8]?;谌斯ぶ悄艿目諔?zhàn)自主決策方法包括基于規(guī)則的專家系統(tǒng)和機(jī)器學(xué)習(xí)。Burgin 基于專家系統(tǒng)實(shí)現(xiàn)了無(wú)人機(jī)在空戰(zhàn)對(duì)抗中的自主決策功能[9]。但由于空戰(zhàn)狀態(tài)空間的連續(xù)性和復(fù)雜性,基于博弈理論的方法和基于優(yōu)化理論的方法均存在求解困難的問(wèn)題,難以滿足實(shí)時(shí)性需求[3]。
目前,智能飛行發(fā)展的主要方向是將深度強(qiáng)化學(xué)習(xí)方法與UCAV 結(jié)合起來(lái)。左家亮等采用啟發(fā)式強(qiáng)化學(xué)習(xí)方法解決動(dòng)態(tài)變化的空戰(zhàn)機(jī)動(dòng)決策問(wèn)題[10];張耀中等基于深度確定性策略梯 度(Deep Deterministic Policy Gradient, DDPG)算法建立了人工神經(jīng)網(wǎng)絡(luò)模型,該模型能夠控制無(wú)人機(jī)群執(zhí)行對(duì)敵方來(lái)襲目標(biāo)的追擊任務(wù)[11];杜海文等提出了一種將優(yōu)化思想與機(jī)器學(xué)習(xí)相結(jié)合的機(jī)動(dòng)決策模型,該模型以多目標(biāo)優(yōu)化方法為核心,在多目標(biāo)優(yōu)化的基礎(chǔ)上通過(guò)強(qiáng)化學(xué)習(xí)方法訓(xùn)練評(píng)價(jià)網(wǎng)絡(luò)進(jìn)行輔助決策[12];施偉等提出了一種基于深度強(qiáng)化學(xué)習(xí)方法的多機(jī)協(xié)同空戰(zhàn)決策流程框架(Deep-Reinforcement-Learning-based Multi-Aircraft Cooperative Air Combat Decision Framework, DRL-MACACDF),并針對(duì)近端策略優(yōu)化(Proximal Policy Optimization, PPO) 算法, 設(shè)計(jì)4 種算法增強(qiáng)機(jī)制[13];張強(qiáng)等提出了一種基于Q-network 強(qiáng)化學(xué)習(xí)的超視距空戰(zhàn)機(jī)動(dòng)決策方法[14];李銀通等提出了一種基于逆強(qiáng)化學(xué)習(xí)的空戰(zhàn)態(tài)勢(shì)評(píng)估方法[15]。然而,從公開(kāi)發(fā)表的文獻(xiàn)來(lái)看,現(xiàn)階段基于人工智能方法開(kāi)展的近距空戰(zhàn)自主格斗算法研究主要針對(duì)簡(jiǎn)單動(dòng)作和典型動(dòng)作進(jìn)行驗(yàn)證,復(fù)雜對(duì)抗問(wèn)題尤其是人機(jī)對(duì)抗問(wèn)題系統(tǒng)性研究鮮為少見(jiàn)。
針對(duì)近距空戰(zhàn)格斗問(wèn)題,開(kāi)展基于深度強(qiáng)化學(xué)習(xí)(Deep Reinforcement Learning, DRL)方法的近距空戰(zhàn)自主決策訓(xùn)練系統(tǒng)研究。首先建立基于雙延遲確定性策略梯度算法(Twin Delayed Deep Deterministic policy gradient, TD3)的 強(qiáng)化學(xué)習(xí)算法框架。在此基礎(chǔ)上,針對(duì)空戰(zhàn)強(qiáng)化學(xué)習(xí)中的稀疏獎(jiǎng)勵(lì)問(wèn)題,采用一種針對(duì)近距空戰(zhàn)格斗問(wèn)題的獎(jiǎng)勵(lì)函數(shù);針對(duì)智能體容易被對(duì)手誘導(dǎo)墜地問(wèn)題,提出有效糾正改進(jìn)措施;針對(duì)深度強(qiáng)化學(xué)習(xí)中隨機(jī)取樣帶來(lái)的算法收斂速度慢問(wèn)題,發(fā)展基于價(jià)值的樣本優(yōu)先度排序方法,提升算法的收斂速度。綜合以上環(huán)節(jié),進(jìn)行馬爾科夫決策過(guò)程建模,開(kāi)展博弈訓(xùn)練,進(jìn)一步對(duì)訓(xùn)練得到的智能體進(jìn)行數(shù)字仿真驗(yàn)證和人機(jī)虛擬對(duì)抗仿真驗(yàn)證。
建立如圖1 所示的地面坐標(biāo)系Oxyz,取地面某點(diǎn)作為坐標(biāo)原點(diǎn)O,Ox軸指向正東方向,Oy軸指向正北方向,Oz軸沿豎直方向,向上為正。在圖1 所示的慣性坐標(biāo)系下,UCAV 動(dòng)力學(xué)方程為
圖1 飛行器運(yùn)動(dòng)模型Fig. 1 Aircraft motion model
式 中:v為速度;T為發(fā) 動(dòng)機(jī)推 力;α為迎角;D為阻力;m為飛行器質(zhì)量;g為當(dāng)?shù)刂亓铀俣龋沪脼楹桔E傾角;L為升力;μ為速度滾轉(zhuǎn)角;ψ為 航向角。
飛機(jī)的氣動(dòng)力模型采用某型飛機(jī)真實(shí)氣動(dòng)力模型,升力系數(shù)和阻力系數(shù)的計(jì)算公式為
式中:k1~k8為參數(shù)。
飛行器所受氣動(dòng)力和推力的計(jì)算公式如下:
式中:L、D、T分別是飛機(jī)所受的升力、阻力和推力;ρ是空氣密度;S是飛機(jī)參考面積;Tmax是飛機(jī)發(fā)動(dòng)機(jī)最大推力;δ∈[0,1]是油門(mén)大小。
采用迎角α、滾轉(zhuǎn)角μ和油門(mén)δ作為控制量對(duì)無(wú)人機(jī)的運(yùn)動(dòng)行為進(jìn)行控制。其中迎角的取值范圍是[ -10°,30°],滾轉(zhuǎn)角的取值范圍是[ -80°,80°],油門(mén)的取值分為是[0.2,1]Tmax。
飛機(jī)的運(yùn)動(dòng)學(xué)方程為
式中:x、y、z分別為3 個(gè)方向的坐標(biāo)。
本文構(gòu)建的一對(duì)一近距空戰(zhàn)場(chǎng)景中,博弈雙方駕駛性能完全相同的兩架飛機(jī),紅機(jī)(智能體)的初始位置坐標(biāo)為RR(0,0,6) km,速度指向正東,藍(lán)機(jī)(敵方)在一個(gè)以紅機(jī)為中心的矩形位置區(qū)域內(nèi)隨機(jī)出現(xiàn),速度指向隨機(jī)。雙方速度是一個(gè)隨機(jī)量v∈[100,180] m/s。在一對(duì)一近距空戰(zhàn)博弈中,敵我雙方在機(jī)載雷達(dá)等傳感器設(shè)備的支援下,獲得對(duì)方的運(yùn)動(dòng)狀態(tài)信息、綜合戰(zhàn)場(chǎng)態(tài)勢(shì),通過(guò)機(jī)動(dòng)到達(dá)各自的有利態(tài)勢(shì),達(dá)到目標(biāo)鎖定與武器發(fā)射條件,從而實(shí)現(xiàn)有效消滅對(duì)方、同時(shí)保存自身的作戰(zhàn)目的。近距空戰(zhàn)對(duì)抗中的態(tài)勢(shì)優(yōu)勢(shì)包括攻擊角度優(yōu)勢(shì)、速度優(yōu)勢(shì)、高度優(yōu)勢(shì)和距離優(yōu)勢(shì)等。
深度強(qiáng)化學(xué)習(xí)(Deep Reinforcement Learning, DRL)是強(qiáng)化學(xué)習(xí)[16](Reinforcement Learning, RL)與深度學(xué)習(xí)[17](Deep Learning, DL)的有機(jī)結(jié)合,突破了傳統(tǒng)表格型(Tabular)強(qiáng)化學(xué)習(xí)方法只能使用低維輸入的限制,而且比其他函數(shù)擬合方法具有更好的特征提取能力,被視為人工智能領(lǐng)域最有潛力的發(fā)展方向。
強(qiáng)化學(xué)習(xí)可以抽象為一個(gè)馬爾可夫決策過(guò)程(Markov Decision Process, MDP),智能體在t時(shí)刻觀察到自身狀態(tài)St,根據(jù)策略π選取動(dòng)作at。環(huán)境反饋給智能體下一時(shí)刻的獎(jiǎng)勵(lì)rt+1,智能體進(jìn)入新的狀態(tài)St+1。
根據(jù)學(xué)習(xí)目標(biāo)的不同,強(qiáng)化學(xué)習(xí)算法可以分為基于價(jià)值(Value-based)的強(qiáng)化學(xué)習(xí)算法和基于策略(Policy-based)的強(qiáng)化學(xué)習(xí)算法兩類(lèi)?;趦r(jià)值的強(qiáng)化學(xué)習(xí)算法的目標(biāo)是學(xué)習(xí)一個(gè)最優(yōu)動(dòng)作狀態(tài)價(jià)值函數(shù)Q*(s,a),其典型算法包括Q-learning[18]、SARSA[19]等。基于策略的強(qiáng)化學(xué)習(xí)算法的目標(biāo)是學(xué)習(xí)一個(gè)最優(yōu)策略π*,其典型算法包括TRPO[20]、PPO[21]等。在這兩種方法的基礎(chǔ)上,Konda 和Tsitsiklis 提出了一種Actor-Critic 算法[22],Actor-Critic 算法將基于價(jià)值(對(duì)應(yīng)Critic) 的方法與基于策略(對(duì)應(yīng)Actor) 的方法進(jìn)行結(jié)合,同時(shí)學(xué)習(xí)策略函數(shù)和價(jià)值函數(shù)。與基于策略和基于價(jià)值的強(qiáng)化學(xué)習(xí)算法相比,Actor-Critic 算法具有樣本利用率高、價(jià)值函數(shù)估計(jì)方差小和訓(xùn)練速度快等優(yōu)點(diǎn)。
深度強(qiáng)化學(xué)習(xí)以強(qiáng)化學(xué)習(xí)為核心,在此基礎(chǔ)上借助人工神經(jīng)網(wǎng)絡(luò)強(qiáng)大的擬合能力去擬合策略函數(shù)π和狀態(tài)動(dòng)作價(jià)值函數(shù)Q(s,a)。深度確定性策略梯度算法(Deep Deterministic Policy Gradient, DDPG)[23]將Actor-Critic 算法和深度Q網(wǎng)絡(luò)算法(Deep Q-Network, DQN)[24]相 結(jié)合,是一種典型的深度強(qiáng)化學(xué)習(xí)算法。DDPG 算法在Actor-Critic 算法框架上加入了目標(biāo)網(wǎng)絡(luò),網(wǎng)絡(luò)訓(xùn)練更加穩(wěn)定。然而,DDPG 算法中存在高估計(jì)、高方差等問(wèn)題。
針對(duì)DDPG 算法中存在的問(wèn)題,TD3 算法[25]在DDPG 算法的基礎(chǔ)上做出了以下改進(jìn)。為了解決DDPG 算法中Critic 網(wǎng)絡(luò)的高估計(jì)問(wèn)題,TD3 算法引入了第2 個(gè)Critic 網(wǎng)絡(luò),因此TD3 算法采用兩個(gè)Critic 網(wǎng)絡(luò)(Critic1 網(wǎng)絡(luò)和Critic2 網(wǎng)絡(luò))擬合智能體的動(dòng)作狀態(tài)價(jià)值函數(shù)Q(S,A)。每次對(duì)動(dòng)作狀態(tài)價(jià)值函數(shù)進(jìn)行評(píng)估時(shí),兩個(gè)Critic 網(wǎng)絡(luò)同時(shí)進(jìn)行評(píng)估,最終選取最小的評(píng)估值作為智能體的動(dòng)作狀態(tài)價(jià)值。TD3 算法中動(dòng)作狀態(tài)價(jià)值的更新方式如下:
式 中:Qθ'1(s',π?(s'))和Qθ'2(s',π?(s'))分 別 是2 個(gè)Critic 網(wǎng)絡(luò)的估計(jì)值。
DDPG 算法中存在的高方差問(wèn)題會(huì)造成學(xué)習(xí)速率降低、學(xué)習(xí)表現(xiàn)力降低和學(xué)習(xí)過(guò)程不穩(wěn)定等不利影響。TD3 算法通過(guò)引入正則化方法解決了高方差問(wèn)題,即在智能體的動(dòng)作中引入隨機(jī)噪聲,加入隨機(jī)噪聲后的智能體動(dòng)為
式中:π?'(s')是Actor 網(wǎng)絡(luò)輸出的動(dòng)作;?是一個(gè)隨機(jī)噪聲。
TD3 算法采用梯度下降的方式進(jìn)行更新,其中策略網(wǎng)絡(luò)的梯度公式如下所示:
式中:Qθ1(s,a)是動(dòng)作狀態(tài)價(jià)值;π?(s)是智能體的策略;?是求梯度符號(hào)。
然而,在傳統(tǒng)強(qiáng)化學(xué)習(xí)算法中,每次更新會(huì)從經(jīng)驗(yàn)池中進(jìn)行隨機(jī)抽樣,利用抽取的樣本對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行更新,樣本的選擇直接決定了算法的收斂速度和收斂結(jié)果。本文在將樣本存入樣本池前加入一道篩選步驟,每一幕結(jié)束之后,計(jì)算所有樣本狀態(tài)的動(dòng)作價(jià)值q(s,a),當(dāng)2 個(gè)樣本狀態(tài)較為接近時(shí),即|S1-S2|<ε時(shí),將S1和S2中動(dòng)作價(jià)值較高的存入樣本池,舍棄動(dòng)作狀態(tài)價(jià)值較低的樣本,從而提高算法收斂速度,其中ε是一個(gè)常數(shù)。
Actor 網(wǎng)絡(luò)的主要功能是接收戰(zhàn)場(chǎng)態(tài)勢(shì)信息,利用神經(jīng)網(wǎng)絡(luò)對(duì)這些信息進(jìn)行處理,最終輸出智能體的動(dòng)作。本文智能體可以獲取的戰(zhàn)場(chǎng)態(tài)勢(shì)信息包括雙方位置信息和速度信息, Actor網(wǎng)絡(luò)的輸入?yún)?shù)包括對(duì)抗雙方的相對(duì)位置RRB、對(duì)抗雙方的相對(duì)速度VRB、對(duì)抗雙方的速度夾角φV、紅機(jī)的攻擊角φattR和藍(lán)機(jī)的逃逸角φescB,其中。Actor 網(wǎng)絡(luò)的輸出參數(shù)是紅機(jī)的動(dòng)作信息,包括迎角α、滾轉(zhuǎn)角μ和油門(mén)δ,見(jiàn)圖2。
圖2 空戰(zhàn)態(tài)勢(shì)描述Fig. 2 Air combat description
Critic 網(wǎng)絡(luò)通過(guò)對(duì)狀態(tài)行為價(jià)值進(jìn)行評(píng)估,指導(dǎo)Actor 網(wǎng)絡(luò)進(jìn)行訓(xùn)練。Critic 網(wǎng)絡(luò)接收戰(zhàn)場(chǎng)態(tài)勢(shì)信息和智能體動(dòng)作,輸出動(dòng)作狀態(tài)價(jià)值。戰(zhàn)場(chǎng)態(tài)勢(shì)信息包括對(duì)抗雙方的相對(duì)位置RRB、對(duì)抗雙方的相對(duì)速度VRB、對(duì)抗雙方的速度夾角φV、紅機(jī)的攻擊角φattR和藍(lán)機(jī)的逃逸角φescB。智能體動(dòng)作參數(shù)為迎角α、滾轉(zhuǎn)角μ和油門(mén)δ。Critic 網(wǎng)絡(luò)的輸出參數(shù)為智能體的狀態(tài)價(jià)值Q(s,a)。
本文人工神經(jīng)網(wǎng)絡(luò)均采用全連接前饋神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)如圖3 所示。Actor 網(wǎng)絡(luò)由1 個(gè)輸入層、9 個(gè)隱藏層和1 個(gè)輸出層組成,其中輸入層包含10 個(gè)神經(jīng)元,每個(gè)隱藏層包含256 個(gè)神經(jīng)元,輸出層包含3 個(gè)神經(jīng)元。Critic 網(wǎng)絡(luò)由1 個(gè)輸入層、9 個(gè)隱藏層和1個(gè)輸出層組成,其中輸入層包含13個(gè)神經(jīng)元,每個(gè)隱藏層包含256 個(gè)神經(jīng)元,輸出層包含1 個(gè)神經(jīng)元。激活函數(shù)采用ReLU 函數(shù),ReLU 函數(shù)具有計(jì)算高效、緩解神經(jīng)網(wǎng)絡(luò)的梯度消失問(wèn)題和加快梯度下降的收斂速度等優(yōu)點(diǎn)。
圖3 全連接前饋神經(jīng)網(wǎng)絡(luò)模型Fig. 3 Fully connected feedforward neural network model
前饋神經(jīng)網(wǎng)絡(luò)采用誤差反向傳播算法和梯度下降方法更新參數(shù),其中損失函數(shù)采用Huber-Loss 函數(shù),相較于均方誤差(Mean Square Error, MSE)和平均絕對(duì)誤差(Mean Absolute Error, MAE)等損失函數(shù),HuberLoss 函數(shù)具有在誤差較大時(shí)對(duì)離群點(diǎn)不敏感、誤差較小時(shí)收斂速度快等優(yōu)點(diǎn)。HuberLoss 函數(shù)如式(8)所示,其圖像如圖4 所示。
圖4 HuberLoss 函數(shù)Fig. 4 HuberLoss function
式中:f(x)是網(wǎng)絡(luò)的估計(jì)值;y是真實(shí)值;δ'是一個(gè)常參數(shù)。
在近距空戰(zhàn)格斗態(tài)勢(shì)評(píng)估中,需要綜合考慮攻擊角度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)、速度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)、高度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)和距離優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)。
3.2.1 攻擊角度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)
建立如圖2 所示的右手坐標(biāo)系Oxyz,取地面某點(diǎn)作為坐標(biāo)原點(diǎn)O,Ox軸指向正東方向,Oy軸指向正北方向,Oz軸沿豎直方向,向上為正。圖中紅機(jī)的位置坐標(biāo)為RR(xR,yR,zR),速度矢量為VR(vRx,vRy,vRz);藍(lán)機(jī)的位置坐標(biāo)和速度矢量分別是RB(xB,yB,zB) 和VB(vBx,vBy,vBz)。目 標(biāo) 線RRB=RB-RR指從紅機(jī)到藍(lán)機(jī)的連線。
智能體的攻擊角度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)如式(9)所示[26]:
式中:
3.2.2 速度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)
智能體的速度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)如下所示[15]:
當(dāng)vopt>1.5vB時(shí)
當(dāng)vopt≤1.5vB時(shí)
式中:vR=|VR|和vB=|VB|分別是紅藍(lán)機(jī)雙方的速度大小;vopt是最佳空戰(zhàn)速度,本文取vopt=200 m/s。
3.2.3 高度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)
高度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)如下所示[15]:
式中:HR和HB分別是紅機(jī)和藍(lán)機(jī)的高度;Hopt是最佳空戰(zhàn)高度,本文取Hopt=6 km。
如圖5 所示,在仿真過(guò)程中,當(dāng)對(duì)抗雙方高度較低時(shí),智能體有一定的概率在敵機(jī)的誘導(dǎo)下墜地。為了使智能體具備在高度過(guò)低時(shí)自主糾正高度的能力,在高度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)中引入一個(gè)校正量,校正后的高度優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)如式(15)所示:
圖5 智能體墜地Fig. 5 Agent falls
式中:vRz是紅機(jī)速度在豎直方向上的分量;H0是一個(gè)常數(shù)參量,用來(lái)調(diào)整高度獎(jiǎng)勵(lì)函數(shù)的梯度。
引入的校正量動(dòng)態(tài)權(quán)重的圖像如圖6 所示。由圖6 可以看出,當(dāng)飛機(jī)高度較大時(shí),校正量權(quán)重較小。當(dāng)飛機(jī)高度較小時(shí),校正量的權(quán)重較大,此時(shí)獎(jiǎng)勵(lì)函數(shù)對(duì)高度變化比較敏感,飛機(jī)會(huì)增加高度從而獲得更大的獎(jiǎng)勵(lì),從而避免對(duì)手的高度誘導(dǎo)。
圖6 高度獎(jiǎng)勵(lì)函數(shù)校正量Fig. 6 High return function correction amount
校正后的飛行效果如圖7 所示,從圖中可以看出,當(dāng)敵機(jī)高度過(guò)低時(shí),智能體在對(duì)抗過(guò)程中會(huì)保持一定飛行高度,避免了在敵機(jī)誘導(dǎo)下墜地的問(wèn)題。
圖7 智能體近地攻擊Fig. 7 Agent proximity attack
3.2.4 距離優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)
距離優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)如下所示:
式中:d=|RRB|是雙方飛機(jī)之間的距離;Dopt是最佳空戰(zhàn)距離;D0是一個(gè)常數(shù)參量,用來(lái)調(diào)整距離優(yōu)勢(shì)獎(jiǎng)勵(lì)函數(shù)的梯度。本文取Dopt=0.2 km,D0=2 km。
3.2.5 空戰(zhàn)態(tài)勢(shì)獎(jiǎng)勵(lì)函數(shù)
最終獎(jiǎng)勵(lì)函數(shù)如下所示:
式中:Rφ、RV、RH和RD分別是攻擊角度獎(jiǎng)勵(lì)、速度獎(jiǎng)勵(lì)、高度獎(jiǎng)勵(lì)和距離獎(jiǎng)勵(lì);ωφ、ωV、ωH和ωD分別是攻擊角度獎(jiǎng)勵(lì)、速度獎(jiǎng)勵(lì)、高度獎(jiǎng)勵(lì)和距離獎(jiǎng)勵(lì)的權(quán)重。
訓(xùn)練過(guò)程中使用智能體與專家系統(tǒng)進(jìn)行對(duì)抗獲得訓(xùn)練樣本,將得到的樣本放入經(jīng)驗(yàn)池中,根據(jù)優(yōu)先度在樣本池中進(jìn)行抽樣,使用抽樣得到的樣本對(duì)智能體進(jìn)行訓(xùn)練。分別通過(guò)智能體的平均獎(jiǎng)勵(lì)和Critic 網(wǎng)絡(luò)的殘差對(duì)訓(xùn)練效果進(jìn)行監(jiān)測(cè)。
對(duì)加入樣本篩選前后的算法性能進(jìn)行對(duì)比,結(jié)果如圖8 所示。由圖中可以明顯看出,在加入樣本篩選之后,算法收斂速度明顯加快,最終性能有明顯提升。
圖8 不同取樣方法的平均獎(jiǎng)勵(lì)Fig. 8 Average reward of different sampling methods
智能體的平均獎(jiǎng)勵(lì)和Critic 網(wǎng)絡(luò)的殘差分別如圖9 和圖10 所示。圖9 是訓(xùn)練過(guò)程中智能體的平均獎(jiǎng)勵(lì),橫坐標(biāo)是訓(xùn)練步數(shù),縱坐標(biāo)是平均獎(jiǎng)勵(lì)。圖中藍(lán)線是平均獎(jiǎng)勵(lì)統(tǒng)計(jì)的真實(shí)值,紅線為對(duì)統(tǒng)計(jì)數(shù)據(jù)平滑處理后得到的結(jié)果。圖10 是訓(xùn)練過(guò)程Critic 網(wǎng)絡(luò)的殘差,橫坐標(biāo)是訓(xùn)練步數(shù),縱坐標(biāo)是網(wǎng)絡(luò)殘差,圖中藍(lán)線是網(wǎng)絡(luò)殘差統(tǒng)計(jì)的真實(shí)值,紅線為對(duì)統(tǒng)計(jì)數(shù)據(jù)平滑處理后得到的結(jié)果。
圖9 智能體的平均獎(jiǎng)勵(lì)Fig. 9 Average reward of agent
圖10 Critic 網(wǎng)絡(luò)殘差Fig. 10 Critic network residual
由圖9 可以看出,在算法的訓(xùn)練過(guò)程中,智能體的平均收益以比較平穩(wěn)的速度緩慢上升,說(shuō)明智能體的決策能力在不斷提高。當(dāng)訓(xùn)練次數(shù)達(dá)到77 500 次時(shí),智能體的平均獎(jiǎng)勵(lì)達(dá)到峰值,隨后趨于穩(wěn)定。
為了充分檢驗(yàn)智能體的性能,分別設(shè)計(jì)3 個(gè)場(chǎng)景進(jìn)行仿真試驗(yàn):①簡(jiǎn)單動(dòng)作對(duì)抗;②紅機(jī)與基于專家系統(tǒng)的藍(lán)機(jī)進(jìn)行近距空戰(zhàn)博弈;③紅機(jī)與人類(lèi)飛行員控制的藍(lán)機(jī)在人機(jī)對(duì)抗仿真平臺(tái)上進(jìn)行近距空戰(zhàn)博弈。
在簡(jiǎn)單動(dòng)作對(duì)抗仿真中,紅機(jī)(智能體)采用智能空戰(zhàn)自主決策算法進(jìn)行控制,藍(lán)機(jī)分別做勻速直線運(yùn)動(dòng)和水平盤(pán)旋運(yùn)動(dòng),速度大小為200 m/s。紅機(jī)的初始位置坐標(biāo)為RR(0,0,6) km,藍(lán)機(jī)在一個(gè)以紅機(jī)為中心的矩形區(qū)域內(nèi)隨機(jī)出現(xiàn),該矩形區(qū)域的長(zhǎng)寬高分別為12、12、4 km。
圖11(a)給出了藍(lán)機(jī)做直線運(yùn)動(dòng)時(shí)對(duì)抗雙方獲得的態(tài)勢(shì)獎(jiǎng)勵(lì),圖11(b)為空戰(zhàn)博弈某時(shí)刻段戰(zhàn)場(chǎng)態(tài)勢(shì)信息,圖11(c)為完整仿真軌跡。通過(guò)仿真數(shù)據(jù)可知,初始時(shí)刻敵機(jī)占據(jù)高度優(yōu)勢(shì),智能體根據(jù)敵方位置調(diào)整視線角;但由于智能體高度較低,智能體向右轉(zhuǎn)彎的同時(shí)拉起機(jī)頭提升高度,從第20 s 開(kāi)始對(duì)敵方形成攻擊條件并保持。
圖11 直線運(yùn)動(dòng)Fig. 11 Linear motion
圖12(a)給出了藍(lán)機(jī)做水平盤(pán)旋運(yùn)動(dòng)時(shí)對(duì)抗雙方獲得的態(tài)勢(shì)獎(jiǎng)勵(lì),圖12(b)和圖12(c)分別給出了空戰(zhàn)博弈不同階段戰(zhàn)場(chǎng)態(tài)勢(shì)信息。通過(guò)仿真數(shù)據(jù)可知,初始時(shí)刻敵機(jī)占據(jù)高度優(yōu)勢(shì)并具有攻擊條件,智能體拉起機(jī)頭,在提升高度的同時(shí)降低速度,形成有效攻擊條件并保持攻擊優(yōu)勢(shì)。
圖12 水平盤(pán)旋運(yùn)動(dòng)Fig. 12 Horizontal circling movement
在智能體與專家系統(tǒng)的空戰(zhàn)對(duì)抗仿真中,紅機(jī)(智能體)采用智能空戰(zhàn)自主決策算法進(jìn)行控制,藍(lán)機(jī)由專家系統(tǒng)[27]進(jìn)行控制,雙方進(jìn)行近距空戰(zhàn)博弈,紅機(jī)的初始位置坐標(biāo)為RR(0,0,6) km,藍(lán)機(jī)在一個(gè)以紅機(jī)為中心的矩形區(qū)域內(nèi)隨機(jī)出現(xiàn),該矩形區(qū)域的長(zhǎng)寬高分別為12、12、4 km。仿真時(shí)長(zhǎng)為200 s。圖13 給出了智能體與專家系統(tǒng)進(jìn)行空戰(zhàn)格斗的勝率隨訓(xùn)練次數(shù)的變化趨勢(shì)。圖14~圖18 分別給出了最終的智能體分別在初始優(yōu)勢(shì)和劣勢(shì)條件下與專家系統(tǒng)進(jìn)行空戰(zhàn)對(duì)抗的仿真結(jié)果。
圖13 智能體勝率隨訓(xùn)練次數(shù)變化趨勢(shì)Fig. 13 Changing trend of agent’s winning rate with number of training
圖14給出了空戰(zhàn)對(duì)抗雙方獲得的態(tài)勢(shì)獎(jiǎng)勵(lì),圖15 給出了空戰(zhàn)博弈過(guò)程中智能體的部分操作指令信息,圖16(a)~圖16(e)分別給出了空戰(zhàn)博弈不同階段戰(zhàn)場(chǎng)態(tài)勢(shì)信息。通過(guò)仿真數(shù)據(jù)可知,初始智能體處于不利態(tài)勢(shì),智能體選擇向右機(jī)動(dòng)的同時(shí)俯沖加速;俯沖的過(guò)程中速度增大,雙方距離減小,15 s 左右時(shí)取得對(duì)敵機(jī)的有效攻擊條件并保持;敵機(jī)分別采取俯沖加速和筋斗機(jī)動(dòng),均未能擺脫劣勢(shì)。
圖14 博弈雙方的獎(jiǎng)勵(lì)(初始劣勢(shì))Fig. 14 Rewards for both sides of game(Initial disadvantage)
圖15 智能體操作指令Fig. 15 Operational order of agent
圖16 戰(zhàn)場(chǎng)態(tài)勢(shì)(初始劣勢(shì))Fig. 16 Battlefield situation(Initial disadvantage)
在智能體初始占據(jù)優(yōu)勢(shì)的條件下再次進(jìn)行仿真驗(yàn)證。雙方獲得的態(tài)勢(shì)獎(jiǎng)勵(lì)如圖17 所示,空戰(zhàn)博弈不同階段戰(zhàn)場(chǎng)態(tài)勢(shì)信息如圖18 所示。由仿真數(shù)據(jù)可知,在初始占優(yōu)的情況下,敵機(jī)在整個(gè)仿真過(guò)程中都處于智能體的有效攻擊區(qū)內(nèi);200 s 時(shí)仿真結(jié)束,智能體獲勝。
圖17 博弈雙方的獎(jiǎng)勵(lì)(初始優(yōu)勢(shì))Fig. 17 Rewards for both sides of game(Initial advantage)
圖18 戰(zhàn)場(chǎng)態(tài)勢(shì)(初始優(yōu)勢(shì))Fig. 18 Battlefield situation(Initial advantage)
由4.1 節(jié)和4.2 節(jié)可知,所訓(xùn)練的智能q 體能夠較好地應(yīng)用于近距空戰(zhàn)博弈任務(wù)。智能體都能做出光滑且合理的決策,在較短時(shí)間取得對(duì)敵機(jī)的有效攻擊條件并保持。為進(jìn)一步驗(yàn)證算法的可行性,將所訓(xùn)練的智能體移植到人機(jī)對(duì)抗仿真平臺(tái)中與駕駛員進(jìn)行空戰(zhàn)博弈。
為驗(yàn)證智能體性能,建立了人機(jī)對(duì)抗仿真平臺(tái),該平臺(tái)由飛行員駕駛位、智能體載體、態(tài)勢(shì)展示平臺(tái)和仿真節(jié)點(diǎn)4 部分組成。這4 部分通過(guò)局域網(wǎng)進(jìn)行數(shù)據(jù)傳輸。飛行員駕駛位和態(tài)勢(shì)展示平臺(tái)分別如圖19 和圖20 所示。
圖19 駕駛位Fig. 19 Pilot cockpit
圖20 態(tài)勢(shì)展示平臺(tái)Fig. 20 Situation display platform
人機(jī)對(duì)抗仿真過(guò)程如圖21 和圖22 所示。圖21 給出了空戰(zhàn)對(duì)抗過(guò)程中對(duì)抗雙方的態(tài)勢(shì)獎(jiǎng)勵(lì)。圖22(a)~圖22(d)是不同時(shí)刻戰(zhàn)場(chǎng)態(tài)勢(shì),圖22(e)是飛行員駕駛飛機(jī)的場(chǎng)景。在對(duì)抗初始階段,智能體占據(jù)高度優(yōu)勢(shì),此時(shí)對(duì)抗雙方距離較遠(yuǎn),駕駛員與智能體均選擇相向而行,拉近雙方距離;當(dāng)距離縮短后,對(duì)抗雙方為形成有效攻擊條件,進(jìn)行協(xié)調(diào)轉(zhuǎn)彎;由圖22(b)可知智能體首先取得對(duì)敵機(jī)的有效攻擊條件,此時(shí)駕駛員為脫離智能體的攻擊范圍,分別進(jìn)行筋斗機(jī)動(dòng)和水平轉(zhuǎn)彎,智能體針對(duì)敵機(jī)機(jī)動(dòng)動(dòng)作做出合理應(yīng)對(duì),駕駛員未能脫離劣勢(shì)。
圖21 對(duì)抗雙方的獎(jiǎng)勵(lì)Fig. 21 Reward for confrontation
圖22 人機(jī)對(duì)抗仿真Fig. 22 Human-machine confrontation simulation
針對(duì)近距空戰(zhàn)博弈問(wèn)題,提出了基于深度強(qiáng)化學(xué)習(xí)的智能空戰(zhàn)自主決策算法,同時(shí)為驗(yàn)證建立的智能空戰(zhàn)自主決策系統(tǒng)的性能,還建立了人機(jī)對(duì)抗仿真平臺(tái)來(lái)驗(yàn)證算法性能。結(jié)論如下:
1)針對(duì)近距空戰(zhàn)博弈構(gòu)建了綜合考慮攻擊角度優(yōu)勢(shì)、速度優(yōu)勢(shì)、高度優(yōu)勢(shì)和距離優(yōu)勢(shì)的態(tài)勢(shì)評(píng)價(jià)函數(shù)。所建立的獎(jiǎng)勵(lì)函數(shù)可以引導(dǎo)智能體向最優(yōu)解收斂,避免了強(qiáng)化學(xué)習(xí)中的稀疏獎(jiǎng)勵(lì)問(wèn)題。在高度獎(jiǎng)勵(lì)函數(shù)引入的動(dòng)態(tài)權(quán)重校正項(xiàng)解決智能體在敵機(jī)引誘下墜地的問(wèn)題。
2)基于TD3 算法,提出的基于價(jià)值的經(jīng)驗(yàn)池樣本優(yōu)先度排序方法在保證算法收斂的前提下,顯著提高了算法收斂速度。
3)在人機(jī)對(duì)抗仿真平臺(tái)開(kāi)展仿真試驗(yàn),結(jié)果表明所訓(xùn)練的智能體不僅能夠在不同仿真環(huán)境下完成空戰(zhàn)博弈任務(wù),還能夠在人機(jī)對(duì)抗仿真平臺(tái)上擊敗人類(lèi)飛行員,為真實(shí)環(huán)境中無(wú)人機(jī)近距空戰(zhàn)博弈提供了一種新的思路。
在進(jìn)一步的研究工作中,可以將本文的算法擴(kuò)展到多智能體空戰(zhàn)中,能夠更加接近戰(zhàn)場(chǎng)的真實(shí)情況。