嚴鈺文, 畢文豪, 張安, 張百川
(西北工業大學 航空學院, 陜西 西安 710072)
在強對抗、高動態、深度不確定的現代復雜戰場環境下,僅靠單架無人機有限的飛行和載荷能力很難獨自完成戰場態勢的區域監視、多目標攻擊等任務。通過大規模、低成本的異構無人機平臺相互協調配合組成的無人機集群,能夠突破單架無人機探測能力、武器載荷等限制,在復雜環境下進行協同搜索、協同干擾、協同攻擊、協同察/打、集群對抗等行動,進而更大程度地提升作戰效能。
無人機集群作戰帶來的巨大規模優勢和作戰效能引起了以美國為代表的世界各軍事強國對無人機集群作戰技術的熱切關注[1]。其中無人機集群任務分配技術作為無人機集群作戰的關鍵技術之一,能夠在滿足各項戰術和技術指標的前提下將任務合理、高效地分配給相應的無人機,讓有限的作戰資源發揮最大的作戰效能,是實現無人機集群化、自主化和智能化的重要手段[2]。深入研究無人機集群任務分配技術,挖掘更有效的任務分配方法,對提升無人機集群高效遂行任務能力、推動國防力量的建設具有重要的意義,已成為各國防工業部門、科研機構的研究熱點。
目前研究中,通常是將任務分配抽象成組合優化問題,在特定的場景下對問題進行一定簡化后建立多約束模型[3-5],并使用任務分配算法進行求解。在求解任務分配問題時,為了降低算法求解難度、提高求解質量與求解速度,國內外學者開展了深入研究[6],并根據求解思路的不同將求解算法分為集中式算法和分布式算法兩類。
集中式算法可進一步分為最優化方法和啟發式方法。隨著任務分配問題的復雜化,以動態規劃、分支定界等[7]為代表的最優化方法不能充分反映戰場環境的復雜性,對戰場環境隨機性和動態性的表達也極為困難,因此近年來該類型的算法研究逐漸減少[8]。啟發式方法在求解多無人機任務分配問題時易于實現、性能優越,在任務分配問題中得到廣泛運用。其中典型的啟發式算法包括蟻群算法[9]、粒子群優化(PSO)算法[10]、模擬退火算法[11]等。在使用啟發式算法求解任務分配問題的研究中,通過改變算法的編碼方式和啟發函數來提升求解性能,是目前研究的主要方向之一。文獻[12]對無人機協同多任務分配問題進行研究,將分工機制應用于蟻群算法,并設定了基于任務代價的狀態轉移規則,有效地提高了算法的優化能力與求解效率。文獻[13]將密度值最大聚類和混合PSO算法相結合,實現了對空地協同系統的任務分配,能夠處理較大規模的任務分配問題。文獻[14]研究了多類型無人機編隊并建立了無人機集群網絡拓撲結構,針對不同的網絡拓撲結構,采用PSO算法進行任務分配問題的求解。文獻[15]通過在PSO算法的個體更新環節加入引力搜索機制,提高了算法的收斂速度,并將其應用于多無人機協同偵察任務分配問題求解。然而,上述算法由于本質上的隨機性,在搜索過程中會產生大量無用的劣質解,當面臨大規模任務分配時其搜索效率不高。
分布式算法采用分布決策的思想,將各無人機作為獨立的智能體,通過各無人機之間的協商與決策來獲得最終任務分配方案。該類算法具有時效性好、魯棒性強的優點,因此多用于注重時效性的任務分配問題中[16]。文獻[17]提出了一種擴展合同網協議,能夠在處理任務之間時間約束的同時保證各無人作戰飛機之間的協調配合。文獻[18]在應用合同網協議算法解決實時任務分配問題時引入并發機制,同時將招標者作為基準來篩選優質的投標者,提高了協商效率,減少了通信量和通信頻次。文獻[19]提出一種分布式魯棒拍賣算法,在拍賣過程中引入任務獎勵反饋機制,有效地降低了任務分配系統的成本,并提高了任務分配應對復雜環境的能力。然而,當任務分配問題規模較大時,會導致無人機之間協商通信量大大增加,降低問題求解效率。
上述兩類算法在針對小規模多無人機任務分配問題時能在較短時間獲得較好的求解質量。隨著異構無人機類型的逐漸增加、無人機集群規模不斷擴大,問題的約束條件將變得復雜耦合,上述算法的求解效率將不斷降低,不能滿足復雜戰場情況下多約束大規模異構無人機集群任務分配問題對求解的實時性要求。
人工智能理論在近年來不斷完善和發展,引起了研究者的廣泛關注[20],也為多無人機任務分配問題的求解提供了新的思路。早期利用神經網絡對無人機集群進行聚類分組等處理后與啟發式算法結合,能夠保證任務分配之后無人機集群的協同性[21]。近期研究中使用神經網絡直接實現端到端的任務分配方法,如基于強化學習和注意力機制的任務分配方法[22]。該類方法將任務分配問題抽象為組合優化問題后,采用深度強化學習網絡模型學習最優的決策策略,能夠在離散決策空間中尋找到最優決策組合,并通過多頭注意力機制等方法提高求解質量[23]。由于無人機集群任務分配問題同樣在建模時可以抽象為組合優化問題,利用深度強化學習來實現無人機集群任務的分配研究逐漸增加。但當前研究中利用深度強化學習網絡解決單目標優化問題比較成熟,對于多目標優化的相關研究還在開展中。在深度學習的網絡結構中,生成對抗網絡(GAN)[24]作為一種生成模型,與以往生成模型相比,其設計自由靈活,不限制生成數據的維度,且理論上能夠逼近任意函數,在處理復雜數據信息時具有優越的性能,能為無人機集群任務分配問題的高效求解提供可能性。GAN在圖像生成、語音合成、風格遷移等領域[25-27]取得了較好的應用效果,其網絡結構的創新和優化是其不斷發展的重要原因[28]。2014年提出的條件生成對抗網絡(CGAN)[29]為GAN增加了顯式的外部信息以指導樣本生成。Radford等[30]將卷積神經網絡(CNN)引入GAN架構中,顯著提高了網絡的表征能力。除了在網絡結構上對GAN進行改進以外,對loss的優化[31]和梯度更新策略的設計[32]增強了GAN模型的生成能力,為GAN的衍生模型在眾多領域的應用提供了支持。文獻[33]使用基于GAN的數據-機理混合驅動方法進行子能源模型的參數辨識,實現了較高精度的辨識效果,解決了不同工況下的模型切換問題。文獻[34]結合GAN提出了一種水聲目標識別模型,與傳統方法相比具有更強的魯棒性。文獻[35]在原始GAN結構上增加了用于回歸預測的回歸模型,有效提高了原油總氫物性的回歸預測精度及穩定性。文獻[36]對GAN在作戰體系研究領域的應用進行了分析展望,指出當前GAN的衍生模型對作戰場景下的相關研究問題有較強的借鑒意義。
本文結合GAN與無人機集群任務分配模型,針對傳統分配算法求解效率低下、無法適用于大規模無人機集群任務分配場景的問題,提出一種基于任務分配序列生成對抗網絡模型(TA-SeqGAN)的任務分配方法,該方法的創新點如下:
1)提出基于CNN與門控循環單元(GRU)的生成模型,構建戰場信息矩陣,建立戰場信息到任務分配序列的映射關系,有效地提取了戰場信息特征并使其能夠指導任務分配序列的生成。
2)提出基于多層CNN的判別模型,利用不同大小的卷積核對輸入數據矩陣進行卷積操作,更有效地判別任務序列之間的相關性。
3)針對任務分配序列的離散性導致的網絡無法進行梯度更新的問題,提出收益-評價雙指導式生成模型梯度更新方法,并將任務分配收益模型引入策略梯度的動作值函數中,提高了生成任務分配序列的質量和生成序列的合理性。
本文首先對無人機集群任務分配問題進行描述,然后介紹基于TA-SeqGAN模型的無人機集群任務分配方法,接著設計仿真實驗驗證算法的有效性,最后進行總結和展望。
為方便后續研究,首先對無人機集群任務分配問題做如下假設,并給出任務分配問題的相關約束:
1)在觀察、調整、決策以及行動(OODA)環中,偵察和打擊是其中的重要環節,故針對無人機執行偵察和打擊兩種任務進行研究;
2)參與分配的N架無人機具有不同功能和類型,同時能夠滿足完成待執行的M個任務的需求;
3)考慮各無人機以相同且恒定的速度飛行,并忽略無人機起降時的消耗;
4)無人機的位置、無人機自身性能、任務點位置、任務需求信息為已知;
5)根據已有研究文獻的仿真實驗和美軍實際作戰試驗,將待執行任務無人機數量和任務數量均大于30認定為較大規模任務分配場景。
在任務分配過程中,給定分配的無人機序列U={U1,U2,…,Ui,…,UN}和待執行任務序列T={T1,T2,…,Tj,…,TM},任務分配方案可表示為M=∪i∈1:N,j∈1:M{(Ui,Tj)},其中{(Ui,Tj)}表示無人機Ui執行任務Tj。最終需要求取任務分配收益函數R(Ui,Tj)最大時所對應的無人機集群任務分配方案,目標函數如下:
(1)
式中:Ja為無人機執行打擊任務的攻擊收益函數;Jr為無人機執行偵察任務的偵察收益函數;Jd為無人機執行任務的路徑損耗函數。針對無人機集群任務分配問題的約束描述如下:
(2)
(3)
(4)

