何 印,張鵬飛,馬振華,李亞文
1. 中北大學(xué)航空宇航學(xué)院,太原 030051 2. 中北大學(xué)智能武器研究院,太原 030051
隨著科學(xué)技術(shù)的發(fā)展,無人機(jī)技術(shù)開始應(yīng)用于農(nóng)田播種、森林搜救、邊境監(jiān)控、戰(zhàn)場干擾、電子對抗等民用和軍事領(lǐng)域。隨著任務(wù)和環(huán)境的復(fù)雜變化,單一無人機(jī)已經(jīng)難以滿足任務(wù)的需求,由多個(gè)無人機(jī)組成的無人機(jī)集群因其高效率、高魯棒、多功能及可擴(kuò)展等優(yōu)秀性能逐漸受到世界各國的重視。由于多無人機(jī)廣泛的應(yīng)用前景和巨大的作戰(zhàn)優(yōu)勢,多無人機(jī)的編隊(duì)控制技術(shù)研究成為當(dāng)前的一個(gè)研究熱點(diǎn)。
目前,對于多無人機(jī)編隊(duì)控制技術(shù)的研究已經(jīng)取得了部分成果,從控制結(jié)構(gòu)上分為集中式、分散式以及分布式3種。其中,分布式控制結(jié)構(gòu)中的一致性算法具備通信負(fù)載低、計(jì)算量小和魯棒性強(qiáng)的優(yōu)點(diǎn),受到了國內(nèi)外學(xué)者的廣泛關(guān)注[1]。
針對多無人機(jī)的一致性編隊(duì)控制研究問題,文獻(xiàn)[2]提出了一種適用于高速多無人機(jī)編隊(duì)的一致性控制算法,它能通過其他無人機(jī)的導(dǎo)航反饋來進(jìn)一步控制編隊(duì)隊(duì)形。文獻(xiàn)[3]針對包含無人機(jī)和無人車的異構(gòu)多智能體系統(tǒng),設(shè)計(jì)了基于模糊的滑模控制和一致性法相結(jié)合的控制方法,保證了編隊(duì)的收斂性。文獻(xiàn)[4]針對具有不確定參數(shù)的外部干擾影響的編隊(duì)飛行問題,提出了基于多變量模型自適應(yīng)控制的一致性控制方案。文獻(xiàn)[5]用虛擬中心和一致性控制算法相結(jié)合,完成了四旋翼無人機(jī)的編隊(duì)控制。
在多無人機(jī)編隊(duì)控制技術(shù)的基礎(chǔ)上,結(jié)合其他算法能夠?qū)崿F(xiàn)無人機(jī)的避障避碰控制。有學(xué)者將多無人機(jī)的避障避碰技術(shù)分為基于粒子群、蟻群、A*等優(yōu)化方法、基于人工勢場、速度障礙等勢場避障方法以及基于機(jī)器學(xué)習(xí)的避障方法[6]。
其中人工勢場法具有實(shí)現(xiàn)簡單、反應(yīng)快、適應(yīng)性良好的特點(diǎn),有學(xué)者將人工勢場法和一致性控制算法結(jié)合,用于解決無人機(jī)的避障避碰問題。文獻(xiàn)[7]針對多無人機(jī)躲避動態(tài)障礙物下的隊(duì)形控制問題,在一致性控制與人工勢場法的基礎(chǔ)上,引入了碰撞預(yù)判機(jī)制,以減少不必要的避障行為。文獻(xiàn)[8]提出了一種基于地球偏轉(zhuǎn)力改進(jìn)的人工勢場法,并與一致性控制方法相結(jié)合,實(shí)現(xiàn)編隊(duì)自組織避障。文獻(xiàn)[9]提出了用一致性法和改進(jìn)人工勢場法實(shí)現(xiàn)多無人機(jī)在高速飛行過程中的避碰控制。文獻(xiàn)[10]針對多無人機(jī)在三維障礙環(huán)境的避障和位置速度一致性問題,提出了基于協(xié)調(diào)增益和規(guī)劃角改進(jìn)的人工勢場法和一致性法相結(jié)合的編隊(duì)避障控制方法。該方法在避障避碰后,能夠快速恢復(fù)預(yù)期編隊(duì)隊(duì)形。
上述文獻(xiàn)提出的一致性編隊(duì)控制和人工勢場結(jié)合的控制方法充分考慮了無人機(jī)的避障避碰問題,但對無人機(jī)的機(jī)動約束問題缺乏考慮。
文獻(xiàn)[11]通過增加無人機(jī)的機(jī)動性約束條件對一致性法進(jìn)行了改良,并基于改良后的一致性法和粒子群優(yōu)化算法,提出了不同初始條件下的無人機(jī)運(yùn)動模型預(yù)測控制,實(shí)現(xiàn)了多無人機(jī)對靜態(tài)障礙物和動態(tài)障礙物的高效避障能力。文獻(xiàn)[12]基于一致性控制方法設(shè)計(jì)了兩種編隊(duì)成形策略,使多無人機(jī)能在約束條件下形成穩(wěn)定的編隊(duì)隊(duì)形,并避免了機(jī)間碰撞問題。文獻(xiàn)[13]針對無人機(jī)編隊(duì)飛行規(guī)劃問題,提出了一種基于多步粒子群優(yōu)化的無人機(jī)編隊(duì)航跡規(guī)劃算法,該算法能夠滿足不同飛行階段的約束條件,并能按照期望的航跡點(diǎn)進(jìn)行編隊(duì)飛行。文獻(xiàn)[14]提出了一種基于虛擬領(lǐng)航策略的分布式模型預(yù)測控制算法,解決了在狀態(tài)約束、輸入約束、機(jī)間避碰、機(jī)間通信、避障等多種約束情況下的軌跡跟蹤保持、編隊(duì)隊(duì)形保持。
上述文獻(xiàn)提出的編隊(duì)控制方法考慮了約束條件下的多無人機(jī)編隊(duì)控制與避障避碰問題,但對考慮機(jī)動約束條件下的編隊(duì)收斂速度缺乏相關(guān)討論研究。
針對上述文獻(xiàn)中的機(jī)動約束、機(jī)間碰撞以及編隊(duì)收斂速度等問題,本研究基于粒子群優(yōu)化算法對最優(yōu)一致性控制進(jìn)行速度優(yōu)化,并融入人工勢場思想,設(shè)計(jì)了用于實(shí)現(xiàn)最優(yōu)收斂時(shí)間的編隊(duì)控制方法,能夠在機(jī)動約束條件下,提升編隊(duì)的收斂速度,并避免無人機(jī)之間的碰撞。
本節(jié)首先描述無人機(jī)采用的坐標(biāo)系及其運(yùn)動模型,并根據(jù)實(shí)際應(yīng)用環(huán)境約束機(jī)動參數(shù),針對期望形成的編隊(duì)隊(duì)形,基于一致性理論優(yōu)化運(yùn)動模型,最后基于最優(yōu)控制和粒子群優(yōu)化算法改進(jìn)一致性編隊(duì)算法。
傳統(tǒng)的地面坐標(biāo)系OgXgYgZg以地面上的某一點(diǎn)為原點(diǎn)Og,本文以某架無人機(jī)的初始位置為原點(diǎn);Xg軸位于地平面內(nèi),指向某一方向;Yg軸與OXg垂直,處于地平面內(nèi);Zg軸與OgXgYg平面垂直,三軸的正向指向由右手螺旋定則確定,如圖:
圖1 地面坐標(biāo)系
圖中:將某時(shí)刻的無人機(jī)運(yùn)動分解為X,Y,Z三個(gè)方向的速度分量。其中:Vxy為水平方向的合速度,φ為無人機(jī)的航向角。
基于上述建立的地面坐標(biāo)系,本文采用常用的無人機(jī)運(yùn)動學(xué)模型:
(1)
式中:(xi,yi,zi)為第i架無人機(jī)在地面坐標(biāo)系中的位置,φi為第i架無人機(jī)的航向角,vxyi為第i架無人機(jī)在OXgYg平面內(nèi)的速度,vzi為第i架無人機(jī)在OZg軸方向上的速度,axyi為第i架無人機(jī)在OXgYg平面內(nèi)的加速度,azi為第i架無人機(jī)在OZg軸方向上的加速度,ωi為第i架無人機(jī)在OXgYg平面內(nèi)的角速度。其中各個(gè)變量的變化范圍如下:
(2)
對于整個(gè)多無人機(jī)編隊(duì)而言,編隊(duì)中的每架無人機(jī)在速度、加速度和角速度3個(gè)方面都需要滿足相同的約束條件。
無人機(jī)在實(shí)際應(yīng)用中,通常采用帶自動駕駛儀的三自由度運(yùn)動模型,本文根據(jù)文獻(xiàn)[11]中對無人機(jī)運(yùn)動模型的處理方法,基于多無人機(jī)的編隊(duì)隊(duì)形,采用了如下運(yùn)動模型:
(3)
為了使多無人機(jī)形成期望編隊(duì)隊(duì)形,使用無人機(jī)之間的相對距離構(gòu)建相對位置矩陣:
(4)
式中:[xij,yij,zij]為第i架無人機(jī)和第j架無人機(jī)之間的距離,當(dāng)無人機(jī)形成編隊(duì)隊(duì)形時(shí),需要滿足以下條件:
(5)
式(5)表明:當(dāng)多無人機(jī)編隊(duì)趨于隊(duì)形穩(wěn)定時(shí),無人機(jī)之間的三維位置需要趨于式(4)的相對距離,無人機(jī)之間的速度需要趨于一致。
基于式(3)的運(yùn)動模型結(jié)合最優(yōu)一致性控制和粒子群優(yōu)化算法,設(shè)計(jì)了一種基于最優(yōu)收斂速度的一致性編隊(duì)控制方法,該方法能在滿足無人機(jī)運(yùn)動約束條件下,使多無人機(jī)快速穩(wěn)定地形成預(yù)期編隊(duì),并結(jié)合人工勢場思想,實(shí)現(xiàn)編隊(duì)過程中的無人機(jī)機(jī)間避碰能力。
為了使無人機(jī)的運(yùn)動速度達(dá)到最優(yōu)收斂,基于最優(yōu)一致性控制和粒子群優(yōu)化算法對無人機(jī)的飛行速度進(jìn)行優(yōu)化。文獻(xiàn)[15]中將一階最優(yōu)一致性控制算法描述為:
(6)
式中:ωp,ωc分別為位置一致性權(quán)重和控制消耗權(quán)重。基于一階最優(yōu)一致性控制和式(3)的運(yùn)動模型構(gòu)建的最優(yōu)一致性算法可表示為:
(7)
粒子群優(yōu)化算法通過個(gè)體的信息共享來解決全局最優(yōu)問題,本文以速度和加速度為參數(shù),求解當(dāng)前時(shí)刻的最優(yōu)速度,其速度的更新模型可表示為:
(8)
式中:v(τ)和a(τ)分別代表τ時(shí)刻的速度和加速度,ωα為非負(fù)數(shù)代表慣性權(quán)重,c1和c2代表粒子收斂到相應(yīng)狀態(tài)的學(xué)習(xí)率,r1和r2代表0~1的隨機(jī)數(shù),pv和gv分別代表局部最優(yōu)速度和全局最優(yōu)速度。其算法流程如圖2所示:
圖2 粒子群優(yōu)化算法流程圖
圖2中,對速度的優(yōu)化總共分為7步:
1)確定優(yōu)化的目標(biāo)和參數(shù);
2)利用當(dāng)前的參數(shù)信息對粒子群進(jìn)行初始化;
3)計(jì)算每個(gè)粒子的適應(yīng)度;
4)按照公式更新速度和加速度,并根據(jù)約束條件進(jìn)行優(yōu)化;
5)根據(jù)更新速度后的粒子適應(yīng)度計(jì)算個(gè)體最優(yōu)值,隨后與歷史最優(yōu)值進(jìn)行比較,保留更優(yōu)的個(gè)體最優(yōu)值;
6)將最優(yōu)值和群體歷史最優(yōu)值進(jìn)行比較,保留更優(yōu)的群體最優(yōu)值;
7)判斷迭代條件,滿足迭代條件則結(jié)束當(dāng)前優(yōu)化,否則轉(zhuǎn)第3步繼續(xù)進(jìn)行優(yōu)化;
為了避免機(jī)間碰撞,本節(jié)通過人工勢場思想設(shè)計(jì)機(jī)間避碰算法,當(dāng)無人機(jī)間距小于安全距離時(shí),增加無人機(jī)之間的排斥力,當(dāng)無人機(jī)間距大于安全距離時(shí),保持原狀態(tài)飛行,如圖示:
圖3中:r為無人機(jī)的尺寸大小,R為避碰半徑大小,ρ為無人機(jī)之間的距離。傳統(tǒng)人工勢場法的斥力模型如下:
圖3 機(jī)間避碰示意圖
(9)
式中:k為斥力系數(shù),ρi為無人機(jī)與障礙物的距離,R為避障范圍。然而傳統(tǒng)的斥力模型沒有考慮無人機(jī)尺寸大小,無法直接應(yīng)用于機(jī)間避碰。同時(shí)為了使避碰軌跡更加平滑,選用余切函數(shù)作為勢場函數(shù)改進(jìn)斥力模型,改進(jìn)后的斥力模型如式(10)。
(10)
改進(jìn)后的斥力模型充分考慮了無人機(jī)自身的尺寸大小和勢場函數(shù)的優(yōu)化。然而,還存在斥力方向與速度方向共線的局部振蕩缺陷,如圖4所示。
圖4 機(jī)間避碰局部振蕩示意圖
圖5 斥力方向改進(jìn)示意圖
圖中:1號無人機(jī)到達(dá)1'號期望位置的速度方向和2號無人機(jī)對1號無人機(jī)的斥力方向共線,使其在當(dāng)前位置不斷往復(fù)振蕩,無法形成完整的隊(duì)形。為了避免這種情況,通過改變斥力方向,使其脫離局部振蕩點(diǎn),改變后的斥力方向如下:
圖中:將局部振蕩點(diǎn)的斥力減小θ角度后,使其脫離與速度方向的共線狀態(tài),避免局部振蕩。最后,將機(jī)間避碰模型和最優(yōu)一致性控制算法結(jié)合形成具有機(jī)間避碰的最優(yōu)一致性控制模型:
(11)
以4架無人機(jī)組成方形隊(duì)形為例,分別設(shè)計(jì)了具有機(jī)間避碰的一致性控制算法以及基于最優(yōu)收斂時(shí)間和機(jī)間避碰的一致性控制算法2種案例進(jìn)行對比分析編隊(duì)控制效果、機(jī)間避障效果以及編隊(duì)收斂效果。無人機(jī)的機(jī)動約束參數(shù)如下:
表1 無人機(jī)機(jī)動約束參數(shù)
4架無人機(jī)的通信拓?fù)溧徑泳仃嚍?
(12)
期望編隊(duì)隊(duì)形的相對位置矩陣Rx,Ry,Rz分別為:
(13)
表2 無人機(jī)初始參數(shù)
圖6 無人機(jī)飛行軌跡及機(jī)間距離圖
圖6顯示了無人機(jī)的飛行軌跡,圖6(a)中,無人機(jī)由于Z方向上的速度慣性,使無人機(jī)高度在軌跡前段部分超出預(yù)期值,隨后逐漸降低,最終收斂于期望高度z*。圖6(b)中顯示了每架無人機(jī)之間的間隔距離,其中所有無人機(jī)的間隔均大于最小間隔,避免了機(jī)間碰撞的發(fā)生。隨著時(shí)間變化,所有無人機(jī)之間的間隔距離逐漸滿足式(13)所設(shè)定的期望編隊(duì)間距。
圖7~8為每架無人機(jī)的速度和加速度變化情況,其中所有無人機(jī)的速度和加速度都處于約束限制之內(nèi),并逐漸趨于一致。部分無人機(jī)的間距在0~5 s內(nèi)越來越小,雙方產(chǎn)生的斥力對其速度、加速度的影響較為明顯,在5~10 s內(nèi)由于水平速度達(dá)到期望值,其加速度驟然降低,并逐漸趨于0。
圖7 無人機(jī)飛行速度變化圖
圖8 無人機(jī)加速度變化圖
圖9顯示了整個(gè)多無人機(jī)編隊(duì)的期望狀態(tài)一致性收斂時(shí)間,其中優(yōu)化后的控制方法使多無人機(jī)整體運(yùn)動在17.9 s內(nèi)達(dá)到了設(shè)定的期望誤差之內(nèi),基礎(chǔ)控制方法則在19.1 s內(nèi)達(dá)到期望運(yùn)動狀態(tài),兩者相比優(yōu)化后的方法使多無人機(jī)的編隊(duì)收斂時(shí)間縮短了1.2 s,收斂性能提升了6.28%。
圖9 多無人機(jī)整體收斂時(shí)間圖
針對多無人機(jī)編隊(duì)的收斂時(shí)間問題,提出了一種基于最優(yōu)一致性和粒子群優(yōu)化的編隊(duì)控制方法。通過與人工勢場思想結(jié)合,建立機(jī)間勢場函數(shù),解決無人機(jī)之間的碰撞問題。與基礎(chǔ)方法相比,該方法能使多無人機(jī)在約束條件下達(dá)到期望的運(yùn)動狀態(tài),形成穩(wěn)定的編隊(duì)隊(duì)形,并避免了無人機(jī)之間的碰撞,同時(shí)使多無人機(jī)編隊(duì)的收斂時(shí)間縮短了1.2 s。最后通過仿真實(shí)驗(yàn)表明了該方法的有效性。