王麗飛,劉洪娥,于佐軍(中國(guó)石油大學(xué),山東 青島 266555)
廣義預(yù)測(cè)控制是Clarke等人在1987年針對(duì)工業(yè)過(guò)程的特點(diǎn),在保持最小方差自校正控制的在線辨識(shí)、最小方差控制的基礎(chǔ)上,吸取了DMC和MAC中的滾動(dòng)優(yōu)化策略,提出的一種新型的計(jì)算機(jī)控制。廣義預(yù)測(cè)控制具有諸多優(yōu)點(diǎn):首先,它是基于參數(shù)模型的,而其他的預(yù)測(cè)控制算法大部分是基于非參數(shù)模型的。其次,它保留了自適應(yīng)控制的優(yōu)點(diǎn),而且較自適應(yīng)控制有更好的魯棒性。最后,由于采用多步預(yù)測(cè)、滾動(dòng)優(yōu)化和反饋校正等策略,其控制效果更適應(yīng)工業(yè)過(guò)程控制的要求[1~3]。由于這些優(yōu)點(diǎn),廣義預(yù)測(cè)控制一出現(xiàn)就受到了控制界和工業(yè)界的廣泛關(guān)注,其理論研究不斷深入,并在很多工業(yè)過(guò)程中得到應(yīng)用,取得了較好的控制效果[4]。
但是,目前廣義預(yù)測(cè)控制的研究對(duì)象大部分是線性離散時(shí)間系統(tǒng),對(duì)非線性系統(tǒng)廣義預(yù)測(cè)控制的研究,由于難于構(gòu)造被控對(duì)象的多步預(yù)報(bào)模型因而導(dǎo)致廣義預(yù)測(cè)控制律求解困難。目前非線性系統(tǒng)的廣義預(yù)測(cè)控制一般都是用神經(jīng)網(wǎng)絡(luò)的方法來(lái)獲得被控對(duì)象的多步預(yù)測(cè)值,這種方法需要首先訓(xùn)練神經(jīng)網(wǎng)絡(luò),其模型不能進(jìn)行在線辨識(shí)[5~7]。本文針對(duì)一類(lèi)比較具有普遍意義的非線性系統(tǒng),首先將其轉(zhuǎn)化為時(shí)變參數(shù)的線性系統(tǒng),然后使用具有遺忘因子的最小二乘法或是多項(xiàng)式逼近法在線辨識(shí)模型參數(shù),進(jìn)行廣義預(yù)測(cè)控制。并以二容液位系統(tǒng)為模型,進(jìn)行了仿真研究,取得了較好的控制效果。
非線性系統(tǒng)被控對(duì)象的輸入輸出模型可以描述如下:
其中 u、 y分別表示系統(tǒng)的輸入、輸出,m、n分別表示輸入輸出階次,ε(t)表示噪聲干擾, f(?)是未知的關(guān)于y(t ?1),y(t?n),u(t?1),u(t?m)的非線性函數(shù),并且滿足下列條件:
(1) 0)0,0,0( =f
(2) f (?)關(guān)于y(t ?1),y(t?n),u(t?1),u(t?m)連續(xù)可導(dǎo),且各偏導(dǎo)數(shù)有界。
條件(1)要求系統(tǒng)的平衡點(diǎn)為零點(diǎn),若不滿足此條件,可通過(guò)坐標(biāo)變化使之滿足此條件,條件(2)代表了一類(lèi)非線性系統(tǒng),也是許多實(shí)際非線性系統(tǒng)過(guò)程所滿足的。這兩個(gè)條件并不是很苛刻,對(duì)這類(lèi)非線性系統(tǒng)的研究也具有實(shí)際意義。可以證明[8~9],滿足以上兩個(gè)條件的非線性系統(tǒng)可以等價(jià)地表示為如下的時(shí)變線性系統(tǒng):
并且 ai(i = 1,2,n )、bj( j = 1,2,n) 是有界的。這一時(shí)變線性系統(tǒng)相當(dāng)于將非線性系統(tǒng)等價(jià)為一個(gè)由無(wú)數(shù)線性系統(tǒng)組成的線性模型的集合,每一時(shí)刻對(duì)應(yīng)集合中的某個(gè)線性模型。
根據(jù)以上論述,我們就可以在廣義預(yù)測(cè)控制的每一步,先辨識(shí)非線性系統(tǒng)的線性化模型,然后再進(jìn)一步求解廣義預(yù)測(cè)控制律。
式(2)是由一個(gè)非線性系統(tǒng)等價(jià)而來(lái)的參數(shù)未知的時(shí)變線性系統(tǒng),當(dāng)非線性系統(tǒng)不是處在穩(wěn)定工作點(diǎn)時(shí),其等價(jià)的時(shí)變線性系統(tǒng)的參數(shù)是不斷變化的,因此,要對(duì)系統(tǒng)進(jìn)行控制,就必須先辨識(shí)系統(tǒng)模型的參數(shù)(在系統(tǒng)的階次已知的情況下),要辨識(shí)的模型如下:
令:
則式(3)可表示為:
對(duì)于以上時(shí)變系統(tǒng)模型的辨識(shí),如果參數(shù)屬于慢時(shí)變的,可以采用改進(jìn)的線性定常系統(tǒng)的辨識(shí)方法,本文采用具有遺忘因子的最小二乘法,其計(jì)算公式如下:
其中, 0 <μ ≤1是遺忘因子,一般可取 0 . 95<μ ≤1, l (k )為權(quán)因子, p ( k )為正定的協(xié)方差陣。θ 與p的初值可用一次完成的最小二乘法得到,或直接選為
如果時(shí)變參數(shù)變化較慢,采用上述具有遺忘因子的最小二乘法就能獲得較好的效果,但在參數(shù)變化較快的情況下,參數(shù)的辨識(shí)應(yīng)該依據(jù)對(duì)應(yīng)時(shí)刻的觀察數(shù)據(jù),不能過(guò)多地使用過(guò)去時(shí)刻的觀測(cè)數(shù)據(jù),因此很難滿足時(shí)變參數(shù)辨識(shí)時(shí)對(duì)觀察數(shù)據(jù)充分豐富的要求,使用上述算法就存在較大的誤差,為了解決該問(wèn)題,比較常用的是多項(xiàng)式逼近法。所謂多項(xiàng)式逼近方法,就是將時(shí)變序列展開(kāi)成多項(xiàng)式基函數(shù)的線性組合形式,通過(guò)辨識(shí)這些線性組合的定常系數(shù)來(lái)實(shí)現(xiàn)時(shí)變參數(shù)的辨識(shí)。
對(duì)于式(3)中 )(tθ 的任意一個(gè)元素,在任意一個(gè)時(shí)間間隔 ],[21ttt ∈ 上,存在多項(xiàng)式:
通過(guò)引入如下一個(gè)變量代換[10~11]
則式(3)可以寫(xiě)成:
)(tξ 為系統(tǒng)的噪聲與多項(xiàng)式的截?cái)囗?xiàng)所造成的未建模動(dòng)態(tài)誤差之和。
對(duì)(10)進(jìn)行辨識(shí)時(shí),先進(jìn)行正則化處理:
即:
對(duì)上式中的參數(shù)采用如下帶有死區(qū)的最小二乘算法進(jìn)行辨識(shí):
死區(qū)切換函數(shù)定義為:
其中,α1=1+trace(P(0)), t rP (0)表示矩陣 P (t)在時(shí)刻等于 t =0時(shí)的跡,α2為小于1的任選正常數(shù)。
在實(shí)際的過(guò)程中,大部分的非線性系統(tǒng)都是工作在某一穩(wěn)定工作點(diǎn)上,因此,系統(tǒng)穩(wěn)定運(yùn)行時(shí),可以將系統(tǒng)作為一個(gè)時(shí)不變線性系統(tǒng)進(jìn)行控制,而當(dāng)系統(tǒng)的工作點(diǎn)變化的時(shí)候,就需要采用上面所論述的原理,將非線性系統(tǒng)等價(jià)為時(shí)變的線性系統(tǒng),在線辨識(shí)模型參數(shù),并進(jìn)行廣義預(yù)測(cè)控制,使系統(tǒng)由一個(gè)工作點(diǎn)快速平穩(wěn)地達(dá)到另外一個(gè)工作點(diǎn)。
非線性系統(tǒng)工作點(diǎn)變化時(shí)的廣義預(yù)測(cè)控制的步驟:
(1)如果非線性系統(tǒng)工作在同一工作點(diǎn),轉(zhuǎn)到3,否則執(zhí)行2;
(2)用具有遺忘因子的遞推最小二乘法(參數(shù)變化緩慢)或多項(xiàng)式逼近時(shí)變參數(shù)的方法估計(jì)模型參數(shù) )(tai, )(tbj;
(3)求解Diophantine方程,計(jì)算jE、jF、jG、jH;
(4)計(jì)算矩陣G和G ( G + λ I )?1;
(5)求解控制量 )(tu ;
(6)返回到1,繼續(xù)執(zhí)行;
此處需要說(shuō)明的是,如果用具有遺忘因子的遞推最小二乘法辨識(shí)參數(shù),那么它與線性系統(tǒng)廣義預(yù)測(cè)控制中的具有遺忘因子的遞推最小二乘法雖然都是用來(lái)估計(jì)系統(tǒng)的參數(shù),但意義并不相同,前者求的是非線性系統(tǒng)在不同工作點(diǎn)附近的線性化的模型參數(shù),目的是使線性化后的模型能盡可能逼近非線性模型,參數(shù)變化比較大;后者求的是線性系統(tǒng)的模型參數(shù),它的作用是使辨識(shí)值不斷地接近線性系統(tǒng)模型參數(shù)的真實(shí)值,參數(shù)變化不大。此外,如果非線性系統(tǒng)是由一個(gè)工作點(diǎn)運(yùn)行到令一個(gè)工作點(diǎn)時(shí),辨識(shí)的初始值應(yīng)該設(shè)為起始工作點(diǎn)線性化后的模型參數(shù)。
二容液位系統(tǒng)如圖1所示:
圖1 二容液位圖
在圖1中,上面的容器稱(chēng)為容器1,下面的容器稱(chēng)為容器2。容器1的水流輸入量Q0是由水泵M決定的,水泵的正常工作區(qū)間為0-3 m3/h,即水泵能夠提供的最大水流為 1 /1200m3/s。容器1的水流輸出量Q1與容器1的液位高度的開(kāi)方成正比,即 Q1 = k 1h1,同理,容器2的水流輸出量Q2與容器2的液位高度的開(kāi)方成正比,即,則根據(jù)物料平衡方程:
容器內(nèi)儲(chǔ)液量的變化率 = 單位時(shí)間內(nèi)液體流入量 - 單位時(shí)間內(nèi)液體流出量
可以得到容器1的液位:
容器2的液位:
其中的A1,A2分別為容器1、容器2的橫截面積。
在二容液位系統(tǒng)的仿真研究中,以容器1的水流輸入量作為輸入控制量,以容器2的液位高度作為輸出控制量,系統(tǒng)用CARMA表示,即
采用具有遺忘因子的最小二乘法辨識(shí)模型的參數(shù)。系統(tǒng)的仿真輸出采用四階龍格—庫(kù)塔法得到,其公式如下:
其中:
f( t,y)為系統(tǒng)的模型。
系統(tǒng)在幅值為7.8881e-004的階越響應(yīng)下的響應(yīng)曲線如圖2所示:
圖2 階躍響應(yīng)曲線
初始液位為0,液位設(shè)定值為0.35m,采用具有遺忘因子的最小二乘法辨識(shí)系統(tǒng)模型,其仿真結(jié)果如圖3所示:
圖3 具有遺忘因子的最小二乘法辨識(shí)系統(tǒng)模型的輸出曲線
采用多項(xiàng)式逼近法辨識(shí)模型參數(shù)時(shí),其仿真結(jié)果如圖4所示:
由圖3和圖4可以看出,由于參數(shù)變化比較緩慢,無(wú)論是采用多項(xiàng)式逼近法辨識(shí)模型還是采用具有遺忘因子的最小二乘法辨識(shí)模型,輸出曲線相差不大,都能實(shí)現(xiàn)非線性系統(tǒng)工作點(diǎn)的切換。
圖4 多項(xiàng)式逼近法辨識(shí)模型的輸出曲線
本文針對(duì)一類(lèi)比較具有普遍意義的非線性系統(tǒng),首先將其轉(zhuǎn)化為時(shí)變參數(shù)的線性系統(tǒng),然后使用具有遺忘因子的最小二乘法或是多項(xiàng)式逼近法在線辨識(shí)模型參數(shù),進(jìn)行廣義預(yù)測(cè)控制,給出了兩種辨識(shí)時(shí)變參數(shù)的方法,并以二容液位系統(tǒng)為模型,進(jìn)行了仿真研究。結(jié)果表明,使用具有遺忘因子的最小二乘法或是多項(xiàng)式逼近法在線辨識(shí)模型參數(shù),輸出曲線相差不大,都能實(shí)現(xiàn)非線性系統(tǒng)工作點(diǎn)的切換。
[1] 孫洪濤. 廣義預(yù)測(cè)控制的應(yīng)用研究[D]. 天津: 天津大學(xué), 2006.
[2] 師五喜. 廣義預(yù)測(cè)控制中Diophantine矩陣多項(xiàng)式方程的顯示解[J]. 控制理論與應(yīng)用. 2007, 24 (2) : 261 - 263.
[3] Xu Zuhua, Zhu Yucai, Han Kai, Zhao Jun, Qian Jixin. A multi-iteration pseudo-linear regression method and an adaptive disturbance model for MPC [J]. Journal of Process Control, 2010, 20 (4) : 384 - 395.
[4] 張?jiān)蚂o, 徐喆. 基于廣義預(yù)測(cè)控制的儲(chǔ)罐液位系統(tǒng)的仿真分析[J]. 當(dāng)代化工, 2013, 42 (11) : 1605 - 1607.
[5] 張敏杰. 改進(jìn)廣義預(yù)測(cè)控制算法的研究[D]. 太原: 太原理工大學(xué), 2012.
[6] 李奇安, 邵明新, 李?lèi)? 基于遺傳算法的多變量增量型廣義預(yù)測(cè)控制[J]. 江南大學(xué)學(xué)報(bào) (自然科學(xué)版) , 2013, 12 (5): 626 - 630.
[7] Jiang Jian-hua, Li Xi, Deng Zhong-hua, Yang Jie, Zhang Yisheng. Thermal management of an independent steam reformer for a solid oxide fuel cell with constrained generalized predictive control[J]. International Journal of Hydrogen Energy, 2012 (37) : 12317 - 12331.
[8] 郭健, 朱瑞軍, 胡維禮. 一類(lèi)非線性系統(tǒng)的自適應(yīng)廣義預(yù)測(cè)控制[J]. 控制與決策. 2001, 16 (3) : 358 - 361.
[9] 李奇安, 金鑫. 對(duì)角CARIMA模型多變量廣義預(yù)測(cè)近似解耦控制[J]. 浙江大學(xué)學(xué)報(bào) (工學(xué)版) , 2013, 47 (10) : 1764 - 1769.
[10] L Guo. Estimating time varying parameters by the Kalman filter based algorithm: Stability and convergence[J].IEEE Trans on Autom Contr, 1990, 35 (2): 141 - 147.
[11] 李德權(quán). 線性時(shí)變系統(tǒng)的辨識(shí)及其應(yīng)用研究[D]. 南京: 東南大學(xué), 2003.