GAN設計了一種新的網絡模型框架,包括生成模型G和判別模型D兩部分。生成的對抗網絡結構如圖1所示。

圖1 GAN模型結構
圖1中,生成模型G用于捕獲真實樣本的概率分布,學習如何產生真實的樣本來“欺騙”判別模型;判別模型D用于區分真實樣本和虛假樣本(即生成模型生成的樣本)。
G和D采用對抗博弈的訓練方式,當D無法區分真實數據和生成數據時,網絡便達到了理想狀態。本質上,GAN的學習過程實際上是極大極小化目標函數,如式(3)所示:

(5)
式中:θ為生成模型參數;φ為判別模型參數;Pdata表示真實樣本的概率分布;Pz表示噪聲的概率分布;Ex~Pdata、Ex~Pz分別表示從真實樣本和噪聲中采樣數據后進行期望計算;D(x)為數據x經過判別模型后的輸出;D(G(z))為生成模型產生的結果G(z)經過判別模型后的輸出。訓練過程中先固定G、優化D,使得式(5)最大化后,再固定D、優化G,使得式(5)最小化。不斷重復上述過程,直至達到預定目標。
TA-SeqGAN在上述GAN模型的基礎上進行改進,使得模型能夠以特定的戰場信息矩陣作為輸入條件約束,利用網絡提取輸入信息矩陣的特征并生成與給定信息矩陣一致的任務分配序列。下面分別建立生成模型和判別模型。
TA-SeqGAN中的生成模型使用序列生成模型,利用神經網絡實現戰場信息數據到模型數據的映射,充分提取戰場信息所包含的特征,并使其能用于指導分配序列的生成。因此TA-SeqGAN的生成模型包括一個用于處理戰場信息的特征提取網絡,以及根據特征生成任務分配序列的序列生成網絡。
2.1.1 基于CNN的戰場信息特征提取網絡
影響最終分配結果的因素往往包括無人機自身性能、任務收益、路程消耗等,由此可以將戰場信息分為位置信息和資源信息兩類。

