張五龍,李岳林,楊得志,謝清華,尹鈺屹,陳侗
(1.長沙理工大學湖南省工程車輛安全性設計與可靠性技術重點實驗室,湖南 長沙 410114;2.長沙理工大學汽車與機械工程學院,湖南 長沙 410114)
空燃比是車用發動機動力性、燃油經濟性與排放性的重要影響參數,進氣流量的測量結果直接影響著空燃比的控制精度。過渡工況下發動機進氣管內存在充排氣效應、節氣門突變、傳感器響應滯后等問題,導致進氣管內進氣流量很難精準測量[1]。近些年,許多學者深入研究了進氣量測量路徑。高金武等[2]通過辨識系統參數獲取充氣效率并利用速度密度方程算出進氣量,穩瞬態試驗均獲得較好的估計精度;馮煜等[3]利用UKF優勢且考慮了曲軸角速度動態和泵氣波動影響,建立并驗證了UKF估計模型精度優于EKF模型;Wang等[4]提出了利用FLS參數化容積效率誤差并與氣路系統相結合的自適應模糊估計方法,證明了其收斂性和有效性;Zhao等[5]通過考慮進氣動力學和傳感器延遲提出了基于充氣估計的AFR控制策略,試驗表明擁有較優的估計精度和控制效果。由于汽油機過渡工況進氣過程復雜多變,致使這些測量算法存在計算量過大、運算速率慢、需要確定參數過多、估計精度不足等問題,難以有效實現進氣量精準測量。隨著人工智能算法與神經網絡技術高速發展,其在汽油機進氣量測量方面的應用獲得了廣泛關注。胡春明等[6]結合BP神經網絡與進氣通路模型各自特點,利用GA算法辨識參數,建立并驗證了預估模型;徐東輝等[7]利用具有混沌性的進氣流量時間序列進行了相重構以恢復原有的混沌性,證明了混沌RBF預測模型優于均值模型和RBF模型;Wang等[8]利用Elman神經網絡建立模型用來觀測進氣壓力,仿真結果表明采樣誤差幅度和誤差波動較小,實現了有效觀測。然而上述以經驗風險最小化為原則的神經網絡模型或是單一智能算法容易出現過學習、泛化性能不高的情況,同時也存在網絡結構不易確定、易陷入局部最小的缺點,過渡工況下難以獲得良好的預測效果,所以進一步研究進氣量測量方法很有必要。
支持向量回歸機(SVR)是一種基于統計學習理論和結構風險最小化原則的機器學習方法,可避免過學習,能保證模型的泛化能力和逼近性能[9-10]。SVR適用于有限樣本條件下尋找因變量與多個影響因素之間的非線性關系,在小樣本、非線性和高維數的問題中擁有較大優勢。因此,本研究結合了支持向量回歸機的結構優勢,分析了汽油機進氣過程的變化特性,融合了促使進氣流量變化的工況因素信息。首先建立了基于SVR的汽油機進氣流量預測模型,其次采用灰色關聯分析法對模型的特征向量進行提取,而后利用遺傳算法(GA)對SVR預測模型的關鍵參數C和g進行了尋優辨識。把建立的RBF模型、BP模型的預測效果與SVR預測模型進行了對比分析,通過建立AMESim汽油機仿真模型獲取了典型的加減速工況試驗數據,從而能夠對各預測模型進行訓練和預測。最后應用MATLAB軟件和LIBSVM工具箱分別實現了遺傳算法優化辨識功能和模型預測功能,為進氣流量精準預測提供了新思路。
汽油機進氣是一種多維非線性的變化過程,而SVR具有處理非線性問題的回歸優勢,故將其應用于進氣流量預測。
支持向量機(SVM)是Cortes等[11]提出的一種機器學習算法,通過有限樣本解決非線性高維空間的分類與回歸問題。SVR是SVM在回歸預測問題上的擴展,擁有良好的預測性能。基本結構為給定訓練樣本集L={[x(1),y(1)],[x(2),y(2)],…[x(i),y(i)]},x(i)∈Rd,y(i)∈R,引入非線性映射函數φ(·),將x(i)從原始空間映射到高維特征空間中進行線性回歸,構建高維空間的回歸函數:
f[x(i)]=ω·φ[x(i)]+b。
(1)
式中:法向量ω、位移項b為需要確定的參數。
根據統計學習理論,對樣本點和回歸函數之間實現距離誤差控制,可得到兩部分的距離誤差表達式:
(2)
式中:Rsrm為期望風險;右邊前項為結構風險;右邊后項為經驗風險,L[f(x),y(x)]為需要確定的損失函數,懲罰因子C>0。面對大量試驗數據計算,利用線性ε-不敏感損失函數可去除誤差較小的樣本點,以此降低整體計算量;本研究把其作為SVR的損失函數:
L[f(x),y(x)]=

