李國勇
(太原理工大學(xué) 信息工程學(xué)院,太原 030024)
汽車發(fā)動機(jī)電子控制技術(shù)已在發(fā)達(dá)國家走過了幾十個(gè)年頭,國外學(xué)者也取得了一定的研究成果,而且也進(jìn)行了成功的應(yīng)用,但隨著排放法規(guī)的不斷嚴(yán)格和電子技術(shù)的飛躍發(fā)展,要求越來越高。車用發(fā)動機(jī)的控制是一個(gè)典型的多輸入多輸出、非線性程度嚴(yán)重的復(fù)雜時(shí)變系統(tǒng)。近年來隨著社會對環(huán)境與能源問題的日益關(guān)注和汽車產(chǎn)量的迅速增長,人們一直在圍繞著對汽車發(fā)動機(jī)的動力性、經(jīng)濟(jì)性、排放性等性能尋求著最佳方案,因此車用發(fā)動機(jī)的精確控制越來越受到重視。隨著控制理論的不斷發(fā)展和新型傳感器的不斷出現(xiàn),車用發(fā)動機(jī)電子控制技術(shù)從過去的查表法和PID等基于經(jīng)典理論的控制方法,向以多變量最優(yōu)解耦理論、自適應(yīng)控制理論、智能控制理論和預(yù)測控制理論等現(xiàn)代智能控制理論發(fā)展[1]。目前汽車發(fā)動機(jī)電子控制的內(nèi)容主要包括:燃油噴射控制、點(diǎn)火及爆震控制和怠速控制。此外還有超速保護(hù)、減速斷油、廢氣再循環(huán)控制、增壓控制、可變氣閥定時(shí)控制及發(fā)動機(jī)自診斷和故障安全系統(tǒng)等。
廣義預(yù)測控制(GPC)[2]在工業(yè)控制等實(shí)際系統(tǒng)中獲得了廣泛的應(yīng)用,并且在理論工作上也被深入的研究。然而,與其他成熟的自適應(yīng)控制理論一樣,GPC僅局限于線性系統(tǒng),對于非線性系統(tǒng),GPC則有些無能為力。神經(jīng)網(wǎng)絡(luò)對一般非線性函數(shù)具有映射和逼近的能力,它為非線性控制提供了新的途徑,這同樣也為GPC對非線性提供一條新的思路[3,4]。
針對上述問題,為了盡快趕上國際先進(jìn)的發(fā)動機(jī)電控技術(shù)水平,筆者在把基于定量計(jì)算的預(yù)測控制和基于定性分析的神經(jīng)網(wǎng)絡(luò)理論相結(jié)合,推導(dǎo)出一種簡單實(shí)用的神經(jīng)預(yù)測控制的新算法。并將該新算法用于汽車發(fā)動機(jī)的燃油噴射控制和點(diǎn)火控制系統(tǒng)中,有效地改善發(fā)動機(jī)的燃油控制效果,達(dá)到高效率、低污染的要求,進(jìn)一步推動汽車工業(yè)和國民經(jīng)濟(jì)的發(fā)展。
假設(shè)非線性系統(tǒng)的模型為

式中:f (·)是非線性函數(shù);y(k)和u(k)分別為時(shí)刻k的系統(tǒng)輸出和輸入;ξ(k)為白噪聲。
式(1)可化成如下形式

式中:yl(k)為非線性系統(tǒng)線性部分的輸出;yn(k)是非線性系統(tǒng)非線性部分的輸出。
對其線性部分yl(k),可用廣義預(yù)測控制理論中的CARIMA模型表示

對其非線性部分yn(k),可用含有單隱層的BP神經(jīng)網(wǎng)絡(luò)來逼近

式中:W為神經(jīng)網(wǎng)絡(luò)中對應(yīng)系統(tǒng)非線性部分的子神經(jīng)網(wǎng)絡(luò)的所有權(quán)值。
由此可見,非線性系統(tǒng)可用如下方程進(jìn)一步表示

將非線性系統(tǒng)式(5)用圖1所示的前向神經(jīng)網(wǎng)絡(luò)來描述。

圖1 前向神經(jīng)網(wǎng)絡(luò)描述的非線性系統(tǒng)
圖1中,非線性部分yn(k)所對應(yīng)神經(jīng)網(wǎng)絡(luò)的權(quán)值為W;線性部分yl(k)所對應(yīng)神經(jīng)網(wǎng)絡(luò)的權(quán)值為θ(k);yn(k)與y(k)及y1(k)與y(k)間的連接權(quán)值均為1。
當(dāng)系統(tǒng)模型結(jié)構(gòu)確定后,就需要進(jìn)行系統(tǒng)模型參數(shù)的辨識。
線性部分的參數(shù)θ(k),可采用遞推最小二乘法(RLS)來辨識CARIMA模型的參數(shù),即


式中:ρ為遺忘因子,0<ρ<1。
非線性部分的參數(shù)W,采用收斂速度較快的Davidon最小二乘法(DLS)[5],即