(6)


(7)


生成模型的戰場信息特征提取網絡核心采用CNN[37]搭建。卷積網絡是一種多層監督學習網絡,目前已知該網絡在進行特征提取方面有著較為成熟的理論和實踐經驗。其核心是利用一個卷積核對原數據進行卷積操作,得到一個新的特征矩陣,A為卷積核,B為原數據,C為卷積后的數據。所謂卷積,即卷積核與原數據中對應大小的子矩陣進行各對應位的相乘計算,如圖2(a)所示。Γ表示大小為3×N×M的戰場信息矩陣,其包含了地圖位置信息與資源信息,如圖2(b)所示。

圖2 卷積操作與輸入戰場信息矩陣
以戰場信息矩陣Γ作為CNN輸入,首先通過卷積和池化操作得到輸出高維特征矩陣ΓCNN,這里使用了自適應池化使得不同大小矩陣在經過池化后的大小統一。隨后對其展平成一維向量,再通過全連接神經網絡進行特征降維處理,得到戰場信息特征1×Lh的向量Ih,Lh為可變網絡超參數,完整的戰場信息特征提取網絡如圖3所示。

圖3 戰場信息特征提取網絡結構
2.1.2 基于GRU的序列生成網絡
TA-SeqGAN中用于生成任務分配序列的網絡采用GRU[38]進行搭建。GRU是循環神經網絡(RNN)[39]的一種變體,能夠記錄過去的生成信息并充分利用該信息進行當前序列值的生成。GRU與RNN相比,在單元內部增加了兩種門控運算——重置門控運算和更新門控運算,使得在較長序列生成時網絡能夠選擇性地對信息進行記憶和遺忘,同時又能在一定程度上保證運算速度。

