閆孟達, 俞利新, 左家亮, 張 瀅, 胡東愿, 岳龍飛, 楊任農
(空軍工程大學空管領航學院,西安,710051)
空戰機動決策一直是軍事領域的熱點問題之一??諔饳C動決策的研究方法主要有專家系統[1-2]、矩陣對策[3-5]、優化理論[6]、模糊推理[7-8]和人工智能[9-14]等方法。文獻[1~2]在專家系統的基礎上結合滾動時域、模糊規則等方法,解決專家系統不夠靈活、不可拓展的問題。矩陣對策法需要對當前態勢進行準確建模,從而求得當前時刻的最優對策,而超視距空戰決策周期長,且態勢難以用數學公式準確描述,因此并不適用。文獻[6]提出多目標優化結合強化學習的方法,先通過多目標優化得到可行集,再通過強化學習尋找最優解。辛辛那提大學提出遺傳模糊樹[7],開發了ALPHA空戰機器人,并擊敗了人類飛行員,是空戰決策領域最具代表性的成果之一。近年來,隨著人工智能浪潮的興起,越來越多的研究人員開始探索強化學習在空戰決策問題上的應用[8-14]。尤其是DARPA在2020年舉辦的“阿爾法”空中格斗競賽[15],基于強化學習的空戰智能體大比分戰勝了人類飛行員,展示了智能空戰的巨大研究潛力。
以上研究推動了空戰決策的自動化和智能化,目前關于近距格斗的研究比較成熟,相對而言,關于超視距空戰智能決策的研究并不充分,超視距空戰決策的研究難度主要體現在3個方面:一是現有研究對空戰態勢的描述大多還是基于優勢函數,如角度優勢函數、距離優勢函數、能量優勢函數等,此類函數無法準確描述超視距空戰的態勢;二是兩者的核心問題不同,近距空戰要求在短時間內搶占發射位置,對瞬時大機動的能力要求較高,而超視距空戰更關注“機動時機”問題,根據雙方相對距離等態勢要素決策何時開始機動、機動多長時間、何時發射導彈以及如何規避導彈等問題;三是相比于近距空戰,超視距空戰決策周期長、決策邊界不清晰,這使強化學習方法很難訓練出可解釋和可接受的超視距空戰智能體。
而現代空戰最主要的形態是超視距空戰,因此當前急需研究高效、合理的超視距空戰決策方法。本文針對超視距空戰機動決策問題,提出基于戰術機動組合的規劃方法,引入層次任務網絡(hierarchical task network, HTN),并通過多目標優化算法對其進行參數優化,仿真結果表明該方法能夠輸出高效的超視距空戰戰術執行序列。
空戰戰術機動動作復雜多樣,很難一一列舉,但復雜的戰術動作可以由基礎的機動動作組合而成。目前常見的機動動作有兩種劃分方式,依據操作方式進行劃分的操作機動動作[16-17]和依據戰術動作理論進行劃分的戰術機動動作[18]。美國NASA研究人員將機動動作劃分為7類基本操縱機動[19],分別為:最大加速,最大減速,最大過載爬升,最大過載俯沖,最大過載左轉,最大過載右轉及穩定飛行。這7種基礎動作是從飛行員的角度,根據操作控制變量來進行劃分。從戰術效果角度,可以將7類基本動作進行初步的組合實現、歸類細化,得到常用的6種基本的戰術機動動作[19],如圖1所示。

圖1 6種戰術機動示意圖
其中,側轉和蛇形機動是在水平面的機動,桶滾可以看作是蛇形機動同時進行垂直面的機動,俯沖、斤斗、半斤斗是在垂直面上的機動,而斤斗和半斤斗多用于近距空戰,本文暫不考慮。因此,超視距空戰機動可以分為兩類:“側轉+垂直面機動”“蛇形+垂直面機動”。本文用參數化語言來描述這兩類機動[20],側轉機動為一個四元組φ,η,γ,h,其中為轉彎角度(°),η為過載(g),γ為坡度(°),h為降高(m),表示載機在進行側轉機動的同時完成高度差為h的垂直面機動;類似地,蛇形機動為一個六元組i,t,φ,η,γ,h,其中i表示蛇形機動中的轉彎次數,t表示每次轉彎的時間間隔。當機動參數被指定后,完成此次機動所需要的時間也就確定了。如,側轉機動180,4,60,2 000和蛇形機動2,5,120,4,60,2 000,分別如圖2(a)、(b)所示。

