單圣哲,張偉偉
1.西北工業(yè)大學(xué) 航空學(xué)院,西安 710072
2.中國(guó)人民解放軍93995 部隊(duì),西安 710306
隨著武器裝備的發(fā)展,空戰(zhàn)的交戰(zhàn)樣式和作戰(zhàn)準(zhǔn)則正在發(fā)生深刻演變。智能化技術(shù)賦能空戰(zhàn)將產(chǎn)生革命性效果,楊偉[1]曾論述:空戰(zhàn)未來(lái)必將進(jìn)入“智能為王”的時(shí)代。2020年,在DARPA組織的人機(jī)近距空戰(zhàn)Alpha DogFight 比賽中,美國(guó)蒼鷺公司開(kāi)發(fā)的空戰(zhàn)決策模型以5∶0 的成績(jī),壓倒性地戰(zhàn)勝了美空軍現(xiàn)役飛行教官[2]。這一事件充分體現(xiàn)了空戰(zhàn)智能化將是未來(lái)國(guó)內(nèi)外軍事領(lǐng)域研究的熱點(diǎn)和重點(diǎn),而空戰(zhàn)智能化的核心是空戰(zhàn)決策的自主化。
針對(duì)空戰(zhàn)自主決策問(wèn)題,早自20 世紀(jì)60年代,國(guó)內(nèi)外學(xué)者就已進(jìn)行了一系列的理論研究和實(shí)踐探索,并取得了相應(yīng)的成果,從理論層次劃分,傳統(tǒng)方法可分為數(shù)學(xué)求解方法、機(jī)器搜索和數(shù)據(jù)驅(qū)動(dòng)3 大類[3]。但是傳統(tǒng)方法只能處理有限維度問(wèn)題,要在空戰(zhàn)場(chǎng)景建模的完整度和算法優(yōu)化的復(fù)雜度之間做權(quán)衡,這就導(dǎo)致其決策模型只能應(yīng)用于簡(jiǎn)化后的特定空戰(zhàn)場(chǎng)景。董一群等[3]總結(jié)了近些年國(guó)內(nèi)外研究成果,并指出較為通用和完備的空戰(zhàn)決策方法尚未見(jiàn)報(bào)道。
自2016年起,深度強(qiáng)化學(xué)習(xí)(Deep Reinforcement Learning,DRL)方法在智能決策領(lǐng)域取得了一系列巨大成功[4-9]。AlphaGo[4-6]系列算法在圍棋領(lǐng)域戰(zhàn)勝人類冠軍,引發(fā)世界關(guān)注,AlphaFold v2 在蛋白質(zhì)結(jié)構(gòu)領(lǐng)域取得碾壓業(yè)界的成果[7],AlphaTensor 在矩陣快速算法領(lǐng)域取得突破成績(jī)[8]。著名學(xué)者Silver 指出:基于DRL 方法通用人工智能(Artificial General Intelligence,AGI)的基礎(chǔ)已經(jīng)具備[9]。
AlphaGo 系列算法的成功充分印證了在DRL 過(guò)程中運(yùn)用自博弈(Self-Play)訓(xùn)練策略,可以在高維度博弈問(wèn)題中超越人類頂級(jí)決策水平。以此為起點(diǎn),一系列Self-Play 與DRL 相結(jié)合的方法被相繼提出,并廣泛應(yīng)用在諸多復(fù)雜博弈領(lǐng)域。其中較為著名的有AlphaStar[10]在StarCraft II 游戲中戰(zhàn)勝了99.8%人類選手,取得了大師級(jí)(Grandmaster)技術(shù)段位。StarCraft II 游戲的策略搜索空間遠(yuǎn)超圍棋游戲,每一步都有超過(guò)1029種可選方案,且具有非完全信息長(zhǎng)視決策的特點(diǎn),而這曾被認(rèn)為是DRL 算法設(shè)計(jì)領(lǐng)域長(zhǎng)期難以克服的難題[11]。另一項(xiàng)較為著名的成果為2019年OpenAI Five[12]在Dota2 游戲中以2∶0 的成績(jī)戰(zhàn)勝了世界冠軍OG 戰(zhàn)隊(duì)。此外,Baker 等[13]在hide-and-seek 游戲中取得比肩人類的表現(xiàn)水平,Oh 等[14]在實(shí)時(shí)對(duì)戰(zhàn)游戲Blade&Soul 中取得專業(yè)級(jí)(Pro-Leve)的表現(xiàn)。
DRL 方法在高維度決策任務(wù)中的優(yōu)異表現(xiàn),為解決傳統(tǒng)空戰(zhàn)決策方法的維度受限問(wèn)題帶來(lái)了契機(jī),一系列研究隨即展開(kāi)。2019年,Kurniawan 等[15]采用行動(dòng)者-批評(píng)者(Actor-Critic,AC)架構(gòu)進(jìn)行空戰(zhàn)決策,融合了基于價(jià)值和基于策略方法的優(yōu)點(diǎn)。2019年,Yang 等[16-17]采用深度確定性策略梯度(Deep Deterministic Policy Gradient,DDPG)方法,解決了傳統(tǒng)空戰(zhàn)決策方法中機(jī)動(dòng)輸出的“維度爆炸”問(wèn)題,實(shí)現(xiàn)在連續(xù)空間下的動(dòng)作輸出。Piao 等[18]采用強(qiáng)化學(xué)習(xí)方法自演化空戰(zhàn)動(dòng)作,實(shí)現(xiàn)戰(zhàn)術(shù)戰(zhàn)法創(chuàng)新。在上述研究思路的基礎(chǔ)上,本研究基于AC 架構(gòu)提出了近距空戰(zhàn)連續(xù)決策的統(tǒng)一框架,主流連續(xù)動(dòng)作空間強(qiáng)化學(xué)習(xí)算法均可用于近距空戰(zhàn)決策[19]。
在上述研究中,空戰(zhàn)決策模型的對(duì)手往往是“非智能”簡(jiǎn)易控制程序,訓(xùn)練過(guò)程中,智能體戰(zhàn)勝執(zhí)行特定機(jī)動(dòng)的敵機(jī)便會(huì)收斂,這將極大制約DRL 方法高維映射能力的發(fā)揮。而基于Self-Play 訓(xùn)練策略,可以讓空戰(zhàn)智能體“左右互搏”,互相扮演自己的高水平對(duì)手,不斷提高智能體的決策水平,從而解決該問(wèn)題。目前,Self-Play 方法在空戰(zhàn)智能決策領(lǐng)域應(yīng)用尚未見(jiàn)報(bào)道。
本研究提出了基于DRL 與Self-Play 相結(jié)合構(gòu)建空戰(zhàn)智能體的基本思路,主要?jiǎng)?chuàng)新點(diǎn)包括:
1) 針對(duì)空戰(zhàn)單智能體訓(xùn)練方法難以構(gòu)建高水平對(duì)手問(wèn)題,提出了DRL 與Self-Play 相結(jié)合的空戰(zhàn)智能訓(xùn)練方法,搭建空戰(zhàn)自博弈框架,開(kāi)發(fā)可視化研究平臺(tái),為開(kāi)展相應(yīng)研究創(chuàng)造基礎(chǔ)條件。
2) 立足飛行實(shí)際,提取空戰(zhàn)智能體動(dòng)作空間和觀測(cè)空間,從智能體/環(huán)境接口角度匹配空戰(zhàn)訓(xùn)練任務(wù)和連續(xù)動(dòng)作空間強(qiáng)化學(xué)習(xí)算法,并通過(guò)觀測(cè)特征提取簡(jiǎn)化訓(xùn)練任務(wù)難度。
3) 基于空戰(zhàn)領(lǐng)域知識(shí),分層次設(shè)計(jì)多元空戰(zhàn)獎(jiǎng)勵(lì),并合理分配各獎(jiǎng)勵(lì)權(quán)重,引導(dǎo)訓(xùn)練收斂并“涌現(xiàn)”空戰(zhàn)智能。
強(qiáng)化學(xué)習(xí)[20](Reinforcement Learning,RL)是側(cè)重智能體與環(huán)境交互的機(jī)器學(xué)習(xí)方法,強(qiáng)調(diào)利用獎(jiǎng)勵(lì)刺激產(chǎn)生傾向型行為。深度學(xué)習(xí)(Deep learning,DL)作為機(jī)器學(xué)習(xí)領(lǐng)域最重要的范式,其強(qiáng)大的高維度映射能力在數(shù)據(jù)科學(xué)、計(jì)算機(jī)視覺(jué)、自然語(yǔ)言處理、生物醫(yī)藥、復(fù)雜控制、群體智能等應(yīng)用領(lǐng)域取得重大突破[21]。2013年Mnih 等[22]首次將DL 和RL 結(jié)合,使RL 算法具有了高維映射能力,開(kāi)創(chuàng)了DRL 的新范式。一系列新算法不斷涌現(xiàn)并取得重大突破,使DRL 成為機(jī)器學(xué)習(xí)領(lǐng)域最具潛力的發(fā)展方向。
DRL 方法通常分為基于價(jià)值的方法、基于策略的方法和基于AC 的方法。考慮在空戰(zhàn)自博弈過(guò)程中,對(duì)手的策略不斷變化,采用Off-Policy 的強(qiáng)化學(xué)習(xí)方法進(jìn)行Self-Play 訓(xùn)練,可會(huì)因?yàn)榻?jīng)驗(yàn)池存在過(guò)去的決策軌跡,導(dǎo)致整個(gè)訓(xùn)練結(jié)果的不穩(wěn)定、不收斂[23]。故本文采用On-Policy 的近端策略優(yōu)化算法[24](Proximal Policy Optimization,PPO)構(gòu)建空戰(zhàn)決策智能體。
PPO 算法具有高魯棒性、強(qiáng)穩(wěn)定性等特點(diǎn),在DRL 算法中應(yīng)用最廣泛。PPO 使用重要性采樣方法,利用舊策略的決策軌跡訓(xùn)練最新策略,同時(shí)為防止新舊策略差異的過(guò)大,PPO設(shè)置優(yōu)化目標(biāo)為
該優(yōu)化目標(biāo)從演化動(dòng)力上限制新舊策略的差異,同時(shí)PPO 每回合結(jié)束就清空經(jīng)驗(yàn)池,保證策略訓(xùn)練數(shù)據(jù)都是由本回合訓(xùn)練產(chǎn)生的,從而限制經(jīng)驗(yàn)回放導(dǎo)致的數(shù)據(jù)誤差,提高訓(xùn)練的穩(wěn)定性和收斂性。
PPO 算法兼具Off-Policy 數(shù)據(jù)利用效率較高的優(yōu)點(diǎn)和On-Policy 的穩(wěn)定性,適用于空戰(zhàn)智能體的Self-Play 訓(xùn)練。
在強(qiáng)化學(xué)習(xí)系統(tǒng)中,若存在一個(gè)以上智能體與環(huán)境交互,則該系統(tǒng)就轉(zhuǎn)變?yōu)槎嘀悄荏w強(qiáng)化學(xué)習(xí)(Multi-Agent Reinforcement Learning,MARL)系統(tǒng)。一對(duì)一空戰(zhàn)自博弈訓(xùn)練中,敵我智能體均與環(huán)境發(fā)生交互,故敵我智能體與空戰(zhàn)環(huán)境構(gòu)成MARL 系統(tǒng)。
在MARL 系統(tǒng)中,每個(gè)智能體追求自身累計(jì)獎(jiǎng)勵(lì)最大的行為滿足了VNM-rational[25]意義下理性參與人要求,博弈論方法將適用于結(jié)果的預(yù)測(cè)和博弈規(guī)則的制定。MARL 過(guò)程通常使用隨機(jī)博弈[26](Stochastic Games)和馬爾科夫博弈[27](Markov Games)等數(shù)學(xué)模型來(lái)描述。求解納什均衡(Nash Equilibrium,NE)通常被認(rèn)為是MARL任務(wù)的概念解(Solution Concept)。
Self-Play 方法最早起源于博弈論中的虛擬博弈[28](Fictitious Play),用以求解雙人零和博弈問(wèn)題的NE。Self-Play 應(yīng)用于DRL 領(lǐng)域的最新成果主要包括MuZero[29]、DouZero[30]、δ-Uniform Self-Play[31]、Population Based Training[32]和League Self-Play[10]等方法。
從博弈論角度分析,可將雙機(jī)近距對(duì)抗的強(qiáng)化學(xué)習(xí)任務(wù)認(rèn)為是完全信息雙人零和博弈的MARL 任務(wù),Self-Play 方法將適用于求解該類問(wèn)題的NE,本文采用基于群落的自博弈[33]方法,博弈框架如圖1所示。
圖1 自博弈框架Fig.1 Framework of self-Play
該框架采用分布式架構(gòu),同時(shí)運(yùn)行多個(gè)仿真單元進(jìn)行訓(xùn)練。空戰(zhàn)對(duì)手的策略集合為最大人口數(shù)量為M的群落,訓(xùn)練中每間隔u個(gè)時(shí)間步長(zhǎng)(steps),便將我方飛機(jī)智能體的切片加入群落保存,若此時(shí)群落已滿,則剔除最早的切片。當(dāng)我方飛機(jī)訓(xùn)練v個(gè)steps 后,將重新從群落中隨機(jī)選擇智能體切片加載為空戰(zhàn)對(duì)手,選擇對(duì)手時(shí)以ε的概率選擇最新切片作為對(duì)手,以1-ε概率均勻選擇舊切片作為對(duì)手,ε是平衡訓(xùn)練中的探索(Exploration)與利用(Exploitation)關(guān)系。為兼顧敵我訓(xùn)練的對(duì)稱性,每間隔w個(gè)steps 敵我訓(xùn)練切換,我方加載群落中的智能體切片,敵方飛機(jī)進(jìn)行訓(xùn)練并保存切片。在群落自博弈訓(xùn)練中共有M、u、v、ε、w5 個(gè)超參數(shù)。
空戰(zhàn)對(duì)抗是高烈度的三維空間動(dòng)態(tài),僅依靠數(shù)值仿真難以想象空中態(tài)勢(shì),為方便借鑒飛行員領(lǐng)域知識(shí)分析立體態(tài)勢(shì)、評(píng)估機(jī)動(dòng)的合理性并做出相應(yīng)改進(jìn),設(shè)計(jì)如圖2所示的技術(shù)框架,搭建空戰(zhàn)三維可視化研究平臺(tái)。
圖2 空戰(zhàn)研究平臺(tái)Fig.2 Research platform of air combat
該研究平臺(tái)由空戰(zhàn)仿真環(huán)境和人工智能訓(xùn)練平臺(tái)以及兩者之間的通信管道構(gòu)成??諔?zhàn)仿真環(huán)境基于Unity3D 的物理引擎進(jìn)行開(kāi)發(fā),空戰(zhàn)決策智能體通過(guò)與仿真環(huán)境交互不斷優(yōu)化自身策略,同時(shí)利用Unity3D 場(chǎng)景渲染功能開(kāi)發(fā)多種空戰(zhàn)觀察視角,以便研究人員從直觀角度把握空戰(zhàn)動(dòng)態(tài)。人工智能訓(xùn)練平臺(tái)基于Python 語(yǔ)言開(kāi)發(fā),實(shí)現(xiàn)空戰(zhàn)決策智能體的強(qiáng)化學(xué)習(xí)訓(xùn)練及自博弈訓(xùn)練等功能。利用ML-Agents[33]工具包構(gòu)建Unity3D 平臺(tái)與Python 之間的通信管道,將空戰(zhàn)仿真環(huán)境和人工智能訓(xùn)練平臺(tái)整合為空戰(zhàn)可視化研究平臺(tái)。
盡管超視距空戰(zhàn)是未來(lái)戰(zhàn)爭(zhēng)的主要模式之一,但近距空戰(zhàn)能力仍為空中作戰(zhàn)人員的必備素質(zhì),且隱身戰(zhàn)機(jī)、合理的戰(zhàn)術(shù)機(jī)動(dòng)等因素都會(huì)使超視距空戰(zhàn)轉(zhuǎn)入近距空戰(zhàn)。無(wú)論機(jī)載雷達(dá)武器設(shè)備如何先進(jìn),未來(lái)空戰(zhàn)均不能排除由超視距轉(zhuǎn)入近距作戰(zhàn)的可能性,近距空戰(zhàn)將仍是未來(lái)空戰(zhàn)體系中不可或缺的環(huán)節(jié)。而且近距空戰(zhàn)具有高動(dòng)態(tài)、高烈度、高過(guò)載的特點(diǎn),先進(jìn)戰(zhàn)機(jī)必須考慮陷入近距作戰(zhàn)的風(fēng)險(xiǎn)。對(duì)近距空戰(zhàn)智能決策的研究仍具有十分重大的意義。
本文將空戰(zhàn)的起始態(tài)勢(shì)設(shè)置為大進(jìn)入角態(tài)勢(shì)。若交戰(zhàn)雙方均未能在超視距達(dá)成戰(zhàn)果,隨即轉(zhuǎn)入近距作戰(zhàn),該態(tài)勢(shì)將成為最有可能的起始態(tài)勢(shì)[34],其成因如圖3所示。雙方大進(jìn)入角起始態(tài)勢(shì)下,敵我飛機(jī)具有均等的角度和占位優(yōu)勢(shì),由于智能體的策略探索具有隨機(jī)性,以均勢(shì)作為起始態(tài)勢(shì),利于演化出較為復(fù)雜的態(tài)勢(shì)場(chǎng)景,實(shí)現(xiàn)最終策略的高維性。
圖3 大進(jìn)入角起始態(tài)勢(shì)成因Fig.3 Genesis of high aspect angle initial situation
設(shè)定空戰(zhàn)場(chǎng)景以大進(jìn)入角為起始態(tài)勢(shì),智能體可以使用雷達(dá)、近距格斗導(dǎo)彈及航炮等機(jī)載武器設(shè)備,同時(shí)基于3 個(gè)維度[19]的連續(xù)操縱量形成機(jī)動(dòng)動(dòng)作,不斷探索空戰(zhàn)中的機(jī)動(dòng)及設(shè)備使用策略。
沿用文獻(xiàn)[19]的思路,空戰(zhàn)智能體決策的動(dòng)作空間中,飛機(jī)操縱量為飛機(jī)法向過(guò)載nz、推力T與速度滾轉(zhuǎn)角?a3 個(gè)維度的連續(xù)量[19]?;诖瞬倏v量可以利用基于四元數(shù)的三自由度簡(jiǎn)化假設(shè),實(shí)時(shí)求解飛機(jī)動(dòng)態(tài)。
飛機(jī)的運(yùn)動(dòng)學(xué)方程為
式中:Vg為飛機(jī)速度向量在地面坐標(biāo)系下的投影,其3 個(gè)分量為x?g、y?g、z?g;V為飛機(jī)空速;Lag為地面坐標(biāo)系向機(jī)體坐標(biāo)系的投影矩陣?;谒脑獢?shù)的矩陣構(gòu)建方法參考文獻(xiàn)[19]。
飛機(jī)的動(dòng)力學(xué)方程為
式中:ωx、ωy、ωz為機(jī)體系相對(duì)地面系的轉(zhuǎn)動(dòng)角速度在其機(jī)體系下的投影,其求解方法可以參考文獻(xiàn)[19];m為飛機(jī)質(zhì)量;D為空氣阻力。
現(xiàn)代近距空戰(zhàn)中,機(jī)載雷達(dá)和離軸發(fā)射導(dǎo)彈被廣泛應(yīng)用,與僅依靠航炮攻擊的“狗斗”相比,戰(zhàn)斗樣式發(fā)生了較大變化,因此需要對(duì)機(jī)載雷達(dá)、格斗導(dǎo)彈以及機(jī)炮均進(jìn)行建模,以保證空戰(zhàn)仿真更加符合實(shí)際情況。
在近距空戰(zhàn)中,雙方均作大機(jī)動(dòng)飛行,大多數(shù)區(qū)域搜索、手動(dòng)截獲的空空模式不再適用,雷達(dá)須使用空中格斗模式(Air Combat Modes,ACM)進(jìn)行自動(dòng)截獲。為簡(jiǎn)化仿真,本文僅對(duì)雷達(dá)ACM 進(jìn)行建模。
ACM 是一種自動(dòng)截獲工作模式,通常包含多個(gè)子模式,本文中設(shè)定類ACM 包含3 個(gè)子模式:平掃模式(Horizontal Scan,HS)、垂掃模式(Vertical Scan,VS)和定軸模式(Bore Scan,BS),各子模式的設(shè)定參數(shù)如表1所示。
表1 ACM 子模式性能參數(shù)Table 1 Performance parameters of ACM sub-mode
其中,若雷達(dá)處于VS 或者HS,可以操縱雷達(dá)天線進(jìn)行左偏置或右偏置,從而改變雷達(dá)的水平搜索范圍,VS 狀態(tài)的水平偏置量為5°,HS 狀態(tài)的水平偏置量為10°。
設(shè)定雷達(dá)的對(duì)敵機(jī)最大截獲距離為11 km,雷達(dá)天線的最大跟蹤角速度為60(°)/s,雷達(dá)單目標(biāo)跟蹤(Single Target Track,STT)模式的可跟蹤范圍為水平-50°~50°、俯仰-50°~50°。
若飛機(jī)在ACM 子模式下截獲敵機(jī),雷達(dá)將自動(dòng)轉(zhuǎn)入STT 模式;若敵機(jī)脫離跟蹤,則雷達(dá)自動(dòng)轉(zhuǎn)回ACM 模式重新進(jìn)行截獲。
2.4.1 幾何態(tài)勢(shì)模型
對(duì)空戰(zhàn)中雙機(jī)空戰(zhàn)態(tài)勢(shì)進(jìn)行幾何學(xué)建模,如圖4所示。圖中紅色飛機(jī)為我方飛機(jī),藍(lán)色飛機(jī)為敵方飛機(jī),R為敵我距離向量,Vr為我方的速度向量,Vb為敵方的速度向量。從我方飛機(jī)視角出發(fā),2 個(gè)較為重要的幾何角度分別為進(jìn)入角(Aspect Angle, AA)和天線偏置角(Antenna Train Angle, ATA),分別用q和φ表示[19]。
圖4 空戰(zhàn)幾何關(guān)系Fig.4 Geometry relationship of air combat
2.4.2 格斗導(dǎo)彈模型
以飛行高度H和進(jìn)入角q為自變量,對(duì)格斗導(dǎo)彈紅外導(dǎo)引頭探測(cè)能力建模,得到紅外導(dǎo)引頭的最大探測(cè)距離如圖5所示。圖5 中極坐標(biāo)角度為飛機(jī)方位角q,紅外導(dǎo)引頭的最大探測(cè)距離單位為km。
圖5 彈紅外導(dǎo)引頭最大探測(cè)距離Fig.5 Max range of infrared seeker
參考文獻(xiàn)[35]的方法和數(shù)據(jù),對(duì)導(dǎo)彈的動(dòng)力學(xué)可攻擊區(qū)進(jìn)行建模,以敵機(jī)速度馬赫數(shù)為0.9,我機(jī)速度馬赫數(shù)為1.1,交戰(zhàn)高度為3 km,敵機(jī)機(jī)動(dòng)過(guò)載1g為例,不同天線偏置角φ下,導(dǎo)彈動(dòng)力學(xué)的可攻擊范圍如圖6所示。圖6 中極坐標(biāo)角度為飛機(jī)方位角q,紅色包絡(luò)線為導(dǎo)彈最遠(yuǎn)可攻擊距離,藍(lán)色包絡(luò)線為導(dǎo)彈最近可攻擊距離,單位為km。
圖6 導(dǎo)彈的動(dòng)力學(xué)可攻擊范圍Fig.6 Attack zone of missile
建模雷達(dá)與導(dǎo)彈交聯(lián)關(guān)系,區(qū)分不同導(dǎo)引頭解鎖時(shí)機(jī),構(gòu)成不同掃描發(fā)射關(guān)系,如表2所示。
表2 導(dǎo)彈的掃描發(fā)射方式Table 2 Scanning and launching method of missile
2.4.3 航空機(jī)炮模型
航空機(jī)炮在現(xiàn)代空戰(zhàn)中的作用有所減弱,但其在特定態(tài)勢(shì)下可對(duì)導(dǎo)彈的攻擊條件進(jìn)行必要的擴(kuò)充,對(duì)于現(xiàn)代近距空戰(zhàn)仍具有較大的價(jià)值。如雙機(jī)近距快速交會(huì)時(shí),瞄準(zhǔn)線速率過(guò)大會(huì)導(dǎo)致無(wú)法跟蹤截獲,此時(shí)就可以利用機(jī)炮進(jìn)行快速射擊(Snap Shoot)完成擊殺[34]。
本文設(shè)定航空機(jī)炮最大射擊距離為900 m,并求解跟蹤射擊向量L,若我方機(jī)體縱軸與L夾角余弦值大于0.97 即認(rèn)為滿足航炮射擊條件,若該狀態(tài)可以持續(xù)1 s 以上,則認(rèn)為跟蹤一方已實(shí)施射擊誤差的修正,完成航炮擊殺。其中跟蹤射擊向量L滿足的幾何關(guān)系如圖7所示。圖7 中V'r和V'b分別為敵我速度向量Vr和Vb在水平面上的投影,R'為敵我距離向量R在水平面上的投影,ΔH為炮彈飛行中的下落高度,由自由落體模型進(jìn)行阻力修正得到。
圖7 射擊時(shí)的幾何關(guān)系Fig.7 Geometry relationship of shooting
為使智能體動(dòng)作更接近現(xiàn)代空戰(zhàn)特點(diǎn),本文在沿用文獻(xiàn)[19]中3 個(gè)飛機(jī)機(jī)動(dòng)的操縱量的基礎(chǔ)上,增加了雷達(dá)子模式選擇、天線偏置、導(dǎo)彈導(dǎo)引頭解鎖3 個(gè)設(shè)備操縱量,共6 個(gè)動(dòng)作維度。6 個(gè)動(dòng)作空間均為[-1,1]的連續(xù)值,設(shè)備操縱量對(duì)連續(xù)空間進(jìn)行等分來(lái)映射實(shí)際設(shè)備操縱量,為防止決策間隔的動(dòng)作突變,決策動(dòng)作和實(shí)際操縱量之間做積分處理。
根據(jù)飛行訓(xùn)練經(jīng)驗(yàn),以大進(jìn)入角為起始態(tài)勢(shì),設(shè)定交戰(zhàn)雙方均保持互相目視為基本情況,同時(shí)結(jié)合雷達(dá)等設(shè)備獲取敵方態(tài)勢(shì)信息,信息獲取難度低,故假設(shè)雙方可完全獲取對(duì)方態(tài)勢(shì)信息。為了降低智能體訓(xùn)練學(xué)習(xí)的難度,基于敵我態(tài)勢(shì)信息和我方設(shè)備信息提取67 維度特征作為觀測(cè)輸入,如表3所示。在特殊觀測(cè)角度下,若因自身機(jī)體遮擋暫時(shí)丟失目視,可采用暫時(shí)凍結(jié)敵方態(tài)勢(shì)方法,經(jīng)驗(yàn)證仍能保證算法收斂且有效。表3 中,數(shù)值界限若帶“*”則表示空戰(zhàn)中的經(jīng)驗(yàn)界限,而非性能限制的極限范圍。如空戰(zhàn)中雙機(jī)高度差通常不大于1 000 m,而極限高度差可達(dá)升限。
表3 觀測(cè)特征提取Table 3 Feature extraction of observation
若考慮電磁干擾等條件,可對(duì)觀測(cè)特征進(jìn)行刪減,經(jīng)驗(yàn)證,僅提供坐標(biāo)位置、速度、方位等關(guān)鍵狀態(tài)量,本研究方法仍然能夠有效收斂。
空戰(zhàn)自博弈訓(xùn)練中獎(jiǎng)勵(lì)是稀疏的,只有在決出勝負(fù)時(shí)才有客觀的結(jié)果獎(jiǎng)勵(lì)發(fā)生。智能體在整個(gè)探索過(guò)程中缺乏引導(dǎo)性獎(jiǎng)勵(lì),導(dǎo)致訓(xùn)練難以成功。為克服獎(jiǎng)勵(lì)稀疏問(wèn)題,本文基于飛行員領(lǐng)域知識(shí)進(jìn)行過(guò)程獎(jiǎng)勵(lì)設(shè)計(jì)(Reward Sharping)。
3.3.1 獎(jiǎng)勵(lì)權(quán)重設(shè)計(jì)
過(guò)程獎(jiǎng)勵(lì)是基于人為設(shè)計(jì)的,具有一定主觀性,結(jié)果獎(jiǎng)勵(lì)雖具有客觀性,但只在結(jié)束時(shí)發(fā)生。故權(quán)重設(shè)計(jì)原則為過(guò)程獎(jiǎng)勵(lì)權(quán)重不得超過(guò)折扣后的結(jié)果獎(jiǎng)勵(lì),以保證智能體有足夠動(dòng)力選擇結(jié)果導(dǎo)向的機(jī)動(dòng)方案,最終智能體策略傾向客觀性結(jié)果,權(quán)重分析如圖8所示。
圖8 總體獎(jiǎng)勵(lì)權(quán)重分析Fig.8 Overview analysis of reward weights
根據(jù)經(jīng)驗(yàn)空戰(zhàn)持續(xù)時(shí)間在4~10 min,若取step=4 s,γ=0.99,則結(jié)果獎(jiǎng)勵(lì)在空戰(zhàn)過(guò)程中的最小衰減后權(quán)重約0.2,過(guò)程獎(jiǎng)勵(lì)權(quán)重不超過(guò)0.2即可滿足要求。
3.3.2 過(guò)程獎(jiǎng)勵(lì)設(shè)計(jì)
過(guò)程獎(jiǎng)勵(lì)基于飛行員領(lǐng)域知識(shí)設(shè)計(jì)。根據(jù)基本戰(zhàn)斗機(jī)機(jī)動(dòng)(Basic Fighter Maneuvering,BFM)課程描述,近距空戰(zhàn)是平衡角度優(yōu)勢(shì)與能量?jī)?yōu)勢(shì)的過(guò)程,故設(shè)計(jì)角度優(yōu)勢(shì)函數(shù)ra和能量?jī)?yōu)勢(shì)函數(shù)re作為主要過(guò)程獎(jiǎng)勵(lì):
式中:φ和q與圖4 定義相同;和分別為我機(jī)和敵機(jī)能量高度,對(duì)于飛行速度為V飛行高度為H的飛機(jī),其能量高度為HE=H+0.5V2g。
為引導(dǎo)智能體“勇于”接敵,設(shè)計(jì)雙機(jī)距離獎(jiǎng)勵(lì)rR和雙機(jī)高度差獎(jiǎng)勵(lì)rH為
式中:R為敵我距離向量;Hr和Hb為我方飛機(jī)和敵方飛機(jī)的飛行高度。
3.3.3 邊界獎(jiǎng)勵(lì)設(shè)計(jì)
智能體訓(xùn)練中,可能由于數(shù)值超出安全范圍發(fā)生“撞地”“失速”“超速”等危險(xiǎn)行為導(dǎo)致空戰(zhàn)失敗。對(duì)該類情況若設(shè)置條件觸發(fā)獎(jiǎng)勵(lì),則會(huì)導(dǎo)致該類獎(jiǎng)勵(lì)稀疏、不連續(xù)、無(wú)梯度,不利于訓(xùn)練。本文設(shè)計(jì)“杯型”函數(shù),優(yōu)化該類獎(jiǎng)勵(lì),函數(shù)構(gòu)成為
式中:p1為懲戒性獎(jiǎng)勵(lì)值;x為觸發(fā)獎(jiǎng)勵(lì)的數(shù)值;a為該數(shù)值觸發(fā)獎(jiǎng)勵(lì)的下邊界;b為上邊界;k為正實(shí)數(shù),代表獎(jiǎng)勵(lì)的突兀程度,該數(shù)值越大則獎(jiǎng)勵(lì)觸發(fā)的越突兀。
以飛行表速為例,其邊界獎(jiǎng)勵(lì)如圖9所示。該獎(jiǎng)勵(lì)左邊界為失速表速,右邊界為超速表速,此獎(jiǎng)勵(lì)連續(xù)、可微,利于神經(jīng)網(wǎng)絡(luò)優(yōu)化。
圖9 飛行表速邊界獎(jiǎng)勵(lì)Fig.9 Boundary reward of indicated airspeed
3.3.4 控制區(qū)獎(jiǎng)勵(lì)
在近距空戰(zhàn)中,有一個(gè)重要的區(qū)域概念,被稱為進(jìn)攻控制區(qū)(Offensive Control Zone,OCZ)。在OCZ 內(nèi)進(jìn)攻方可以輕松實(shí)現(xiàn)對(duì)防御方的“咬尾”追蹤,在進(jìn)攻方非失誤條件下防御方難以擺脫追蹤[34],區(qū)域示意如圖10所示。
圖10 進(jìn)攻控制區(qū)Fig.10 Offensive control zone
設(shè)計(jì)控制區(qū)獎(jiǎng)勵(lì)公式為
式中:r1、r2分別為2 個(gè)維度上的獎(jiǎng)勵(lì)分量;r3為最終OCZ 獎(jiǎng)勵(lì);x輸入為進(jìn)入角;y輸入為敵我距離;(a,b)、(c,d)分別為各維度的獎(jiǎng)勵(lì)觸發(fā)邊界,在該處取值(0,20)、(8,13);k1、k2為各維度獎(jiǎng)勵(lì)的突兀程度,分別取值1.3、2.3。OCZ 獎(jiǎng)勵(lì)曲面如圖11所示。
圖11 OCZ 獎(jiǎng)勵(lì)函數(shù)曲面圖Fig.11 Surface chart of OCZ
3.3.5 最終獎(jiǎng)勵(lì)匯總
將所有獎(jiǎng)勵(lì)匯總,并分配各自權(quán)重,可得獎(jiǎng)勵(lì)總體設(shè)計(jì),如表4所示。表4 中事件獎(jiǎng)勵(lì)不以數(shù)值為觸發(fā)條件,無(wú)法使用“杯型”函數(shù)優(yōu)化,其他獎(jiǎng)勵(lì)均已介紹。
表4 最終獎(jiǎng)勵(lì)匯總Table 4 Summary of final reward
從博弈角度來(lái)看權(quán)重分配,獎(jiǎng)勵(lì)整體符合零和博弈要求。非博弈獎(jiǎng)勵(lì)可使零和博弈轉(zhuǎn)化為常數(shù)和博弈,但兩者M(jìn)ARL 任務(wù)等價(jià)[36]。雖然誘導(dǎo)雙機(jī)交戰(zhàn)時(shí),利益獎(jiǎng)勵(lì)設(shè)置相同,但其權(quán)重極小,故總體獎(jiǎng)勵(lì)設(shè)置仍可認(rèn)為符合零和博弈MARL 任務(wù)要求,Self-Play方法對(duì)求解該問(wèn)題有效。
PPO 算法、Actor 和Critic 網(wǎng)絡(luò)如圖12所示。
圖12 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.12 Architecture of neural network
Actor 和Critic 網(wǎng)絡(luò)均采用全連接神經(jīng)網(wǎng)絡(luò)構(gòu)建,輸入層均為67 維度的觀測(cè)Ot,有8 個(gè)隱藏層,每個(gè)隱藏層有512 個(gè)神經(jīng)單元,每個(gè)隱藏層后是ReLu 激活層。Actor 輸出層為6 個(gè)維度的連續(xù)動(dòng)作。Critic 的輸出為1 個(gè)維度的狀態(tài)價(jià)值評(píng)估v(o),用于計(jì)算PPO 中通用優(yōu)勢(shì)估計(jì)(Generalized Advantage Estimation,GAE)[37],GAE 采用TD Error(λ)形式。
基于群落自博弈方法,設(shè)置3 組不同超參數(shù)組合進(jìn)行對(duì)比試驗(yàn),如表5所示。
表5 自博弈超參數(shù)Table 5 Hyper parameters of self-play
表5 中各超參數(shù)并非完全獨(dú)立,根據(jù)文獻(xiàn)[38]的建議,對(duì)于一對(duì)一訓(xùn)練場(chǎng)景w=u×v,u應(yīng)與群落人口M和任務(wù)難度決定的訓(xùn)練步數(shù)成正比。取超參1 為baseline,超參2 與之控制單一變量ε為對(duì)照組,超參3 控制M與之對(duì)照,其u和w也應(yīng)與M等比例增大。
自博弈過(guò)程中智能體獲取獎(jiǎng)勵(lì)不僅取決于自身決策水平,也受到對(duì)手水平的影響,以累計(jì)獎(jiǎng)勵(lì)評(píng)估訓(xùn)練水平不再適用。本文采用文獻(xiàn)[39]的方法,利用群落中Elo 評(píng)級(jí)來(lái)評(píng)估智能體的訓(xùn)練水平及算法的收斂情況。Elo 評(píng)估機(jī)制中,博弈雙方分值差與比賽勝率預(yù)期唯一對(duì)應(yīng),其廣泛應(yīng)用于網(wǎng)球聯(lián)賽、圍棋、國(guó)際象棋、電子游戲等競(jìng)技類比賽中[40]。
Elo 勝率預(yù)期公式為
式中:A、B 為博弈雙方;RA、RB分別為A 方和B 方的Elo 分值;EA為A 方的勝率預(yù)期。
博弈完成后,根據(jù)比賽表現(xiàn),Elo 分值更新公式為
式中:R'A為A 方更新后的分值;SA為A 方博弈表現(xiàn),博弈獲勝其值為1,失敗其值為0;K為調(diào)整系數(shù),本研究取值為16。
取超參1 為baseline,其他為對(duì)照,得訓(xùn)練曲線如圖13所示。
圖13 自博弈訓(xùn)練曲線Fig.13 Training curve of self-play
訓(xùn)練中,每個(gè)智能體的初始Elo 值設(shè)定為1 200,經(jīng)過(guò)訓(xùn)練3 組超參數(shù)對(duì)應(yīng)的Elo 值均得到大幅度增長(zhǎng),并最終趨于收斂,3 組超參數(shù)最終智能體的Elo 分值分別為4 397、4 952 和5 073。
訓(xùn)練結(jié)果評(píng)估與驗(yàn)證主要從宏觀和微觀2 個(gè)角度開(kāi)展。
4.3.1 宏觀角度評(píng)估
基于元博弈思想,統(tǒng)計(jì)不同策略切片兩兩對(duì)抗100 場(chǎng)空戰(zhàn)的勝率,得到博弈矩陣。
分析超參數(shù)1,取其訓(xùn)練中50%、75% 和100%進(jìn)度的智能體切片,切片間兩兩博弈矩陣如圖14所示。訓(xùn)練進(jìn)度越靠后的智能體切片,越能取得更高的勝率。這說(shuō)明基于群落自博弈訓(xùn)練,智能體可以逐步提升空戰(zhàn)決策水平,并最終獲得更高水平的空戰(zhàn)決策模型。
圖14 智能體歷史切片博弈矩陣Fig.14 Game matrix of agent history slices
傳統(tǒng)單智能體訓(xùn)練[19]和3 組自博弈訓(xùn)練方法,得到的最終智能體兩兩博弈勝率矩陣如圖15所示。由圖15 可以看出:相對(duì)于單智能體訓(xùn)練方法,3 組超參數(shù)組合下的自博弈訓(xùn)練方法均可以取得70%以上博弈勝率,智能體空戰(zhàn)決策水平提升顯著;第2 組超參數(shù)訓(xùn)練模型可以在兩兩博弈中取得較高勝率,這說(shuō)明在基于群落的自博弈訓(xùn)練中,提高ε比提高M(jìn)更有可能訓(xùn)練出高水平的空戰(zhàn)決策智能體。
圖15 最終智能體博弈矩陣Fig.15 Game matrix of final agents
4.3.2 微觀角度驗(yàn)證
使用超參2 的最終智能體進(jìn)行對(duì)抗演示,并使用可視化平臺(tái)展示博弈的動(dòng)態(tài)軌跡,利用飛行員經(jīng)驗(yàn)評(píng)估其機(jī)動(dòng)軌跡的合理性。其動(dòng)態(tài)軌跡如圖16所示。圖16 中飛機(jī)前方淺色區(qū)域?yàn)槔走_(dá)探照范圍,深色區(qū)域?yàn)閷?dǎo)彈導(dǎo)引頭探照范圍,尾后絲帶為飛機(jī)的尾跡。
圖16 智能體對(duì)抗軌跡Fig.16 Trails of air combat between agents
在該場(chǎng)對(duì)抗演示中,雙方飛機(jī)起始為大進(jìn)入角態(tài)勢(shì),如圖16(a)所示,由于起始速度較大,雙方均采用上升轉(zhuǎn)彎?rùn)C(jī)動(dòng),形成“雙環(huán)戰(zhàn)”動(dòng)態(tài)??諔?zhàn)時(shí)間54 s 雙方飛機(jī)轉(zhuǎn)彎2 圈后紅方鎖定藍(lán)方飛機(jī),但由于藍(lán)方機(jī)動(dòng)角速度較快導(dǎo)致瞄準(zhǔn)線速率較高,未能形成穩(wěn)定跟蹤條件,藍(lán)方成功擺脫鎖定,如圖16(b)所示。隨即紅方通過(guò)向下機(jī)動(dòng)保持角點(diǎn)速度,形成較大轉(zhuǎn)彎角速度,在114 s 成功鎖定藍(lán)方,并完成擊殺,如圖16(c)所示。由于空戰(zhàn)持續(xù)時(shí)間較長(zhǎng),為了清晰展示上述過(guò)程的機(jī)動(dòng)軌跡,該空戰(zhàn)動(dòng)態(tài)視頻已上傳至Github[41]。如上,進(jìn)行多輪對(duì)抗軌跡演示,經(jīng)飛行員經(jīng)驗(yàn)評(píng)估,智能體采取的決策方案均已接近BFM 中的經(jīng)典“單/雙環(huán)”戰(zhàn)術(shù),智能體已基本掌握通用的空戰(zhàn)決策能力。在其他的空戰(zhàn)動(dòng)態(tài)中,智能體均可以展示出接近人類的戰(zhàn)術(shù)水平。
針對(duì)近距空戰(zhàn)決策問(wèn)題,提出基于自博弈和深度強(qiáng)化學(xué)習(xí)的空戰(zhàn)智能體構(gòu)建方法,搭建了研究平臺(tái),并從宏觀和微觀角度對(duì)訓(xùn)練結(jié)果進(jìn)行評(píng)估和驗(yàn)證,得出結(jié)論如下:
1) 由宏觀縱向分析可知,采用基于群落的自博弈方法,可以讓智能體從零開(kāi)始不斷演化空戰(zhàn)戰(zhàn)術(shù),逐漸提高空戰(zhàn)水平。
2) 由宏觀橫向評(píng)估可知,自博弈訓(xùn)練方法相較單智能訓(xùn)練方法,其最終智能體的空戰(zhàn)決策水平有較大提升。在自博弈過(guò)程中增大與最新智能體博弈的概率,有利于智能體探索更多策略,并提高最終戰(zhàn)術(shù)水平。
3) 從微觀角度分析可知,最終訓(xùn)練出的空戰(zhàn)決策模型的機(jī)動(dòng)方案已十分接近人類的經(jīng)典“單/雙環(huán)戰(zhàn)”的戰(zhàn)術(shù)水平,智能體已基本掌握通用的空戰(zhàn)決策能力。
本研究探索基于自博弈的空戰(zhàn)訓(xùn)練方法,并發(fā)現(xiàn)智能體可掌握系統(tǒng)性戰(zhàn)術(shù)策略。該方法在快速戰(zhàn)術(shù)方案生成、虛擬對(duì)抗訓(xùn)練、無(wú)人空戰(zhàn)等領(lǐng)域具有較大應(yīng)用潛力。