楊 楊,劉奇東,陳笛笛,岳 東,竇春霞
(南京郵電大學自動化學院;人工智能學院,江蘇南京 210023)
近年來,多智能體系統(tǒng)在各領(lǐng)域廣泛應(yīng)用,如多無人機系統(tǒng)[1]、船舶編隊[2]、微電網(wǎng)系統(tǒng)[3]等.此類系統(tǒng)的研究受到控制領(lǐng)域普遍關(guān)注.
對于含未知動態(tài)的多智能體系統(tǒng)輸出一致問題,學者們?nèi)〉貌糠盅芯砍晒鸞4-10].該問題主要研究多智能體輸出一致情況,對于一類含有未知動態(tài)的非線性多智能體系統(tǒng),廣泛采用自適應(yīng)學習方法逼近不確定動態(tài),如模糊邏輯系統(tǒng)[4-5]和神經(jīng)網(wǎng)絡(luò)技術(shù)[6-10]等.以這類自適應(yīng)逼近方法為框架,學者們進一步研究一致問題中的輸入擾動[5]、拓撲切換[6-7]、執(zhí)行器故障[8]等復(fù)雜情況.為了減少多智能體系統(tǒng)中神經(jīng)網(wǎng)絡(luò)學習參數(shù)的數(shù)目,Yoo等學者提出了基于最少學習參數(shù)的神經(jīng)動態(tài)面輸出一致控制方法[9-10].但上述輸出一致控制方法[6-10]均未考慮神經(jīng)網(wǎng)絡(luò)逼近性能對控制效果的影響.
對于神經(jīng)網(wǎng)絡(luò)的逼近性能,較多學者展開了研究.在傳統(tǒng)神經(jīng)網(wǎng)絡(luò)動態(tài)面控制方法設(shè)計中使用誤差面更新神經(jīng)網(wǎng)絡(luò)權(quán)值.一般情況下,需要選取較大自適應(yīng)增益以獲得更好的逼近效果,但這將導致信號出現(xiàn)較大抖動,影響系統(tǒng)的控制性能.為了解決這個問題,Peng等學者在文獻[11]中構(gòu)造的預(yù)估器狀態(tài)與實際系統(tǒng)狀態(tài)構(gòu)成預(yù)估誤差,用以更新網(wǎng)絡(luò)權(quán)值.與傳統(tǒng)的誤差面信號更新方法[8]相比,該方法將系統(tǒng)辨識性能與跟蹤效果分離,并增加額外參數(shù)調(diào)節(jié)收斂速度.在此基礎(chǔ)上,文獻[12]將預(yù)估器引入到系統(tǒng)各階誤差面估計中,并使用預(yù)估誤差驅(qū)動自適應(yīng)參數(shù)更新.文獻[13]提出了復(fù)合神經(jīng)網(wǎng)絡(luò)學習方法,將跟蹤誤差和預(yù)估誤差同時用于權(quán)值更新.但上述文獻[11-13]中基于預(yù)估器的方法目前僅用于控制增益為1的一類嚴格反饋非線性系統(tǒng),更復(fù)雜的系統(tǒng)模型暫未涉及.
在實際系統(tǒng)中,智能體往往遭受外界未知擾動,亟需應(yīng)對處理[14].為了降低非匹配擾動的影響,現(xiàn)有大多數(shù)非線性擾動觀測器通過構(gòu)建系統(tǒng)狀態(tài)和中間變量差值相關(guān)的信息作為擾動補償項[15-16].在此基礎(chǔ)上,文獻[17-18]分別將模糊邏輯和神經(jīng)網(wǎng)絡(luò)應(yīng)用于擾動觀測器中,與逼近技術(shù)相結(jié)合估計系統(tǒng)未知動態(tài)和外部擾動.但是文獻[17-18]仍存在瞬態(tài)性能亟需改善和學習參數(shù)過多的問題.
輸入飽和是智能體遭受的另一類限制.若長時間處于輸入飽和狀態(tài)將損壞執(zhí)行器機構(gòu),如電機、方向舵等.文獻[19]構(gòu)造了實際輸入與期望輸入之差的補償函數(shù)以消除非線性輸入約束的影響.為了補償不確定非線性系統(tǒng)的非對稱輸入飽和,文獻[20]設(shè)計了包含輸入飽和誤差的高階輔助系統(tǒng),并將其引入至反步法設(shè)計中.雖然在文獻[20]考慮了非對稱輸入飽和,但其輔助系統(tǒng)仍需估計未知的控制增益.
結(jié)合以上研究成果,本文針對一類含未知擾動與非對稱輸入飽和的非線性多智能體系統(tǒng),采用基于預(yù)估誤差更新的神經(jīng)網(wǎng)絡(luò)、輔助系統(tǒng)以及圖論知識,在反步法框架下設(shè)計自適應(yīng)輸出一致控制策略.本文的主要貢獻有:
1) 提出一種基于預(yù)估誤差更新的神經(jīng)網(wǎng)絡(luò)非線性擾動觀測器.不同于傳統(tǒng)神經(jīng)網(wǎng)絡(luò)使用誤差面更新權(quán)值[10],本文提出由預(yù)估器產(chǎn)生的預(yù)估誤差更新神經(jīng)網(wǎng)絡(luò)權(quán)值,避免由于選擇不適當參數(shù)導致的高頻抖動現(xiàn)象.
2) 為一類非線性多智能體系統(tǒng)提出一種基于預(yù)估誤差更新的神經(jīng)網(wǎng)絡(luò)輸出一致簡捷控制策略.通過將神經(jīng)網(wǎng)絡(luò)權(quán)值范數(shù)化處理,減少學習參數(shù)個數(shù).與文獻[13]的控制方法相比,本文提出的輸出一致控制策略中學習參數(shù)個數(shù)與神經(jīng)網(wǎng)絡(luò)隱含層節(jié)點數(shù)無關(guān),僅僅取決于跟隨者各自的系統(tǒng)階數(shù).從而減少了控制策略計算時間,易于實際工程應(yīng)用.
3) 構(gòu)造輔助系統(tǒng)補償跟隨者非對稱輸入飽和.輔助系統(tǒng)根據(jù)輸入受制前后的偏差信號構(gòu)建,階數(shù)與跟隨者相同,每階輔助系統(tǒng)信號分別作用于反步法每一步虛擬控制律以及中間控制律中,以補償非對稱輸入飽和.相比于文獻[20]中的方法,本文設(shè)計的輔助系統(tǒng)應(yīng)用至多智能體系統(tǒng)中,并且不需要估計未知控制增益函數(shù),簡化輔助系統(tǒng)的設(shè)計.
為激活函數(shù)中心值,ξi表示函數(shù)的中心值寬度.
考慮由一個領(lǐng)導者和N個跟隨者構(gòu)成的多智能體系統(tǒng),其中第i個跟隨者的動力學模型為
本文中領(lǐng)導者信號yr光滑有界,其對時間導數(shù)有界.定義領(lǐng)導者與跟隨者之間的輸出一致跟蹤誤差eee=yyy ?(yr ?IN),其中,yyy=[y1··· yN]T,?為Kronecker積,IN是N維單位向量.若該誤差能夠收斂至原點的小鄰域內(nèi),則稱該多智能體系統(tǒng)達到輸出一致.本文的控制目標是設(shè)計自適應(yīng)控制策略,使得多智能體系統(tǒng)達到輸出一致,且閉環(huán)系統(tǒng)中所有信號最終有界.
定義第i個跟隨者的協(xié)同跟蹤誤差
并記作zzz1=[z1,1··· zN,1]T.根據(jù)圖論知識,有
對于式(5)變化可知系統(tǒng)的未知動態(tài)和未知控制增益可以通過一個神經(jīng)網(wǎng)絡(luò)進行逼近,但是這會使得反步法設(shè)計控制律時會出現(xiàn)代數(shù)環(huán)問題[22].為了解決此問題,引入一個濾波信號,則式(5)可重新表示為
注2對于存在的代數(shù)環(huán)問題實質(zhì)上就是所設(shè)計的控制策略等號兩邊同時出現(xiàn)同一信號.解決這個問題的方法之一是引入一個濾波信號來代替原信號,以避免代數(shù)環(huán)問題.由于實際系統(tǒng)中大多數(shù)物理執(zhí)行器具有低通特性,因此可選用一個合適的Butterworth低通濾波器獲得濾波信號.類似的處理方法可參閱文獻[22].
給出本文所需引理.
針對控制信號受限的第i個跟隨者,引入輔助系統(tǒng)補償輸入飽和.由κi=[κi,1···]T構(gòu)成輔助系統(tǒng),表示為
注4與文獻[20]提出的輔助系統(tǒng)有所不同的是,在式(7)中加入了系數(shù)+bi.這是第i個跟隨者及其相連智能體通信拓撲關(guān)系的結(jié)果.此外,由于跟隨者i系統(tǒng)模型的轉(zhuǎn)換(5),移除了輔助系統(tǒng)中對控制增益的估計.
注5輔助系統(tǒng)根據(jù)輸入受制前后的偏差信號構(gòu)建,其信號κi,k作用于每一步的虛擬控制律αi,k+1(或中間控制律vi)中來補償輸入飽和現(xiàn)象.當系統(tǒng)未進入飽和上下界時,Δui=0,根據(jù)初值κi,k(0)=0,輔助系統(tǒng)在控制策略中未起任何作用.當輸入飽和現(xiàn)象發(fā)生時,Δui0,輔助系統(tǒng)將產(chǎn)生輔助信號通過作用在虛擬控制律αi,k+1(或中間控制律vi)中補償.需要說明的是,由于誤差面定義中存在輔助系統(tǒng)信號,在確定協(xié)同誤差時需額外分析輔助系統(tǒng)補償信號的界限.
本文在反步法框架下設(shè)計協(xié)同控制策略,具體第i個跟隨者的控制策略設(shè)計步驟:
注6在現(xiàn)有的關(guān)于多智能體系統(tǒng)輸出一致的文獻[9]中,由于控制設(shè)計需要,式(8)中出現(xiàn)的不易獲得的鄰居輸出信號導數(shù)j,1,通常從系統(tǒng)模型入手將其轉(zhuǎn)換為關(guān)于xj,2的函數(shù).這就意味著每個跟隨者需要獲取鄰居信息xj,1和xj,2,將增加智能體間的通信量,且實際中xj,2本身亦有可能無法直接獲得.為了避免出現(xiàn)這些情況,本文使用微分跟蹤器通過xj,1信息來估計出j,1的值設(shè)計控制策略.
第k步(k=2,···,ni?1) 定義第k步誤差面=xi,k ?xi,kd ?κi,k,其導數(shù)有
圖1 第i個跟隨者控制策略框圖Fig.1 The block diagram of the ith follower
注8一般情況下,為獲得較好的跟蹤效果,自適應(yīng)增益參數(shù)一般選取得較大[11],但過大的不適當參數(shù)將導致高頻抖動現(xiàn)象,主要出現(xiàn)在系統(tǒng)運行初始狀態(tài)或系統(tǒng)動態(tài)發(fā)生突變時.這是由于在初始狀態(tài)或動態(tài)突變時,系統(tǒng)跟蹤誤差相對較大,而基于跟蹤誤差學習的方法因為過大的自適應(yīng)增益會進一步導致系統(tǒng)超調(diào)過大,出現(xiàn)抖動現(xiàn)象.本文用預(yù)測誤差來更新權(quán)值,將擾動、系統(tǒng)動態(tài)學習與跟蹤效果分離,分為兩個時間尺度,通過設(shè)計預(yù)估器初值和調(diào)節(jié)預(yù)估器增益使得預(yù)估誤差具有更快的收斂速度,避免高頻抖動現(xiàn)象.
注9本文使用一個自適應(yīng)參數(shù)來估計神經(jīng)網(wǎng)絡(luò)的權(quán)值范數(shù),減少了控制策略所需要的學習參數(shù)數(shù)量.具體說,單個跟隨者中,本文學習參數(shù)與隱含層節(jié)點數(shù)li,k無關(guān),只需ni個.對比地看,文獻[13,28]擾動觀測器設(shè)計中使用傳統(tǒng)神經(jīng)網(wǎng)絡(luò)逼近系統(tǒng)動態(tài),將會有個學習參數(shù),其中l(wèi)i,k為第i個跟隨者的第k階子系統(tǒng)所用神經(jīng)網(wǎng)絡(luò)的隱藏層節(jié)點個數(shù).進一步推廣,擴展到整個多智能體系統(tǒng)中,文獻[13,28]中神經(jīng)網(wǎng)絡(luò)學習參數(shù)增加至,而本文的控制策略中學習參數(shù)僅有個.控制策略學習參數(shù)個數(shù)對比如表1所示.
表1 控制策略學習參數(shù)個數(shù)對比Table 1 Comparison of the number of learning parameters
為了方便系統(tǒng)穩(wěn)定性分析,定義閉環(huán)控制系統(tǒng)誤差信號
以上信號對時間的導數(shù)分別為
下面給出本文的主要結(jié)果.
定理1考慮由含擾動和非對稱輸入飽和的跟隨者(1)構(gòu)成的多智能體系統(tǒng)在滿足假設(shè)1-4的情況下,設(shè)計基于預(yù)估誤差更新的神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制策略(14)(20)(27),以及預(yù)估器(11)(19)(26),自適應(yīng)律(12)(21)(28),擾動觀測器(10)(18)(25),可使閉環(huán)系統(tǒng)中所有信號最終有界,且多智能體輸出一致跟蹤誤差收斂到原點附近的鄰域內(nèi).
其中γi,k為式(18)中設(shè)計的正常數(shù).考慮引理1和上述不等式,式(33)可寫為
根據(jù)文獻[25]可知V是系統(tǒng)(29)(30)的一個輸入狀態(tài)實際穩(wěn)定(input-to-state practically stability,ISpS)Lyapunov函數(shù),則系統(tǒng)是輸入狀態(tài)實際穩(wěn)定的,且非線性L∞增益為
在本章中,兩個仿真例子驗證所設(shè)計的控制策略有效性.
考慮一組四旋翼飛行器,每個飛行器4個旋翼位于兩個正交方向上分別由4個電機帶動,4個旋翼產(chǎn)生的升力表示為Fq,i,f,f=1,2,3,4.定義慣性坐標系I={xI yI zI},滿足右手螺旋定則,z軸垂直地面向上.機身坐標系B={xB yB zB},其原點在飛行器中心上,機身相對于慣性坐標系I的相對位置表示為χi=[xq,i yq,i zq,i]T∈R3,相對于機身坐標系B的姿態(tài)角表示為pi=[?i θi ψi]T∈R3.四旋翼飛行器模型為[27]
系統(tǒng)初始狀態(tài)
圖2 例4.1通信拓撲圖Fig.2 Communication topology in Example 4.1
仿真結(jié)果如圖3-6所示.其中,圖3展示了四旋翼飛行器系統(tǒng)位置輸出分別在3D以及x,y,z軸的情況.3個跟隨者飛行器克服外部干擾影響在很短時間內(nèi)跟蹤上領(lǐng)導者信號.圖4為控制輸入曲線,可看出在2 s左右輸入飽和現(xiàn)象結(jié)束并達到穩(wěn)定.為了說明輔助系統(tǒng)的作用,有/無輔助系統(tǒng)的控制律u2,2曲線如圖5所示.在有輔助系統(tǒng)情況下,執(zhí)行機構(gòu)的飽和時間相比于無輔助系統(tǒng)的情況縮短.
圖3 飛行器位置輸出Fig.3 The output positions of the vehicles
圖4 例4.1跟隨者控制輸入Fig.4 Control inputs of the followers in Example 4.1
圖5 例4.1輸入u2,2有/無輔助系統(tǒng)控制輸入對比Fig.5 The comparison of the control input u2,2 with/without an auxiliary system in Example 4.1
值得注意的是,由于擾動觀測器逼近的為廣義擾動,單獨的神經(jīng)網(wǎng)絡(luò)或者擾動觀測器的逼近效果并不是特別理想.為了更好體現(xiàn)神經(jīng)網(wǎng)絡(luò)和擾動觀測器的逼近效果,將二者逼近效果相加與系統(tǒng)動態(tài)以及外部擾動之和對比觀察.圖6給出了飛行器1位置系統(tǒng)和姿態(tài)系統(tǒng)的動態(tài)和擾動估計情況,驗證了神經(jīng)網(wǎng)絡(luò)和擾動觀測器的逼近效果.
圖6 系統(tǒng)動態(tài)和擾動估計情況Fig.6 Estimation performances of system dynamics and disturbances
為了說明本文提出由預(yù)估器產(chǎn)生的預(yù)估誤差更新神經(jīng)網(wǎng)絡(luò)權(quán)值,可以避免由于選擇不適當參數(shù)導致的高頻抖動現(xiàn)象.對比了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)方法[13]和本文控制策略在大自適應(yīng)增益Γ1,2=2000情況下,第1個智能體姿態(tài)系統(tǒng)?角度上的未知動態(tài)逼近效果,如圖7所示.可以發(fā)現(xiàn)在大自適應(yīng)增益情況下傳統(tǒng)神經(jīng)網(wǎng)絡(luò)方法在系統(tǒng)運行初始階段出現(xiàn)了高頻抖動的現(xiàn)象,而本文設(shè)計的基于預(yù)估誤差更新的神經(jīng)網(wǎng)絡(luò)方法始終保持良好逼近性能.
圖7 傳統(tǒng)神經(jīng)網(wǎng)絡(luò)和基于預(yù)估誤差更新神經(jīng)網(wǎng)絡(luò)逼近效果對比Fig.7 The comparison of approximation behavior between traditional and prediction error-based NNs
為了體現(xiàn)擾動觀測器的神經(jīng)網(wǎng)絡(luò)權(quán)值范數(shù)化處理的好處,比較了本文控制策略和傳統(tǒng)神經(jīng)網(wǎng)絡(luò)方法[29]的仿真運行時間.神經(jīng)網(wǎng)絡(luò)的隱藏層節(jié)點l均選為100,兩種方法的其他參數(shù)選取相同.對比情況見表2.可以看出本文的控制策略需要大約3.91 s完成仿真,整個仿真運行時間大約降低了約12.5%.
表2 不同控制策略仿真時間對比Table 2 Comparison of the simulation time with different control strategies
考慮1個領(lǐng)導者和4個跟隨者構(gòu)成的多智能體系統(tǒng),拓撲圖如圖8所示.跟隨者動態(tài)特性為
圖8 例4.2通信拓撲圖Fig.8 Communication topology in Example 4.2
輸入飽和限制為ui,min=?15和=ui,max=10.領(lǐng)導者信號yr=0.8 sin(0.5t)+0.5 cos(0.8t).擾動
仿真結(jié)果如圖9-12所示.圖9和圖10顯示了輸出一致效果和控制輸入情況,可以發(fā)現(xiàn)在為2 s左右時4個智能體的輸出可以和領(lǐng)導者信號達到一致.圖11為自適應(yīng)參數(shù)曲線,i=1,2,3,4,k=1,2.為了說明輔助系統(tǒng)的作用,有/無輔助系統(tǒng)的控制律曲線如圖12(a)所示.可以發(fā)現(xiàn)在無輔助系統(tǒng)時,控制律達到飽和的時間大概為0.4 s左右,而本文的方法中,飽和時間縮短至0.2 s左右.本文還選取了另一組輸入飽和限制為ui,min=?10和ui,max=5,控制參數(shù)的選擇與前述一樣,效果如圖12(b)所示.在不同的輸入飽和界限下,輔助系統(tǒng)能有效縮短飽和時間.
圖10 例4.2控制輸入Fig.10 Control inputs in Example 4.2
圖11 例4.2自適應(yīng)參數(shù)Fig.11 Adaptive parameter in Example 4.2
圖12 例4.2輸入有/無輔助系統(tǒng)控制輸入對比Fig.12 The comparison of the control input with/without an auxiliary system in Example 4.2
一般情況下,為了減少跟蹤誤差的大小,將增大自適應(yīng)控制增益,但是過大的自適應(yīng)控制增益往往會導致系統(tǒng)中出現(xiàn)不期望的高頻抖動信號.為了驗證本文控制策略可以避免此類現(xiàn)象,本文將其與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)擾動觀測器的方法[29]進行了對比.以2號跟隨者為例.在系統(tǒng)動態(tài)中加入攝動Δf,即,
當t≤10 s不加入攝動,Δf=0;當t <10 ≤20 s時加入攝動Δf=1,再在t <20 s去除攝動.其對比效果如圖13-14所示.在自適應(yīng)增益較大情況下Γ2,k=500,k=1,2,在初始階段和模型攝動階段,使用傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的方法[29]中出現(xiàn)了不期望的高頻抖動信號,而本文采用的控制策略具有良好的逼近性能.在自適應(yīng)增益進一步增大情況下Γ2,k=750,k=1,2,上述對比效果更加明顯.這是由于使用預(yù)估誤差更新神經(jīng)網(wǎng)絡(luò)將誤差面的收斂與系統(tǒng)動態(tài)估計二者的關(guān)系分離,并且通過設(shè)計預(yù)估器初值(0)=xi,k(0)和調(diào)節(jié)預(yù)估器增益使得預(yù)估誤差具有較快的收斂速度,改善瞬態(tài)性能.
圖13 傳統(tǒng)神經(jīng)網(wǎng)絡(luò)和基于預(yù)估誤差更新神經(jīng)網(wǎng)絡(luò)逼近效果對比(Γ2,k=500)Fig.13 The comparison of approximation behavior between traditional and prediction error-based NNs(Γ2,k=500)
為了驗證所提出的擾動觀測器有效性,本文在原有擾動基礎(chǔ)上增加了一個突變攝動Δd,其中,當t≤10 s時,不加入攝動,Δd=0;當10 s<t≤20 s時,加入攝動Δd=1;當t >25 s時,繼續(xù)增加攝動,Δd=2.除擾動觀測器的參數(shù)外,對比仿真中控制參數(shù)和系統(tǒng)初始狀態(tài)均相同.有/無擾動觀測器的對比效果如圖15所示.在擾動不變的情況下,若無擾動觀測器,僅依賴神經(jīng)網(wǎng)絡(luò)本身并不能完全逼近存在未知擾動的系統(tǒng)動態(tài).擾動觀測器能有效補償系統(tǒng)中存在的未知擾動.進一步,即使擾動發(fā)生攝動(10~30 s),本文提出的擾動觀測器仍能補償系統(tǒng)未知動態(tài)和未知擾動.
圖14 傳統(tǒng)神經(jīng)網(wǎng)絡(luò)和基于預(yù)估誤差更新神經(jīng)網(wǎng)絡(luò)逼近效果對比(Γ2,k=750)Fig.14 The comparison of approximation behavior between traditional and prediction error-based NNs(Γ2,k=750)
圖15 例4.2有/無擾動觀測器補償效果對比Fig.15 The comparison of compensation with/without the disturbance observer in Example 4.2
本文考慮了一類遭受未知外部干擾和非對稱輸入飽和的非線性多智能體系統(tǒng)的輸出一致控制問題.對于系統(tǒng)中存在的未知動態(tài),使用基于預(yù)估誤差更新的神經(jīng)網(wǎng)絡(luò)進行逼近.將系統(tǒng)受到的擾動與神經(jīng)網(wǎng)絡(luò)逼近誤差綜合為廣義擾動,采用非線性擾動觀測器對其進行逼近.此外,設(shè)計了一個與跟隨者同階的輔助系統(tǒng)來補償輸入飽和帶來的影響.最后通過兩個仿真算例驗證控制策略的有效性.