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