符小衛(wèi), 潘 靜
(1. 西北工業(yè)大學電子信息學院, 陜西 西安 710129; 2. 西安現(xiàn)代控制技術(shù)研究所, 陜西 西安 710065)
在作戰(zhàn)過程中,無人機集群通常需要形成某一特定隊形去執(zhí)行特定類型的任務并在飛行過程中保持隊形的穩(wěn)定。同時,也要求集群在飛行途中如果遇到外界環(huán)境的突然變化能夠及時調(diào)整隊形來保證飛行的安全。可以說,無人機集群的隊形控制是無人機集群作戰(zhàn)的重要基礎。但在飛行過程中集群有可能會遇到動態(tài)障礙物,如飛行的鳥群、惡劣氣象渦流等。在有效規(guī)避動態(tài)障礙的同時保持集群隊形的穩(wěn)定是無人機集群安全性能和生存能力的必要保證。集群探測到動態(tài)障礙物的存在后,需要及時根據(jù)探測到的障礙物的信息改變集群隊形并對障礙物進行規(guī)避,避障結(jié)束后再進行隊形的重構(gòu)。因此,如何實現(xiàn)躲避動態(tài)障礙物下的隊形保持與重構(gòu)對于研究無人機集群隊形控制問題是至關重要的。
目前無人機集群的隊形控制方法主要有領導-跟隨法、虛擬結(jié)構(gòu)法以及行為控制法。領導-跟隨法中,領導者根據(jù)預設的軌跡飛行,追隨者跟隨領導者飛行并和領導者保持特定的幾何距離,雖然簡單實用,但系統(tǒng)的魯棒性較差,一旦領導者失效將導致集群隊形的失敗。虛擬結(jié)構(gòu)法中,集群把隊形的整個結(jié)構(gòu)視為一個剛體,剛體中存在一個虛擬中心點作為集群的領導者,無人機通過和虛擬中心保持特定的幾何位置關系來形成和保持期望隊形。雖然系統(tǒng)的魯棒性有所提高,但卻以高通信量和高計算能力為代價,并不適用于大規(guī)模無人機集群的隊形控制。行為控制法是一種通過個體無人機遵循相對簡單的規(guī)則來實現(xiàn)整體集群行為的分布式隊形控制方法,將無人機集群隊形控制的整個過程劃分為幾個基本控制行為,從而實現(xiàn)各架無人機之間合作或競爭的關系?;谝恢滦岳碚摰臒o人機集群的隊形控制方法則通過選擇合適的能夠達成一致的狀態(tài)變量實現(xiàn)集群的隊形形成與變換,能夠有效降低通信負擔,從而實現(xiàn)大規(guī)模無人機的集群,系統(tǒng)魯棒性更高,但集群只能沿著預定航向行進,不能實現(xiàn)對障礙物的規(guī)避。Khatib通過在智能體之間和智能體與障礙物之間構(gòu)造虛擬力場來實現(xiàn)智能體的避障。在此基礎上,Olfati等通過人工勢函數(shù)和速度一致性的結(jié)合實現(xiàn)了智能體的集群控制,通過在靜態(tài)障礙物的表面構(gòu)造一個虛擬智能體與多智能體之間產(chǎn)生排斥力來達到避障的效果,但群體在避障時只能保持晶體結(jié)構(gòu)而不能形成特定隊形,并且對所有探測到的障礙物都將采取避障措施。伍友利等研究了無人機集群在三維空間中規(guī)避靜態(tài)障礙物的避障控制方法。張超省等研究了地面戰(zhàn)場中機器人集群執(zhí)行任務時的避障問題。杜婉茹等研究了針對未知且障礙形態(tài)多樣的戰(zhàn)場環(huán)境,智能體在二維空間躲避動態(tài)、靜態(tài)障礙物,追蹤目標的路徑規(guī)劃方法。Yang等通過判斷動態(tài)障礙物和智能體之間的當前相對距離是否小于設定的安全閾值來給智能體施加排斥力,沒有對智能體是否會與動態(tài)障礙物發(fā)生碰撞做出預判斷,當二者距離小于安全閾值時可能并不會發(fā)生碰撞卻采取了規(guī)避措施,從而增加智能體因避障而繞行的路程。
因此,本文首先引入針對動態(tài)障礙物的碰撞預判機制,對探測到的動態(tài)障礙物進行是否需要對其進行規(guī)避的判斷,然后在無人機與動態(tài)障礙物之間構(gòu)造斥力場實現(xiàn)避障,最后在一致性算法的基礎上結(jié)合人工勢場法實現(xiàn)動態(tài)避障下集群隊形的控制。
本文以無人機集群飛行控制為研究背景,飛行控制的目的是實現(xiàn)集群在躲避動態(tài)障礙物下的隊形變換與保持。給定架在三維空間飛行的無人機共同構(gòu)成一個無人機集群,集群中的單架無人機的二階運動模型可表示為
(1)
式中:()=[(),(),()]代表無人機在時刻的位置向量;()=[(),(),()]代表無人機在時刻的速度向量;()=[(),(),()]代表無人機在時刻的控制輸入;=1,2,…,,代表集群中無人機的數(shù)量。
同時,還需要考慮如下約束條件:
(1) 無人機的速度約束
由于自身性能的限制,無人機會有一個最大速度。只有無人機的速度大小在此范圍內(nèi)才能保證無人機的安全飛行。也就是說,|()|≤。
(2) 無人機的加速度約束
無人機在接收到指令后無法立即更改其速度大小和方向。因此,無人機的加速度限制應滿足|()|≤。
(3) 無人機的通信距離約束
假設無人機的通訊范圍是。無人機間的通信拓撲關系可用無向圖=(,)表示。其中,={1,2,…,}表示集群無人機的節(jié)點集合,={(,)|,∈,≠}表示集群無人機之間的通信邊集,=[]表示集群無人機通信拓撲圖的鄰接矩陣,當(,)∈時,=1,說明兩架無人機之間可以進行通信;反之,=0,二者之間無法進行信息交互。
無人機集群中存在一個虛擬領導者。設定虛擬領導者為集群的幾何參考點,假設虛擬領導者在時刻的位置向量為(),速度向量為(),無人機相對于集群幾何參考點的位置向量為。當隊形形成時,各架無人機與虛擬領導者將達到并保持期望距離,集群中的各無人機速度最終趨于一致,即
(2)
以圓形隊形為例,隊形穩(wěn)定時的示意圖如圖1所示。無人機集群在隊形變換的過程中,只需根據(jù)需變換的期望隊形改變集群各無人機與幾何參考點的相對向量即可實現(xiàn)隊形變換。
圖1 圓形集無人機群隊形穩(wěn)定狀態(tài)Fig.1 Circle formation in steady state of UAV swarm
針對躲避動態(tài)障礙物下集群隊形的控制問題,本文在設計算法時,首先加入障礙預判機制,在探測到動態(tài)障礙物時只對預測到可能發(fā)生碰撞的障礙物進行規(guī)避,而不考慮不會發(fā)生碰撞的障礙物的影響,避免集群因躲避不會發(fā)生碰撞的障礙物而偏離預定航向,從而減少集群因避障而繞行的路程。然后,在無人機之間和無人機與障礙物之間引入虛擬力的機制。無人機之間存在引力場和斥力場,而無人機和障礙物之間只存在斥力場,從而實現(xiàn)無人機集群在動態(tài)避障下的隊形保持與重構(gòu)。
221 圓形集群隊形
在圓形隊形中,虛擬領導者處于圓心位置,其余無人機均勻地在圓周上排列開來。
三維空間下的圓形隊形中,各無人機距離虛擬幾何參考點的相對位置向量可根據(jù)該圓計算得出,計算方法如下:
(3)
=(sin(360),cos(360),0),=1,2,…,
(4)
式中:為該圓的半徑;為無人機之間的期望距離;為無人機的數(shù)量。
222 V字形集群隊形
在V字形隊形中,V字形隊形的頂角為(0<<π),虛擬領導者處于頂點位置。
三維空間下的V字形隊形中,各無人機距離虛擬幾何參考點的相對位置向量的計算方法為
=(0,0,0)
(5)
=(-cos(2),sin(2),0),
=2,…,(+1)2
(6)
=(-cos(2),-cos(2),0),
=(+1)2+1,…,
(7)
式中:為無人機之間的期望距離;為無人機的數(shù)量。
223 一字形集群隊形
在一字形隊形中,虛擬領導者處于一字形的頂點,其余無人機呈一字形按順序向后排列。
三維空間下的一字形隊形中,各無人機距離虛擬幾何參考點的相對位置向量的計算方法為
=(0,0,0)
(8)
=(-·,0,0),=2,…,
(9)
式中:為無人機之間的期望距離;為無人機的數(shù)量。
無人機集群飛行過程中可能遇到鳥群等動態(tài)障礙,為了提高無人機集群飛行安全性,可把鳥群外包絡處理成具有一定半徑的球形障礙物。這樣可以通過改變球形半徑,在避撞飛行的安全性和路徑的長度之間進行合理折中。
躲避動態(tài)障礙物下的障礙預判機制需考慮動態(tài)障礙物的自身速度對預判過程的影響,通過引入無人機與動態(tài)障礙物之間的相對速度和相對位置這兩者信息來共同判斷無人機與障礙物之間是否有發(fā)生碰撞的可能。動態(tài)障礙物的碰撞預判機制具體如圖2所示。
圖2 無人機與動態(tài)障礙物之間的碰撞預判Fig.2 Collision prediction between UAV and dynamic obstacle
為了提高無人機集群飛行假設空間中存在一個動態(tài)球形障礙物,考慮無人機在時刻下能檢測到該障礙物,此時無人機的位置向量為(),速度向量為(),障礙物球心的位置向量為 (),速度向量為 (),半徑為 ,無人機與該動態(tài)障礙物之間的期望安全距離為。通過計算動態(tài)障礙物和無人機二者的相對速度在它們相對位置向量上的投影()來判斷二者的碰撞是否會發(fā)生,具體計算方法如下:
(10)
式中:是從無人機到動態(tài)障礙物圓心的相對位置向量的單位向量。若()≤0,則說明無人機在時刻是朝著遠離障礙物的方向運動,此時不會發(fā)生碰撞,不用采取避障行為;若()>0,則說明無人機在時刻是朝著靠近障礙物的方向運動,可能會發(fā)生碰撞。由于無人機和障礙物的運動軌跡不能提前預知,假設無人機和障礙物仍按照當前速度方向和大小繼續(xù)運動,計算它們繼續(xù)運動直到二者距離最近的時刻Δ,具體計算方法如下:
(11)
Δ的具體計算方法如下:
(12)
根據(jù)Δ,可以進一步計算出無人機和障礙物球心之間的最近距離,即
(13)
如果這個最近距離(+Δ)小于動態(tài)障礙物的半徑 和期望安全距離的和,即
(+Δ)≤ +
(14)
則說明無人機和障礙物若保持當前狀態(tài)繼續(xù)運動將會發(fā)生碰撞,無人機需對該障礙物采取避障行為。
定義為一種新的范數(shù),來代替歐式范數(shù)計算無人機之間的距離。歐式范數(shù)在=0處是不可導的,而范數(shù)在各處可微,可以用于構(gòu)造光滑的勢能函數(shù)。具體定義如下:
(15)
式中:>0。范數(shù)梯度的計算方法如下:
(16)
(17)
()=()(-)
(18)
(19)
(20)
圖3 φα(z)函數(shù)的變化趨勢Fig.3 Change trend of φα(z) function
()為0到1上連續(xù)光滑的碰撞函數(shù):
(21)
式中:用于確定空間鄰域中受力場影響最大的區(qū)域。在區(qū)域(0,)中,()=1,這時無人機受到動作函數(shù)()的影響最大。在該區(qū)域外,()從1遞減到0,()的影響也相應地遞減到0。越接近于1,則無人機受鄰域內(nèi)無人機的影響越大。
當無人機在時刻判斷出自身和動態(tài)障礙物在Δ時間后將發(fā)生碰撞,這時需要利用其最大加速度-進行降速使得無人機與障礙物的相對速度()迅速降為零。這一過程中,無人機運動的距離(())計算如下:
(22)
同時,計算時刻無人機與障礙物之間的最短距離((), ()),即
(23)
(24)
具體計算方法如下:
()=()((-)-1)
(25)
因此,無人機與動態(tài)障礙物之間的人工勢能函數(shù)設計如下:
(26)
通過計算無人機距離障礙物的最短距離和降速所需距離的差來體現(xiàn)所需排斥力的大小,這個距離差越小,則所需排斥力越大。
本文假設集群中存在一個虛擬領導者在給定的預設軌跡上飛行,虛擬領導者的位置信息和速度信息不受集群中其他無人機信息交互的影響。集群中所有無人機都具有探測障礙物的能力,并可獲取虛擬領導者的位置信息與速度信息。根據(jù)期望隊形的不同,各無人機與幾何參考點的相對向量由一致性包算法(consensus-based bundle algorithm, CBBA)分配得出,具體過程參考文獻[31]?;谝恢滦缘年犘伪3峙c重構(gòu)控制律如下:
=+++
(27)
式中:為虛擬領導者的加速度;為無人機與鄰域內(nèi)無人機之間的吸引力與排斥力,當無人機之間的距離小于隊形期望距離時,表現(xiàn)為斥力,且隨的減少而增大;當無人機之間的距離大于期望距離時,表現(xiàn)為引力,且隨的增大而減少;為動態(tài)障礙物與無人機間的排斥力,無人機越接近障礙物,排斥力越大;為無人機集群的隊形保持控制。
各項的具體表達式如下:
(28)
(29)
(30)
無人機與動態(tài)障礙物的人工勢能函數(shù)定義為
(31)
式中:(())是關于位置和速度的函數(shù);是由人工勢能函數(shù)分別對其位置和速度求偏導得到的,其中是控制參數(shù),取正常數(shù),即
(32)
其中
(33)
代表無人機的障礙物鄰域,表示所有障礙物的集合。的具體定義為
={(+Δ)≤ +|∈}
(34)
仿真設定三維空間中有7架無人機進行集群飛行且在行進途中存在動態(tài)障礙物。單架無人機的最大飛行速度=60 m/s,最大加速度=10 m/s。每架無人機的初始速度在[0,30]m/s×[0,30]m/s×[0,30]m/s中隨機產(chǎn)生,初始位置在[0,300]m×[0,300]m×[0,300]m中隨機產(chǎn)生。無人機集群中,相鄰無人機之間的期望距離為150 m,各無人機的通信半徑=300 m。集群中存在一個虛擬領導者,虛擬領導者的初始位置(0)=(150 m,150 m,150 m),初始速度(0)=(20 m/s,20 m/s,10 m/s),加速度=0??臻g中存在3個動態(tài)障礙物,障礙物1初始位置球心 (0)=(1 200 m,1 750 m,600 m),初始速度 (0)=(0 m/s,-3 m/s,-4 m/s),半徑為120 m并保持勻速運動,障礙物2初始位置球心為 (0)=(1 700 m,1 500 m,500 m),初始速度 (0)=(-1 m/s,0 m/s,5 m/s),半徑為200 m并保持勻速運動,障礙物3初始位置球心 (0)=(2 000 m,1 500 m,900 m),初始速度 (0)=(-3 m/s,-3 m/s,0 m/s),半徑為100 m并保持勻速運動。無人機與障礙物之間的期望安全距離=200 m。集群協(xié)同控制律的具體參數(shù)設置如下:=1,=5,=01,=02,=1,=25,==05,=1,=2,仿真步長設置為002 s。無障礙物下的無人機集群飛行時的期望隊形為圓形,避障時的集群期望隊形為一字形,避障后的集群期望隊形為頂角為60°的V字形隊形。整個集群飛行過程具體的仿真結(jié)果如圖4所示。
圖4 三維空間下無人機集群飛行全過程Fig.4 Whole process of UAV swarm flight in three-dimension space
從圖4(a)~圖4(f)的動態(tài)仿真結(jié)果可以看出,無人機集群能夠形成期望圓形隊形飛行。當探測到動態(tài)障礙物1后,集群檢測到不會與其發(fā)生碰撞,因此不采取避障措施。當探測到動態(tài)障礙物2和動態(tài)障礙物3后,集群檢測到會與其發(fā)生碰撞,因此變換為一字形集群隊形進行避障,并在成功躲避動態(tài)障礙物后進行隊形的重構(gòu),變換為V字形集群隊形保持飛行。
圖5描述了無人機集群飛行過程中的速度誤差與位置誤差的變化過程。圖5(a)表示的是各時刻集群中所有無人機的平均速度(軸、軸及軸)與虛擬領導者之間的速度誤差。圖5(b)表示的是各時刻集群中所有無人機距離虛擬領導者的實際相對距離(軸、軸及軸)與期望相對距離的位置誤差。可以看出,集群在經(jīng)過隊形變換與避障一系列動作后,最終與虛擬領導者的速度保持一致,達到集群的期望速度。同時,各架無人機與虛擬領導者之間達到了期望的相對距離,能夠保持期望集群隊形穩(wěn)定飛行。
圖5 無人機集群的速度誤差與距離誤差Fig.5 Speed error and distance error of the UAV swarm
圖6是集群中單架無人機距離動態(tài)障礙物的最短距離變化圖,描述了動態(tài)障礙物與每架無人機在每個時刻之間的最小距離(軸、軸及軸)。可以看出無人機集群與動態(tài)障礙物之間的最小距離始終大于0,并未發(fā)生碰撞。
圖7和圖8分別是集群飛行過程中各架無人機的加速度變化圖和速度變化圖??梢钥闯?在整個飛行過程中各架無人機的加速度和速度始終保持在約束范圍內(nèi)。
圖6 集群中單架無人機與動態(tài)障礙物之間的最短距離Fig.6 Minimum distance between UAVs and obstacles
圖7 集群中各架無人機的加速度變化圖Fig.7 Acceleration change of the UAVs
圖8 集群中各架無人機的速度變化圖Fig.8 Velocity change of the UAVs
根據(jù)圖4~圖8的描述與分析,可以看出本文設計的躲避動態(tài)障礙物下的無人機集群分布式隊形控制方法是有效的。在該方法的控制下,無人機集群可以在躲避動態(tài)障礙物的同時保持集群一字形隊形繼續(xù)飛行,并在避障結(jié)束后實現(xiàn)集群隊形的重構(gòu)。
圖9即為相同仿真環(huán)境下未引入預警機制的實際相對距離與期望相對距離平均誤差。可以看出相較于圖5(b),未引入預警機制的平均距離誤差明顯增大,即無人機進行了大量無效避障。其原因是本文提出的預警機制綜合考慮了無人機與障礙物的位置、相對速度等因素,因此在判斷相對速度無法造成相撞時不會進行避障,減少了不必要的規(guī)避航行距離,使得無人機能夠更好地維持集群隊形。
圖9 未引入預警機制的實際相對距離與期望相對距離平均誤差Fig.9 Average error between actual relative distance and expected relative distance without warning mechanism
本文主要研究了集群無人機動態(tài)避障下的分布式隊形保持與重構(gòu)控制方法。首先引入了一種針對動態(tài)障礙物的障礙預判機制,對預測到會發(fā)生碰撞的障礙物進行避障,而不考慮不會發(fā)生碰撞的障礙物對無人機集群飛行的影響,從而減少集群因避障而繞行的路程。其次,在無人機間和無人機與動態(tài)障礙物間構(gòu)造虛擬力場實現(xiàn)動態(tài)避障。最后,結(jié)合一致性算法和人工勢能法設計集群協(xié)同控制律實現(xiàn)集群動態(tài)避障下的分布式隊形控制。下一步研究方向是研究集群協(xié)同控制律中各控制項權(quán)重系數(shù)的優(yōu)化問題。