(8)


圖4 GRU單元
為得到任務分配序列,需要將多個GRU單元進行串聯,并將上一個時刻的輸出作為下一時刻的輸入,如圖5所示,直到GRU產生特定長度的任務分配序列Y1∶T(T表示序列長度),即完成分配序列的生成任務。

圖5 序列生成網絡結構
生成模型生成任務分配序列后,判別模型需要判斷某一序列是生成序列還是真實序列。由于近年來以CNN、RNN為代表的深度網絡在進行分類問題上有較好的表現,本文建立了基于多層CNN的判別模型,其網絡結構如圖6所示。

圖6 判別模型結構
TA-SeqGAN的訓練采用生成模型和判別模型對抗訓練的方式,如圖7所示。
由于任務分配數據的離散性,生成模型和判別模型的更新方法不同,下文分別描述生成模型和判別模型的更新方法。
2.3.1 基于交叉熵的判別模型更新方法
TA-SeqGAN的判別模型由CNN網絡搭建而成,網絡輸出為一個一維向量β=[μ1,μ2]∈R1×2,μi(i=1,2)分別表示輸入的序列為生成序列和真實序列的概率。由式(5)可知判別模型的目標函數等價于最小化以下交叉熵函數:
min-[Ex~R[lnDφ(x)]+
Ez~Z[ln(1-Dφ(Gθ(z)))]]
(9)
式中:R為真實任務分配序列的樣本空間;Z為戰場信息空間;Gθ(z)為通過本文的生成模型得到的任務序列,θ為生成模型參數;Gφ(x)為將序列通過判別模型后得到的輸出,φ為判別模型參數。
2.3.2 收益-評價雙指導式生成模型梯度更新方法
TA-SeqGAN使用策略梯度方法進行生成模型更新,生成模型的目標函數為
(10)

然而判別模型只能對完整的序列進行評價,如果當前生成序列Y1∶t為非完整序列,則使用蒙特卡洛(MC)搜索算法[41]從策略Gβ中采樣尚未生成的T-t個任務序列。定義N次MC搜索如下:
(11)

(12)

(13)
式中:{Y1∶t-1,z}表示狀態信息,其中Y1∶t-1為序列狀態,z為戰場信息狀態;J(Y1∶T|s0,y1)為生成的完整分配序列根據分配收益模型計算得到的收益值,計算方法同式(1);λ1、λ2為加權系數。
圖8給出了TA-SeqGAN模型的訓練算法流程。