(3)

(4)
(5)
再對式(5)求偏導數,并轉化為滿足KKT條件的對偶問題,代入到式(1)中得到最終SVR結構式:

f[x(j)]=

(6)

針對式(6)中內積φ[x(i)]Tφ[x(j)]計算過于困難的問題,引入核函數к[x(i),x(j)]替換此內積,使高維特征空間中的內積運算轉換到初始空間內進行,極大降低了運算工作量。常用核函數有線性、多項式、RBF和Sigmoid等核函數;由于RBF核函數的參數少且對各種數據具有良好適應性[12-13],故采用RBF核函數:
κ[x(i),x(j)]=exp(-g‖x(i)-x(j)‖2)。
(7)
式中:g>0為核參數;‖x(i)-x(j)‖為歐式范數。
根據1.1節中選取的SVR結構建立進氣流量預測模型,即式(7)帶入式(6)中得到:
(8)

b=yi+ε-

(9)
如圖1所示,用于預測的SVR結構與神經網絡相似,預測值f(x)是中間層核函數的線性組合,中間層每個節點對應一個支持向量,x1,x2,…xn為輸入變量。

圖1 SVR結構示意
汽車行駛工況的變化促使進氣流量改變,則這兩者之間必然存在某種聯系,為此以工況參數作為SVR模型的輸入節點來反映出進氣流量(q)取值情況。汽油機工況因素主要是節氣門開度(α)、曲軸轉速(n)和進氣壓力(p),同時把節氣門開度變化率(α′)和進氣壓力變化率(p′)作為輸入變量是為了充分考慮汽油機過渡工況的動態變化特性,彌補了發動機均值數學模型在進氣壓力狀態方程線性化過程的缺陷,進而有利于預測模型的精準辨識。模型的輸入節點過多勢必增加訓練和預測時間,也會干擾預測模型對數據的訓練和預測而降低預測效果。為了去除不必要的工況參數以及與進氣流量關聯不高的影響因素,對上述工況因素進行相關度測試分析,本研究利用灰色關聯分析法對特征參數進行提取,優化模型輸入節點的質量。
采用灰色關聯分析法[14]針對進氣流量影響因素的發展趨勢進行分析,以時間數據序列為基礎,通過灰色關聯度值反映影響因素之間的相似程度。設辨識系統的參考序列V0為
V0={v0(1),v0(2),…v0(n)},
(10)
比較序列Vi為
Vi={vi(1),vi(2),…vi(n)}。
(11)
式中:i=1,2,…m。灰色關聯系數γ[v0(k),vi(k)]定義為
(12)
式中:k=1,2,…n;Δmin=minimink|v0(k)-vi(k)|;Δmax=maximaxk|v0(k)-vi(k)|;Δi=|v0(k)-vi(k)∣。分辨系數ρ∈(0,1),一般取0.5;那么序列V0和Vi灰色關聯度γ(V0,Vi)為
(13)
參考序列V0取q,比較序列Vi取α,n,p,α′,p′。
在SVR預測模型中,參數C,g的合理選取是提高模型擬合精度和回歸性能的重要途徑,反之也必然使預測結果產生較大誤差,從而無法滿足預測精度要求[15]。為了避免人為選擇參數的盲目性,利用遺傳算法(GA)對模型參數進行尋優辨識,尋找出最優解。GA是一種成熟的非線性全局搜索的優化算法,只需要對初始種群進行限制就可快速搜索到全局最優點[16]。在對汽油機進氣過程中采集的樣本數據進行辨識之前,為了遍歷所有樣本數據,尋找出全局最優參數值,在GA基礎上增加K折交叉驗證操作。設計的GA尋優辨識過程如步驟1~步驟7。
步驟1 數據預處理及初始化。為消除量綱影響,對樣本數據進行歸一化處理:
(14)
式中:xmin,xmax分別為樣本最小值、最大值。按照SVR預測模型精度要求可選取常規的GA初始參數值,即種群數量N=20,迭代次數Gmax=100,交叉率β=0.7,變異率γ=0.01。
步驟2 參數編碼。根據參數C,g的取值范圍對其進行二進制編碼,按照參數先后順序組成長度為L的染色體,之后隨機產生一組代表SVR模型參數組的染色體作為初始種群S={a1,a2,…aN}。
步驟3 計算適應度函數R。適應度是個體適應環境強弱的表現,也是尋找最優參數的評價指標,與目標函數密切相關。SVR預測模型的目標函數為預測值f1(x)與實測值F1(x)之間的均方誤差MSE,同時將采集的樣本劃分成K份,使訓練、測試樣本數據輪流交叉替換,則將K次MSE之和的平均值作為適應度函數,本研究選取K=5,即5折交叉驗證。由于GA只能向著促使適應度值增大的方向迭代,取其倒數作為R:
(15)
式中:M為測試次數。
步驟4 運行選擇算子。選擇操作以適應度為原則,從群體中選擇適應度強的個體組成新的種群。本研究選擇算子采用輪盤賭算子,計算累積概率Qj,
(16)
式中:P(aj)和R(ai)分別為個體ai的選擇概率和適應度。選取一個均勻分布的隨機數r∈[0,1],若Qk-1≤r≤Qk,則選擇染色體ak;i,j,k∈[1,2,…N]。
步驟5 運行交叉算子。交叉是遺傳算法的核心,能產生具有潛力最優的個體,從而保證了種群多樣性。本研究采用單點交叉算子,即只有一個位置點進行交叉互換。從種群中隨機選取2個個體,按照β進行染色體交換,經交叉運算產生子代替換其父代。個體ai,aj在z位的交叉運算為
(17)
步驟6 運行變異算子。從種群中隨機選擇一個個體,按照γ對該個體的某個基因進行變異,個體au的第v位基因進行的變異操作為
(18)
式中:amin,amax分別為染色體基因auv的最小值、最大值;G為當前迭代數次。
步驟7 迭代終止條件。通過選擇、交叉和變異算子循環操作迭代,適應度值大的個體被保留下來,若滿足Gmax且連續三代適應度的變化量均小于5%,則將其最優的二進制個體轉換成十進制數值,輸出最優參數值C,g;否則,繼續循環迭代。這里選取Gmax作為迭代終止條件是因為難以選擇收斂性的判定準則,同時把連續三代適應度的變化量也作為判斷終止的必要條件之一,保證了迭代終止時適應度值趨于穩定。
為驗證SVR應用在進氣流量預測的可行性,通過建立的汽油機仿真模型進行試驗,獲取樣本數據來訓練與檢驗SVR預測模型。
為了獲取樣本數據來訓練、檢驗SVR模型在汽油機過渡工況進氣流量預測應用的有效性,同時也為了簡化實物系統、減少試驗工作量和縮短研究開發周期,選取HL495Q汽油機為研究對象,通過AMESim/IFP-Engine軟件模塊建立原型樣機仿真模型。HL495Q電噴汽油機的技術參數見表1,汽油機仿真模型見圖2。