式中:▽θ(k)是θ(k)關(guān)于W 的梯度;0<v<1為DLS的遺忘因子。
2)利用RLS來調(diào)整線性部分yl(k)的參數(shù)θ(k);
3)保持系統(tǒng)線性部分yl(k)中的參數(shù)θ(k)不變,采用DLS來更新非線性部分的權(quán)值W.
多次順序執(zhí)行2)和3),對系統(tǒng)線性部分和非線性部分進(jìn)行參數(shù)辨識。由于將RLS和快速學(xué)習(xí)算法Davidon最小二乘法相結(jié)合,所以這個(gè)學(xué)習(xí)算法具有非常快的收斂速度,可以應(yīng)用于在線學(xué)習(xí)。
獲得系統(tǒng)模型的參數(shù)后,根據(jù)圖1建立非線性廣義預(yù)測控制。
在式(3)中,為了易于突出本質(zhì)問題和簡化計(jì)算,通常令C(z-1)=1,則式(3)可化為

引入丟番圖Diophantine方程


式(6)兩邊同乘以Ej(z-1)Δ 得

由Diophantine方程得

將其代入式(8)得

將式(9)兩邊同乘以zj,可得

由式(8)得

式中,N為廣義預(yù)測控制器的預(yù)測長度。
將式(11)代入(10)中并化簡得

因k時(shí)刻以后的噪聲ξ(k+i)是未知的。若把式(12)右側(cè)前3項(xiàng)看作模型的輸出預(yù)測(k+j),那么Ej(k)ξ(k+j)是模型輸出預(yù)測值和實(shí)際之間的誤差,并且與(k+j)相關(guān),因此得到k時(shí)刻以后j步的輸出預(yù)測值為

由于yn(k+j)無法預(yù)先知道,用其前j時(shí)刻的訓(xùn)練值yn(k)代替。將式(13)寫成向量形式為


式中:w(k+j)為參考軌線,由下式產(chǎn)生。

式中:yr,y(k)和w(k)分別為設(shè)定值、輸出和參考軌線;α為柔化系數(shù),0<a<1。

對式(17)求導(dǎo),可得其最優(yōu)解為

當(dāng)前k時(shí)刻的控制增量可表示為

由此可得,當(dāng)前k時(shí)刻控制器的控制律為

設(shè)汽油機(jī)空燃比控制系統(tǒng),在某一工況下的數(shù)學(xué)模型可表示為[6]

式中:u(k)為系統(tǒng)輸入信號,代表噴油脈寬;y(k)為系統(tǒng)變換后的空燃比輸出信號。
神經(jīng)網(wǎng)絡(luò)及控制器的參數(shù)取:yr=1;N=3;M=3;a=0.4,λ=0.55;v=ρ=0.99;仿真步數(shù)為30。用圖1所示的多層前饋神經(jīng)網(wǎng)絡(luò)來逼近非線性系統(tǒng)的數(shù)學(xué)模型,輸入層節(jié)點(diǎn)數(shù)為3;神經(jīng)網(wǎng)絡(luò)中線性部分所對應(yīng)的輸出層傳遞函數(shù)為線性函數(shù),節(jié)點(diǎn)數(shù)為1;非線性部分所對應(yīng)的隱含層傳遞函數(shù)為S函數(shù),節(jié)點(diǎn)數(shù)為6,輸出層傳遞函數(shù)為線性函數(shù),節(jié)點(diǎn)數(shù)為1。圖2中表示被控對象輸出y跟蹤設(shè)定值yr為1的過程和控制量u的變化曲線。
圖2中神經(jīng)網(wǎng)絡(luò)值初始權(quán)值的選取為隨意,而初始權(quán)值的選取對神經(jīng)網(wǎng)絡(luò)的收斂速度及是否易陷入局部極小點(diǎn)有很大影響,因而在進(jìn)行模型參數(shù)辨識和控制前,應(yīng)先根據(jù)被控對象的樣本值預(yù)先訓(xùn)練,以得到較好的神經(jīng)網(wǎng)絡(luò)的初始權(quán)值,來提高系統(tǒng)的可信度。
由此可見,本文提出的基于神經(jīng)網(wǎng)絡(luò)模型的非線性廣義預(yù)測控制器,在不需要對象任何先驗(yàn)知識的情況下,仍具有較強(qiáng)的適應(yīng)能力和較好的控制性能,因而在實(shí)時(shí)控制中具有廣闊的應(yīng)用前景。

圖2 廣義預(yù)測控制下被控對象的仿真曲線
[1]Zhang Cuiping,Yang Qingfo,Study on injection and ignition control of gasoline engine based on BP neural network[J].Chinese journal of mechanical engineering,2003,16(4):
[2]Clarke D W,Mohtadi C,Tuffs P S.Generalized predictive control[J].Part1and Part2Automatica,1987,23:137-160.
[3]王昕.一類非線性系統(tǒng)的多模型神經(jīng)網(wǎng)絡(luò)解耦控制器[J].控制與決策,2004,19(4):424-428.
[4]劉福才.一種基于滑模的廣義預(yù)測控制新算法[J].系統(tǒng)仿真學(xué)報(bào),2002,14(10):1348-1351.
[5]Kasparian V,CeLal Batur,Zhang H,et al.Davidon Least square-Based Learning Algorithm for Feedforword Neural networks[J].NeurNetwors,1994,7(4):661-670.
[6]李國勇.電控汽油機(jī)智能控制策略及故障診斷的研究[D].太原:太原理工大學(xué),2007.