呂冠儒, 張維存, 劉文璐
(1.中國科學(xué)院國家天文臺,北京 100012;2.北京科技大學(xué)自動化學(xué)院,北京 100083)
多輸入多輸出系統(tǒng)的加權(quán)多模型自適應(yīng)控制研究
呂冠儒1, 張維存2, 劉文璐2
(1.中國科學(xué)院國家天文臺,北京 100012;2.北京科技大學(xué)自動化學(xué)院,北京 100083)
針對單入單出系統(tǒng)設(shè)計的加權(quán)算法無法在多輸入多輸出系統(tǒng)中得到較好的控制效果,對加權(quán)多模型自適應(yīng)控制中的加權(quán)算法進行研究,并設(shè)計矢量與標(biāo)量兩種加權(quán)算法,研究多變量系統(tǒng)中標(biāo)量以及矢量權(quán)值對系統(tǒng)的影響.同時,對加權(quán)算法中的誤差性能指標(biāo)進行研究,選取不同的誤差性能指標(biāo),研究不同誤差性能指標(biāo)對權(quán)值收斂速度的影響.通過Matlab搭建Simulink仿真模型,對加權(quán)算法進行仿真.仿真結(jié)果顯示,采用定常系數(shù)的誤差性能指標(biāo)的標(biāo)量加權(quán)算法能對多輸入多輸出系統(tǒng)做出理想的控制效果.
多輸入多輸出;加權(quán)多模型自適應(yīng)控制;加權(quán)算法
多模型的基本思想最初由Magill提出[1],用以解決參數(shù)不確定問題,其主要思想是用一組狀態(tài)估計器的估計值進行加權(quán)組合,實現(xiàn)最優(yōu)估計和最優(yōu)控制.1971年,Lainiotis[2]首次正式提出加權(quán)多模型自適應(yīng)控制(MMAC)的概念.
MMAC試圖用多個辨識模型來實現(xiàn)對被控對象特性的覆蓋.對于每一個子模型,設(shè)計相應(yīng)的子控制器.在實際運行時,通過系統(tǒng)在線辨識,即權(quán)重的計算,將有限個子控制器組合成能對被控對象在不同工況內(nèi)實行控制的自適應(yīng)控制器.如果現(xiàn)有模型都不能滿足當(dāng)前被控對象的工作特性要求,還可以通過自適應(yīng)在線辨識新的辨識模型,加入子模型中,并在線設(shè)計相應(yīng)的子控制器加入子控制器集中,這樣使得整個控制過程能滿足暫態(tài)、靜態(tài)性能指標(biāo)和快速性的要求[3].
MMAC可以看作是一種基于軟切換的多模型自適應(yīng)控制,與增益調(diào)度控制有一定的相似性.當(dāng)模型參數(shù)發(fā)生改變時,系統(tǒng)的輸出比較平滑,控制律的對應(yīng)權(quán)重不是突變的,而是平滑的過渡,因此對系統(tǒng)的執(zhí)行機構(gòu)損害小,系統(tǒng)的輸出不會在切換時出現(xiàn)大的跳躍.也因為其平滑過渡的特點,使該技術(shù)在很多領(lǐng)域獲得成功應(yīng)用,特別是在醫(yī)學(xué)領(lǐng)域,如通過對輸入藥物的調(diào)節(jié)達(dá)到對病人的動脈血壓和心臟輸出進行控制,可以取得比常規(guī)控制更好的效果[4].
對于多輸入多輸出系統(tǒng)控制,國內(nèi)外已作了很多研究,傳統(tǒng)的PID、魯棒控制等控制方式均可以很好地控制多變量系統(tǒng).但是對于多模型自適應(yīng)控制在多變量系統(tǒng)中的應(yīng)用,還沒有得到充分研究.目前多模型自適應(yīng)控制大多以單入單出的單變量系統(tǒng)作為研究對象,而在多輸入多輸出系統(tǒng)上的研究較少.針對多輸入多輸出系統(tǒng)模型集的構(gòu)建以及加權(quán)算法在多輸入多輸出系統(tǒng)中MMAC的應(yīng)用,國內(nèi)尚未有系統(tǒng)研究.
本文從模型集的構(gòu)建、子模型控制器的設(shè)計以及加權(quán)算法等方面,對多輸入多輸出系統(tǒng)的MMAC進行研究.
簡易的MMAC系統(tǒng)框圖見圖1.其中,yr(k)為k時刻系統(tǒng)的參考輸入;Ci為已知模型集里第i個子模型的控制器;pi(k)為k時刻控制器Ci的控制律ui(k)所對應(yīng)的權(quán)重.k時刻控制器產(chǎn)生的控制律ui(k)分別與各自對應(yīng)的權(quán)重pi(k)相乘后累加求和,得到加權(quán)求和后全新的控制律u(k),將控制律作用于被控系統(tǒng)上,得到系統(tǒng)輸出y(k).輸出誤差為系統(tǒng)輸出y(k)與子模型各自的輸出yi(k)之差的絕對值,即ei(k)=y(k)-yi(k).
圖1 簡易的MMAC系統(tǒng)框圖Fig.1 Simple block diagram of MMAC system
對于MMAC來說,加權(quán)算法是其中的核心內(nèi)容,加權(quán)算法的好壞直接影響到是否能準(zhǔn)確快速地選出與實際被控對象最為接近的子模型.
1.1 加權(quán)算法設(shè)計
傳統(tǒng)的利用后驗概率來計算加權(quán)多模型各控制器權(quán)重的方法,在實際計算過程中比較復(fù)雜,對計算量的要求較高.加權(quán)多模型自適應(yīng)控制器對每個子模型設(shè)計子模型控制器,然后被控系統(tǒng)的控制器由各子模型控制器與對應(yīng)的權(quán)值線性組合構(gòu)成.
加權(quán)算法的基本思想是,模型集里的模型與系統(tǒng)的實際模型越接近,其對應(yīng)的權(quán)值就越大,權(quán)值的變化是平滑而非突變的,從而達(dá)到模型軟切換的目的.只要符合這種思路的加權(quán)算法,從理論上都是可行的.
由于實際被控系統(tǒng)與模型集中的子模型不一定完全一致,因此實際被控對象的輸出y(k)與模型集中的每個子模型輸出yi(k)都存在輸出誤差ei(k).模型的接近程度通過ei(k)的大小來評價,對于單變量系統(tǒng)來說,ei(k)為標(biāo)量,其大小可以直接進行標(biāo)量大小比較.增大誤差較小的子模型的權(quán)重,減小誤差較大的子模型的權(quán)重,使得最終最為接近真實模型的子模型的權(quán)重最終收斂到1,而其它子模型的權(quán)重收斂到0,達(dá)到模型識別的目的.用識別好的子模型控制器對被控對象進行控制,可以達(dá)到較好的控制效果[5-6].
基于以上的加權(quán)算法的思路,設(shè)計以下加權(quán)算法:
a.初始化設(shè)置.設(shè)模型集子模型Mi輸出與實際被控對象P的輸出偏差為ei(k).在加權(quán)算法開始時,令各子模型的權(quán)值相等,即設(shè)置各子模型控制器的權(quán)重pi(0)以及權(quán)值計算指標(biāo)li(0)在初值時刻均等,即li(0)=pi(0)=1/N,N為模型集中子模型的個數(shù).
b.計算誤差性能指標(biāo)Ji(k).
c.比較誤差性能指標(biāo).令l′i(k)=1+Ji(k),對偏差進行累加,式中,在Ji(k)前加1是為了防止在加權(quán)程序開始時指標(biāo)l′i(k)作為分母等于0造成程序計算出錯.比較各個子模型的l′i(k),選出指標(biāo)最小值l′min(k).
d.計算權(quán)值計算指標(biāo)li(k).以指標(biāo)最小值l′min(k)作為分子,k時刻每一個子模型的指標(biāo)l′i(k)作為分母,得到一個小于1的比例系數(shù),用該比例系數(shù)乘以上一時刻的權(quán)值計算指標(biāo)li(k-1),得到當(dāng)前時刻的權(quán)值計算指標(biāo)li(k).
e.計算子模型權(quán)值pi(k).將各個子模型的權(quán)值計算指標(biāo)累加求和,作為計算權(quán)值的分母,子模型的權(quán)值計算指標(biāo)li(k)作為計算權(quán)值的分子,即
f.控制律合成.用各子模型控制律與各子模型的權(quán)值相乘后累加,得到加權(quán)后的系統(tǒng)的控制律
該算法可以選擇出與真實被控對象偏差最小的子模型,并用這個子模型所對應(yīng)的子控制器控制被控對象.該方法的優(yōu)點是子控制器之間的切換過程相對平滑,系統(tǒng)的輸出不會出現(xiàn)大的跳躍,在實際生產(chǎn)中對執(zhí)行機構(gòu)損害較小,在實際工業(yè)過程中使用時比較安全方便.
1.2 矢量加權(quán)與標(biāo)量加權(quán)
對于多輸入多輸出系統(tǒng)而言,ei(k)通常不是標(biāo)量,而是一組矢量誤差,即
式中,eij(k)為第i個子模型的第j個輸出誤差.
鑒于多輸入多輸出MMAC系統(tǒng)的輸出誤差為矢量輸出誤差,多入多出系統(tǒng)的加權(quán)算法與單入單出系統(tǒng)的加權(quán)算法有所不同,本文嘗試用兩種不同的處理思路處理加權(quán)算法.
一種思路是將矢量輸出誤差進行處理,使其變成標(biāo)量誤差,再進行加權(quán)計算.可以采用取范數(shù)的方法使矢量誤差轉(zhuǎn)換成標(biāo)量誤差,這種思路進行加權(quán)計算后每個子模型的權(quán)重p均為標(biāo)量.
另一種思路是對矢量誤差中的每一個元素分別進行加權(quán)計算,得到矢量的加權(quán)權(quán)重,即
式中,uij為第i個子模型第j個控制分量;pij為第i個子模型第j個輸出誤差分量經(jīng)過加權(quán)算法計算后得到的權(quán)值.加權(quán)算法計算得到的權(quán)值為一組權(quán)值矩陣.
兩種加權(quán)算法是否都可以準(zhǔn)確地選擇出最優(yōu)的子模型,控制律能否較好地控制實際被控對象,以及兩種方法選出的控制律哪種對系統(tǒng)的控制效果最好,是本文研究的重點.
1.3 誤差性能指標(biāo)選取
加權(quán)誤差性能指標(biāo)公式為
在時間乘以誤差絕對值積分(ITAE)基礎(chǔ)上[7],對ITAE指標(biāo)進行了優(yōu)化,給輸出誤差均等的附加權(quán)重1/k.可見,這個權(quán)重的大小與計算的采樣時刻有關(guān),采樣時間越長,k值越大,權(quán)重系數(shù)越小.這種性能指標(biāo)考慮了歷史時刻以及當(dāng)?shù)貢r刻的輸出誤差,從物理意義上看,ITAE指標(biāo)是對采樣時間內(nèi)的誤差曲線進行積分運算,得到的誤差指標(biāo)實際為誤差曲線與坐標(biāo)軸所圍成的圖形的面積大小,而帶有權(quán)重1/k的誤差性能指標(biāo)為單位采樣時間內(nèi)的誤差面積大小.相比ITAE指標(biāo),該指標(biāo)數(shù)值較小,方便后面加權(quán)算法的繼續(xù)計算,且可以更好地減小某一時刻隨機干擾對系統(tǒng)的影響,進一步提高算法的穩(wěn)定性.
定常權(quán)值系數(shù)的加權(quán)性能指標(biāo)公式為
式中,α為當(dāng)前時刻的誤差系數(shù);β為歷史時刻的誤差系數(shù),分別表示當(dāng)前時刻誤差和歷史時刻誤差對性能指標(biāo)影響的關(guān)注程度.α權(quán)重越高,表示越關(guān)注當(dāng)前時刻的誤差對系統(tǒng)的影響;反之,β權(quán)重越高,表示越關(guān)注歷史時刻的誤差對系統(tǒng)的影響.且有α>0,β>0,α+β=1.L為關(guān)注的歷史采樣數(shù)據(jù)的個數(shù),θ統(tǒng)一置為1,即對歷史時刻的數(shù)據(jù)同等關(guān)注.
該類型誤差性能指標(biāo)與只關(guān)注當(dāng)前時刻誤差的一般型誤差性能指標(biāo)相比,由于增加考慮了歷史誤差對系統(tǒng)的影響,因此能夠有效地避免由隨機誤差或干擾引起的系統(tǒng)辨識錯誤,使系統(tǒng)更加穩(wěn)定.
1.4 加權(quán)算法參數(shù)優(yōu)化
對于定常權(quán)值系數(shù)的誤差性能指標(biāo)式(4),其中α和β的大小對權(quán)值收斂速度的影響是不同的.對于時變系統(tǒng),由于系統(tǒng)會隨著時間發(fā)生改變,所以應(yīng)該對當(dāng)前時刻的誤差關(guān)注程度較高,即當(dāng)前時刻的誤差系數(shù)α越大,以提高加權(quán)算法對系統(tǒng)發(fā)生改變的敏感程度;對于定常系統(tǒng),系統(tǒng)確定不變,則增大對歷史時刻誤差的關(guān)注程度,有利于提高權(quán)值收斂速度β,以及加權(quán)算法的穩(wěn)定性和抗干擾性.
對于一個兩輸入兩輸出的多變量系統(tǒng),有
在實際被控系統(tǒng)中,A矩陣中第2行第1列的元素不確定,為區(qū)間[-50-80]中的某一個值.利用Matlab的Simulink工具對系統(tǒng)進行仿真,模型集簡單設(shè)置3個子模型,即
采用極點配置的方法,分別設(shè)計狀態(tài)反饋矩陣K以及各自的控制律u.反饋矩陣K通過Matlab函數(shù)計算求得.控制律計算公式為
對子模型以及實際被控對象施加控制律u,u為經(jīng)過加權(quán)算法計算后得到的控制律.將該控制律施加到模型集子模型以及實際被控對象模型上,得到相應(yīng)的輸出,3個子模型輸出與實際被控對象輸出作差,得到相應(yīng)的ei(k),對ei(k)取范數(shù).當(dāng)實際被控對象系統(tǒng)的參數(shù)為59時,3個子模型與實際被控對象的輸出誤差如圖2所示.
圖2 輸出誤差曲線Fig.2 Curve of system output error
從圖2曲線可以看出,參數(shù)為60的子模型與參數(shù)為59的實際被控對象的輸出誤差最小,模型相似程度最近.在加權(quán)算法計算相應(yīng)權(quán)值時,應(yīng)使參數(shù)為60的子模型的權(quán)重較大,而參數(shù)為50以及80的兩個子模型權(quán)重相對較小,使得經(jīng)過加權(quán)后的控制律在控制實際被控對象時控制效果最優(yōu),輸出誤差最小.
分別運行上文提到的矢量加權(quán)以及標(biāo)量加權(quán)算法,觀察參數(shù)為60的子模型權(quán)值收斂的速度以及實際被控系統(tǒng)的輸出曲線,權(quán)重收斂曲線如圖3—5所示.可以看出,加權(quán)算法可以準(zhǔn)確地選中輸出誤差最小的子模型,使其權(quán)重收斂為1.
圖4 矢量與標(biāo)量加權(quán)算法權(quán)值收斂曲線Fig.4 Curve of weight convergence speed with scalar and vector weighting algorithms
由圖3可以看出,只有最為接近實際被控系統(tǒng)的子模型的權(quán)值收斂為1,其余子模型的權(quán)值最終收斂為0,即加權(quán)算法可以達(dá)到選出最為接近真實被控系統(tǒng)的子模型的目的.
圖5 矢量與標(biāo)量加權(quán)算法系統(tǒng)輸出曲線Fig.5 Curve of system output with scalar and vector weighting algorithm
矢量加權(quán)系數(shù)的控制律是對各個控制分量分別計算權(quán)值,最終控制律是各個子控制量的加權(quán)和.從圖4的曲線上看,標(biāo)量加權(quán)權(quán)重的收斂速度要比矢量加權(quán)各分量權(quán)值的收斂速度要快,且控制律不需要計算加權(quán)和,能較快地選擇出誤差最小的最優(yōu)控制律對系統(tǒng)進行控制.由圖4可以看出,相比矢量加權(quán)算法,標(biāo)量加權(quán)算法的權(quán)值收斂速度更快,控制系統(tǒng)輸出更平穩(wěn),因此,標(biāo)量加權(quán)算法要優(yōu)于矢量加權(quán)算法.
由圖5可以看出,標(biāo)量加權(quán)計算出的控制律控制的系統(tǒng)輸出相對較平穩(wěn),控制輸出沒有較大的波動.而矢量加權(quán)的控制律控制系統(tǒng)的輸出相對波動較大,兩種方法都能達(dá)到選出最優(yōu)的控制律的效果,使得系統(tǒng)的輸出誤差最小.
采用式(3)和式(4)兩種誤差性能指標(biāo)進行加權(quán)計算,比較兩種誤差性能指數(shù)對加權(quán)算法權(quán)值收斂速度的影響.兩種誤差性能指標(biāo)的區(qū)別在于第一種性能指標(biāo)各時刻誤差的系數(shù)是可變的,第二種性能指標(biāo)誤差系數(shù)為定常的,該系數(shù)表明對各時刻誤差的關(guān)注程度,系數(shù)越大,表示對該時刻的誤差關(guān)注程度越高.
選取兩組不同常系數(shù)的定常系數(shù)以及變系數(shù)誤差性能指標(biāo)進行仿真,比較其對第二個子模型加權(quán)權(quán)值收斂速度的影響.兩組常系數(shù)分別為α=0.9,β=0.1和α=0.7,β=0.3.仿真結(jié)果如圖6所示.可以看出,同為常系數(shù)誤差性能指標(biāo),不同的常系數(shù)對權(quán)值收斂速度有不同影響.α越小,β越大,權(quán)值收斂速度越快,即在定常系統(tǒng)中,歷史誤差對權(quán)值收斂速度有較大的影響,當(dāng)前時刻的誤差對收斂速度影響相對較小.相比常系數(shù)誤差性能指標(biāo),采用變系數(shù)(1/k)誤差性能指標(biāo)的權(quán)值收斂相對較平穩(wěn),不過收斂速度較慢,因為隨著時間k的增大,誤差的系數(shù)1/k值會越來越小,當(dāng)前時刻的誤差與歷史時刻的誤差被附加同樣的比例系數(shù),降低了權(quán)值收斂速度.
圖6 常系數(shù)與變系數(shù)指標(biāo)權(quán)值收斂曲線Fig.6 Curve of weight convergence speed with constant and variable coefficient error performance indexes
在計算權(quán)值時,權(quán)值計算指標(biāo)見式(5).
選取第二個子模型的權(quán)值收斂曲線進行比較,比例系數(shù)的指數(shù)n對權(quán)值收斂的影響如圖7所示.圖中常系數(shù)下的誤差系數(shù)α=0.9,β=0.1.可以看出,無論是常系數(shù)還是變系數(shù),對比例系數(shù)平方處理后,會顯著提高權(quán)值的收斂速度,但是增大比例系數(shù)的指數(shù),會明顯增加算法的計算量,增大運算負(fù)擔(dān).因此,適當(dāng)增大比例系數(shù)的指數(shù),對加快權(quán)值收斂速度,加快系統(tǒng)反應(yīng)有著較為明顯的效果.
圖7 比例系數(shù)的指數(shù)對權(quán)值收斂的影響Fig.7 Curve of weight convergence speed with different scale coefficients
通過該加權(quán)算法,觀察系統(tǒng)的輸出與參考輸入曲線,如圖8所示.可以看出,MMAC可以快速準(zhǔn)確地選出與被控對象最為接近的子模型對系統(tǒng)進行控制,并達(dá)到輸出跟蹤參考輸入的效果.
圖8 系統(tǒng)輸出曲線Fig.8 Curve of system output
此外,對多個模型不同的系統(tǒng),設(shè)計離線模型集以及控制器集,對本文提到的MMAC算法進行驗證.通過Matlab仿真觀察,系統(tǒng)均可達(dá)到較好的控制效果.
通過Matlab仿真可以看出,在多輸入多輸出系統(tǒng)中,標(biāo)量的權(quán)值可以更快選中與實際被控對象最為接近的子模型,且相比矢量權(quán)值,控制律對被控對象的控制效果更優(yōu),系統(tǒng)輸出更穩(wěn)定.因此在設(shè)計加權(quán)算法時,使用標(biāo)量加權(quán)算法會達(dá)到更好的控制效果.針對線性定常系統(tǒng),在加權(quán)算法中采用定常系數(shù)的誤差性能指標(biāo)會加快權(quán)值的收斂速度,且對歷史誤差數(shù)據(jù)的系數(shù)越大,關(guān)注程度越高,權(quán)值的收斂速度越快.
[1] Magill D T.Optimal adaptive estimation of sampled stochastic processes[J].IEEE Transactions on Automatic Control,1965,10(4):434-439.
[2] Lainiotis D G.Optimal adaptive estimation:structure and parameter adaption.[J].IEEE Transactions on Automatic Control,1971,16(2):160-170.
[3] 袁向陽,施頌椒.基于多模型的自適應(yīng)控制研究進展[J].上海交通大學(xué)學(xué)報,1999,33(5):626-630.
[4] 張維存.加權(quán)多模型自適應(yīng)控制的穩(wěn)定性[J].控制理論與應(yīng)用,2012,29(12):1657-1660.
[5] Zhang W C.Stable weighted multiple model adaptive control:discrete-time stochastic plant[J].International Journal of Adaptive Control and Signal Processing,2013,27(7):562-581.
[6] 張智煥,王樹青,王讓定.非線性多模型控制及仿真研究[J].系統(tǒng)仿真學(xué)報,2003,15(7):919-921.
[7] 任貝貝.基于多模型的自適應(yīng)控制系統(tǒng)的研究[D].西安:西安電子科技大學(xué),2004.
(編輯:董 偉)
Weighted Multiple-Model Adaptive Control of Multiple-Input Multiple-Output Systems
LVGuanru1, ZHANG Weicun2, LIU Wenlu2
(1.National Astronomical Observatories,Chinese Academy of Sciences,Beijing 100012,China;2.School of Automation and Electrical Engineering,Beijing University of Science and Technology,Beijing 100083,China)
The weighted multiple-model adaptive control(MMAC)has been sucessfully used for single-input single-output(SISO)systems,but for multiple-input multiple-output(MIMO) systems,satisfactorty application results are still quite few.The weighting algorithm designed for SISO systems could not work well on MIMO systems.In the paper,two different weighting methods,namely,the scalar and vector weighting algorithms were considered and their effectiveness were verified through Matlab simulations.The weighting algorithms’parameters were adjusted in order to quickly recognise the change of system parameters.Different error performance index has influence on the convergence speed of the weighing value.Through Matlab simulations,it is found that the scalar weighting algorithm with constant coefficient error performance index mentioned in the paper can achieve an ideal control effect on MIMO systems.
MIMO;weighted multiple model adaptive control;weighting algorithm
TP 301.6
A
1007-6735(2015)02-0159-06
10.13255/j.cnki.ju sst.2015.02.012
2013-12-04
國家高技術(shù)研究發(fā)展計劃(863)資助項目(2011AA060408);國家重點基礎(chǔ)研究發(fā)展計劃(973)資助項目(2012CB821203)
呂冠儒(1988-),男,碩士研究生.研究方向:控制理論與應(yīng)用.E-mail:lgr0106@gmail.com
張維存(1962-),男,副教授.研究方向:控制理論與應(yīng)用.E-mail:weicunzhang@263.net