圖8 TA-SeqGAN模型訓練算法
本文設定任務分配場景設置在邊長50 km的矩形范圍內,每次仿真隨機生成三個機場位置、無人機攜帶資源、不同目標點坐標和目標任務需求資源。設定無人機速度為50 km/h。
本文實驗采用的數據由多種群遺傳算法(MPGA)生成。共進行2 000次任務分配仿真并保存任務分配方案、無人機攜帶資源、目標任務需求資源以及最優收益函數值以組成訓練數據集。
在Pytorch 1.4架構下,以80%作為訓練集、20%作為測試集,對TA-SeqGAN模型進行訓練。該訓練程序在AMD Ryzen 7 5800H、NVIDIA GeForce RTX 3060和16GB RAM下執行。
本文模型分兩個部分進行構造:
1) 生成模型G,其特征提取網絡的輸入為3×NU×NT的矩陣,采用兩層卷積層和兩層全連接層,卷積核大小均為5×5,中間激活層采用ReLU,輸出為128×1的向量;序列生成網絡為GRU連接一層全連接層,隱藏空間向量大小為128×1,輸入為決策向量Cs,輸出為任務分配序列Y1∶T。
2)判別模型D采用CNN,設置多個不同大小的卷積核對序列分別進行卷積,以捕捉不同個數的相鄰序列之間的相關性;之后對輸出的所有通道分別做時序最大池化,將各個通道的池化輸出值展平為向量,通過全連接層得到輸出β=[μ1,μ2]∈R1×2。具體模型結構參數如表1所示。
在GAN的訓練過程中,超參數的選取對最終模型的性能至關重要,本文模型包含的超參數為每一次迭代中生成模型的訓練步數g_step,判別模型的訓練步數d_step,每一次訓練判別模型時所用的真實數據量與生成數據量的比值ratio。為了分析以上超參數對本文模型性能的影響,首先進行訓練,結果如圖9所示。
圖9中對比了3種情況下生成模型和判別模型各自的網絡訓練誤差。由圖9可以看出,在不同超參數情況下,生成和判別模型的訓練誤差在100輪左右不再有明顯下降趨勢,隨著對抗訓練的進行,生成模型和判別模型不斷學習數據分布,各loss都逐漸趨于收斂,呈現出在一定范圍內的振蕩趨勢。當用于判別模型訓練真實樣本數量增加時,生成模型的訓練誤差方差減少,生成模型誤差與判別模型誤差在對抗訓練中同步降低,如圖9(b)所示。較少的真實樣本(ratio=0.3)能夠使判別模型較快收斂,但由于本文生成模型的訓練誤差中包含了收益部分,一旦判別模型與生成模型能力相差太大,生成模型的目標就變為盡量獲得高收益而不再去欺騙判別模型,生成的序列與真實序列相差太大。本文實驗取g_step=1、d_step=1、ratio=1,以兼顧對抗訓練與高收益值。
對訓練好的TA-SeqGAN模型進行任務分配效果進行分析。表2給出了本節進行實驗仿真分析的4種作戰場景,包括無人機數量和任務數量,其中偵察任務和打擊任務數量相同。作戰場景包括較小規模的任務分配場景(任務數量為8、18),以及較大規模的任務分配場景(任務數量為50、80)。本節選取離散粒子群優化(DPSO)算法和MPGA進行分配收益函數指標與分配時間的對比。
3.3.1 收益函數指標比較
DPSO算法和MPGA使用的戰場信息一致,種群大小為2NT,循環終止條件設置相同,即收益函數在連續10個迭代步內不再增加。首先對訓練好的TA-SeqGAN模型分析其泛化性,以確保模型沒有在訓練數據上達到過擬合。在任務分配數量為80的大規模任務分配場景下,使用訓練數據對模型進行訓練后,在另一組測試數據上得到的結果如圖10所示,這里測試數據的數量為100。