表1 HL495Q電噴汽油機技術參數

圖2 AMESim汽油機仿真模型
為檢驗汽油機仿真模型的有效性和可行性,根據同型號HL495Q汽油機臺架試驗采集得到的氣缸壓力值對模型進行標定,臺架試驗中曲軸轉速分別為2 500 r/min,3 500 r/min,節氣門開度分別為40%,60%。模型標定后的仿真缸內壓力值與臺架試驗值相吻合,上述幾種工況的仿真計算值與臺架試驗值誤差在6%范圍之內,說明AMESim汽油機仿真模型與原型樣機的進氣流量變化過程一致,仿真結果具有參考性。圖3示出曲軸轉速3 500 r/min、節氣門開度60%的缸內壓力臺架試驗值和仿真計算值的對比。

圖3 轉速3 500 r/min、節氣門開度60%時的缸壓對比
由于汽油機進氣流量是基于前饋控制預測的,不涉及復雜的缸內燃燒和尾氣排放過程,所選擇的AMESim一維仿真滿足精度要求。
運用GRA分析影響因素與進氣流量的關聯程度,篩去關聯度較低的影響因素,結合1.3節中的關聯度算式,計算出各影響因素的關聯度,如表2所示。

表2 特征向量的灰色關聯度
由計算結果可知,p′關聯度γ(V0,V5)=0.555 33,明顯小于其他因素關聯度,存在較大的重復性訓練和干擾模型的可能性,所以除去其因素,采用4個影響因素a,n,p,a′作為輸入變量。汽油機過渡工況采用典型的加減速階段試驗,在建立的AMESim汽油機仿真模型上進行試驗,采樣周期0.01 s,測試時間5 s。根據經驗設定訓練樣本和預測樣本的比例為2∶1,同時結合仿真試驗方案和具體效果情況,最終確定訓練樣本為1 200組。具體試驗數據采集過程如下:
試驗一為加速工況,節氣門開度在不同時間內(1 s,2 s,3 s,4 s,5 s)由10%位置勻速開啟至50%位置,測量輸入變量和輸出變量數據信號,共獲得1 700組試驗數據。經過歸一化處理,從中抽取1 200組數據(1 s,2 s,4 s,5 s)作為訓練樣本,剩下500組數據(3 s+工況前后2 s)作為檢驗樣本。
試驗二為減速工況,節氣門開度在不同時間內(1 s,2 s,3 s,4 s,5 s)由50%位置勻速關閉至10%位置,測量輸入和輸出變量數據信號,共獲得1 700組試驗數據。數據經過歸一化處理之后,抽取1 200組數據(1 s,2 s,4 s,5 s)作為訓練樣本,剩下500組數據(3 s+工況前后2 s)作為檢驗樣本。
在模型預測之前需要確定參數C,g值。已知GA辨識步驟(見1.4節)和試驗數據,取染色體長度L為20,在MATLAB軟件上編寫GA程序對模型參數C∈[0.1,1 000],g∈[0.001,10]進行優化辨識。加減速工況的適應度曲線迭代過程見圖4。

