趙鐵彪,徐毅,樊培利,薛美盛
(1.中國科學技術大學自動化系,合肥230026;2.山東石橫發電廠,山東泰安271261)
動態矩陣控制(DMC)是一種重要的預測控制算法,由Cutlergf在1980年提出[1]。它采用在工程上易于測取的對象階躍響應做模型,算法比較簡單,計算量較少,魯棒性較強,適用于有純時延、開環漸進穩定的非最小相位系統,近年來已在冶金、石油、化工等部門的過程控制中取得成功的應用[2]。研究發現,DMC對模型失配的魯棒性有一定的局限性,需要改善預測模型,從而使得預測輸出值更準確。
文獻[3-4]中提到,由于先驗知識的局限性和過程的時變性,因而模型誤差勢必降低系統的控制精度和魯棒性,必須采取附加的預測手段彌補模型預測的不足。針對這個問題,席裕庚提出了引入誤差預測,采用誤差預測和模型預測相結合的思路。文獻[5]中,基于BP結構神經網絡,對系統的建模誤差進行預測,取得了一定的效果。文獻[6]中,提出用小波網絡建立誤差的預測模型,并對模型預測進行動態補償,增強了系統魯棒性。文獻[7]中將LS-SVM支持向量機用于廣義預測控制的誤差補償,取得了一定的效果。然而,支持向量機建模也存在一定不足,如基函數必須滿足mercer定理等。文獻[8]提出一種新的機器學習方法最小二乘相關向量回歸(LS-RVR),并將其與支持向量機(SVM)模型、相關向量回歸(RVR)模型分別就計算復雜度和模型精度做了比較,獲得了更良好的建模效果。
筆者針對動態矩陣控制中遇到的模型失配問題,結合相關向量回歸的特點,提出了基于LS-
RVR的誤差補償動態矩陣控制算法,并進行了仿真實驗,實驗結果表明了該算法的有效性。
假設未來M個時刻的控制增量分別為Δu(k),Δu(k+1),…,Δu(k+M-1),則未來P個時刻系統的預測模型輸出值為

式中:Ym(k+1)——k時刻施加Δu(k)時未來N個時刻的模型預測值,Ym(k+1)=[ym(k+1/k),ym(k+2/k),…,ym(k+N/k)]T;Y0(k+1)——k時刻未施加Δu(k)時未來N個時刻的模型輸出初值,Y0(k+1)=[y0(k+1/k),y0(k+2/k),…,y0(k+N/k)]T;ΔU(k)=[Δu(k),Δu(k+1),…,Δu(k+M-1)]T;A——動態矩陣,

模型輸出初值:

式中:U(k-1)=[u(k-N+1),u(k-N+2),…,u(k-1)]T。將式(2)代入式(1)中,即可求出未來N個時刻預測模型輸出值為

為了克服模型誤差和干擾等的影響,需要用實際輸出誤差對系統預測模型輸出進行修正,得到預測輸出值,即:

式中:Yp(k+1)=[yp(k+1),yp(k+2),…,yp(k+P)]T;H=[h1,h2,…,hP]T。
最優控制律由二次型性能指標確定:

由?JP/?ΔU(k)=0,求得:

式中:e(k)=y(k)-ym(k)。將上式展開,可求得從k到k+M-1時刻的控制增量,即:

RVR是文獻[10]提出的一種貝葉斯框架,可以用來獲得回歸建模的稀疏解。與SVM相比,RVR使用更少的基函數;不僅可以得到預測輸出的點估計,還可以得到預測輸出的概率分布。另外,基函數無須滿足mercer定理[10-11]。
設廣義線性模型:

式中:K(x,xi)——基函數;wi——模型的權值向量的第i個元素。假設輸入輸出樣本集
輸出值是來自有附加噪聲模型的采樣值:

εn服從方差為σ2的零均值高斯分布,則樣本集的似然函數為[10]

式中:t=(t1,t2,…,tN);w=(w1,w2,…,wN);Φ——設計矩陣,Φ∈N×(N+1),Φ=[φ(x1),φ(x2),…,φ(xN)]T。其中,φ(xn)=[1,K(xn,x1),K(xn,x2),…,K(xn,xN)]T。對權值向量定義先驗的概率密度分布,即:

式中:α——N+1維向量,被稱為超參數,它使得回歸模型的復雜程度降低并更為光滑。由貝葉斯準則,可以得到權值向量的后驗似然分布為


對式(10)兩端取對數,得:

分別對α和σ2求導,并令導數等于0,可以得到公式[10]:

對于采樣獲得的輸入輸出數據,先進行最小二乘線性建模,然后把該線性模型的擬合誤差和輸入輸出數據用RVR進行建模,從而構成整個LSRVR模型[8]。
對于n階系統,假設輸入輸出序列為{u(k),y(k)}k=1,2,…,n+N,則有:

式中:Y=[y(n+1),y(n+2),…,y(n+N)]T;