圖10 訓練數據和測試數據上的任務分配效果
由圖10可以看出,模型在一批新數據(測試數據)上的結果比訓練數據上的結果略低,但并未相差較大,說明模型能夠應用于新數據并得到較優的結果,模型表現出較好的泛化能力。隨后從小規模到大規模任務分配進行了實驗,圖11給出了4種分配場景下各算法進行30次任務分配仿真后得到的分配序列的收益函數指標值。由圖11可以看出,TA-SeqGAN能獲得與另外兩種算法相近的收益函數指標值,多數場景下3種算法得到的任務分配質量相差不大,并存在TA-SeqGAN效果優于另外兩種算法的情況。

圖11 4種場景下各算法任務分配序列的收益函數指標值
圖12給出了各算法進行30次仿真后收益函數的均值柱狀圖。由圖12可見:在任務數量相對較少的場景下,MPGA能夠生成較高質量的任務分配序列,TA-SeqGAN算法與之相比存在一定差距;隨著任務數量的增加,TA-SeqGAN與MPGA算法和DPSO算法之間的差距不斷減小,在任務數量較多的任務分配場景下,TA-SeqGAN進行任務分配的收益超過MPGA算法,與DPSO算法相當,僅與DPSO算法相差3%,驗證了TA-SeqGAN算法在大型任務分配場景下進行任務分配的可行性。

圖12 各算法收益指標均值
3.3.2 算法時間消耗比較
在TA-SeqGAN模型訓練完成后,在讀取戰場信息后能夠在極短的時間內得到與之對應的任務分配序列。本文用不同的戰場信息與目標數進行模擬,記錄了各自算法的運行時間。表3為進行100次仿真模擬的各場景平均時間。

表3 不同場景下不同算法運行時間對比
在實驗的4個場景中,隨著任務數量的增多,各算法進行任務分配所消耗的時間也不斷增加。在任務數量較少的場景(任務數量為8),PSO算法與TA-SeqGAN進行任務分配時間相近,GA遠高于前兩者;隨著任務數量增多,GA和PSO算法消耗時間不斷增加,當任務數量達到80時,PSO算法耗時已超過100 s,而TA-SeqGAN所耗時間幾乎沒有增加,遠遠小于PSO算法和GA。從圖13中可以直觀看出不同任務數量時各算法求解時間的變化趨勢:在不同場景下,TA-SeqGAN的運行時間幾乎保持在200 ms左右,大大低于DPSO算法和MPG;DPSO算法和MPGA的時間隨著任務數量的增加呈近似指數增長,而本文算法的運行時間相對穩定。由此可見,TA-SeqGAN從小規模到較大規模的任務分配上都表現出較高的求解效率。

圖13 不同分配規模下各算法運行時間對比
結合收益函數指標和時間消耗來看,TA-SeqGAN在小規模和大規模的任務分配時都能有較好的表現,尤其在求解大規模的任務分配問題時,生成的任務分配序列質量與DPSO算法和MPGA相當,但在時間消耗上遠遠低于這兩種算法。因此,通過上述實驗比較,本文提出的基于生成式對抗網絡的無人機群任務分配方法適用于大型任務分配場景。
本文針對現有無人機集群任務分配算法在進行較大規模的任務分配時求解效率低的問題,提出了一種基于GAN的無人機集群任務分配方法,建立了以戰場信息為基礎的序列生成對抗網絡模型TA-SeqGAN。得出以下主要結論:
1)本文提出的任務分配方法,即生成模型根據戰場信息進行對應的任務分配序列生成,采用了對抗訓練的方式并設計了對應的訓練方法優化模型參數,可以進行從戰場信息到任務分配序列的有效生成。
2)通過與經典的任務分配算法作對比得出,TA-SeqGAN在求解大規模的任務分配問題時,生成的任務分配序列質量與其他算法相當,但在時間消耗上遠遠低于其他算法,能滿足快速任務分配的要求。
3)未來研究著重于結合實際場景建立更加精確且具有泛化性的模型,進行損失函數的改進設計,以提高模型的收斂速度,進一步提高分配結果的質量和可信度。