張英朋 孫曉東++石要武
摘要:采用基于徑向基神經(jīng)網(wǎng)絡(luò)(RBFNN)模型的非線性模型預(yù)測控制方法,被控對象選擇火花塞點(diǎn)火(SI)發(fā)動(dòng)機(jī)的空燃比(AFR)高度非線性復(fù)雜系統(tǒng),利用漸消記憶最小二乘法實(shí)現(xiàn)基于RBFNN的SI發(fā)動(dòng)機(jī)AFR系統(tǒng)建模以及參數(shù)在線自適應(yīng)更新。針對非線性模型預(yù)測控制中尋優(yōu)問題,運(yùn)用序列二次規(guī)劃濾子算法對最優(yōu)控制序列進(jìn)行求解,并加入濾子技術(shù)避免了罰函數(shù)的使用。在相同的實(shí)驗(yàn)環(huán)境下,與PI控制算法和Volterra模型預(yù)測控制方法進(jìn)行仿真對比實(shí)驗(yàn),結(jié)果表明,所提算法的控制效果明顯優(yōu)于其他兩種方法。
關(guān)鍵詞:非線性模型預(yù)測控制;空燃比;RBF神經(jīng)網(wǎng)絡(luò)模型;序列二次規(guī)劃
中圖分類號:TP273文獻(xiàn)標(biāo)識(shí)碼:A
1引言
目前,研究精確有效的空燃比(Airfuelratio,AFR)控制方法對降低汽車尾氣污染物排放、提高燃油利用率以及發(fā)動(dòng)機(jī)整體性能均有著重要意義。研究表明控制AFR在14.7附近時(shí)發(fā)動(dòng)機(jī)的動(dòng)力輸出和燃油消耗達(dá)到最佳平衡。目前三元催化器的使用是汽車的一場革命,三元催化器的工作效率直接影響著汽車尾氣的排放,準(zhǔn)確的控制AFR可以提高三元催化器的工作效率,研究顯示,當(dāng)控制AFR低于14.7-1%時(shí)導(dǎo)致CO和HC的排放量急劇增加,當(dāng)AFR高于14.7+1%時(shí)NOx排放陡升50%。
研究汽車發(fā)動(dòng)機(jī)AFR的控制精度的關(guān)鍵問題是如何解決發(fā)動(dòng)機(jī)高度非線性問題。目前生產(chǎn)的電控單元使用查表與PI反饋回路控制器相結(jié)合來對AFR進(jìn)行控制。這種方法對高度非線性的SI發(fā)動(dòng)機(jī)系統(tǒng)達(dá)不到精確的控制,近些年對AFR控制的研究中,Manzie[1]提出了一種徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)(RBFNN)為基礎(chǔ)的方法來解決燃料噴射控制的問題,并發(fā)現(xiàn),該網(wǎng)絡(luò)適用于估計(jì)進(jìn)入氣缸的空氣質(zhì)量流速。在此基礎(chǔ)上,隨后他又提出了模型預(yù)測控制(MPC)方法對AFR進(jìn)行控制研究,把RBFNN作為空氣系統(tǒng)的觀測器并且利用積極集的方法對模型預(yù)測控制算法進(jìn)行二次規(guī)劃求解。但是線性模型僅適用于圍繞一個(gè)特定操作的小區(qū)域。而對于對發(fā)動(dòng)機(jī)的控制要求而言,由于空氣燃油攝入量都是非線性的,所以適用于小范圍操作區(qū)域的控制方法達(dá)不到精確控制的效果。因此,研究一種在全部區(qū)域有效的非線性控制模型是有重要意義的。
本文提出了一種基于RBFNN的AFR系統(tǒng)非線性模型預(yù)測控制方法。利用RBFNN對SI發(fā)動(dòng)機(jī)AFR系統(tǒng)建模,具有參數(shù)在線自適應(yīng)、辨識(shí)精度高結(jié)構(gòu)簡單等優(yōu)點(diǎn),但這類模型是屬于一種“黑盒子模型”,其模型內(nèi)部參數(shù)無法得到利用,這會(huì)導(dǎo)致該模型的控制算法的計(jì)算量相對較大。本文選用了只利用神經(jīng)網(wǎng)絡(luò)預(yù)測序列的SQP方法作為模型預(yù)測控制的尋優(yōu)算法,同時(shí)對算法進(jìn)行了進(jìn)一步的改進(jìn),在SQP算法中加入濾子,避免了使用罰函數(shù)時(shí)罰因子選取困難和求解子問題時(shí)不相容的問題。
計(jì)算技術(shù)與自動(dòng)化2016年3月
第35卷第1期張英朋等:基于神經(jīng)網(wǎng)絡(luò)模型的空燃比非線性模型預(yù)測控制
2自適應(yīng)神經(jīng)網(wǎng)絡(luò)模型
2.1RBFNN
神經(jīng)網(wǎng)絡(luò)有三層,輸入層、隱層、輸出層,隱層包含許多隱層節(jié)點(diǎn),每個(gè)隱層節(jié)點(diǎn)都有一個(gè)中心位置,通過‖x(t)-cj(t)‖來計(jì)算隱層節(jié)點(diǎn)中心位置和輸入元素的歐幾里德距離。x(t)是神經(jīng)網(wǎng)絡(luò)的輸入,cj(t)是第j個(gè)隱層節(jié)點(diǎn)的中心位置。通過非線性激活函數(shù)φj(t)產(chǎn)生隱層節(jié)點(diǎn)的輸出,本文選取高斯函數(shù)作為激活函數(shù):
φj(t)=exp(-‖x(t)-cj(t)‖2σ2j),
j=1,…,nh,(1)
其中σj為中心節(jié)點(diǎn)寬度,nh是中心的個(gè)數(shù),由于神經(jīng)網(wǎng)絡(luò)輸出層本質(zhì)上是一個(gè)線性組合,所以神經(jīng)網(wǎng)絡(luò)模型t時(shí)刻的第i個(gè)輸出是這個(gè)隱層節(jié)點(diǎn)輸出的加權(quán)和:
i(t)=∑nhj=1φj(t)wji,i=1,…,q(2)
其中w是輸出層的權(quán)值;q是輸出的個(gè)數(shù)。
2.2訓(xùn)練方法
采用遞推K均值算法和最小P算法來計(jì)算中心點(diǎn)cj和隱層節(jié)點(diǎn)的寬度σj,利用漸消記憶最小二乘(Recursiveleastsquares,RLS)對RBFNN輸出層的權(quán)值w進(jìn)行訓(xùn)練,同時(shí)根據(jù)實(shí)時(shí)數(shù)據(jù)對神經(jīng)網(wǎng)絡(luò)模型參數(shù)進(jìn)行在線更新[2]。
由于發(fā)動(dòng)機(jī)AFR系統(tǒng)是一個(gè)多變量的高度非線性系統(tǒng),為了反映系統(tǒng)的全部動(dòng)態(tài)特性,本文采用隨機(jī)幅值序列(RAS)作為MEVM模型的激勵(lì)信號。MVEM模型的輸入變量為節(jié)氣門角度θ和燃油噴射質(zhì)量流速fi,輸出變量為AFR,發(fā)動(dòng)機(jī)轉(zhuǎn)速n、進(jìn)氣門燃油質(zhì)量流速f、通過進(jìn)氣門的空氣質(zhì)量流速ap、進(jìn)氣歧管壓力溫度、通過節(jié)氣門的空氣質(zhì)量流速at等變量作為MVEM模型中的狀態(tài)變量來描述發(fā)動(dòng)機(jī)內(nèi)部特性。產(chǎn)生20000組輸入輸出數(shù)據(jù),前10000組數(shù)據(jù)用來對模型進(jìn)行訓(xùn)練,后10000組數(shù)據(jù)用來對模型進(jìn)行驗(yàn)證。相關(guān)參數(shù)設(shè)定為:
p=3,λ=0.999,p(0)=1×108×Inh×nh,
(0)=1×10-8×Unh×q
式中:λ為RLS算法中的遺忘因子;p為RLS算法中的中間變量;I為單位矩陣;U為一個(gè)隨機(jī)矩陣。其模型辨識(shí)結(jié)果如圖1所示。圖中,對比數(shù)據(jù)為15000-17000,采用平均絕對誤差(Mennabsulterror,MAE)對辨識(shí)結(jié)果進(jìn)行評價(jià),從圖中可以看出辨識(shí)結(jié)果精度非常高。
3基于RBFNN的非線性模型預(yù)測控制
方法
基于RBF神經(jīng)網(wǎng)絡(luò)模型的非線性模型預(yù)測控制系統(tǒng)結(jié)構(gòu)圖如圖2所示。圖中S為系統(tǒng)設(shè)定值(本文設(shè)S=14.7);ef(k)為系統(tǒng)輸出誤差;y(k)為系統(tǒng)真實(shí)輸出;(k)為RBFNN模型的預(yù)測輸出序列;pi(k)為RBFNN模型的進(jìn)氣歧管壓力預(yù)測序列;n(k)為發(fā)動(dòng)機(jī)轉(zhuǎn)速預(yù)測序列。在每個(gè)控制周期內(nèi)RBFNN根據(jù)當(dāng)前節(jié)氣門角度θ以及燃油噴射質(zhì)量流速fi的實(shí)際值對SI發(fā)動(dòng)機(jī)AFR系統(tǒng)的未來Ny步輸出序列進(jìn)行預(yù)測,并將預(yù)測序列(k+1),…,(k+Ny)發(fā)送給控制器;控制器根據(jù)模型預(yù)測序列以及約束化條件對fi的最優(yōu)控制序列進(jìn)行計(jì)算,并將求得的燃油噴射質(zhì)量流速序列重新做用于RBFNN,得到新的模型預(yù)測輸出序列。依次循環(huán),直至滿足優(yōu)化終止條件。然后,將最優(yōu)控制序列的第一個(gè)元素作為真實(shí)控制值發(fā)送給發(fā)動(dòng)機(jī)。每個(gè)采樣周期中,根據(jù)發(fā)動(dòng)的測量數(shù)據(jù)以及輸入數(shù)據(jù),利用漸消記憶最小二乘算法對RBFNN的參數(shù)向量進(jìn)行在線自適應(yīng)矯正,并利用真實(shí)AFR輸出以及模型預(yù)測輸出對控系統(tǒng)進(jìn)行反饋補(bǔ)償,實(shí)現(xiàn)閉環(huán)反饋。
模型預(yù)測控制系統(tǒng)結(jié)構(gòu)圖
SI發(fā)動(dòng)機(jī)AFR非線性模型預(yù)測控制問題目標(biāo)函數(shù)如下式[3]:
J=[s-(k+1)-d(k)]TΛ1[s-
(k+1)-d(k)]+Δu(k)TΛ2Δu(k)s.t.umin≤u≤umax(3)
式中s∈RNy×1為系統(tǒng)設(shè)定值;Ny為模型預(yù)測步數(shù);(k+1)∈RNy×1為RBFNN預(yù)測輸出序列d(k)∈RNy×1為對模型預(yù)測序列的補(bǔ)償向量,d(k)=[d1(k),…,dNy(k)]T,取di(k)=ef(k)為k時(shí)刻RBFNN的預(yù)測誤差;u(k)∈RNu×1是對未來Nu步的最優(yōu)控制序列;Nu為控制步數(shù);Δu(k)=u(k)-u(k-1);Λ1∈RNy×Ny和Λ2∈RNu×Nu為正定加權(quán)矩陣。
由式(3)可見,SI發(fā)動(dòng)機(jī)AFR非線性模型預(yù)測控制實(shí)質(zhì)上是解決一個(gè)帶有約束條件的二次型函數(shù)尋優(yōu)問題,因此,本文采用SQP優(yōu)化算法對控制序列u(k)進(jìn)行迭代尋優(yōu)。
SQP濾子算法:
非線性不等式約束化問題可以描述為[4]:
minx∈Rnf(x)s.t.gj(x)≤0,j∈I={1,2,…,m}(4)
其中x∈Rn,f:Rn→R,gj(j∈I):Rn→R為兩個(gè)二次連續(xù)可微的函數(shù),利用SQP求解問題(4)產(chǎn)生K-T點(diǎn)的序列,搜索方向dk通過求解子問題獲得
minx∈Rnqk(d)=
對于非線性規(guī)劃問題,本文所述SQP濾子法是一種有效的方法,它對初始點(diǎn)是否是可行點(diǎn)不作要求,而且這種方法不需要選擇罰函數(shù),也不需要在每個(gè)迭代步改變信賴域半徑,而是直接改變步長因子來保證目標(biāo)函數(shù)的充分下降性,算法的收斂性與可行性的證明[5]。
根據(jù)SI發(fā)動(dòng)機(jī)AFR非線性模型預(yù)測控制問題,采用本文所述的SQP濾子優(yōu)化算法即可對控制序列u(k)進(jìn)行尋優(yōu)迭代。
4仿真實(shí)驗(yàn)
本文所提算法仿真環(huán)境參數(shù)設(shè)定值為:
Ny=20,Nu=10,Ts=0.02s,B0=INu×Nu,Λ1=0.6×INy×Ny,Λ2=0.4×INu×Nu,ε=1×10-5,α0=0.25
為了驗(yàn)證本文所提算法的有效性,所提的PID方法[6]和本文所提算法在相同實(shí)驗(yàn)環(huán)境下進(jìn)行對比試驗(yàn),其中PID控制器表達(dá)式如下:
fi(k)=fi(k-1)+
Ks(1+TsτI+τDTs)e(k)-
(1+2τDTs)e(k-1)+τDTse(k-2)(8)
式中,Ks為PID控制器的增益;τI為積分時(shí)間;τD為微分時(shí)間,由于采用PI控制器進(jìn)行仿真實(shí)驗(yàn),因而τD設(shè)為0。利用開環(huán)ZieglerNichols方法對PI控制器參數(shù)進(jìn)行設(shè)定并根據(jù)實(shí)際情況進(jìn)行了適當(dāng)?shù)恼{(diào)整,得到控制器參數(shù)為:
Ks=3.25×10-4,τI=0.22sec
基于Volterra模型預(yù)測控制的實(shí)驗(yàn)環(huán)境如下:
在實(shí)驗(yàn)過程中設(shè)定采樣間隔為Ts=0.02s,預(yù)測步數(shù)Ny=20,控制步數(shù)Nu=10,umax=0.03kg/sec,umin=0.005kg/sec,δ=1×10-5。
4.1實(shí)驗(yàn)1
節(jié)氣門角度θ小范圍遞升漸變時(shí),對本章所提算法與傳統(tǒng)PI控制方法進(jìn)行仿真對比實(shí)驗(yàn)。4.2實(shí)驗(yàn)2
在節(jié)氣門角度θ大范圍漸變時(shí),對本文所提算法與傳統(tǒng)PI控制方法進(jìn)行仿真對比實(shí)驗(yàn)。
4.2實(shí)驗(yàn)2
在節(jié)氣門角度θ大范圍漸變時(shí),對本文所提算法與傳統(tǒng)PI控制方法進(jìn)行仿真對比實(shí)驗(yàn)。