王希銘,孫金生,李志韜,吳梓杏
(南京理工大學(xué)自動化學(xué)院,江蘇南京 210094)
多智能體協(xié)同控制在傳感器網(wǎng)絡(luò)[1–2]、電力系統(tǒng)[3]、集群機(jī)器人[4–5]等分布式系統(tǒng)中應(yīng)用廣泛,近年來持續(xù)受到研究者的關(guān)注.多智能體蜂擁控制通過設(shè)計分布式的蜂擁策略,使得智能體利用局部信息或預(yù)先約定的信息實現(xiàn)集群運(yùn)動.為了更好地符合實際系統(tǒng)中智能體通信能力存在限制的情況,蜂擁控制假設(shè)每個智能體僅僅與一定距離之內(nèi)的智能體通信并實現(xiàn)集群運(yùn)動,使得蜂擁控制較編隊控制具有更好的魯棒性與靈活性.目前,已有的蜂擁控制算法多數(shù)假定智能體為雙積分粒子[6–10].這一假設(shè)便于控制器的設(shè)計與相應(yīng)的理論分析.但同時也要注意到,雙積分模型僅僅考慮了智能體的位置和速度,但忽略了諸如質(zhì)量、摩擦力、重力等因素.因此,使用更加符合實際應(yīng)用場景的多智能體模型可以進(jìn)一步提升蜂擁算法的理論價值和應(yīng)用價值.
最近,考慮到實際系統(tǒng)中往往具有復(fù)雜的非線性特性,面向Euler–Lagrange(EL)多智能體模型的蜂擁算法設(shè)計成為了熱點問題.EL模型作為擴(kuò)展的二階系統(tǒng)模型,具備良好的模型描述能力,既可以描述諸如質(zhì)量、摩擦力、重力等因素,也可以廣泛地對移動機(jī)器人[11]、衛(wèi)星[12]、機(jī)械臂[13]等系統(tǒng)進(jìn)行建模.本文考慮不確定項可以被線性回歸的情況,即模型中的不確定部分可以分解為已知的回歸矩陣和未知的模型參數(shù)(下面簡稱參數(shù)),這在降低建模成本的同時提高了控制器的魯棒性.因此,基于不確定EL多智能體模型的協(xié)同控制算法受到越來越多的關(guān)注[12,14–20].
在已有文獻(xiàn)中,主要使用兩種方法處理模型中的不確定性:高增益方法和自適應(yīng)方法.在高增益方法中,模型中的不確定性項被視作擾動[21–22],使用足夠大的增益補(bǔ)償擾動使得系統(tǒng)穩(wěn)定.高增益方法具有對模型的假設(shè)較少,適用性強(qiáng)的優(yōu)點,但高增益容易帶來抖動(chatting)的問題.在自適應(yīng)方法中,算法依靠自適應(yīng)率估計不確定項中的未知參數(shù).在這種方法中,一旦估計參數(shù)收斂于實際參數(shù),那么不確定項的作用就可以被控制器抵消,從而實現(xiàn)系統(tǒng)的穩(wěn)定.然而,一個廣為人知的結(jié)論是,只有當(dāng)回歸矩陣滿足持續(xù)激勵(persistently exciting)條件時,估計參數(shù)才會收斂于實際參數(shù)[23].但在大多數(shù)系統(tǒng)中,回歸矩陣是否滿足持續(xù)激勵條件難以在線判斷[24],并且隨著系統(tǒng)的狀態(tài)趨于穩(wěn)定,持續(xù)激勵條件也越來越難以滿足.雖然文獻(xiàn)[12,16,25–26]分別利用自適應(yīng)控制設(shè)計了蜂擁控制算法并使得系統(tǒng)穩(wěn)定,但這些算法不能保證估計參數(shù)收斂到實際參數(shù),從而嚴(yán)重影響了控制器的性能[27].為了降低或消除控制器性能的下降,一種簡單的處理方法是為自適應(yīng)律設(shè)置較大的增益,以期望系統(tǒng)在尚未穩(wěn)定之前,盡可能地使得估計參數(shù)向?qū)嶋H參數(shù)靠近,從而獲得更小的估計誤差.然而,文獻(xiàn)[28–29]指出,自適應(yīng)律中增益存在最優(yōu)值,這意味著選擇過大的增益反而會降低估計參數(shù)的收斂速度.此外,對于蜂擁控制這種分布式的系統(tǒng)來說,僅僅使用局部信息為每個智能體計算出最優(yōu)增益是十分困難的.因此,研究如何使得自適應(yīng)蜂擁系統(tǒng)中的估計參數(shù)收斂到實際參數(shù)是十分必要的.
為了降低自適應(yīng)系統(tǒng)中估計參數(shù)收斂對持續(xù)激勵條件的依賴,研究者提出了基于經(jīng)驗回放的自適應(yīng)方法.Chowdhary等[24,27]首次提出了并行學(xué)習(xí)自適應(yīng)控制(concurrent learning(CL)adaptive control).首先,這種控制方法在不同時刻記錄系統(tǒng)的狀態(tài)與輸入等信息,從而利用這些信息之間的關(guān)系獲得參數(shù)估計誤差;然后,通過設(shè)計新的自適應(yīng)率以回放這些經(jīng)驗數(shù)據(jù),使得估計參數(shù)收斂到實際參數(shù).文獻(xiàn)[30]指出,相比較于持續(xù)激勵條件,并行學(xué)習(xí)自適應(yīng)控制中估計參數(shù)的回歸依賴于間歇激勵(interval excitation)條件[31].間歇激勵條件比持續(xù)激勵更弱,在常見系統(tǒng)中容易滿足.最近,為了避免并行學(xué)習(xí)自適應(yīng)控制中對系統(tǒng)狀態(tài)導(dǎo)數(shù)信息的需求,Parikh等[32]提出了一種積分型的并行學(xué)習(xí)自適應(yīng)控制(integral CL adaptive control).這種算法的特點是通過積分算子獲得估計參數(shù)的誤差信息.但由于在實際系統(tǒng)中積分器的數(shù)值有限,因此該算法需要不斷重置積分器以避免飽和.為了進(jìn)一步提高蜂擁算法的魯棒性,本文首先改進(jìn)了積分形并行學(xué)習(xí)自適應(yīng)控制,設(shè)計了濾波器以取代微分器,從而在無需系統(tǒng)狀態(tài)導(dǎo)數(shù)信息的同時,避免了記錄數(shù)據(jù)時的重置步驟;然后通過設(shè)計蜂擁控制算法以及自適應(yīng)率,實現(xiàn)了智能體對虛擬領(lǐng)導(dǎo)者的追蹤,碰撞避免,形成預(yù)期隊形等控制目標(biāo).
考慮由N個EL粒子組成的n維多智能體系統(tǒng)
假設(shè)3方程(1)的不確定項可以分別被如下非線性參數(shù)化,對于任意向量α ∈Rn和β ∈Rn,下述公式成立:
注1假設(shè)3要求模型中的未知參數(shù)可以與已知部分分離.在實際系統(tǒng)中,若該假設(shè)不被滿足,則可以使用徑向基神經(jīng)網(wǎng)絡(luò)逼近Y2,i.此時,徑向基神經(jīng)網(wǎng)絡(luò)的設(shè)計可以參考文獻(xiàn)[34].
根據(jù)假設(shè)3,方程(1)的左側(cè)第1項到第4項可以被如下非線性參數(shù)化:
傳統(tǒng)蜂擁控制中,虛擬領(lǐng)導(dǎo)者往往被假設(shè)具有固定的速度[10,35],對蜂擁算法在實際系統(tǒng)中的應(yīng)用造成不便.與文獻(xiàn)[12]類似,本文假設(shè)虛擬領(lǐng)導(dǎo)者q0的信號足夠光滑,從而允許智能體跟蹤具有加速度的虛擬領(lǐng)導(dǎo)者.
圖論模型是描述多智能體系統(tǒng)通信結(jié)構(gòu)的常用數(shù)學(xué)工具.在本文中,無向圖G=(V,E,W)用來描述智能體之間的通信結(jié)構(gòu),其中V={1,···,N}是頂點集,E={(i,j):i,j ∈V,∥qi ?qj∥≤r}是邊集,W=[wij]∈RN×N是權(quán)重矩陣.這里,常數(shù)r >0是智能體之間的最大通信距離.如果兩個智能體對應(yīng)的頂點之間存在邊,則稱其為相鄰智能體.使用集合Ni={j:(i,j)∈E}表示第i個智能體的相鄰集.使用D和A分別表示圖G的度矩陣和鄰接矩陣,若所有的權(quán)重wij≥0,則圖的拉普拉斯L=D ?A半正定,對于向量q=下式成立:
濾波回歸器使用線性濾波器分離方程中的可觀測信號與未知參數(shù),在模型辨識與自適應(yīng)回歸算法中具有廣泛應(yīng)用[30].本節(jié)提出一種利用線性回歸器來處理EL模型(1)的方法,從而幫助后續(xù)自適應(yīng)率的設(shè)計.首先,式(1)可以等價地表示為
其次,考慮假設(shè)3,式(7)可以進(jìn)一步寫成
引理1(濾波回歸) 定義濾波變量Xi,Yi和Ti如下:
定義速度誤差信號vi為
注3根據(jù)θ1,i的定義,可知si≥n2≥n.根據(jù)矩陣秩的性質(zhì),可得為了使得假設(shè)4成立,則第i個智能體應(yīng)至少記錄個數(shù)據(jù)對.這里表示向上取整.
注4為了盡可能保證信號Wi在時間段[ta,tb]內(nèi)激勵,可以在t ∈[ta,tb]時在虛擬領(lǐng)導(dǎo)者的信號中添加擾動.通過在線檢驗,一旦假設(shè)4成立,即可以移除擾動并停止記錄數(shù)據(jù).
定義輔助變量xi=qi ?q0.考慮李雅普諾夫函數(shù)V:
注5根據(jù)文獻(xiàn)[35],如果所有相鄰智能體的間距都是l,則此時多智能體形成的隊形成為α晶格狀隊形;如果間距與l存在誤差,則被稱為準(zhǔn)α晶格狀隊形.同樣根據(jù)文獻(xiàn)[35]的中的結(jié)果,勢能場函數(shù)Vψ收斂到極小值暗示了系統(tǒng)形成準(zhǔn)α晶格狀隊形.
本節(jié)使用衛(wèi)星模型來驗證蜂擁算法的理論結(jié)果,并且類似的模型也在文獻(xiàn)[12]中被使用.根據(jù)文獻(xiàn)[36],衛(wèi)星的行為可以被下述模型描述:
假設(shè)質(zhì)量mi和重力加速度g都不可測.根據(jù)非線性參數(shù)歸回的假設(shè),設(shè)置θi=以及
考慮10個EL粒子組成的多智能體系統(tǒng),仿真時間為60 s,最大通信距離r=1.2,預(yù)期間距1.0,模型中的參數(shù)為mi=1,g=9.8.智能體的初始位置在x軸和y軸上的分量設(shè)置為區(qū)間[0,5]內(nèi)的隨機(jī)值,在z軸上的分量設(shè)置為?5.智能體的初始速度在每個坐標(biāo)軸上的分量都設(shè)置為區(qū)間[?5,5]內(nèi)的隨機(jī)值.領(lǐng)導(dǎo)者的質(zhì)量m0=1,初始位置為[5 0 0]T,初始速遞為[0 0.5 0]T.控制器(30)中的參數(shù)設(shè)置為:ka,i=1,kb=10,kc,i=1,kd,i=1,?θi的初值設(shè)置為[0 0 0]T.擠壓函數(shù)(29)中的參數(shù)為h=0.9.自適應(yīng)率(31)中的參數(shù)設(shè)置為:Γi=diag{1,1,1},Λi=diag{1,1,1}.濾波回歸器(9)–(11)中的參數(shù)設(shè)置為ai=3,并且在仿真時間內(nèi)每隔0.6 s采集一次數(shù)據(jù).本仿真的對比算法為文獻(xiàn)[12].
圖1給出了本文提出的算法和比較算法形成的軌跡以及系統(tǒng)在第1 s,22.5 s,40 s,60 s時形成的隊形,并且x表示智能體初始位置,圓點表示智能體,五角星表示領(lǐng)導(dǎo)者,每一條藍(lán)色實線表示一個智能體的軌跡,智能體之間的灰色實線表示對應(yīng)的兩個智能體之間可以相互通信,紅色虛線表示領(lǐng)導(dǎo)者的軌跡.可以看出,兩個算法都可以使得多智能體系統(tǒng)跟蹤虛擬領(lǐng)導(dǎo)者做蜂擁運(yùn)動,但本文提出的算法產(chǎn)生的軌跡較為平滑,對比算法給出的軌跡在30 s和40 s之間產(chǎn)生了較大的波動.這個波動產(chǎn)生的原因可以從參數(shù)估計方面給出.圖2給出了兩個算法中估計參數(shù)的收斂情況,圖中虛線表示3個參數(shù)的實際值,不同顏色的實線表示所有智能體在自適應(yīng)律的作用下對實際參數(shù)的估計.可以看出,本文設(shè)計的算法使得估計參數(shù)在40 s時收斂到實際值,并且收斂過程較為平穩(wěn),而對比算法中的估計參數(shù)在30 s和40 s之間產(chǎn)生了較大的變化,這導(dǎo)致了對比算法給出的控制輸入產(chǎn)生較大變換,從而對蜂擁系統(tǒng)的控制品質(zhì)造成了負(fù)面影響.
圖1 蜂擁軌跡Fig.1 Trajectories of flocking systems
圖2 估計參數(shù)隨時間的變化,其中虛線表示參數(shù)的實際值θi,實線表示參數(shù)的估計值Fig.2 Evolutions of estimated parameters,where dotted and solid lines represent parameters’actual and estimated values
根據(jù)圖3和圖4,這種負(fù)面影響直觀地體現(xiàn)在了對平均位置誤差和速度誤差上.相對于比較算法,本文提出的算法在平均位置誤差和速度誤差方面較小,而對比算法在30 s和40 s之間的誤差較大.最后,圖5驗證了碰撞避免的性能.由于仿真中使用了相對較大的勢能場增益(kb=10),因此兩個算法都較好地實現(xiàn)了碰撞避免.但需要注意的是,對比算法中智能體之間的最小距離在30 s和40 s之間產(chǎn)生了波動,這說明估計參數(shù)的收斂同樣可以提高碰撞避免的性能.
圖3 多智能體的平均位置誤差隨時間的變化Fig.3 Evolutions of the average position of all agents
圖4 多智能體的速度誤差隨時間的變化Fig.4 Evolutions of the velocity errors of all agents
圖5 多智能體最小間距隨時間的變化Fig.5 Evolutions of the minimal inter-distances of neighboring agents
本文研究了一種基于經(jīng)驗回放的面向于不確定Euler–Lagrange多智能體系統(tǒng)的分布式蜂擁控制問題.通過設(shè)置濾波回歸器并記錄足夠多的歷史數(shù)據(jù),在系統(tǒng)滿足間歇激勵條件并且不確定項可以被線性回歸的情況下,所提出的算法保證智能體對模型中參數(shù)的估計值收斂于實際值,從而顯著地提高了蜂擁系統(tǒng)的性能.為回歸濾波器選擇合適的參數(shù),可以保證在輸入信號有界的情況下,濾波器輸出的信號有界,從而避免了積分型并行學(xué)習(xí)自適應(yīng)算法中積分器需要重置的問題.在系統(tǒng)初始值滿足一定條件下,理論分析保證智能體之間不會發(fā)生碰撞.通過不變集分析,智能體的速度漸近收斂于領(lǐng)導(dǎo)者的速度,并最終在領(lǐng)導(dǎo)者的鄰域內(nèi)形成以領(lǐng)導(dǎo)者為幾何中心的準(zhǔn)α晶格狀隊形.
本文仿真實驗的代碼以及仿真數(shù)據(jù)見如下網(wǎng)址:https://doi.org/10.5281/zenodo.5576955.