傅 劍,陸世輝,李繪英,余 愿
(武漢理工大學(xué)自動(dòng)化學(xué)院,湖北 武漢 430070)
三容水箱模型是一個(gè)典型的液位控制模型,具有大滯后性、非線(xiàn)性的典型系統(tǒng)特點(diǎn)[1]。目前,對(duì)三容水箱系統(tǒng)進(jìn)行控制的常規(guī)方法主要是把非線(xiàn)性系統(tǒng)線(xiàn)性化,使其滿(mǎn)足復(fù)雜控制系統(tǒng)的性能要求。傳統(tǒng)的控制方法最主要有PID控制[2]、預(yù)測(cè)控制[3]、模糊控制[4-5]和 H∞控制[6]等。然而傳統(tǒng)PID控制對(duì)于控制對(duì)象參數(shù)變化無(wú)法自適應(yīng);預(yù)測(cè)控制算法主要用于線(xiàn)性系統(tǒng);模糊控制又受限于設(shè)計(jì)者和操作人員的經(jīng)驗(yàn)知識(shí);H∞控制存在系統(tǒng)保守性的問(wèn)題??傊?,這些方法要么受到線(xiàn)性化的限制,要么受到模型的限制。因此筆者考慮采用了自適應(yīng)動(dòng)態(tài)規(guī)則(adaptive dynamic programming,ADP)在線(xiàn)學(xué)習(xí)算法,其理論基礎(chǔ)根植于動(dòng)態(tài)規(guī)劃的貝爾曼方程,從而在動(dòng)態(tài)過(guò)程中取得基于某種性能泛函的最優(yōu)[7-8]。
ADP使用函數(shù)逼近器來(lái)近似該性能函數(shù),從而實(shí)現(xiàn)學(xué)習(xí)和控制進(jìn)而克服傳統(tǒng)動(dòng)態(tài)規(guī)劃的維數(shù)災(zāi)難問(wèn)題。簡(jiǎn)言之,ADP在線(xiàn)學(xué)習(xí)不依賴(lài)于先驗(yàn)知識(shí),而是根據(jù)環(huán)境反饋的評(píng)價(jià)信號(hào)和環(huán)境狀態(tài)來(lái)近似最優(yōu)控制策略,具有良好的通用性,適合用于處理時(shí)變的非線(xiàn)性復(fù)雜系統(tǒng)。采用這種方法來(lái)控制三容水箱液位,使系統(tǒng)具有較強(qiáng)的自適應(yīng)能力以克服干擾和系統(tǒng)內(nèi)部的攝動(dòng)。
典型的三容水箱模型[9]如圖1所示。
圖1 三容水箱模型
三容水箱模型由3個(gè)水箱、3個(gè)阻力板和1個(gè)調(diào)節(jié)閥組成,在各個(gè)水箱的出水口處放置有非線(xiàn)性阻力板。水箱1~水箱3的進(jìn)水量分別為Qi、Q1、Q2,其中 Qi由調(diào)節(jié)閥開(kāi)度 μ 控制;出水量分別為 Q1、Q2、Q3,底面積分別為 F1、F2、F3。
當(dāng)系統(tǒng)平衡后突然加大流入量Qi,使得液位H1隨Qi的增大而變高,又由于Q1與H1相關(guān),因此Q1隨之變大;同理,Q1變大后,導(dǎo)致 H2、Q2隨之相應(yīng)變大;最后H3、Q3也隨之變大。當(dāng)H1、H2、H3上升到一定高度后,系統(tǒng)達(dá)到新的平衡點(diǎn)或液位過(guò)高導(dǎo)致溢出。反之,減少流入量Qi,系統(tǒng)最終平衡在另一個(gè)液位上或減少到該層水箱底部。選取狀態(tài)量 X=(H1,H2,H3),進(jìn)水量 Qi為控制量。控制目標(biāo)是:系統(tǒng)平衡后,當(dāng)Qi被干擾時(shí),系統(tǒng)呈現(xiàn)不平衡趨勢(shì),經(jīng)過(guò)ADP在線(xiàn)學(xué)習(xí)和控制,最后系統(tǒng)保證3個(gè)水箱的液位都在設(shè)定范圍內(nèi)。
根據(jù)物料平衡推導(dǎo)得出液位數(shù)學(xué)模型的動(dòng)態(tài)方程組如下:
其中,α(H)為流量系數(shù),它與液位H和阻力板模型有關(guān)。
在實(shí)際過(guò)程中,Qi會(huì)受到干擾的影響,因?yàn)樗怯烧{(diào)節(jié)閥的開(kāi)度來(lái)控制,而控制調(diào)節(jié)閥的電器可能受到電磁干擾或因長(zhǎng)期磨損導(dǎo)致其工作曲線(xiàn)偏離出廠(chǎng)的設(shè)定值。這里設(shè)定干擾為兩種,時(shí)不變的干擾和時(shí)變的干擾,用以檢驗(yàn)系統(tǒng)的抗干擾性,進(jìn)而驗(yàn)證該系統(tǒng)的學(xué)習(xí)能力和魯棒性。
阻力板的模型如圖2所示。以阻力板1為研究對(duì)象,假設(shè)水箱1液位下降的速度為V1,大氣壓力為P,阻力板的液體流出速度為V2,液位為y,根據(jù)理想的伯努利方程得:
圖2 阻力板模型
由于V1<<V2可忽略不計(jì),因此式(4)可化簡(jiǎn)為:
阻力板的流出量Q(H)可以由阻力板的液位面積S乘以速度V2得到,即:
而面積S可以由定積分元素法求出。當(dāng)水箱液位不同時(shí),可以由下面的積分來(lái)求Q(H)的值。
(1)當(dāng)H≤10時(shí),Q(H)的計(jì)算公式為:
(2)當(dāng)10<H≤60時(shí),Q(H)的計(jì)算公式為:
(3)當(dāng)60<H≤70時(shí),Q(H)的計(jì)算公式為:
(4)當(dāng)70<H≤100時(shí),Q(H)的計(jì)算公式為:
根據(jù)文獻(xiàn)[9]的實(shí)驗(yàn)數(shù)據(jù),可以得到流量系數(shù)α(H)作為對(duì)理想建模假設(shè)的修正值為:
那么由式(1)~式(11)可以得到三容水箱系統(tǒng)的動(dòng)態(tài)方程為:
可見(jiàn)式(12)為非線(xiàn)性微分方程,其系數(shù)矩陣的元素隨著3個(gè)水箱液位的不同而變化。
自適應(yīng)動(dòng)態(tài)規(guī)劃是動(dòng)態(tài)規(guī)劃、強(qiáng)化學(xué)習(xí)和人工神經(jīng)網(wǎng)絡(luò)相融合而產(chǎn)生的交叉領(lǐng)域,也可以認(rèn)為是離散領(lǐng)域的強(qiáng)化學(xué)習(xí)在連續(xù)領(lǐng)域的擴(kuò)展。自適應(yīng)動(dòng)態(tài)規(guī)劃的本質(zhì)是基于動(dòng)態(tài)規(guī)劃原理、強(qiáng)化學(xué)習(xí)原理,模擬人通過(guò)環(huán)境反饋進(jìn)行學(xué)習(xí),是一種非常接近人腦智能的算法[10]。
ADP的基本思想可以用圖3表示。它通常由動(dòng)態(tài)系統(tǒng)、動(dòng)作控制和評(píng)論性能指數(shù)函數(shù)3個(gè)模塊組成。其中動(dòng)作控制和評(píng)論性能指數(shù)函數(shù)組合成為一個(gè)Agent。當(dāng)動(dòng)作控制模塊的輸出作用于動(dòng)態(tài)系統(tǒng)后,系統(tǒng)就產(chǎn)生新的狀態(tài)和獎(jiǎng)懲值,評(píng)論模塊根據(jù)獲得的狀態(tài)和獎(jiǎng)懲值,來(lái)影響動(dòng)作控制模塊。具體來(lái)說(shuō)就是評(píng)論值函數(shù)的參數(shù)更新是基于Bellman最優(yōu)原理進(jìn)行的,目標(biāo)是A動(dòng)作控制必須使得評(píng)論值函數(shù)最小。這樣就可以通過(guò)調(diào)整網(wǎng)絡(luò)的權(quán)值來(lái)在線(xiàn)響應(yīng)系統(tǒng)的動(dòng)態(tài)變化。
圖3 ADP的原理圖
隨著研究的深入,人們?cè)O(shè)計(jì)出了很多具體的算法來(lái)實(shí)現(xiàn) ADP算法[11],如 ADHDP(action dependentheuristicdynamicprogramming)、HDP(heuristic dynamic programming)和DHP(dual heuristic dynamic programming)等,筆者采用的是無(wú)參考模型的 ADHDP[12]。
ADHDP是由HDP發(fā)展而來(lái)的,它比HDP少了一個(gè)模型網(wǎng)絡(luò),因此不需要知道系統(tǒng)的動(dòng)態(tài)模型即可實(shí)施控制,這是其非常顯著的一個(gè)優(yōu)點(diǎn),因?yàn)樵趯?shí)際系統(tǒng)中,常常很難或無(wú)法得到控制對(duì)象的控制模型而要去實(shí)施控制。具體到三容水箱這種場(chǎng)合,整個(gè)系統(tǒng)由行為網(wǎng)絡(luò)、評(píng)價(jià)網(wǎng)絡(luò)和三容水箱模型組成。需要特別指出的是三容水箱模型僅僅是為了模擬環(huán)境對(duì)象本身,對(duì)于ADHDP而言是不知道其模型也不需要其模型結(jié)構(gòu)即可實(shí)施控制。狀態(tài)X(t)為行為網(wǎng)絡(luò)的輸入,行為網(wǎng)絡(luò)的輸出為u(t),u(t)和X(t)一起作為評(píng)價(jià)網(wǎng)絡(luò)的輸入,J(t)為評(píng)價(jià)網(wǎng)絡(luò)的輸出,J(t-1)為上一時(shí)刻評(píng)價(jià)網(wǎng)絡(luò)的輸出值,Uc(t)為行為網(wǎng)絡(luò)的期望值,r(t)為獎(jiǎng)懲值,成功時(shí)為0,失敗時(shí)為-1;α為折扣因子。三容水箱系統(tǒng)結(jié)構(gòu)圖如圖4所示。
系統(tǒng)學(xué)習(xí)控制過(guò)程的偽代碼描述如下:
while 終止條件do
圖4 三容水箱系統(tǒng)結(jié)構(gòu)圖
初始化狀態(tài)X行為網(wǎng)絡(luò)權(quán)值Wa評(píng)價(jià)網(wǎng)絡(luò)權(quán)值Wc
repeat
計(jì)算行為網(wǎng)絡(luò)的輸出u
通過(guò)三容水箱系統(tǒng)得到新的狀態(tài)X和及時(shí)獎(jiǎng)懲值r
基于時(shí)序差分計(jì)算cost-to-go的誤差Ec
采用反向傳播算法訓(xùn)練評(píng)價(jià)網(wǎng)絡(luò)使誤差Ec最小
采用反向傳播算法,通過(guò)調(diào)整行為網(wǎng)絡(luò)的權(quán)值,使得‖J-Uc‖最小。
until當(dāng)前狀態(tài)不屬于液位范圍end while
在設(shè)計(jì)中,行為網(wǎng)絡(luò)和評(píng)價(jià)網(wǎng)絡(luò)都是非線(xiàn)性的多層前饋網(wǎng)絡(luò)。具體的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。
圖5 行為網(wǎng)絡(luò)和評(píng)價(jià)網(wǎng)絡(luò)的結(jié)構(gòu)圖
2.2.1 行為網(wǎng)絡(luò)
行為網(wǎng)絡(luò)的誤差值為ea(t),Ea為行為網(wǎng)絡(luò)的均方差,目標(biāo)是使Ea最小。
由圖5可以得到行為網(wǎng)絡(luò)的輸出為:
式中:hi為神經(jīng)網(wǎng)絡(luò)第i個(gè)隱層節(jié)點(diǎn)的輸入;gi為神經(jīng)網(wǎng)絡(luò)的第i個(gè)隱層節(jié)點(diǎn)的輸出;m為隱層節(jié)點(diǎn)數(shù);n為神經(jīng)網(wǎng)絡(luò)輸入量的個(gè)數(shù)。
行為網(wǎng)絡(luò)權(quán)值的更新公式為:
從輸入到隱層的權(quán)值變化量為:
從隱層到輸出的權(quán)值變化量為:
其中,la(t)>0為神經(jīng)網(wǎng)絡(luò)在t時(shí)刻的學(xué)習(xí)率,它隨著時(shí)間的遞增而減小。
2.2.2 評(píng)價(jià)網(wǎng)絡(luò)
評(píng)價(jià)網(wǎng)絡(luò)的目標(biāo)函數(shù)為均方差Ec,其目標(biāo)是使目標(biāo)函數(shù)最小,其思想來(lái)源于動(dòng)態(tài)規(guī)劃的最優(yōu)化原理和嵌入原理。
根據(jù)圖5可得評(píng)價(jià)網(wǎng)絡(luò)的輸出函數(shù)J(t)為:
式中:qi為神經(jīng)網(wǎng)絡(luò)的第i個(gè)隱層節(jié)點(diǎn)的輸入;pi為神經(jīng)網(wǎng)絡(luò)的第i個(gè)隱層節(jié)點(diǎn)的輸出;m為隱層節(jié)點(diǎn)數(shù);n+1為神經(jīng)網(wǎng)絡(luò)的輸入變量的個(gè)數(shù)。
評(píng)價(jià)網(wǎng)絡(luò)的權(quán)值更新公式為:
從輸入層到隱層的權(quán)值變化量為:
從隱層到輸出層的權(quán)值變化量為:
水箱的底面積F1=166585 mm2,F(xiàn)2=169510 mm2,F(xiàn)3=166585 mm2,g=9806.65。
行為網(wǎng)絡(luò)輸入節(jié)點(diǎn)n=3,隱層節(jié)點(diǎn)m=10;評(píng)價(jià)網(wǎng)絡(luò)輸入節(jié)點(diǎn)n=4,隱層節(jié)點(diǎn)m=10;初始學(xué)習(xí)率la=lc=0.3,每5個(gè)時(shí)間步減少0.005,直到≤0.005為止;行為網(wǎng)絡(luò)和評(píng)價(jià)網(wǎng)絡(luò)內(nèi)部訓(xùn)練誤差的閾值Ta=0.005,Tc=0.05;折扣因子α=0.95;取時(shí)間步為0.02 s。
取控制量Qi=98000 mm3/s;狀態(tài)量H1=H2=H3=65 mm;水位波動(dòng)最大值boundary=2 mm;希望獎(jiǎng)懲值Uc=0。
在一次運(yùn)行過(guò)程中,有20次訓(xùn)練。當(dāng)加入干擾后,要求成功的訓(xùn)練序號(hào)在20以?xún)?nèi),并且在該次訓(xùn)練過(guò)程中,實(shí)時(shí)的在線(xiàn)學(xué)習(xí)和控制使得3個(gè)水箱的液位控制在[63,67]之間,并且至少持續(xù)6000個(gè)時(shí)間步,即120 s。
當(dāng)給控制量Qi施加0.25 sin(2π·0.03 t)干擾時(shí),獲得3個(gè)水箱的液位曲線(xiàn)圖,如圖6~圖8所示??梢?jiàn),當(dāng)?shù)谝淮斡?xùn)練到187步時(shí),H1低于設(shè)定的液位下限63 mm(H2、H3在設(shè)定范圍內(nèi)),訓(xùn)練失敗;第二次訓(xùn)練到724步時(shí),H1低于設(shè)定的液位下限63 mm(H2、H3在設(shè)定范圍內(nèi)),訓(xùn)練失敗;第三次訓(xùn)練成功地進(jìn)行了6000個(gè)時(shí)間步,且3個(gè)水箱的液位都在[63,67]范圍內(nèi),訓(xùn)練成功。圖9為訓(xùn)練成功時(shí)進(jìn)水量Qi的曲線(xiàn)圖。
圖6 液位H1的曲線(xiàn)圖
圖7 液位H2的曲線(xiàn)圖
圖8 液位H3的曲線(xiàn)圖
圖9 流入量Q1的曲線(xiàn)圖
當(dāng)不同類(lèi)型的干擾施加于控制量Qi時(shí),比較ADHDP在各種干擾條件下對(duì)系統(tǒng)在線(xiàn)學(xué)習(xí)和控制的能力。設(shè)定每種干擾下進(jìn)行30個(gè)訓(xùn)練過(guò)程,每個(gè)過(guò)程有20次訓(xùn)練,每次訓(xùn)練有6000個(gè)時(shí)間步。仿真結(jié)果如表1所示。
表1 性能比較
從表1可以看出,雖然有不同的干擾疊加在三容水箱的進(jìn)水閥上,ADHDP有很強(qiáng)的學(xué)習(xí)能力很快適應(yīng)了這種變化,從而實(shí)施了有效的控制。
首先建立了三容水箱的數(shù)學(xué)模型,然后引入ADP的無(wú)參考模型的ADHDP結(jié)構(gòu),直接對(duì)三容水箱非線(xiàn)性系統(tǒng)本身實(shí)施在線(xiàn)學(xué)習(xí)和控制。Matlab仿真實(shí)驗(yàn)驗(yàn)證了該方法的正確性和可行性。經(jīng)過(guò)分析仿真結(jié)果發(fā)現(xiàn),采用ADP在線(xiàn)學(xué)習(xí)來(lái)控制三容水箱系統(tǒng),有較好的控制效果和魯棒性。
[1]金以慧.過(guò)程控制[M].北京:清華大學(xué)出版社,1993:8-15.
[2]李智,張雅婕,楊潔.基于實(shí)驗(yàn)的三容水箱數(shù)學(xué)模型[J].武漢工程職業(yè)技術(shù)學(xué)院學(xué)報(bào),2009,21(3):1-4.
[3]謝啟,楊馬英,余文正.基于預(yù)測(cè)函數(shù)控制算法的水槽液位控制系統(tǒng)[J].控制工程,2003,10(6):509-511.
[4]李學(xué)軍,徐俊山.三容模糊控制系統(tǒng)設(shè)計(jì)[J].長(zhǎng)春大學(xué)學(xué)報(bào),2004,14(6):8-10.
[5]朱海榮,楊奕,姜平,等.三容系統(tǒng)的智能神經(jīng)網(wǎng)絡(luò)模糊控制研究[J].電氣傳動(dòng),2007,7(7):46-49.
[6]韓光信,張桂芹,施云貴.三容系統(tǒng)H∞控制[J].吉林化工學(xué)院學(xué)報(bào),2004,21(4):37-39.
[7]BELLMAN R,DREYFUS S.Applied dynamic programming princeton[M].NJ:Princeton Univ Press,1962:25-50.
[8]WANG F Y,ZHANG H G,LIU D R.Adaptive dynamic programming:an introduction[J].IEEE Computational Intelligence Magazine,2009,8(3):39-47.
[9]趙科,王生鐵,張計(jì)科.三容水箱的機(jī)理建模[J].控制工程,2006,13(6):521-525.
[10]PROKHOROV D V,WUNSCH D C.Adaptive critic design[J].IEEE Transactions on Neural Networks ,1997,8(5):997-1006.
[11]SI J,WANG Y T.On-line learning control by association and reinforcement[J].IEEE Transactions on Neural Networks,2001,12(2):264-276.
[12]MURRAY J J,COX C J,LENDARIS G G.Adaptive dynamic programming[J].IEEE Transactions on Systems,Man,and Cybernetics-Part C:Applications and Reviews,2002,32(2):140-152.