孫超,戴睿,郝曉辰,劉彬,周湛鵬
(燕山大學電氣工程學院,河北 秦皇島 066004)
模型預測控制(MPC)[1-2]是一類產生于工業(yè)控制實踐的計算機控制算法。作為先進控制技術的典型代表,由于具有建模容易、魯棒性好、約束處理靈活等優(yōu)點,而被廣泛地應用于石油、化工等工業(yè)過程[3-5]。在實際工業(yè)過程應用中,MPC 對被控變量(CV)的控制方式主要有設定值控制(set point control)和區(qū)間控制[6-7](interval control)兩種。設定值控制可以將CV 控制在理想的目標值,適用于具有嚴格控制指標的CV,但其又有自由度低、魯棒性差的缺點,特別體現(xiàn)在遇到工業(yè)擾動時的控制性能會嚴重下降,使得CV 產生劇烈波動,影響產品質量[8-10]。相比之下,區(qū)間控制系統(tǒng)具有自由度高、魯棒性好等優(yōu)點,近年來代替設定值控制成為各界研究的重點。文獻[11]提出一種“軟約束”處理方法改善控制品質,實現(xiàn)區(qū)間控制。文獻[12]提出了一種穩(wěn)定的區(qū)間MPC 控制器,該方法的代價函數(shù)中包含了輸入輸出的穩(wěn)態(tài)經濟目標,由于考慮了零值控制器,所以此控制器并不能達到局部最優(yōu)。文獻[13]用一種穩(wěn)態(tài)區(qū)間可操作性方法設計了基于模型的約束控制器,可用來處理輸入個數(shù)少于輸出的多變量的非方系統(tǒng),不過,此方法中輸入集合與輸出集合的兼容性容易出現(xiàn)問題。上述文獻均是采用包含理想目標值在內的區(qū)間范圍來代替確定的理想目標值,在CV 進入區(qū)間后,將不再進行控制作用,CV 可能運行在區(qū)間內的任意位置而非理想目標值。這些方法雖然提高了系統(tǒng)的魯棒性和自由度,卻并沒有對設定值控制的性能做進一步優(yōu)化,解決設定值控制魯棒性差、自由度低的缺點。
為解決上述問題,本文兼顧設定值控制和區(qū)間控制各自的優(yōu)勢,基于動態(tài)矩陣控制(DMC)[14-15],提出一種三角區(qū)間軟約束模型預測控制算法。算法根據工業(yè)過程實際要求,設置容忍區(qū)間及理想目標值,并以此確定三角區(qū)間,目的是優(yōu)先將CV 控制在三角區(qū)間中,再對CV 進行動態(tài)優(yōu)化,逐步將CV控制到理想的目標值,與此同時,又增加了系統(tǒng)的自由度,保證一定的魯棒性。最后,通過對Shell公司的典型重油分餾塔進行仿真實驗,驗證了算法的有效性及可行性。
實際工業(yè)過程中,對具有嚴格控制指標的CV往往采用設定值控制,以期望將CV 穩(wěn)定在某一理想值。但是,傳統(tǒng)設定值控制的自由度低、魯棒性差,特別是在系統(tǒng)受到擾動時,系統(tǒng)的動態(tài)性能會嚴重下降[16-17]。因此,在設定值控制的基礎上,加入三角區(qū)間軟約束,使CV 到目標值的控制分解為兩個階段。第一階段是令受干擾后的CV 進入到所設置的區(qū)間內,第二階段是在區(qū)間內將CV 進一步控制到目標值。通過這種方法來減小目標函數(shù)求解的誤差,提高系統(tǒng)的自由度和魯棒性。
根據工業(yè)流程控制的工藝,確定控制過程中第一階段的控制目標,即將CV 控制在包含理想值的區(qū)間內。當CV 被控在此區(qū)間內時,可以保證系統(tǒng)的穩(wěn)定運行及產品的質量,稱此區(qū)間為容忍區(qū)間(tolerance range)。
如圖1所示,yc為預測輸出,ymax、ymin為容忍區(qū)間的上下界,yH、yL為三角區(qū)間的上下界,ysp為目標值。ε為表征預測值超出三角區(qū)間程度的變量。P為預測時域,yH、yL分別由k時刻容忍區(qū)間的上下界與k+P時刻的目標值相連獲得。從圖中可以看出,三角區(qū)間的上下界可以用幾何關系求出
其中,1,,jP=… 。由式(1)、式(2)可知,當ymax、ymin和ysp設置完成后,yH和yL與預測時域P的值有關,一旦P值確定,yH和yL在各個預測時刻的值也被確定。除非為了改變控制策略而改動了已設置參數(shù)的值,否則yH和yL的值在滾動優(yōu)化的過程中將不再改變。
圖1 三角區(qū)間設置示意圖Fig.1 Triangular interval setting diagram
由此,可以得到k時刻優(yōu)化變量ε的表達式
其中,j=1,…,P。由式(3)可以看出,當Yc在三角區(qū)間外時,ε表示Yc到最近的三角區(qū)間界限的距離。而當Yc在三角區(qū)間內部時,ε的值恒為零。以優(yōu)化變量 ε(k) 構成三角區(qū)間軟約束(triangle interval soft constraint,TISC),并加入到目標函 數(shù)中。
當CV 受到擾動時,導致輸出值嚴重偏離了目標值,且超出了三角區(qū)間,這時希望控制器能夠對預測值進行一個強的懲罰,使預測值快速地回到三角區(qū)間,當預測值進入三角區(qū)間后,再通過設定值控制把預測值逐步控制到目標值上。
根據這一控制思路,提出如下的優(yōu)化性能指標
其中
Yc(k)為k時刻的預測值,Q、R、S為各項的權值矩陣,M為控制時域,目標函數(shù)的第1 項是三角區(qū)間軟約束項,第2 項為設定值控制項,第3 項則是為了防止控制增量變化太過劇烈MV 軟約束 項[18]。
由目標函數(shù)可以看出,本文所提算法與設定值控制及區(qū)間控制是有密切聯(lián)系的,通過權值的調節(jié)也可以看出這一點。當權值矩陣Q的值全為零時,即相當于消去三角區(qū)間軟約束項,此時將只進行設定值控制。同理,當權值矩陣R的值全為零時,將只進行三角區(qū)間控制。
假設被控對象為開環(huán)漸進穩(wěn)定系統(tǒng),且有m個輸入,p個輸出。將本文設計的三角區(qū)間軟約束與DMC 相結合,并應用于此被控對象,給出三角區(qū)間軟約束MPC 算法的流程。
1.3.1 預測模型 若已測得每個輸出yi對每一輸入uj的階躍響應aij(t),則可由它們在采樣點上的值組成模型向量
式中,N為建模時域。
1.3.2 輸出預測 取預測時域為P,控制時域為M,則yi的模型預測輸出為
式中
將多變量系統(tǒng)預測輸出寫為矩陣形式
其中
為了減小實際控制過程中存在的干擾及模型失配對預測輸出造成的影響,采用當前時刻模型輸出與系統(tǒng)的實際輸出的差值對預測輸出進行修正
其中,ei(k)=y i(k) -yci(k|k)為當前時刻模型輸出與系統(tǒng)的實際輸出的差值。為誤差校正矩陣。
1.3.3 目標函數(shù)的求解
①Yc在三角區(qū)間內時=0,則目標函數(shù)化為
顯然,此時的目標函數(shù)僅是設定值控制的表達形式,屬于標準的二次規(guī)劃問題。
②Yc在三角區(qū)間上方時=Yc-YH,則
即
其中,E=Q(Y0-YH) +R(Y0-Ysp)為對角陣,F(xiàn)=AT(Q+R)A+S,Const 為已知的系數(shù)矩陣運算式,對目標函數(shù)的求解并沒有影響。因此,此時的目標函數(shù)是二次規(guī)劃問題。
③Yc在三角區(qū)間下方時ε(k)=YL-Yc,與情形②類似,此時目標函數(shù)也是二次規(guī)劃問題。
綜上所述,無論Yc取值如何,此目標函數(shù)均屬于二次規(guī)劃問題,可采用序列二次規(guī)劃(SQP)[19]算法求取最優(yōu)控制增量序列ΔU(k),僅選取第1 項作為當前時刻的控制增量,與 (1)u k- 疊加得到當前時刻的控制量。通過滾動優(yōu)化,即可求得各個時刻的最優(yōu)控制量。
1.4.1 容忍區(qū)間上下界ymax、ymin根據實際被控系統(tǒng)的特點選定預測時域P之后,若容忍區(qū)間上下界ymax、ymin確定,則三角區(qū)間yH、yL也被確定。三角區(qū)間yH、yL體現(xiàn)了區(qū)間控制與設定值控制之間的聯(lián)系,容忍區(qū)間越大,三角區(qū)間的開口越大,給予控制器的自由度也越高,控制的魯棒性也隨之上升。而容忍區(qū)間越小,整個算法也更接近于設定值控制的效果,極限情況下,令yH與yL均取目標值,此時算法已相當于設定值控制。
1.4.2 目標函數(shù)中的權值Q、R、S權值S的主要作用在于防止控制量過于劇烈的變化。權值Q主要體現(xiàn)了三角區(qū)間軟約束項的控制力度。R則體現(xiàn)了設定值控制的控制力度。Q和R的比例關系也決定了控制的效果。Q越大,三角區(qū)間控制力度越大,魯棒性越好,但達到目標值的速度會減慢。R越大,設定值控制力度越大,但魯棒性會變差,輸出的波動也會增多??紤]極限情況,Q=0 時,相當于只進行設定值控制,控制器的自由度最小,魯棒性最差。當R=0 時,相當于只進行三角區(qū)間控制,由于三角區(qū)間是一束口區(qū)間,最終預測值將會在預測步數(shù)P時達到目標值,此時控制器的自由度最大,MV 會有最小的偏移量及對模型最小的敏感性。因此,為了保證算法的有效性,應保證 ?Q R。
在無約束或非起作用約束時,對目標函數(shù)的推導式(9)使用二次規(guī)劃求解
令=-ATE,X=ΔU,則式(10)可以轉化為標準的數(shù)學方程組形式
由于實際問題中的初始數(shù)據會有誤差,即有擾動,這將會影響到計算的結果,產生誤差。在式(11)中,系數(shù)矩陣F=AT(Q+R)A+S,主要反映了動態(tài)矩陣A對方程組解的影響,即模型失配問題。而=-ATE=-AT[Q(Y0-YH) +R(Y0-Ysp)]主要反映了輸出值與控制目標的偏差,即系統(tǒng)抗干擾的問題。
定義1當一個方程組,由于系數(shù)矩陣或者右端的微小擾動而引起解發(fā)生巨大變化時,稱該方程組是“病態(tài)”的。
定義2對非奇異矩陣F,稱數(shù)為矩陣F的條件數(shù),記為
引理[20]由于條件數(shù)的直接求解困難,根據工程實踐經驗,可判斷方程組在下列情況下是病態(tài)的:
① 用主元素法時出現(xiàn)小主元;
② 系數(shù)矩陣中有行(或列)近似線性相關,或者系數(shù)行列式的值近似為零。
定理設X和X?是方程組(11)的準確解和近似解,r為?X偏差,則
證明:由方程組(11)可得
由FX=f,得F(X-X?)=r,從而有
兩邊取范數(shù),得
所以
證畢。
由式(13)可以看出,當方程組“病態(tài)”嚴重時,條件數(shù)很大,即使偏差很小,解的相對誤差仍可能很大。反之,若可以減少偏差,則解的相對誤差將會縮小,系統(tǒng)的魯棒性將會顯著提升[21]。
圖2中,d表示預測值到目標值的偏差,其他與圖1所示變量一致。在求解目標函數(shù)(9)時,有系數(shù)矩陣F=AT(Q+R)A+S。若F中含有高度關聯(lián)的變量時,此時的條件數(shù)會很大,即是“病態(tài)”的,此時目標函數(shù)的解對模型誤差是敏感的。
圖2 兩種算法的預測值偏差對比Fig.2 Contrast between deviation of two algorithms
如圖2所示,當系統(tǒng)受到擾動時,Yc在三角區(qū)間外,此時Yc與目標值的偏差d較大,則=-ATR(Y0-Ysp)=-ATR?。由于F是“病態(tài)”的,模型誤差將被放大。由式(13)可知,較大的偏差會使解的誤差增大,控制器必須利用相互抵消的MV 移動的作用來使預測值達到特定的值,這時控制器需要頻繁的變動且輸出值的波動會十分劇烈,這樣顯然更容易引起控制的不穩(wěn)定。
設置三角區(qū)間后,Yc到三角區(qū)間上界的偏差為ε,令 ?Q R,則
由圖2可知ε<d,故f2<f1,減小了方程(11)右端的偏差。而減小偏差會使解的誤差顯著縮小,MV 會以更小的移動來使Yc進入三角區(qū)間內,而不會引入過大的瞬態(tài)偏差,防止輸出的劇烈波動。在Yc進入三角區(qū)間后,由式(3)可知,此時 0ε=,三角區(qū)間軟約束項不再起懲罰的作用,設定值控制項的作用得以體現(xiàn)。由于預測值已經很接近目標值,此時控制器確定的軌跡會使MV 有更小的偏移量并且對模型誤差更小的敏感性。Yc進入三角區(qū)間后的設定值控制過程中,即使預測值會產生一些波動,也只是在容忍區(qū)間內發(fā)生,這在工程實際中是被允許的。
為驗證本文所提算法的可行性及有效性,采用Shell 公司的典型重油分餾塔進行仿真實驗。該模型是一個三入三出的線性系統(tǒng),傳遞函數(shù)矩陣為
u1、u2、u3為MV,約束區(qū)間為[-0.5,0.5],y1、y2、y3為CV,控制目標為:y1=0,y2=0.3,為保證控制問題有可行解,y3采用區(qū)間控制,目標區(qū)間為[-0.3,0]。采用階躍函數(shù)模擬擾動的影響,初始時刻y1、y2均偏離了目標值,且=1.0,=0.4。取預測時域為24,控制時域為10,y1、y2的容忍區(qū)間分別為[-0.2,0.4],[0.1,0.4]。為突出本文所提算法的優(yōu)勢,與設定值控制進行了對比,為增加可比性,使兩者的權值矩陣保持相等。由于區(qū)間控制只是把CV 控制在區(qū)間內任意位置,并不能實現(xiàn)定值控制,故不作對比。
圖3 控制增量u1 變化曲線Fig.3 Change curve of control increment u1
圖4 控制增量u2 變化曲線Fig.4 Change curve of control increment u2
圖5 實際輸出y1 變化曲線Fig.5 Change curve of actual output y1
圖6 實際輸出y2 變化曲線Fig.6 Change curve of actual output y2
圖7 實際輸出y3 變化曲線Fig.7 Change curve of actual output y3
由仿真結果可以看出,系統(tǒng)在受到干擾后,設定值控制下的輸出曲線y1可以更快達到目標值,且波動較小,但是輸出曲線y2的性能質量卻很差,輸出波動頻繁且劇烈,三次超出系統(tǒng)的容忍區(qū)間,顯然這對系統(tǒng)整體的穩(wěn)定運行是不利的。這是因為在外界干擾作用下,y1、y2產生了瞬時偏差,遠離了目標值,由魯棒性分析可知,較大的偏差會使解的誤差增大,控制器必須利用相互抵消的MV 移動的作用來使預測值達到目標值。又由于y1的偏差較y2更大,為保證y1迅速達到目標值,使得控制器動作頻繁且動作幅度大,控制器的自由度低,已沒有更多的自由度保證輸出曲線y2的性能質量,說明此時系統(tǒng)的魯棒性很差。
而在三角區(qū)間軟約束預測控制算法的控制下,輸出曲線y1雖然延長了到達目標值的時間,但可以快速進入容忍區(qū)間且變化更加平緩。同時,輸出曲線y2輸出波動及超出容忍區(qū)間次數(shù)減少,曲線也更加平緩。這是因為設置三角區(qū)間后,瞬時偏差減小,控制器求解的誤差減小,因而降低了控制器動作的頻率和幅度,增加了控制器的自由度與魯棒性。顯然,三角區(qū)間軟約束預測控制算法較設定值控制有更好的整體性能。
石油、化工等實際工業(yè)控制過程中,對具有嚴格控制指標的CV 往往采用設定值控制,但其又有自由度低、魯棒性差的缺點。為解決這一問題,本文提出了三角區(qū)間軟約束模型預測控制算法。仿真結果表明,本文算法綜合了設定值控制與區(qū)間控制各自的優(yōu)勢,在三角區(qū)間軟約束的作用下,保證了CV 可以運行在理想目標值的同時,又最大限度地保證了系統(tǒng)的魯棒性和自由度,提高了系統(tǒng)對干擾的應對能力,控制效果明顯優(yōu)于設定值控制。因此,三角區(qū)間軟約束模型預測控制算法更好地符合了實際工業(yè)生產中對某些CV 進行定值控制的要求。
[1]Qin S J,Badgwell T A.A survey of industrial model predictive control technology [J].Control Engineering Practice,2003,11 (7):733-764.
[2]Ferramosca A,Limon D.MPC for tracking zone regions [J].Journal of Process Control,2010,20 (4):506-516.
[3]Maldonado M,Desbiens A,del Villar R.Potential use of model predictive control for optimizing the column flotation process [J].Ⅰnternational Journal of Mineral Processing,2009,93 (1):26-33.
[4]Cristea M V,Agachi S P,Marinoiu V.Simulation and model predictive control of a UOP fluid catalytic cracking unit [J].Chemical Engineering and Processing,2003,42 (2):67-91.
[5]Zou Tao (鄒濤),Wang Dingding (王丁丁),Pan Hao (潘昊),Yuan Mingzhe (苑明哲),Ji Zhongwan (季忠宛).From zone model predictive control to double-layered model predictive control [J].CⅠESC Journal(化工學報),2013,64 (12):4474-4483.
[6]Rishi Amrit,James B Rawlings,David Angeli.Economic optimization using model predictive control with a terminal cost [J].Annual Reviews in Control,2011,35 (2):178-186.
[7]John M Carson Ⅲ,Beh?et A??kme?e,Richard M Murray,Douglas G MacMartin.A robust model predictive control algorithm augmented with a reactive safety mode [J].Automatica,2013,49 (5):1251-1260.
[8]Jin Xin (金鑫),Chi Qinghua (池清華),Liu Kangling (劉康玲),Liang Jun (梁軍).Disturbance rejection constraints generalized predictive control of diagonal CARIMA model [J].CⅠESC Journal(化工學報),2014,65 (4):1310-1316.
[9]Zhang Bin,Yang Weimin,Zong Hongyuan,Wu Zhiyong,Zhang Weidong.A novel predictive control algorithm and robust stability criteria for integrating processes [J].ⅠSA Transactions,2011,50 (3):454-460.
[10]Huang He,Li Dewei,Lin Zongli,Xi Yugeng.An improved robust model predictive control design in the presence of actuator saturation [J].Automatica,2011,47 (4):861-864.
[11]Xu Zuhua,Zhao Jun,Qian Jixin.Zone Model predictive control algorithm using soft constraint method [J].Machine Tool & Hydraulics,2004,12 (3):106-108.
[12]González A H,Odloak D.A stable MPC with zone control [J].Journal of Process Control,2009,19 (1):110-122.
[13]Lima F V,Georgakis C.Design of output constraints for model-based non-square controllers using interval operability [J].Journal of Process Control,2008,18 (6):610-620.
[14]González A H,Marchetti J L,Odloak D.Robust model predictive control with zone control [J].ⅠET Control Theory and Applications,2009,3 (1):121-135.
[15]Limon D,Alvarado I,Alamo T,Camacho E F.MPC for tracking of piece-wise constant references for constrained linear systems [J].Automatica,2008,44 (9):2382-2387.
[16]Xi Yugeng,Li Dewei,Lin Shu.Model predictive control status and challenges [J].Acta Automatica Sinica,2013,39 (3):222-236.
[17]Furqan Tahir,Imad M Jaimoukha.Robust feedback model predictive control of constrained uncertain systems [J].Journal of Process Control,2013,23 (2):189-200.
[18]Ferramosca A,Limon D,Alvarado I,Alamo T,Camacho E F.MPC for tracking with optimal closed-loop performance [J].Automatica,2009,45 (8):1975-1978.
[19]Zhu Xiaojing,Pu Dingguo.A restoration-free filter SQP algorithm for equality constrained optimization [J].Applied Mathematics and Computation,2013,219 (11):6016-6029.
[20]Ding Lijuan (丁麗娟).Numerical Calculation Method (數(shù)值計算方法) [M].Beijing:Beijing Institute of Technology Press,1997.
[21]Qian Jixin (錢積新),Zhao Jun (趙均),Xu Zuhua (徐祖華).Predictive Control (預測控制) [M].Beijing:Chemical Industry Press,2007.