吳子沉,胡斌
(空軍工程大學(xué) 航空工程學(xué)院,西安710038)
無人機(jī)集群作為一種新的應(yīng)用樣式,具有極大的發(fā)展前景[1]。無人機(jī)集群對(duì)目標(biāo)的追捕問題是一種典型的應(yīng)用場(chǎng)景。
針對(duì)無人機(jī)集群圍捕問題,目前大多數(shù)研究均基于分布式控制[2],即通過將集群圍捕問題轉(zhuǎn)換為一致性問題,再設(shè)計(jì)分布式算法使得集群向目標(biāo)位置收斂,實(shí)現(xiàn)圍捕的效果。黃天云等[3]提出了一種基于松散偏好規(guī)則的自組織方法,通過分解圍捕行為,利用松散偏好規(guī)則使個(gè)體機(jī)器人自發(fā)形成理想的圍捕隊(duì)形,并運(yùn)用Lyapunov穩(wěn)定性定理證明系統(tǒng)的穩(wěn)定性。李瑞珍等[4]提出了一種基于動(dòng)態(tài)圍捕點(diǎn)的多機(jī)器人協(xié)同圍捕策略,根據(jù)目標(biāo)位置設(shè)置動(dòng)態(tài)圍捕點(diǎn),并利用任務(wù)分配方法為圍捕機(jī)器人分配最佳圍捕點(diǎn),綜合考慮圍捕路徑損耗和包圍效果,計(jì)算圍捕機(jī)器人的最優(yōu)航向角,實(shí)現(xiàn)集群對(duì)目標(biāo)的圍捕。張子迎等[5]提出一種多層環(huán)狀伏擊圍捕模型,并依據(jù)能量均衡原則,對(duì)系統(tǒng)能量消耗進(jìn)行平衡。Uehara等[6]針對(duì)有障礙的復(fù)雜環(huán)境下集群圍捕問題,改進(jìn)了粒子群算法,使得圍捕者能夠在規(guī)避障礙物的情況下實(shí)現(xiàn)對(duì)目標(biāo)的圍捕。
近年來,部分學(xué)者探索了通過強(qiáng)化學(xué)習(xí)來解決集群對(duì)目標(biāo)的圍捕問題[7-10]。Liu等[11]通過對(duì)圍捕復(fù)雜任務(wù)進(jìn)行分解,將學(xué)習(xí)過程分為高級(jí)學(xué)習(xí)和低級(jí)學(xué)習(xí),并使兩部分學(xué)習(xí)并行進(jìn)行,完成了圍捕問題分層次強(qiáng)化學(xué)習(xí)設(shè)計(jì)。Bilgin和Kadioglu-Urtis[12]結(jié)合Q學(xué)習(xí)(Q-learning)和資格痕跡(Eligibility Traces),對(duì)追捕者進(jìn)行并行訓(xùn)練,并為每個(gè)追捕者維護(hù)一個(gè)獨(dú)立的Q值表(Q-table),完成了集群內(nèi)部存在交互的獨(dú)立智能體學(xué)習(xí)。Awheda和Schwartz[13]提出了將卡爾曼濾波與強(qiáng)化學(xué)習(xí)結(jié)合起來的卡爾曼濾波模糊A-C算法,嘗試解決在追捕者和目標(biāo)訓(xùn)練環(huán)境不一樣的情況下如何實(shí)現(xiàn)成功圍捕的問題。Lowe等[14]于2017年提出了MADDPG(Multi-Agent Deep Deterministic Policy Gradient)算法,探索了多智能體領(lǐng)域的強(qiáng)化學(xué)習(xí),該算法通過智能體之間信息的交互,使得每個(gè)智能體的強(qiáng)化學(xué)習(xí)都考慮到其他智能體的動(dòng)作策略,取得了顯著的效果,但該算法訓(xùn)練時(shí)需要知道對(duì)手智能體的逃逸策略,這與大多情景不符。
以上研究在環(huán)境屬性確定的情況下能夠有效解決集群圍捕問題,但是在新環(huán)境下,往往圍捕效果較差?;诖?,本文設(shè)計(jì)了一種基于態(tài)勢(shì)認(rèn)知的無人機(jī)集群圍捕方法,嘗試解決不同環(huán)境下的圍捕策略問題。首先,基于對(duì)圍捕行為的分析,將圍捕過程離散化;然后,利用深度Q 神經(jīng)網(wǎng)絡(luò)(Deep Q-network,DQN)方法[15-17],解決固定時(shí)間窗口長(zhǎng)度下的圍捕策略生成問題;最后,通過建立狀態(tài)-策略知識(shí)庫,實(shí)現(xiàn)面向圍捕問題的認(rèn)知發(fā)育[18],基于態(tài)勢(shì)識(shí)別,完成圍捕策略的快速選取。仿真結(jié)果表明,在確定環(huán)境情況下,所設(shè)計(jì)的基于DQN的圍捕發(fā)育方法能夠解決圍捕問題,給出圍捕策略,提出的基于態(tài)勢(shì)認(rèn)知的圍捕方法能夠?qū)崿F(xiàn)知識(shí)庫的增量發(fā)育,有效應(yīng)對(duì)新環(huán)境下的圍捕問題。
設(shè)戰(zhàn)場(chǎng)上存在N架無人機(jī)組成的集群,對(duì)一個(gè)運(yùn)動(dòng)的目標(biāo)進(jìn)行追捕,如圖1所示。
用U=(u1,u2,…,uN)表示追捕無人機(jī)狀態(tài)矩陣,ui表示第i架無人機(jī)的狀態(tài)矢量,用T表示目標(biāo)狀態(tài)矢量。設(shè)追捕無人機(jī)的速度為Vp,目標(biāo)的速度為Vt,Dp表示追捕無人機(jī)的探測(cè)距離,Dt表示目標(biāo)的探測(cè)距離,通常設(shè)定Dp>Dt。
目標(biāo)與追捕無人機(jī)均在戰(zhàn)場(chǎng)上運(yùn)動(dòng),追捕無人機(jī)的目的是探測(cè)到目標(biāo)的位置信息,再通過協(xié)作在目標(biāo)周圍設(shè)立包圍圈,實(shí)現(xiàn)對(duì)目標(biāo)的圍捕。當(dāng)其中一架無人機(jī)獲得目標(biāo)的位置信息后,視為其他追捕無人機(jī)獲得目標(biāo)的位置信息。目標(biāo)初始時(shí)刻在戰(zhàn)場(chǎng)隨機(jī)運(yùn)動(dòng),一旦發(fā)現(xiàn)追捕無人機(jī)后,會(huì)按照一定的逃離策略進(jìn)行逃逸。
本文假設(shè)當(dāng)3架及以上的追捕無人機(jī)在目標(biāo)周圍設(shè)立包圍圈,且包圍的無人機(jī)與目標(biāo)的最大距離小于目標(biāo)的探測(cè)距離,即視為圍捕成功,無人機(jī)亦可依據(jù)障礙物設(shè)置包圍圈,如圖2所示。
圖1 圍捕問題示意圖Fig.1 Schematic of rounding up problem
圖2 圍捕成功示意圖Fig.2 Schematic of successful rounding up
本文考慮2D仿真環(huán)境下的集群圍捕問題。將無人機(jī)及目標(biāo)看作質(zhì)點(diǎn),不考慮無人機(jī)及目標(biāo)的姿態(tài)變化,可將無人機(jī)及目標(biāo)的運(yùn)動(dòng)模型表述為
式中:(x,y)為當(dāng)前時(shí)刻位置;(vx,vy)為當(dāng)前時(shí)刻速度。
根據(jù)無人機(jī)集群圍捕的特點(diǎn),將圍捕動(dòng)作分解為:右側(cè)包抄(R)、左側(cè)包抄(L)、逼進(jìn)(F)、后退(R)、靜止(S)五種,記為
考慮時(shí)間窗口長(zhǎng)度為τ的圍捕效果,將圍捕策略表示為τ時(shí)刻內(nèi)各無人機(jī)動(dòng)作的有序集合,即
式中:
其中:at為t時(shí)刻各無人機(jī)選取的動(dòng)作;Ai為從Actions集合中選取的具體動(dòng)作。
假設(shè)圍捕無人機(jī)數(shù)目為N,則一個(gè)時(shí)間窗口內(nèi),共有5Nτ種圍捕策略可供選擇。假設(shè)考慮僅3架無人機(jī)時(shí)間窗口長(zhǎng)度為5 s的圍捕效果,則圍捕策略的總數(shù)也多達(dá)3×1010。因此,為解決具體環(huán)境下圍捕策略的發(fā)育問題,考慮使用DQN進(jìn)行策略的選擇。
在無人機(jī)集群圍捕過程中,可將狀態(tài)看作是由戰(zhàn)場(chǎng)本身存在的障礙物、各無人機(jī)及目標(biāo)構(gòu)成。
假設(shè)環(huán)境中第k個(gè)障礙物為以(xk,yk)為圓心、以rk為半徑的圓,只考慮靜止的障礙,則障礙物可以描述為
令
式中:O為環(huán)境中n個(gè)障礙物的集合。
無人機(jī)集群通過觀察可獲得目標(biāo)的位置、速度的觀測(cè)值,集群內(nèi)部通過相互通信,可以獲得各自的位置、速度信息,將t時(shí)刻目標(biāo)狀態(tài)描述為
將t時(shí)刻集群的狀態(tài)描述為
式中:
將狀態(tài)統(tǒng)一描述為
DQN根據(jù)獎(jiǎng)勵(lì)值來調(diào)整網(wǎng)絡(luò)權(quán)重,實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)的更新。獎(jiǎng)勵(lì)函數(shù)的設(shè)定極大地影響到訓(xùn)練的效果。
集群對(duì)目標(biāo)的圍捕成功與否是以無人機(jī)到目標(biāo)的距離及相對(duì)角度判斷的,因此,設(shè)置獎(jiǎng)勵(lì)函數(shù)時(shí),需充分考慮這2個(gè)因素。
將無人機(jī)i到目標(biāo)j的距離用dij表示,當(dāng)?dij>Dp時(shí),無人機(jī)集群尚未發(fā)現(xiàn)目標(biāo);當(dāng)Dt<dij≤Dp時(shí),表示無人機(jī)i發(fā)現(xiàn)了目標(biāo)j,且自身未暴露;當(dāng)Dt≥dij時(shí),表示目標(biāo)j已經(jīng)發(fā)現(xiàn)了無人機(jī)i,此時(shí)如果尚未形成包圍圈,目標(biāo)j會(huì)主動(dòng)逃逸。
通過距離建立獎(jiǎng)勵(lì)函數(shù):
理想的圍捕隊(duì)形通常是多無人機(jī)均勻分布在以目標(biāo)為圓心、以圍捕半徑為圓的圓上[4],以3架無人機(jī)組成的集群為例,如圖3所示。
圖3 圍捕隊(duì)形示意Fig.3 Schematic of rounding up formation
設(shè)無人機(jī)i與周圍2架無人機(jī)分別以目標(biāo)為頂點(diǎn)的角度為ψ和φ,則ψ*=φ*=2π/N為最優(yōu)的角度,可以通過角度建立獎(jiǎng)勵(lì)函數(shù):
此外,需在獎(jiǎng)勵(lì)函數(shù)中加入避障項(xiàng),以使得無人機(jī)能夠主動(dòng)規(guī)避環(huán)境中的障礙物:
式中:rOb為獎(jiǎng)勵(lì)函數(shù)的避障相;dmin為無人機(jī)距離最近障礙物的距離。
綜上,將獎(jiǎng)勵(lì)函數(shù)設(shè)置為
式中:α、β和χ分別為距離項(xiàng)、隊(duì)形項(xiàng)和避障項(xiàng)的權(quán)重,權(quán)重的確定通常需要實(shí)際訓(xùn)練來調(diào)整;f定義為當(dāng)圍捕成功,無人機(jī)會(huì)獲得+10的獎(jiǎng)勵(lì)。
DQN[19]通過構(gòu)建深度神經(jīng)網(wǎng)絡(luò),完成對(duì)Q函數(shù)的擬合,解決了傳統(tǒng)Q-learning方法中狀態(tài)量太多導(dǎo)致的維度災(zāi)難問題。本文采用文獻(xiàn)[19]中提出的DQN方法,實(shí)現(xiàn)多維度狀態(tài)到低維度動(dòng)作的映射。
為獲取圍捕策略,在每組訓(xùn)練過程中,將最終獲得獎(jiǎng)勵(lì)值最大的一次訓(xùn)練的每一步以(St,at,rt)的形式儲(chǔ)存,在所有訓(xùn)練結(jié)束后,針對(duì)儲(chǔ)存的動(dòng)作從t=0時(shí)刻進(jìn)行一次長(zhǎng)度為τ的采樣,并進(jìn)行m次長(zhǎng)度為τ的隨機(jī)采樣。設(shè)采樣的時(shí)刻為:0,t1,t2,…,tm,對(duì)應(yīng)的采樣點(diǎn)狀態(tài)為:S0,St1,St2,…,Stm,可 獲 得m+1次 策 略:π0,π1,…,πm。
得益于人腦強(qiáng)大的認(rèn)知能力,飛行員在面對(duì)復(fù)雜多變的動(dòng)態(tài)環(huán)境時(shí),能夠迅速地做出有利于戰(zhàn)局的決策。仿照生物認(rèn)知機(jī)制去構(gòu)建具有學(xué)習(xí)和經(jīng)驗(yàn)的增量式發(fā)育算法是解決一類復(fù)雜問題的有效途徑,文獻(xiàn)[18]受此啟發(fā),提出了包括認(rèn)知決策、制導(dǎo)規(guī)劃和執(zhí)行控制3個(gè)層級(jí)的無人機(jī)認(rèn)知控制系統(tǒng)結(jié)構(gòu),并在復(fù)雜動(dòng)態(tài)環(huán)境下的多威脅無人機(jī)防碰撞問題中驗(yàn)證了有效性。本文在此基礎(chǔ)上提出了一種基于場(chǎng)景認(rèn)知的圍捕決策。
如圖4所示,在基本的圍捕算法之上,構(gòu)建包含狀態(tài)-策略的知識(shí)庫。當(dāng)無人機(jī)集群每完成一次圍捕訓(xùn)練,判斷圍捕方法是否有效,并設(shè)立一定的門檻,將有效訓(xùn)練的圍捕策略存儲(chǔ)到知識(shí)庫中,構(gòu)建圍捕策略知識(shí)庫。通過大量仿真訓(xùn)練,獲得大量的狀態(tài)-策略數(shù)據(jù),在遇到相似狀態(tài)的情況,可以直接調(diào)用策略進(jìn)行圍捕,而不需要重復(fù)訓(xùn)練。
圖4 無人機(jī)集群發(fā)育結(jié)構(gòu)示意圖Fig.4 Schematic diagram of UAV swarm development structure
基于認(rèn)知發(fā)育的圍捕流程如圖5所示。
圍捕開始后,無人機(jī)集群獲得當(dāng)前時(shí)刻信息,通過態(tài)勢(shì)認(rèn)知將當(dāng)前狀態(tài)與知識(shí)庫內(nèi)的狀態(tài)信息進(jìn)行匹配,選擇符合標(biāo)準(zhǔn)的策略進(jìn)行圍捕,若狀態(tài)信息無法匹配,即遇到了新的狀態(tài),則調(diào)用第2節(jié)中的圍捕發(fā)育算法進(jìn)行圍捕策略發(fā)育,以獲得合適的圍捕策略,此次圍捕結(jié)束后,將獲得的狀態(tài)與相應(yīng)的圍捕策略加入到狀態(tài)-策略知識(shí)庫中,實(shí)現(xiàn)知識(shí)庫的增量發(fā)展。
圖5 基于認(rèn)知發(fā)育的圍捕方法Fig.5 A rounding up algorithm based on cognitive development
圍捕狀態(tài)的描述已經(jīng)在3.1節(jié)中給出,下面簡(jiǎn)要介紹如何通過對(duì)態(tài)勢(shì)的認(rèn)知,判斷該狀態(tài)是否為已知狀態(tài),并完成對(duì)狀態(tài)的匹配。
為方便表述,將式(10)中狀態(tài)的屬性統(tǒng)一用G表示,共3n+4N+4項(xiàng),即
為了實(shí)現(xiàn)對(duì)不同環(huán)境-目標(biāo)模式的區(qū)分,以實(shí)現(xiàn)后續(xù)的分類及匹配工作,以絕對(duì)值指數(shù)法定義相似度函數(shù):
式中:wi為屬性Gi的權(quán)重。
設(shè)定C為相似度閾值,當(dāng)
就認(rèn)為S與S′為同一模式,否則為不同模式。并取增量判別函數(shù):
作為判斷是否需要將新狀態(tài)S′加入狀態(tài)-策略知識(shí)庫的依據(jù),當(dāng)S′與已有知識(shí)庫中的模式進(jìn)行匹配時(shí),如果相似度最大值大于閾值,則認(rèn)為S′為已存在模式,直接調(diào)用相應(yīng)的策略進(jìn)行圍捕。反之,將S′認(rèn)為是全新的模式,調(diào)用圍捕策略發(fā)育算法生成策略,并擴(kuò)充到知識(shí)庫中。
為簡(jiǎn)化狀態(tài)匹配流程,將相似度閾值分解為
式中:ci對(duì)應(yīng)項(xiàng)Gi的相似度。
比較狀態(tài)S和S′的第i項(xiàng),如果
則認(rèn)為狀態(tài)S和S′的第i項(xiàng)相似。進(jìn)行狀態(tài)匹配時(shí),從G1項(xiàng)開始,從知識(shí)庫中依次篩選符合條件的狀態(tài)-策略對(duì),最終獲得匹配結(jié)果。
為驗(yàn)證本文方法的有效性,采用文獻(xiàn)[20]中的平臺(tái)進(jìn)行發(fā)育訓(xùn)練。通過隨機(jī)生成圍捕環(huán)境,建立訓(xùn)練集,驗(yàn)證基于態(tài)勢(shì)認(rèn)知的發(fā)育算法在圍捕問題上的效果。
取無人機(jī)數(shù)目N=3,無人機(jī)和目標(biāo)均為直徑是2 m 的圓,設(shè)定圍捕環(huán)境橫縱坐標(biāo)范圍為[-25,25]m,無人機(jī)和目標(biāo)的坐標(biāo)每次均隨機(jī)生成,具體參數(shù)如表1所示。
記錄圍捕所消耗的時(shí)間,并設(shè)定圍捕時(shí)間步大于100時(shí)為圍捕失敗。
訓(xùn)練集大小為1 000,通過對(duì)障礙物屬性的隨機(jī)生成,獲得不同的圍捕環(huán)境。設(shè)定障礙物的生成參數(shù)如表2所示。
表1 無人機(jī)與目標(biāo)參數(shù)設(shè)定Table 1 Parameter setting of UAV and target
表2 障礙物生成參數(shù)Table 2 Obstacle generation parameters
1)仿真實(shí)驗(yàn)1。選取一個(gè)隨機(jī)生成的環(huán)境對(duì)所設(shè)計(jì)的DQN方法進(jìn)行驗(yàn)證。
圖6為一次具體的圍捕場(chǎng)景實(shí)例。此次圍捕分為3個(gè)階段:①無人機(jī)與目標(biāo)距離較遠(yuǎn),互相不知道對(duì)方的位置,無人機(jī)集群在搜索目標(biāo),目標(biāo)在以隨機(jī)的初始航向游走。②目標(biāo)仍然隨機(jī)運(yùn)動(dòng)。無人機(jī)2發(fā)現(xiàn)目標(biāo)位置,其始終將自身與目標(biāo)的距離控制在5~10 m之間,無人機(jī)1和無人機(jī)3則繞過障礙物,向目標(biāo)前進(jìn),以構(gòu)成圍捕隊(duì)形。③無人機(jī)3最先進(jìn)入目標(biāo)的探測(cè)范圍,目標(biāo)向反方向逃逸。無人機(jī)集群已在目標(biāo)周圍構(gòu)成三角形,一同向目標(biāo)趨近完成圍捕。
從圖7中可看出,初始時(shí)刻,無人機(jī)集群無法有效完成對(duì)目標(biāo)的圍捕。隨著訓(xùn)練次數(shù)增加,無人機(jī)集群最終能夠在45步以內(nèi)完成對(duì)目標(biāo)的圍捕。由此可見,DQN方法對(duì)無人機(jī)集群圍捕問題是有效的。
2)仿真實(shí)驗(yàn)2。對(duì)基于態(tài)勢(shì)認(rèn)知的圍捕方法進(jìn)行訓(xùn)練,獲得初步的知識(shí)庫,再按照訓(xùn)練集的生成方法,生成一組長(zhǎng)度同樣為1 000的新環(huán)境,對(duì)知識(shí)庫的有效性進(jìn)行了驗(yàn)證,結(jié)果如圖8所示。
圖8表示了隨著對(duì)不同圍捕環(huán)境的訓(xùn)練,狀態(tài)-策略知識(shí)庫中的狀態(tài)-策略對(duì)也相應(yīng)地增加,最終由于增量判別函數(shù)中閾值的存在,策略數(shù)目會(huì)穩(wěn)定在一定的范圍。
從圖9中可看出,大多數(shù)場(chǎng)景下,集群都能在45步以內(nèi)完成圍捕,這表明面對(duì)新生成的不同環(huán)境,無人機(jī)集群能夠迅速完成圍捕任務(wù)。
圖6 圍捕實(shí)例Fig.6 An example of rounding up
圖9 測(cè)試環(huán)境下的圍捕結(jié)果Fig.9 Rounding up results in test environment
1)設(shè)計(jì)的基于DQN的圍捕策略發(fā)育方法能夠有效解決固定環(huán)境下的圍捕問題,給出圍捕策略。
2)提出的基于態(tài)勢(shì)認(rèn)知的圍捕方法能夠?qū)崿F(xiàn)知識(shí)庫的增量發(fā)育,有效應(yīng)對(duì)新環(huán)境下的圍捕問題。
為使本文方法能夠應(yīng)對(duì)更復(fù)雜的環(huán)境,仍需要優(yōu)化策略存儲(chǔ)機(jī)制及策略的提取機(jī)制,滿足實(shí)時(shí)性要求。