圖2 2種戰術機動示意圖
通過以上2種類型的機動組合,就可以實現各種復雜的超視距空戰戰術。
HTN規劃的思想與專家求解問題的思維方式十分相似,因而受到廣泛的推崇。HTN規劃的基本思想是利用相關領域專業知識,結合專家在實際過程中的相關經驗,遞歸地將復雜的任務網絡順序分解,逐層細化,直到分解成為一個個可以直接獨立執行的原子任務為止[21]。以系統給定的初始狀態、領域知識、任務目標作為輸入,輸出完整的、可執行的動作方案。初始狀態主要是系統在規劃前初始時刻的狀態信息;領域知識即指規劃域,包括操作集合和方法集合,操作集合主要描述執行動作的前提條件和效果,方法集合是描述任務分解的途徑和相關要求;任務目標是任務網絡的起點,也是任務分解后進行執行的總目標。動作方案主要是一系列動作,構成了問題的規劃解。HTN規劃在任務的表達和分解、任務分派、任務完成上優勢比較突出,對任務分解和細化比較符合作戰人員的思維模式,利用HTN算法及其思想來對軍事問題進行規劃、求解和執行更容易被理解和接受。
HTN規劃中最關鍵的部分就是方法集合,以“處方”的形式告訴系統如何對任務進行分解。
HTN規劃中的主要元素包括任務、方法和操作。其中,任務表示可分解的任務;操作表示不可分解的原子任務,在本文中為單次機動;方法包括條件和分解方法,具體描述了在何種態勢下如何完成任務,是HTN規劃的關鍵。在空戰HTN規劃中,“任務”即要執行何種戰術,“操作”即單個戰術機動,多個戰術機動組合完成一個戰術,“方法”表示在何種態勢下如何建立空戰HTN網絡。

圖3 攻擊區劃分示意圖
在超視距空戰中,相對距離和攻擊區的關系是進行決策的重要依據。文獻[22]提出基于目標機機動的五線攻擊區,如圖3所示,本文在此基礎之上,從以下3個方面描述空戰態勢:①敵我相對距離與敵機攻擊區的關系;②雙方的相對航向;③敵機是否發射導彈。
若某種態勢下需要執行“側轉+側轉+蛇形機動”的戰術組合,則HTN規劃見圖4。

圖4 空戰戰術機動HTN規劃示意圖
HTN規劃確定了空戰機動的順序,但與一般HTN規劃中的操作不同,空戰機動由參數確定,且機動和機動之間有一定時間間隔,如圖5所示,仿真開始后在t1時刻進行機動1,機動1完成后間隔t2進行機動2,之后間隔t3進行機動3。

