羅小鎖 ,陳學(xué)昌 ,曹保山
1.重慶電子工程職業(yè)學(xué)院,重慶 401331
2.重慶大學(xué) 自動(dòng)化學(xué)院,重慶 400044
傳統(tǒng)的工業(yè)控制模型都是采用輸入輸出模型,包括參數(shù)模型和非參數(shù)模型。但是為了進(jìn)一步提高控制性能和控制精度,學(xué)術(shù)界和工業(yè)界普遍認(rèn)為應(yīng)該采用狀態(tài)空間模型,這樣近些年所發(fā)展起來的現(xiàn)代濾波理論和控制器設(shè)計(jì)方法就可以發(fā)揮作用[1]。子空間辨識(shí)方法是一類狀態(tài)空間模型的系統(tǒng)辨識(shí)方法,該方法徹底將控制工作者從繁瑣的機(jī)理建模中解脫出來,只要具有足夠多的過程輸入輸出數(shù)據(jù)就可以通過辨識(shí)方法得到過程的狀態(tài)空間模型[2-3]。子空間辨識(shí)方法綜合了系統(tǒng)理論、線性代數(shù)和統(tǒng)計(jì)學(xué)三方面的思想,相比于傳統(tǒng)的辨識(shí)方法,諸如預(yù)報(bào)誤差法和輔助變量法,它有如下優(yōu)點(diǎn):(1)不需要參數(shù)化;(2)不需要迭代優(yōu)化;(3)算法實(shí)現(xiàn)僅依賴于一些簡(jiǎn)單可靠的線性代數(shù)工具,如QR分解、SVD分解等;(4)直接估計(jì)狀態(tài)空間模型,適用于多變量系統(tǒng)辨識(shí)[4]。
工業(yè)生產(chǎn)過程中普遍存在著噪聲情況,且基本上都是有色噪聲[5]。傳統(tǒng)的子空間辨識(shí)方法解決的是白噪聲問題,導(dǎo)致辨識(shí)模型誤差較大,控制效果不佳[6]。文獻(xiàn)[7]提出一種利用加權(quán)頻域子空間辨識(shí)方法來解決噪聲問題,但僅考慮了白噪聲問題。文獻(xiàn)[8]提出一種閉環(huán)有色噪聲系統(tǒng)的子空間辨識(shí)方法,但有色噪聲僅局限于零均值、穩(wěn)態(tài)、高斯有色噪聲,本文所選有色噪聲更為廣義。文獻(xiàn)[9]提出一種基于輔助變量的子空間辨識(shí)方法來處理有色噪聲,將系統(tǒng)分解為確定性部分和隨機(jī)性部分,推導(dǎo)過程比較復(fù)雜,而且由于眾多參數(shù)的影響會(huì)導(dǎo)致辨識(shí)精度下降。
基于此,本文在文獻(xiàn)[10]基礎(chǔ)上提出一種有色噪聲條件下的子空間辨識(shí)改進(jìn)方法,通過變換系統(tǒng)模型形式將有色噪聲轉(zhuǎn)變成白噪聲,克服了有色噪聲對(duì)系統(tǒng)的影響。將此方法應(yīng)用于CSTR的過程辨識(shí),獲得了良好的辨識(shí)效果。
系統(tǒng)的狀態(tài)空間模型方程有多種形式,其中在工業(yè)過程中最常用的為隨機(jī)性形式:
其中u(k)∈m為系統(tǒng)的輸入測(cè)量值,y(k)∈l為系統(tǒng)的輸出測(cè)量值,x(k)∈n為系統(tǒng)的過程狀態(tài)。w(k)∈n為系統(tǒng)的過程噪聲,v(k)∈l為輸出的測(cè)量噪聲,兩者均為零均值白噪聲;(A,B,C,D)為相對(duì)應(yīng)維數(shù)的系統(tǒng)矩陣。
假設(shè)k為當(dāng)前時(shí)刻,f為未來時(shí)刻長(zhǎng)度,對(duì)(1)通過適當(dāng)變換可得:
其中棧向量 yf、uf、wf、vf,廣義可觀測(cè)矩陣 Γf和Toeplitz矩陣 Hf、Gf為:
同樣定義過去時(shí)刻長(zhǎng)度p的棧向量狀態(tài)空間方程:
其中棧向量 yp、up、wp、vp,廣義可觀測(cè)矩陣 Γp和Toeplitz矩陣Hp、Gp定義與前面相似。
將式(2)和(3)寫成Hankel矩陣形式:
為了能夠得到系統(tǒng)矩陣,子空間辨識(shí)方法一般由兩步組成:(1)確定廣義可觀測(cè)矩陣Γf或者估計(jì)出系統(tǒng)的狀態(tài)序列;(2)計(jì)算系統(tǒng)矩陣。
需要注意的是,從式(2)可知系統(tǒng)模型階次將和f成正比,f選擇過大,會(huì)導(dǎo)致高階系統(tǒng),而高階系統(tǒng)會(huì)導(dǎo)致計(jì)算的復(fù)雜度增加,為此采用奇異值分解法來求解系統(tǒng)的最優(yōu)模型階次,根據(jù)系統(tǒng)奇異值信息的范圍來確定模型階次,具體方法可參考文獻(xiàn)[11-12]。
考慮矩陣等式(4),采用正交投影方法,利用線性代數(shù)工具QR分解、SVD分解等,獲取等式的ΓfXf部分。
將Yf行子空間投影到Uf行子空間的正交補(bǔ)子空間:
根據(jù)噪聲與輸入不相關(guān)且由投影定理可得到:
在投影左右兩邊分別加入加權(quán)矩陣W1和W2并引入中間矩陣οf,通過合適變換可得:
對(duì)上式進(jìn)行SVD分解得:
對(duì)于合適的加權(quán)矩陣W1,廣義可觀測(cè)矩陣滿足:
對(duì)于合適的加權(quán)矩陣W2,矩陣滿足:
可以作為狀態(tài)序列Xf的估計(jì)值,而且對(duì)于特定的加權(quán)矩陣W2,矩陣為 Xf的Kalman估計(jì)。
根據(jù)式(1),可得到如下關(guān)系式:
其中 ρw和 ρv為殘差矩陣,使用最小二乘法,得到:
其中‖‖·F指矩陣的Frobenius范數(shù)。這樣系統(tǒng)的狀態(tài)空間矩陣(A,B,C,D)就被估計(jì)出來。
在實(shí)際的工業(yè)過程中,噪聲往往是有色噪聲,所謂有色噪聲是指噪聲序列中每一時(shí)刻的噪聲和另一時(shí)刻的噪聲相關(guān)。給定一個(gè)高斯白噪聲信號(hào)e(k),則有色噪聲ξ(k)可表示為:
給定如下的帶有色噪聲系統(tǒng)狀態(tài)空間方程:
其中wns(k)和vns(k)為有色噪聲序列。
將式(15)中狀態(tài)空間模型變換得到:
由式(14)可知:
所以可將式(16)寫成:
其中w(k)和v(k)均為零均值白噪聲序列。定義新的狀態(tài)空間方程狀態(tài)變量xˉ、輸入變量uˉ、輸出變量yˉ:
變換后的系統(tǒng)狀態(tài)空間方程為:
這樣就達(dá)到了通過變換系統(tǒng)模型形式來處理有色噪聲的目的,主要是讓系統(tǒng)噪聲變?yōu)橐粋€(gè)零均值白噪聲,雖然不能徹底消除噪聲,卻大大降低了噪聲對(duì)系統(tǒng)的影響。然后,在辨識(shí)時(shí)直接利用變換系統(tǒng)模型后的數(shù)據(jù)得到系統(tǒng)的狀態(tài)空間模型。
CSTR即連續(xù)攪拌反應(yīng)釜,是過程控制中經(jīng)常用到的系統(tǒng)模型,其原理為:兩種不同的化學(xué)物質(zhì)在反應(yīng)釜中攪拌形成一種濃度為Ca的化合物A,其反應(yīng)釜溫度為T[13-14]。因?yàn)楦獌?nèi)是放熱反應(yīng),反應(yīng)速度會(huì)受到影響,因此必須通過引入流量為Qc的冷卻劑,用來冷卻釜內(nèi)溫度,保證產(chǎn)品的濃度得以控制。CSTR系統(tǒng)如圖1所示。
圖1 CSTR系統(tǒng)圖
CSTR為一個(gè)單輸入兩輸出系統(tǒng),輸入為冷卻劑流量Qc,輸出為產(chǎn)品的濃度Ca和混合溫度T。系統(tǒng)用非線性微分方程組可表示為:
其中q為進(jìn)料流量,Caf為進(jìn)料濃度,Tf和Tcf分別為進(jìn)料溫度和冷卻劑溫度,k0、E R、V、k0、ρ、ρc、Cp、Cpc和hA為化學(xué)反應(yīng)系數(shù),具體參數(shù)見表1。
表1 CSTR參數(shù)表
為了驗(yàn)證算法,直接采用CSTR工業(yè)對(duì)象辨識(shí)得到的數(shù)據(jù)[15],取前1 000個(gè)數(shù)據(jù)用于模型辨識(shí)及驗(yàn)證。其中輸入Qc的數(shù)據(jù)如圖2所示。
圖2 辨識(shí)數(shù)據(jù)圖
通過子空間辨識(shí)獲得系統(tǒng)模型,改進(jìn)前的系統(tǒng)與模型輸出如圖3所示,其中p和f均為10,采樣時(shí)間為10-1min,采樣數(shù)N為1 000。從圖2和圖3可以看出,CSTR辨識(shí)數(shù)據(jù)中包含著較強(qiáng)的有色噪聲序列。
圖3 改進(jìn)前CSTR系統(tǒng)數(shù)據(jù)(實(shí))和預(yù)測(cè)輸出(虛)匹配驗(yàn)證
為了克服有色噪聲數(shù)據(jù)對(duì)系統(tǒng)辨識(shí)的影響,引入第4章節(jié)中處理有色噪聲的方法,通過變換系統(tǒng)模型形式將有色噪聲轉(zhuǎn)變?yōu)榘自肼?,?0.2,使用 和 的數(shù)據(jù)進(jìn)行辨識(shí),改進(jìn)后的系統(tǒng)與模型輸出如圖4所示。
圖4 改進(jìn)后CSTR系統(tǒng)數(shù)據(jù)(實(shí))和預(yù)測(cè)輸出(虛)匹配驗(yàn)證
為了進(jìn)一步驗(yàn)證改進(jìn)前和改進(jìn)后子空間辨識(shí)方法的辨識(shí)精度,引入預(yù)測(cè)誤差ε:
其中N為采樣數(shù),j代表第j個(gè)系統(tǒng)輸出,yij和分別表示系統(tǒng)和模型的第j個(gè)系統(tǒng)輸出在第i時(shí)刻的值。改進(jìn)前、改進(jìn)后及利用文獻(xiàn)[9]方法得到的預(yù)測(cè)誤差見表2。
表2 改進(jìn)前、改進(jìn)后及文獻(xiàn)[9]方法的預(yù)測(cè)誤差比較
從表2中可以看出,相比改進(jìn)前和文[9]方法得到的預(yù)測(cè)誤差,改進(jìn)后的模型匹配誤差較小,辨識(shí)模型對(duì)系統(tǒng)輸出有著良好的預(yù)測(cè)能力。
以CSTR系統(tǒng)為研究對(duì)象,以變換系統(tǒng)模型形式為基礎(chǔ),提出了一種有色噪聲條件下的子空間辨識(shí)改進(jìn)方法。該方法有效地克服了有色噪聲對(duì)系統(tǒng)的影響,減小了預(yù)測(cè)誤差。仿真結(jié)果表明,本文方法顯著提高了CSTR的辨識(shí)精度。
[1]羅小鎖,周國(guó)清,鄒濤.基于子空間辨識(shí)的狀態(tài)空間模型預(yù)測(cè)控制[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(19):234-237.
[2]Qin S J.An overview of subspace identification[J].Computers and Chemical Engineering,2006,30(10/12):1502-1513.
[3]Kameyama K,Ohsumi A.Subspace-basedpredictionof linear time-varying stochastic systems[J].Automatica,2007,43(12):2009-2021.
[4]李幼鳳,蘇宏業(yè),褚健.子空間模型辨識(shí)方法綜述[J].化工學(xué)報(bào),2006,57(3):473-479.
[5]鄒濤,丁寶蒼,張端.模型預(yù)測(cè)控制工程應(yīng)用導(dǎo)論[M].北京:化學(xué)工業(yè)出版社,2010.
[6]Huang B,Kadali R.Dynamic modeling,predictive control and performance monitoring:a data-driven subspace approach[M].[S.l.]:Springer,2008.
[7]李永軍,馬立元,王天輝,等.一種加權(quán)頻域子空間模態(tài)參數(shù)辨識(shí)方法的改進(jìn)[J].中國(guó)機(jī)械工程,2013,24(6):89-93.
[8]黎康,張洪華.基于高階累積量的閉環(huán)子空間辨識(shí)算法研究[J].宇航學(xué)報(bào),2005,26[4]:415-419.
[9]竇偉,張湜,蔣楠,等.基于子空間方法的精餾塔系統(tǒng)辨識(shí)建模研究[J].計(jì)算機(jī)仿真,2009,26(4):109-112.
[10]Mardi N A,Wang L.Subspace-based model predictive control in a noisy environment[J].InternationalJournal of Process System Engineering,2009,2(1/2):61-69.
[11]羅小鎖.基于子空間辨識(shí)的預(yù)測(cè)控制方法研究[D].重慶:重慶大學(xué),2011.
[12]吳平.基于子空間的系統(tǒng)辨識(shí)及其應(yīng)用[D].杭州:浙江大學(xué),2009.
[13]丁香乾,楊曉黎,楊華.非線性CSTR過程預(yù)測(cè)控制器設(shè)計(jì)[J].控制工程,2009,16(2):145-147.
[14]張輝,柴毅.一種改進(jìn)的RBF神經(jīng)網(wǎng)絡(luò)參數(shù)優(yōu)化方法[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(20):146-149.
[15]Lu M,Jin C,Shao H.An improved fuzzy predictive control algorithm and its application to an industrial CSTR process[J].Chinese Journal of Chemical Engineering,2009,17(1):100-107.