張 燕 鄧 嬪 張佳會 楊 鵬
(河北工業(yè)大學(xué)控制科學(xué)與工程學(xué)院,天津 300130)
近年來,對基于線性系統(tǒng)的建模和預(yù)測控制理論的研究取得了很大的進(jìn)步。當(dāng)被控對象存在弱非線性時,采用該線性預(yù)測控制算法非常有效。實際系統(tǒng)存在非線性時變、強非線性等因素,基于局部線性化或局部線性近似的方法是常用的處理方法[1-3]。但由于未充分考慮誤差的積累所帶來的超調(diào)影響,系統(tǒng)的穩(wěn)定性較差,預(yù)測輸出與實際偏離較大。神經(jīng)網(wǎng)絡(luò)是對非線性系統(tǒng)建立預(yù)測模型和優(yōu)化控制的關(guān)鍵技術(shù)之一。各種基于神經(jīng)網(wǎng)絡(luò)的預(yù)測控制算法雖然本身也存在一定的缺點,但它有效的綜合控制性能使其具有很好的發(fā)展前景[4]。
受傳統(tǒng)PID控制中微分控制作用和模型線性化的啟發(fā),本文對性能指標(biāo)函數(shù)進(jìn)行改進(jìn),并提出了微分改進(jìn)的RBF神經(jīng)網(wǎng)絡(luò)線性預(yù)測控制方法。該算法對預(yù)測控制算法進(jìn)行反向優(yōu)化,能實時給出優(yōu)化控制量,具有操作簡單、控制量給出迅速和優(yōu)化跟蹤效果好等特點。
非線性系統(tǒng)可用以下非線性離散時間模型表示:
式中:y(k)和u(·)分別為k時刻非線性系統(tǒng)模型的輸出和輸入;m和n分別為輸出量和輸入量的階次;d為滯后時間,假設(shè)d=0;F(·)為一個未知的連續(xù)非線性函數(shù),可以用一個神經(jīng)網(wǎng)絡(luò)來逼近,其表達(dá)式如下。
式中:FNN為一個神經(jīng)網(wǎng)絡(luò)函數(shù),它在整個建模過程中是不變的(k)為該網(wǎng)絡(luò)的辨識輸出值,它可通過訓(xùn)練,逼近實際輸出值y(k)。
徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)是具有單個隱含層的三層前饋網(wǎng)絡(luò),它由輸入層、隱含層和輸出層三部分組成。其主要特點是從輸入層到隱含層的映射是非線性的,隱含層到輸出層的映射是線性的。該網(wǎng)絡(luò)的表達(dá)形式簡單,在加快收斂速度的同時能避免局部最優(yōu)問題,從而達(dá)到較高的辨識精度,因而在實際工程中得到廣泛應(yīng)用。RBF神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 RBF神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 Structure of RBF neural network
圖1中,輸入節(jié)點數(shù)為N=m+n;網(wǎng)絡(luò)的輸入向量X=[x1,x2,...,xN]=[y(k -1),...,y(k - m),u(k -1),...,u(k - n)];H=[h1,h2,...,hL]T為網(wǎng)絡(luò)的徑向基向量;W 為網(wǎng)絡(luò)的權(quán)值向量,W=[w1,w2,...,wL]。
hj為核函數(shù),核函數(shù)的種類很多,但最常用的是高斯核函數(shù),其表達(dá)式如下:
式中:hj為網(wǎng)絡(luò)中第j個隱含層節(jié)點的輸出;Cj為高斯函數(shù)的中心向量,Cj= [cj1,cj2,...,cjN];δ 為網(wǎng)絡(luò)的基寬參數(shù),δ = [δ1,δ2,...,δL],δj為大于0的標(biāo)準(zhǔn)化常數(shù)。RBF神經(jīng)網(wǎng)絡(luò)的輸出為隱含層節(jié)點輸出的線性組合[5-8]。
設(shè)在k時刻,系統(tǒng)的實際輸出值為y(k),RBF神經(jīng)網(wǎng)絡(luò)辨識輸出值為(k),神經(jīng)網(wǎng)絡(luò)辨識的目的是通過訓(xùn)練,使辨識輸出逼近實際輸出。在考慮誤差變化率對系統(tǒng)影響的情況下,假設(shè)辨識器的性能指標(biāo)函數(shù)為:
從式(3)和式(4)可以看出,需確定的RBF神經(jīng)網(wǎng)絡(luò)參數(shù)有權(quán)向量W、中心矢量Cj、基寬度參數(shù)δ和隱含層的節(jié)點數(shù)L。對于基寬度參數(shù)δ、中心矢量Cj和權(quán)向量W的調(diào)整,采用的是基于Delta學(xué)習(xí)規(guī)則的梯度下降法。
權(quán)向量W調(diào)整為:
基寬度參數(shù)δ調(diào)整為:
中心矢量Cj調(diào)整為:
式中:β和μ為動量因子;η為學(xué)習(xí)速率;且0<η<1。
不論算法的形式如何,基于神經(jīng)網(wǎng)絡(luò)的預(yù)測控制都包含預(yù)測控制的三個基本部分:預(yù)測模型、滾動優(yōu)化和反饋校正[9]。微分改進(jìn)RBF神經(jīng)網(wǎng)絡(luò)線性預(yù)測控制就是直接采用辨識網(wǎng)絡(luò)作為預(yù)測模型進(jìn)行向前一步預(yù)測;然后通過線性化逼近未來輸出設(shè)定值,利用未來輸出設(shè)定值和實際輸出值,預(yù)測增量值和誤差校正值之間的關(guān)系;最后通過反向優(yōu)化的方式求得當(dāng)前時刻的最優(yōu)控制量。在k時刻,利用局部線性逼近的方法對辨識輸出值(k)進(jìn)行線性逼近,從而得到辨識輸出值(k)對網(wǎng)絡(luò)輸入變化的靈敏度信息[10-11]。
在式(12)的基礎(chǔ)上,假設(shè)k時刻向前一步的預(yù)測增量值可用下式表示:
式中:ρ為誤差變化因子,它是一個實常數(shù)。
結(jié)合式(15)和式(16),得到當(dāng)前k時刻的控制量表達(dá)式為:
根據(jù)上述推導(dǎo),可以得到神經(jīng)網(wǎng)絡(luò)預(yù)測控制算法的步驟如下[12-14]。
①根據(jù)控制對象選擇神經(jīng)網(wǎng)絡(luò)的初始化參數(shù);
②利用取得的系統(tǒng)輸入輸出樣本數(shù)據(jù),并結(jié)合式(3)~式(12),對非線性系統(tǒng)進(jìn)行離線辨識訓(xùn)練,通過訓(xùn)練得到合適的基寬度參數(shù)δ、中心矢量Cj和權(quán)向量W;
⑤ 用系統(tǒng)的參考軌跡yr(k+1)代替(k+1),根據(jù)式(17),求得控制量的增量Δu(k)和當(dāng)前控制量的增量u(k);
⑥ 優(yōu)化性能指標(biāo)函數(shù)JN,利用式(6)~式(10),對基寬度參數(shù)δ、中心矢量Cj和權(quán)向量W進(jìn)行在線調(diào)整;
⑦將得到的u(k)作為受控對象的控制信號輸入,計算實際的輸出y(k+1);
⑧在下一時刻轉(zhuǎn)至第③步,重新計算,并不斷地調(diào)整控制信號。
為了驗證方法的有效性,選取文獻(xiàn)[13]中的非線性系統(tǒng)模型:
采用RBF神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練時,選取隱含層數(shù)L=9,輸入節(jié)點數(shù) N=4,動量因子 β =0.05、μ =0.01,學(xué)習(xí)速率η=0.1,微分加權(quán)因子θ=0.1,設(shè)定未來輸出值序列為方波信號。不帶微分項和帶微分項的辨識效果分別如圖2所示。
圖2 辨識效果Fig.2 Recognition effect
從圖2可以看出,帶微分項的RBF神經(jīng)網(wǎng)絡(luò)具有較好的辨識跟蹤能力,能很好地抑制超調(diào)。將訓(xùn)練好的RBF神經(jīng)網(wǎng)絡(luò)應(yīng)用到系統(tǒng)辨識和控制量的求解中,誤差變化因子ρ=-0.45。
設(shè)定未來輸出值的序列為方波信號,得到的控制效果如圖3所示。
圖3 控制效果Fig.3 Control effect
從圖3可以看出,實際輸出曲線能夠很好地跟蹤設(shè)定輸出,跟蹤曲線沒有超調(diào),且收斂較快。
在傳統(tǒng)性能指標(biāo)函數(shù)的基礎(chǔ)上,本文對微分改進(jìn)RBF神經(jīng)網(wǎng)絡(luò)預(yù)測控制算法進(jìn)行了改進(jìn),加入了誤差微分項。從辨識結(jié)果可以看出,系統(tǒng)的超調(diào)量減少、調(diào)節(jié)時間縮短,系統(tǒng)的控制性能得到改善。利用辨識模型作為預(yù)測模型,通過對輸出設(shè)定值進(jìn)行線性逼近的反向優(yōu)化算法,實時給出優(yōu)化控制量,避免了復(fù)雜的非線性求解。通過非線性系統(tǒng)仿真實例,驗證了所提方法的可行性和有效性。
[1]陳增強,袁著祉,張燕.基于神經(jīng)網(wǎng)絡(luò)的非線性預(yù)測控制綜述[J].控制工程,2002,9(4):4 -11.
[2]陳增強,車海平,賀江峰,等.基于神經(jīng)網(wǎng)絡(luò)的二次逼近非線性自適應(yīng)預(yù)測控制器[J].電路系統(tǒng)學(xué)報,1998,3(1):26 -32.
[3] Miguel A B,Ton J J,Van D B.Predictive control based on neural network model with I/O feed back linearization[J].International Journal of Control,1999,72(17):1358 -1554.
[4]戴文戰(zhàn),婁海川,楊愛萍.非線性系統(tǒng)神經(jīng)網(wǎng)絡(luò)預(yù)測控制研究進(jìn)展[J].控制理論與應(yīng)用,2009,26(5):521 -526.
[5]劉金琨.智能控制[M].北京:電子工業(yè)出版社,2005.
[6]朱海洋,張莉.RBF神經(jīng)網(wǎng)絡(luò)PID控制在分切機中的應(yīng)[J].自動化儀表,2009,30(12):68 -71.
[7]馮冬青,徐學(xué)紅,費敏銳.神經(jīng)網(wǎng)絡(luò)廣義預(yù)測控制在鍋爐燃燒系統(tǒng)中的應(yīng)用[J].自動化儀表,2006,27(6):18 -21.
[8]方益民,徐保國.RBF神經(jīng)網(wǎng)絡(luò)在壓力校驗臺數(shù)據(jù)非線性校正中的應(yīng)用[J].自動化儀表,2005,26(10):28 -29.
[9]許超,陳治綱,邵惠鶴.預(yù)測控制技術(shù)及應(yīng)用發(fā)展綜述[J].化工自動化及儀表,2002,29(3):1 -10.
[10]張燕,陳增強,袁著祉.基于Taylor逼近的非線性系統(tǒng)PID型多步預(yù)測控制[J].控制與決策,2004,19(4):448 -451.
[11]張世峰,李鵬.基于神經(jīng)網(wǎng)絡(luò)的自整定PID控制器設(shè)計[J].自動化儀表,2009,30(7):64 -66.
[12]Zhang Yan,Liang Xiuxia,Yang Peng,et al.Modeling and control of nonlinear discrete-time systems based on compound neural networks[J].Chemical Engineering,2009,17(3):454 -459.
[13]劉金琨.先進(jìn)PID控制 MATLAB仿真[M].2版.北京:電子工業(yè)出版社,2006.
[14]飛思科技產(chǎn)品研發(fā)中心.Matlab7神經(jīng)網(wǎng)絡(luò)理論與實現(xiàn)[M].北京:電子工業(yè)出版社,2005.