圖5 規劃參數序列示意圖
在機動參數給定的情況下,影響空戰結果的主要是時間參數,需要通過算法進行尋優,優化目標為:①機動時間間隔之和最??;②達成發射條件的時間最長;③達成發射條件的平均距離最小。優化模型為:
(1)
式(1)是一個多目標優化問題,多目標優化問題會得到一系列帕累托最優解,不符合空戰輔助決策的需求,因此將公式(1)中3個優化目標歸一化后轉換為單目標問題,如公式(2):
(2)
3.2.1 MFO算法原理及流程
飛蛾撲火優化算法[23](moth-flame optimization algorithm, MFO)是一種新型智能優化算法,具有調節參數少、收斂快、不易陷入局部最優等優點。MFO算法的思想源于飛蛾沿等角螺旋路徑朝火焰飛行的現象[23],飛蛾是在搜索空間內移動的個體,火焰表示某一只飛蛾當前看到的最優解。在飛蛾朝向火焰飛行的過程中,如果發現了更好的火焰,則更新火焰的位置。算法規定一只飛蛾對應一個火焰,因此能夠避免陷入局部最優。
本文中,M為飛蛾矩陣,OM為飛蛾適應度值矩陣,F為火焰位置矩陣,OF為火焰適應度值矩陣,分別如式(3)和(4)所示。
(3)
(4)
式中:n為飛蛾的個數;d為待求變量的個數。
根據適應度值對火焰位置從小到大進行排序,飛蛾分別圍繞排序后的火焰,根據式(5)進行等角螺線飛行。
Mi=Diebtcos(2πt)+Fj
(5)
式中:Mi為第i只飛蛾的位置,Di=|Mi-Fj|表示第i只飛蛾與第j個火焰的距離;b為等角螺線參數;t為路徑系數。
為提高算法的搜索效率,MFO采用火焰自適應減少機制,舍掉一些較差的火焰,使得飛蛾不用在劣解附近繼續尋優,加快收斂速度。火焰數量自適應減少公式為:
(6)
式中:NF為當前火焰數量;N為最大火焰數量;i為當前迭代次數,I為最大迭代次數。
MFO算法流程[24]如下。
步驟1 飛蛾種群初始化。設置飛蛾數量、最大迭代次數、求解問題維度等參數。
步驟2 飛蛾位置初始化。在搜索空間中隨機生成飛蛾位置,令迭代次數i=1。
步驟3 將飛蛾位置按適應度值從小到大排序后賦給火焰,作為第1代火焰的位置。
步驟4 更新飛蛾位置,將飛蛾位置適應度和火焰適應度重新排序,更新火焰位置。
步驟5 自適應減少火焰數量,迭代次數i=i+1。
步驟6 判斷是否達到最大迭代次數,是則輸出最優火焰位置,否則轉步驟4。
3.2.2 MFO-HTN算法流程
適應度是用來度量種群中個體優劣的指標,適應度函數的設定決定算法的收斂程度和目標函數最優解。將優化目標轉化為適應度函數為:
(7)
其中δ為正值常數,確保適應度函數值為正。
MFO-HTN規劃流程如圖6所示。

圖6 MFO-HTN超視距空戰規劃流程圖
仿真的初始態勢參數包括相對距離、相對方位、相對航向角、雙機的高度和速度,本節的算例設置如表1所示。

表1 初始態勢參數
設敵機在0時刻發射一枚導彈,則當前空戰態勢滿足以下描述:① 我機處于敵機的Ω3區域中;②雙方為正迎頭態勢;③ 敵機發射一枚導彈。此時空戰HTN規劃網絡如圖7所示。

圖7 空戰HTN規劃網絡
相應的機動參數設置如表2所示。

表2 機動參數設置
將本文方法與傳統的遺傳算法(GA)、粒子群算法(PSO)進行對比,圖8展示了3種算法的收斂曲線對比。為了加快收斂速度,使算法滿足實時性要求,本文限制了算法僅搜索整數解。

圖8 算法對比
由圖8可以看出,3種算法均在第50代就基本達到收斂狀態,但GA和PSO算法收斂到了局部最優,MFO算法搜索精度更高,且收斂速度更快。MFO算法搜索到最優解為t1=5 s,t2=1 s,t3=4 s。
則最終得到的空戰機動執行序列如圖9所示。

圖9 空戰機動執行序列
設仿真起始時刻為0時刻,整個空戰仿真過程持續114 s,可分為3個階段,見圖10~12。
1)階段1。敵機在0時刻發射一枚導彈,我機在5 s開始采取側轉180°機動來規避敵方導彈,同時敵機采取偏置機動保持對我機的壓迫,見圖10。

2)階段2 。我機完成導彈規避后立刻形成了對敵機的鎖定并發射一枚導彈,而敵機也同時發射了第2枚導彈。我機保持對敵機的鎖定4 s后完成中末制導交接,導彈導引頭開機,進行最后一次側轉180°機動,見圖11。

3)階段3。70 s時,敵機向下做側轉機動規避我機發射的導彈,但在107 s時被擊落,而我機隨后在114 s 時完成了對敵機第2枚導彈的規避,仿真結束,見圖12。

本文提出的MFO-HTN超視距空戰機動規劃模型在引入專家經驗的基礎上,建立多目標優化模型,采用飛蛾撲火優化算法對空戰HTN模型參數進行優化,能夠輸出高效、可解釋的超視距空戰戰術機動執行序列。研究成果可以為飛行員提供輔助決策,也為研究智能超視距空戰提供了新的思路。下一步研究如何將HTN模型與模糊推理、強化學習等算法相結合,構建更靈活、可擴展的超視距空戰戰術模型。