圖4 GA優化SVR模型參數適應度曲線
經多次運行穩定之后得到加減速工況的最佳參數值,分別為C1=933.596,g1=0.340 713和C2=999.487,g2=0.421 281,取ε=0.4,然后代入到SVR模型中進行訓練和預測。在LIBSVM工具箱基礎上建立SVR預測模型,通過程序讀取指令實現樣本數據獲取,再將測試樣本輸入到訓練好的SVR模型中進行預測,記錄模型的預測結果。加減速工況SVR模型的預測結果見圖5。經過計算,SVR模型預測值與真實值的最大絕對百分比誤差分別為1.46%和1.45%,預測值與真實值之間誤差控制在2%之內,模型擁有優良的預測性能和逼近精度,說明預測值能較好地反映出未來循環的進氣流量,SVR應用在進氣流量預測方面可行有效。

圖5 SVR模型進氣流量預測結果
預測性能的好壞取決于模型的優劣。以下通過不同模型之間預測效果對比分析,驗證SVR預測模型的先進性。為了控制變量,在保持相同條件下,本研究對文獻[7]中RBF預測模型和文獻[6]中BP預測模型的結構與參數進行調整,分別建立了RBF預測模型和BP預測模型,在MATLAB平臺上編寫程序實現其功能。
建立基于RBF的預測模型,將AMESim汽油機模型采集的1 700組試驗數據進行歸一化處理,取1 200組數據作為RBF神經網絡模型的訓練樣本,另500組數據作為檢驗樣本。RBF神經網絡結構輸入層、隱含層和輸出層的節點數分別設置為4,200,1,擴散因子為50,允許誤差為0.001。基于RBF神經網絡的加減速工況流量預測情況見圖6。

圖6 RBF模型進氣流量預測結果
建立基于BP的預測模型,將采集的1 700組試驗數據進行歸一化處理,然后取1 200組數據作為BP神經網絡模型的訓練樣本,另500組數據作為檢驗樣本。BP神經網絡結構輸入層和輸出層的節點數分別設置為4和1,訓練次數為1 500,學習速率為0.01,允許誤差為0.001,根據經驗公式num=sqrt(m+n)+a,選取隱含層神經元數目為9。基于BP神經網絡的進氣流量預測情況見圖7。

圖7 BP模型進氣流量預測結果
引入3種預測性能評價指標,即均方誤差(MSE)、平均絕對誤差(MAE)和平均相對誤差(MRE),用于定量分析模型的預測效果。從表3中模型的誤差結果可知,SVR模型誤差值遠低于RBF模型和BP模型,顯然SVR模型的預測精度更高,說明其能夠結合進氣流量變化過程發揮出本身結構特性,能夠克服過學習和逼近能力不高的問題,應用在汽油機過渡工況進氣流量預測方面更具有優勢。

表3 加減速工況模型預測誤差比較
結合了SVR的結構優勢和回歸性能,提出了基于支持向量回歸機的汽油機進氣流量預測模型;采用了灰色關聯分析法對模型的特征向量進行提取,提高了模型輸入節點的質量;利用了遺傳算法對模型參數進行尋優辨識,增加了選擇參數的科學性,進而尋找出最優參數解;然后通過AMESim汽油機仿真試驗獲取的樣本數據對模型進行了訓練和預測;最后將模型預測結果與試驗值進行了比較,同時把訓練好的SVR模型與RBF預測模型、BP預測模型進行了橫向對比分析。結果表明:SVR模型的預測值與真實值的誤差控制在2%之內,擁有優良的預測性能和逼近精度,說明能夠結合進氣流量變化過程發揮出本身結構特性,實現了未來時刻進氣量的有效預測;SVR模型的預測精度和泛化能力明顯優于常規的RBF預測模型、BP預測模型,克服了神經網絡應用在進氣流量預測方面的缺陷。
需要注意的是,由于該模型的計算量龐大,相對于神經網絡模型的實時性來說,對數據的實時運算能力較差,未來需要對這方面做進一步的研究。