張國良 張延良 李升建 魏孜倩 李康
摘要:發(fā)動機輸出功率受進氣壓力、溫度、燃油消耗率、轉(zhuǎn)速和扭矩等多個因素的影響,各個因素之間是一種非線性關(guān)系??梢岳脗鹘y(tǒng)BP神經(jīng)網(wǎng)絡算法對采集數(shù)據(jù)進行訓練得到功率預測模型,但BP算法存在局部最優(yōu)差、收斂速度慢和初始權(quán)閥值不易確定的缺點,因此,可以結(jié)合遺傳算法對BP神經(jīng)網(wǎng)絡的參數(shù)進行優(yōu)化彌補其缺點,同時利用采集的數(shù)據(jù)對網(wǎng)絡進行重復學習,得到更高精度的功率預測模型。
關(guān)鍵詞:BP算法1;遺傳算法2;發(fā)動機功率3;人工神經(jīng)網(wǎng)絡4
1 引言
發(fā)動機是一個非線性、延時、耦合、滯后的復雜系統(tǒng),其工作過程中涉及的狀態(tài)變量較多,具有模型設計復雜,計算量的特點。人工BP神經(jīng)網(wǎng)絡算法有自學習、自調(diào)節(jié)和反逼近的能力,可以逼近任意具有非線性函數(shù)的模型。發(fā)動機功率是發(fā)動機性能的重要指標,其輸出與多個因素相關(guān)且是非線性的關(guān)系,在工作中是一個動態(tài)變化的過程。根據(jù)物理統(tǒng)計,發(fā)動機在不穩(wěn)定的工況下工作時間約占總時間的70%,借助神經(jīng)網(wǎng)絡,研究其動態(tài)狀況下的功率輸出特性,建立準確的預測模型具有重要意義。
2基于遺傳算法的BP神經(jīng)網(wǎng)絡
2.1 BP神經(jīng)網(wǎng)絡算法
BP神經(jīng)網(wǎng)絡是由輸入層、隱含層、輸出層組成的多層前饋神經(jīng)網(wǎng)絡,同一層網(wǎng)絡由多個神經(jīng)元組成且神經(jīng)元之間沒有相互關(guān)聯(lián),而相鄰層之間的每一個神經(jīng)元相互關(guān)聯(lián),因此決定了信號是單向傳播的,且分配到各個神經(jīng)元上,具體結(jié)構(gòu)如下圖1所示。
2.2遺傳算法
遺傳算法是模擬自然界生物進化理論提出的一種搜索最優(yōu)解的方法,其原理為將問題的求解轉(zhuǎn)化為對進化中染色體進行變異、交叉,尋找到最優(yōu)的變異個體,進而得到問題的最優(yōu)解。
2.3 遺傳神經(jīng)網(wǎng)絡算法
遺傳算法可以對神經(jīng)網(wǎng)絡的樣本進行編碼得到合適的權(quán)值和參數(shù),利用隨機產(chǎn)生的初始化種群n維向量作為神經(jīng)網(wǎng)絡的權(quán)值向量,同時利用神經(jīng)網(wǎng)絡中Sigmoid函數(shù)計算適應度,保證在誤差越小的情況下,得到的染色特越好,在交叉變異中對算子進行計算得到高適應的的樣本,具體的流程如下圖2所示。
3 發(fā)動機功率預測建模
3.1結(jié)構(gòu)參數(shù)的確定
發(fā)動機功率是發(fā)動機的一個重要性能指標,其輸出與多個因素有關(guān),包括進氣壓力、溫度、轉(zhuǎn)速、扭矩等。本文中主要考慮9個因素,發(fā)動機轉(zhuǎn)速、中冷后進氣壓力、排氣溫度、進氣溫度、瞬時油耗、后處理上游溫度、后處理下游排氣溫度、DPF排氣溫度和實際扭矩。因此,在神經(jīng)網(wǎng)絡中輸入節(jié)點數(shù)為9。神經(jīng)網(wǎng)絡的隱含層數(shù)量決定了仿真的精度和訓練時間,選擇不同的隱含層數(shù)量經(jīng)過多次訓練 以后,均可以達到理想的收斂結(jié)果。通過對比測試理想誤差,確定的隱含層數(shù)7,同時輸出節(jié)點數(shù)為1,即發(fā)動機輸出功率。隱含層節(jié)點數(shù)根據(jù)經(jīng)驗公式為
式中:l是隱含層節(jié)點數(shù)目,m和n分別為輸入輸出個數(shù),a為1~10之間的整數(shù)。
在隱含層中傳遞函數(shù)為tansig,輸出層的傳遞函數(shù)為purelin,訓練最大次數(shù)為100,目標精度為0.05,訓練的平滑度為0.1,訓練的樣本來自某實驗實車數(shù)據(jù),訓練樣本的個數(shù)為300組數(shù)據(jù),測試樣本個數(shù)為100組數(shù)據(jù)。
遺傳算法對參數(shù)進行初始化,選擇的迭代次數(shù)為10,種群的規(guī)模數(shù)為30,交叉概率為0.3,變異概率為0.1。
3.2仿真結(jié)果分析
訓練樣本為某型號發(fā)動機數(shù)據(jù),采集的時間頻率為1s/次 ,共選擇400組采集數(shù)據(jù),其中前300組數(shù)據(jù)作為訓練樣本,后100組數(shù)據(jù)為測試樣本,具體的仿真結(jié)果如下。
利用遺傳算法進行數(shù)據(jù)迭代,在迭代到第6次時,數(shù)據(jù)的適應度達到平衡,在840左右,如圖3所示。為了體現(xiàn)遺傳BP神經(jīng)算法的優(yōu)越性,并將該算法與BP算法進行對比,得到的訓練跟蹤趨勢和誤差曲線分別如圖4、5所示,從圖5得到BP神經(jīng)網(wǎng)絡算法的測量誤差平均值為0.004,要大于GA-BP算法誤測量誤差0.001;且滿足實驗要求,利用訓練的實際模型測試測試樣本得到如圖6所示。
4試驗結(jié)論
采用matlab自帶的前饋BP神經(jīng)網(wǎng)絡工具箱可以對發(fā)動機的輸出功率進行非線性預測,得到較好的結(jié)果,同時結(jié)合遺傳算法可以解決BP神經(jīng)網(wǎng)絡的局部最優(yōu)問題,使預測精度更高,性能更加可靠。
參考文獻
[1]王輝,胡斐.MATLAB智能算法30個案例分析[M].1版.北京:北京航空航天大學出版社,2011.
[2]陳虞濤,曾凡明.基于動態(tài)神經(jīng)網(wǎng)絡的柴油機建模研究[J].海軍工程大學學報.2003,15(1):90-92.
[3]謝秋,基于遺傳算法和BP神經(jīng)網(wǎng)絡的協(xié)同設計效率研究及應用[D],重慶大學,2013.
[4]李炎,一種BP神經(jīng)網(wǎng)絡改進算法的研究[J],齊齊哈爾大學學報,2010,29(2)29-31.
作者簡介:張國良(1991-),男,山東濰坊人,研究生,助理工程師,主要研究方向為車聯(lián)網(wǎng)。