運用LS-RVR建模步驟如下:
a)運用標準遞推最小二乘方法建模,根據建立的模型可以得出對于輸入X,模型輸出為

b)最小二乘方法建模誤差為

c)運用RVR方法對E進行建模,求得模型權值向量序列和相關向量序列{wk},{xk},k=1,2,…,m,其中m為相關向量的個數。有:

d)對于一個未知點x*,建立模型的輸出結果為

為了克服模型誤差和干擾的影響,DMC算法采用該步系統實際輸出與模型預測輸出的誤差來代替下一步模型預測輸出的誤差,增加了模型預測輸出精度,但它對建模誤差的修正仍有一定的局限性。為了提高模型預測精度,筆者提出了基于LSRVR誤差補償算法,對歷史輸入輸出和誤差進行訓練,建立誤差模型并對誤差進行一步預測得到下一步的模型預測誤差,從而提高了模型預測的精度。
利用LS-RVR建模方法,建立誤差模型。該誤差模型可以表示為[7]

根據得到的誤差模型,預測下步的誤差:

從而可得控制增量輸出為

計算步驟:
a)對預測控制參數進行初始化。
b)進行傳統動態矩陣控制,得到輸入、輸出、誤差數據,作為訓練樣本。
c)對誤差數據進行建模,得到誤差模型。
d)根據誤差模型,采用式(22)描述的控制律進行動態矩陣控制。
例1 選取具有大慣性的火電廠熱工系統主蒸汽壓力對象[12],其傳遞函數為

采樣周期為5s,預測前景為90,控制前景為15,誤差矩陣hi=1,控制加權矩陣λi=1。
離散化后,由于實際系統中存在一定的擾動,假設實際模型為

預測模型為

仿真結果如圖1~3所示,縱坐標變量為無量綱。

圖1 傳統DMC方法

圖2 LS-RVR誤差補償DMC方法

圖3 兩種方法輸出比較
例2 選取仿真對象為文獻[13]給出的山東石橫電廠2號爐主汽溫過程,在高負荷(270~315MW)時模型對象:

采樣時間選4s,預測前景為130,控制前景為15,誤差矩陣hi=1,控制加權矩陣λi=1。
由于實際系統中存在一定的擾動,假設實際模型為

預測模型為

仿真結果如圖4~6所示,縱坐標變量為無量綱。

圖4 傳統DMC方法
由仿真結果可以看出,誤差補償型預測控制算法與傳統動態矩陣控制算法相比,控制效果得到進一步提高。

圖5 LS-RVR誤差補償DMC方法

圖6 兩種方法輸出比較
筆者針對傳統DMC控制對于模型失配的魯棒性有一定的局限性,提出新的LS-RVR誤差補償動態矩陣控制算法。通過LS-RVR良好的建模能力,對誤差與歷史輸入輸出進行模型建模,從而提高預測輸出的精度,提高控制性能。仿真結果表明,該算法改善了系統在模型失配情況下的控制效果。
[1] CUTLER C R,RAMAKER B L.Dynamic Matrix Control-a Computer Control Algorithm[C].Proc.Joint Automatic Control Conf.CA;San Francisco,1980.
[2] 舒迪前.預測控制系統及應用[M].北京:機械工業出版社,1996:127-132.
[3] 席裕庚,許曉鳴,張鐘俊.預測控制的研究現狀和多層智能預測控制[J].控制理論與應用,1989,6(02):1-7.
[4] 席裕庚.關于預測控制的進一步思考[J].控制理論與應用,1994,11(02):219-221.
[5] 李少遠,劉浩,袁著祉.基于神經網絡誤差修正的廣義預測控制[J].控制理論與應用,1996,13(05):677-680.
[6] 王群仙,李少遠,李煥芝,等.基于小波網絡動態補償的廣義預測控制器[J].自動化學報,1999,9(05):701-704.
[7] 翟永杰,李海麗,王東風,等.LS-SVM誤差補償的廣義預測控制[J].計算機工程,2010,46(03):24-27.
[8] 陶呈綱.基于相關向量回歸模型的預測控制研究[D].合肥:中國科學技術大學,2011:18-20.
[9] 席裕庚.預測控制[M].北京:國防工業出版社,1993:11-18.
[10] 吳冰,程思微,張文瓊,等.基于相關向量回歸的仿真元建模方法[J].計算機工程,2010,36(03):24-27.
[11] TIPPING M E.Sparse Bayesian Learning and the Relevance Vector Machine[J].Journal of Machine Learning Research,2001,1(03):211-214.
[12] WANG D F,HAN P,REN Q.Chaos Optimization Variable Arguments PID Controller and Its Application to Main Steam Pressure Regulating System[C]//2002International Conference on Machine Learning and Cybernetics,2002:2116-2120.
[13] 弓岱偉.先進控制與優化軟件的設計及在電站鍋爐汽溫預測控制中的應用[D].合肥:中國科學技術大學,2008:68-70.