張志雄, 楊凱軍
(陜西科技大學(xué)電氣與控制工程學(xué)院,西安 710000)
近年來,多智能體系統(tǒng)在工業(yè)制造、航空航天以及軍事作戰(zhàn)等領(lǐng)域表現(xiàn)出巨大潛力,逐漸成為計算機科學(xué)、控制理論與人工智能等領(lǐng)域研究的熱點,如圍堵控制[1]、編隊控制[2]、共識控制[3]和交會控制[4]等。
編隊控制的目的是通過控制具有一定執(zhí)行和信息交互能力的智能體運動使多智能體系統(tǒng)跟蹤參考編隊隊形。多智能體系統(tǒng)編隊控制在移動機器人[5]、無人機(UAV)[6]和自主水下航行器(AUV)[7]等領(lǐng)域有著廣闊的應(yīng)用前景。
根據(jù)給定計算資源和通信環(huán)境的不同,多智能體編隊控制可分為集中式[8]和分布式[9]兩種控制策略。集中式策略通過含有環(huán)境和智能體信息的中央控制單元來控制智能體形成編隊,但是存在編隊規(guī)模小、容錯率差和缺乏靈活性等不足。相比于集中式的控制策略,在分布式控制策略中每個智能體只接收其相鄰智能體的相關(guān)信息,所以分布式控制策略的可擴展性和靈活性更高,計算效率更高。常用的分布式編隊控制策略主要有領(lǐng)導(dǎo)跟隨法[10]、虛擬結(jié)構(gòu)法[11]和基于行為的方法[12]。相較于其他兩種方法,領(lǐng)導(dǎo)跟隨法不僅能夠在靜態(tài)環(huán)境中保持編隊控制的準(zhǔn)確性和穩(wěn)定性,而且也能在動態(tài)環(huán)境下獲得期望編隊隊形。
受環(huán)境因素的制約,多智能體編隊在執(zhí)行任務(wù)的過程中,不可避免地出現(xiàn)智能體之間的碰撞和通信中斷現(xiàn)象,所以,如何既能合理地避免這些情況又能最大限度地保持編隊隊形,是多智能體編隊控制的重點研究方向之一。常用的避碰技術(shù)主要有基于優(yōu)化的方法[13]和人工勢場法[14]。相較于基于優(yōu)化的方法,人工勢場法的避碰算法通過設(shè)計排斥勢函數(shù)和吸引勢函數(shù)來實現(xiàn)避碰,具有控制器設(shè)計簡單、更新參數(shù)少、實時避碰且路徑平滑的優(yōu)點。人工勢場法的基本思想是將多智能體系統(tǒng)所處的環(huán)境看作混合勢力場,智能體之間因為距離變化而產(chǎn)生斥力和引力,由斥力和引力的合力決定智能體的前進方向[15]。智能體間的通信會受相鄰智能體距離和外部噪聲[16]的影響,相鄰多智能體之間的距離過遠(yuǎn)會導(dǎo)致信息傳輸失敗,甚至影響多智能體系統(tǒng)編隊的實際效果。所以在設(shè)計人工勢場函數(shù)時,不僅要考慮智能體避碰區(qū)域的最小半徑,還要考慮智能體信號檢測區(qū)域的半徑。文獻[17]在設(shè)計控制器時,只考慮了編隊控制和避碰控制,而忽略了智能體之間的連通性。
基于上述論述和文獻[18],本文提出了具有避碰和保持連通的多智能體魯棒編隊控制協(xié)議,其目標(biāo)是控制多智能體系統(tǒng)在保證智能體之間的避碰和連通性前提下形成期望編隊,然后以特定的編隊隊形跟蹤領(lǐng)導(dǎo)者的軌跡。仿真結(jié)果表明,本文設(shè)計的控制協(xié)議具有良好的魯棒性以及保證避碰和連通性的效果。
首先用圖論來描述二階非線性多智能體系統(tǒng)的通信拓?fù)洌缓蠼榻B相關(guān)引理和定義。
L=D-A
(1)
式中,矩陣D=diag(d1,…,dn)。
跟隨者與領(lǐng)導(dǎo)者之間的通信權(quán)值矩陣用B表示,定義矩陣B=diag(b1,b2,…,bn)。當(dāng)且僅當(dāng)跟隨者i能夠接收到領(lǐng)導(dǎo)者信息時,bi>0。在編隊中必須保證至少有一個跟隨者能夠接收到領(lǐng)導(dǎo)者信息,因此b1+…+bn>0。
定義1記Zn={ai∈Rn×n:ai≤0}表示實矩陣集合,并且非對角元素都是非正的。如果存在一個矩陣A滿足A∈Zn并且A中的所有特征值都有正的實部,則稱非奇異矩陣A為M矩陣。
引理1[19]若A∈Zn,那么下面的表述是等價的:
1) 矩陣A是一個M矩陣;
2) 矩陣A可以寫成A=ηIn-B,其中,B≥0,η>max1≤i≤n|λi(B)|;
3) 存在正定的對角矩陣Λ=diag(ξ1,…,ξn),滿足ΛA+ATΛ>0;
4) 存在一個正向量x∈Rn,滿足Ax>0。
引理2[20]對于一個非負(fù)矩陣C=(ci j)n×n,存在兩個實向量x=[x1,…,xn]T和y=[y1,…,yn]T,有
(2)
引理3(Schur補引理)[21]
1)S?0;
本章將介紹二階非線性多智能體系統(tǒng)的動力學(xué)和避碰、連通性的模型。
考慮二階非線性多智能體系統(tǒng)中跟隨者i的動力學(xué)模型為
(3)
式中:xi(t)∈Rm,表示跟隨者i的位置;vi(t)∈Rm,表示跟隨者i的速度;ui(t)∈Rm,表示跟隨者i的控制輸入;fi(xi(t),vi(t))∈Rm,表示跟隨者i動力學(xué)行為的非線性項;di(xi(t),vi(t))∈Rm,表示跟隨者i受到的外部干擾。
領(lǐng)導(dǎo)者的動力學(xué)模型為
(4)
式中:x0(t)∈Rm,表示領(lǐng)導(dǎo)者的位置;v0(t)∈Rm,表示領(lǐng)導(dǎo)者的速度;f0(x0(t),v0(t))∈Rm,表示領(lǐng)導(dǎo)者動力學(xué)行為的非線性項。
本文的控制目標(biāo)是通過設(shè)計具有避碰和保持連通的魯棒編隊控制律,控制二階非線性多智能體系統(tǒng)在保證智能體之間的避碰和連通性的前提下形成期望編隊,然后以特定的編隊隊形跟蹤領(lǐng)導(dǎo)者的軌跡。當(dāng)編隊形成時,領(lǐng)導(dǎo)者與跟隨者之間的相對位置和速度應(yīng)當(dāng)滿足
(5)
式中,χi∈Rm,表示在參考編隊中跟隨者i與領(lǐng)導(dǎo)者的相對位置。當(dāng)多智能體系統(tǒng)形成編隊時,跟隨者與領(lǐng)導(dǎo)者之間的位置差將收斂到一個由參考編隊給定的期望值,并且跟隨者彼此之間保持理想的相對位置狀態(tài)跟蹤領(lǐng)導(dǎo)者的軌跡和速度。
為了實現(xiàn)智能體之間的避碰和通信暢通,在智能體的可行空間中利用人工勢場法建立合適的勢函數(shù),驅(qū)使智能體沿著勢函數(shù)的負(fù)梯度方向移動,直到完成控制目標(biāo)。具體來說,就是將每個智能體看作一個高勢場,當(dāng)其他智能體與其之間的距離較小或較大時,2個智能體之間會產(chǎn)生排斥力或者吸引力,驅(qū)使智能體相互遠(yuǎn)離或者靠近,最終達到保證避碰和連通的目的。
圖1所示為智能體的避碰和保持連通區(qū)域。
圖1 智能體的避碰和保持連通區(qū)域Fig.1 Collision avoidance and connection preservation regions of the agent
如圖1所示,基于人工勢場法為每個智能體(Agent)定義了3個固定的圓形區(qū)域:智能體的剛體面積、避碰區(qū)域和保證通信暢通區(qū)域。當(dāng)其他智能體進入避碰區(qū)域時,觸發(fā)斥力函數(shù)使有碰撞傾向的智能體相互排斥,達到避碰效果;而當(dāng)相鄰2個智能體之間的距離即將達到智能體的通信半徑時,觸發(fā)引力函數(shù)驅(qū)使2個有通信中斷趨勢的智能體相互吸引,從而保證智能體之間信息暢通??紤]到智能體的剛體面積和物理慣性,用rin表示智能體的剛體半徑,rout表示斥力場作用范圍,R表示智能體的引力場范圍。
為了實現(xiàn)具有避碰和保持連通的領(lǐng)導(dǎo)跟隨魯棒編隊控制,分別采用分布式控制法和人工勢場法設(shè)計編隊控制律以及避碰和保持連通控制律。
由跟蹤誤差式(5)可知,編隊控制包括由領(lǐng)導(dǎo)者和跟隨者的狀態(tài)決定的位置差和速度差兩個協(xié)同變量,為了使個體的協(xié)同變量達到一致,基于一致性算法設(shè)計的分布式編隊控制項為
(6)
智能體i和j之間的距離滿足||
xi j||
=||
xi-xj||
基于人工勢場法設(shè)計一個斥力函數(shù)φr(||
xi j||
)來保證智能體i在進入到智能體j的避碰區(qū)域后會受到排斥力,使智能體i向遠(yuǎn)離智能體j的方向移動,從而實現(xiàn)智能體之間的避碰。斥力函數(shù)構(gòu)造如下
(7)
則智能體i的避碰控制項為φr(||
xi j||
)的負(fù)梯度導(dǎo)數(shù)
(8)
保證連通性控制的目標(biāo)是使相鄰的智能體之間的距離始終滿足||
xi j||
∈(rout,R)??紤]到智能體在期望編隊中的相對位置,引力函數(shù)設(shè)計為
(9)
智能體i的保證連通性控制輸入為φR(||
ei j||
)的負(fù)梯度導(dǎo)數(shù),定義為
(10)
基于式(6)、式(8)和式(10),由線性疊加原理可得,具有避碰和連通性的領(lǐng)導(dǎo)跟隨魯棒編隊控制律為
。
(11)
本節(jié)主要研究由式(3)和式(4)定義的二階非線性多智能體系統(tǒng)的穩(wěn)定性。領(lǐng)導(dǎo)跟隨多智能體閉環(huán)系統(tǒng)定義為
(12)
為了解決編隊控制中智能體的非線性動力學(xué)項和受到的有界噪聲對系統(tǒng)的影響,則針對式(12)閉環(huán)系統(tǒng)做如下兩個假設(shè)。
假設(shè)1 假設(shè)式(12)中的非線性函數(shù)fi(xi(t),vi(t))動態(tài)地滿足Lipschitz條件,即?fi/?xj是連續(xù)可微的函數(shù)向量,則存在非負(fù)常數(shù)矩陣P=(pi j)n×n和Q=(qi j)n×n滿足
(13)
假設(shè)2 假設(shè)多智能體系統(tǒng)中不確定的外部干擾di(xi(t),vi(t))是有界的,所以存在一個已知的函數(shù)D(·)滿足di(xi(t),vi(t))≤Di(xi(t),vi(t))。
注1 在多智能體領(lǐng)域中,干擾有界是很常見的假設(shè)。比如在實際應(yīng)用中遇到的常值干擾、諧波干擾等多種干擾都滿足這種假設(shè)。
下面將用李雅普諾夫定理來分析式(12)系統(tǒng)的穩(wěn)定性。首先構(gòu)造一個李雅普諾夫候選函數(shù)
(14)
(15)
基于假設(shè)1,記
(16)
(17)
對式(14)中的V(t)求導(dǎo),可得
(18)
(19)
(20)
從式(20)可以看出,通過假設(shè)1和引理2成功地將多智能體系統(tǒng)中復(fù)雜的不確定的非線性問題轉(zhuǎn)化為簡單的確定的線性問題,提高了系統(tǒng)的魯棒性。結(jié)合式(20),式(19)可以寫為
(21)
。
(22)
由人工勢場函數(shù)和拉普拉斯矩陣的性質(zhì),式(22)的上界為
(23)
從上式可知,存在大于零的常數(shù)γ和θ滿足
(24)
(25)
綜上所述,若假設(shè)1和假設(shè)2成立,則根據(jù)李雅普諾夫定理可以判定式(12)二階非線性多智能體系統(tǒng)是穩(wěn)定的,并且系統(tǒng)在式(11)控制協(xié)議的作用下可以形成具有避碰和保持系統(tǒng)連通的領(lǐng)導(dǎo)跟隨編隊并保持參考編隊隊形跟蹤領(lǐng)導(dǎo)者的軌跡和速度。
注2 與其他文獻中關(guān)于多智能體編隊的算法相比,本文設(shè)計的控制策略不僅考慮了多智能體系統(tǒng)的非線性和智能體之間的避碰,還解決了往往被忽略的通信連通問題,具有極大的現(xiàn)實意義。
通過對包含10個智能體的多智能體系統(tǒng)進行數(shù)值仿真,驗證了本文所提魯棒編隊控制律的有效性。
多智能體系統(tǒng)的通信拓?fù)浣Y(jié)構(gòu)如圖2所示,其中,0為領(lǐng)導(dǎo)者,1~9為跟隨者。只有跟隨者1,2和3能夠和領(lǐng)導(dǎo)者通信。
圖2 多智能體系統(tǒng)的通信拓?fù)浣Y(jié)構(gòu)Fig.2 Communication topology of MASs
系統(tǒng)的動力學(xué)模型由式(3)和式(4)給出,m=2,智能體的外部干擾項為di(xi(t),vi(t))=[2cos(1.5vi1(t)),2sin(vi2(t))]T,內(nèi)部的非線性動力學(xué)定義為:
本文設(shè)計了較為復(fù)雜的領(lǐng)導(dǎo)者軌跡方程:[x01(t),x02(t)]T=[cos(0.25v01(t)),100sin(0.01x01(t))]T;在期望編隊中,跟隨者和領(lǐng)導(dǎo)者的相對位置由χi=48·[cos(2(i-1)π/9),sin(2(i-1)π/9)]T定義。
基于通信拓?fù)鋱D和魯棒編隊控制律,多智能體系統(tǒng)最終形成了以領(lǐng)導(dǎo)者為圓心,跟隨者都在圓上的編隊,如圖3所示。
由圖3繪制的多智能體系統(tǒng)的軌跡和編隊形成過程可以清楚地看到,多智能體系統(tǒng)在一定時間內(nèi)形成期望編隊,然后以特定的編隊隊形跟蹤領(lǐng)導(dǎo)者的軌跡,并且保證智能體之間的避碰和連通性。
圖4繪制了所有跟隨者與領(lǐng)導(dǎo)者之間的距離隨時間的變化,結(jié)果表明,所有的距離都收斂到編隊期望||χi||2。圖5描述了任意2個智能體之間的距離隨時間的變化,滿足避碰和連通性的要求。
圖3 多智能體系統(tǒng)的軌跡Fig.3 Trajectory of MASs
圖4 跟隨者與領(lǐng)導(dǎo)者之間的距離Fig.4 Distance between followers and leader
圖5 跟隨者之間的距離Fig.5 Distance between followers
圖6繪制了所有跟隨者和領(lǐng)導(dǎo)者在水平方向和豎直方向上的速度差,可以看出,速度差都收斂到零,說明跟隨者可以跟蹤領(lǐng)導(dǎo)者的速度。
最后,每個跟隨者分別在水平方向和豎直方向上的控制輸入如圖7所示,在系統(tǒng)形成編隊之后,只需少量的控制輸出就可以維持多智能體系統(tǒng)的編隊隊形,從而節(jié)省控制器的設(shè)計成本。
仿真結(jié)果表明,通過本文設(shè)計的魯棒編隊控制律可以解決多智能體系統(tǒng)中存在未知的非線性項和外部干擾對編隊控制的影響,使跟隨者與領(lǐng)導(dǎo)者之間的位置和速度誤差以相當(dāng)高的精度趨近于零,并實現(xiàn)避免碰撞和保持系統(tǒng)連通性的目的。
圖6 跟隨者和領(lǐng)導(dǎo)者在水平和豎直方向上的速度差Fig.6 Velocity difference between followers and leader in horizontal and vertical directions
圖7 跟隨者在水平和豎直方向上的控制輸入Fig.7 Control inputs for the followers in the horizontal and vertical directions
本文研究了存在外部干擾的具有避碰和保持系統(tǒng)連通的二階非線性多智能體的魯棒編隊控制問題。利用分布式控制策略和人工勢場法設(shè)計魯棒編隊控制器,解決了多智能體系統(tǒng)在形成編隊時的領(lǐng)導(dǎo)跟隨、易發(fā)生碰撞和系統(tǒng)連通性的問題,并通過理論分析證明了系統(tǒng)的穩(wěn)定性。最后,用仿真實例驗證了算法的有效性。