葉永偉,高波
(浙江工業(yè)大學(xué)特種裝備制造與先進(jìn)加工技術(shù)教育部/浙江省重點(diǎn)實(shí)驗(yàn)室,浙江杭州 310014)
基于改進(jìn)BP算法的烘房系統(tǒng)智能預(yù)警
葉永偉,高波
(浙江工業(yè)大學(xué)特種裝備制造與先進(jìn)加工技術(shù)教育部/浙江省重點(diǎn)實(shí)驗(yàn)室,浙江杭州 310014)
針對(duì)汽車涂裝線中烘房系統(tǒng)能耗大、參數(shù)組合復(fù)雜、耦合性強(qiáng)等特點(diǎn)造成的控制困難、精度低等問(wèn)題,提出了基于改進(jìn)BP算法的智能預(yù)警方法,建立了對(duì)應(yīng)的神經(jīng)網(wǎng)絡(luò)模型,通過(guò)對(duì)烘房實(shí)例的仿真分析,證實(shí)了該方法具有正確率高以及控制容易等優(yōu)點(diǎn)。
涂裝線;智能預(yù)警;改進(jìn)BP算法;烘房燃燒系統(tǒng)
隨著現(xiàn)代化大生產(chǎn)的不斷發(fā)展,科學(xué)技術(shù)的不斷進(jìn)步,作為企業(yè)主要生產(chǎn)工具的機(jī)電設(shè)備正朝著大型、精密、高速和連續(xù)運(yùn)轉(zhuǎn)以及結(jié)構(gòu)復(fù)雜的光、機(jī)、電、液、儀和計(jì)算機(jī)一體化等方向發(fā)展,這使得生產(chǎn)系統(tǒng)的規(guī)模越來(lái)越大,功能越來(lái)越多,結(jié)構(gòu)越來(lái)越復(fù)雜,性能指標(biāo)也越來(lái)越高,工作強(qiáng)度越來(lái)越大,相互之間的作用和耦合越來(lái)越強(qiáng),從而導(dǎo)致了大型復(fù)雜機(jī)電設(shè)備發(fā)生故障的可能性增大,出現(xiàn)方式更加復(fù)雜化[1]。在汽車涂裝線中,烘房是耗能比例最大的一個(gè)環(huán)節(jié),同時(shí)也是最為關(guān)鍵的環(huán)節(jié),是事故頻發(fā)的一個(gè)環(huán)節(jié)。據(jù)統(tǒng)計(jì),一條普通的汽車生產(chǎn)線,單是烘房消耗的電量就達(dá)到了整條涂裝線的13%左右,事故的頻發(fā)率更是高達(dá)35%[2]。因此,如何提高烘房的預(yù)警效率是企業(yè)急需解決的問(wèn)題。傳統(tǒng)的預(yù)警方法存在著滯后性、片面性、準(zhǔn)確率低等缺陷。為了克服這些缺點(diǎn),將診斷水平提高到一個(gè)新的臺(tái)階,在傳統(tǒng)BP算法的基礎(chǔ)上,提出改進(jìn)BP算法的診斷方法。在分析了該算法的原理,給出算法的計(jì)算步驟之后,結(jié)合實(shí)例分析、診斷,結(jié)果表明該方法具有收斂速度快、診斷正確率高的特點(diǎn)。
1.1 BP算法原理
BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò)。一般采用3層BP神經(jīng)網(wǎng)絡(luò)模型,它由輸入層、隱含層和輸出層構(gòu)成[3-4]。其模型結(jié)構(gòu)如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
網(wǎng)絡(luò)可變參數(shù)是由層間神經(jīng)元的連接權(quán)值和神經(jīng)元的閾值所組成的。BP算法是多層前饋神經(jīng)網(wǎng)絡(luò)使用頻率最高的訓(xùn)練算法,它的網(wǎng)絡(luò)可變參數(shù)的調(diào)整公式為:
式中:η為學(xué)習(xí)步長(zhǎng);?E(t)/?wij為第t次迭代可變參數(shù)對(duì)網(wǎng)絡(luò)誤差的一階偏導(dǎo);Δw為第t次迭代可變參數(shù)的調(diào)整量;t為迭代次數(shù)[5]。
BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí)的過(guò)程包括內(nèi)部前向計(jì)算和誤差反向傳播兩個(gè)過(guò)程。在前向計(jì)算的過(guò)程中,輸入信息從輸入層輸入,經(jīng)隱含層計(jì)算,最終到達(dá)輸出層輸出,然后輸出值與期望值進(jìn)行比較得到誤差。若誤差不滿足性能指標(biāo),則根據(jù)誤差值從網(wǎng)絡(luò)的最后一層開始反向更新網(wǎng)絡(luò)的各層權(quán)值,直到滿足所設(shè)定的性能指標(biāo)為止。
BP算法的本質(zhì)其實(shí)是梯度下降法,而且它所要優(yōu)化的目標(biāo)函數(shù)又是非常復(fù)雜的,因此BP算法的收斂速度較慢。從數(shù)學(xué)角度上看,BP算法其實(shí)是一種局部搜索的優(yōu)化方法,如果要求解復(fù)雜的非線性函數(shù)的全局極值,就很有可能陷入局部極值,導(dǎo)致訓(xùn)練失敗。因此,需要對(duì)BP算法做出改進(jìn)。
1.2 BP算法的改進(jìn)
針對(duì)BP算法的不足,對(duì)其進(jìn)行改進(jìn),具體步驟如下[6]:
a.設(shè)t為迭代次數(shù),為網(wǎng)絡(luò)可變參數(shù)調(diào)整量幅值;?E(t)/?wij為網(wǎng)絡(luò)可變參數(shù)對(duì)誤差的一階偏導(dǎo)數(shù),為網(wǎng)絡(luò)可變參數(shù)的調(diào)整量。
b.計(jì)算可變參數(shù)調(diào)整量幅值。
式中:η+通常取1.2,η-通常取0.5。c.計(jì)算可變參數(shù)的調(diào)整量。
d.計(jì)算網(wǎng)絡(luò)可變參數(shù)。
通過(guò)上述步驟可知:對(duì)BP算法的改進(jìn)主要針對(duì)網(wǎng)絡(luò)可變參數(shù)wij進(jìn)行。傳統(tǒng)BP算法的Δwij由?E/?wij與學(xué)習(xí)步長(zhǎng)的乘積決定;改進(jìn)后,僅由?E/?wij的符號(hào)和固定值Δij決定,與幅值無(wú)關(guān)。這樣一來(lái),當(dāng)網(wǎng)絡(luò)處在局部極小點(diǎn)或者誤差曲面較平的區(qū)域時(shí)(即?E/?wij的幅值很小),Δwij將不受影響仍保持較大的值,故網(wǎng)絡(luò)更能跳出局部極小點(diǎn)而收斂于全局極小點(diǎn)。
2.1 各層次神經(jīng)元數(shù)目的確定
本文以某烘房燃燒加熱系統(tǒng)為例,用改進(jìn)BP算法對(duì)其進(jìn)行建模分析,該系統(tǒng)示意圖如圖2所示。
由圖2可知:在建立神經(jīng)網(wǎng)絡(luò)模型時(shí),輸入層的神經(jīng)元個(gè)數(shù)為9個(gè),分別是:加熱溫度TW、助燃風(fēng)機(jī)軸瓦溫度T1、助燃風(fēng)機(jī)轉(zhuǎn)速n1、燃油流量RF、調(diào)節(jié)閥壓力PS1、燃油壓力PS2、助燃風(fēng)機(jī)壓力PS3、電機(jī)電流A、電機(jī)功率P。這9個(gè)輸入神經(jīng)元也就是系統(tǒng)的在線監(jiān)測(cè)參數(shù)。根據(jù)對(duì)該系統(tǒng)的分析,可知系統(tǒng)的故障有以下幾種:調(diào)節(jié)閥阻塞Q1、輸送管道堵塞Q2、燃?xì)馑趾窟^(guò)多Q3、燃油壓力不足Q4、原油含水Q5、電機(jī)轉(zhuǎn)子故障Q6。因此,網(wǎng)絡(luò)輸出層的神經(jīng)元個(gè)數(shù)確定為6個(gè)。由于單隱層前饋神經(jīng)網(wǎng)絡(luò)可以逼近任何連續(xù)函數(shù)[7],所以本文使用單隱層網(wǎng)絡(luò)。隱層節(jié)點(diǎn)數(shù)的確定可根據(jù)經(jīng)驗(yàn)公式[8]來(lái)確定,m為隱層節(jié)點(diǎn)數(shù),n和l分別為輸入層和輸出層的神經(jīng)元個(gè)數(shù),α為調(diào)節(jié)常數(shù),取值在1~10之間。在本次實(shí)驗(yàn)中,取m=10。根據(jù)原理圖,可建模型如圖3所示。
圖2 烘房燃燒加熱系統(tǒng)示意圖
2.2 模型的訓(xùn)練及智能預(yù)警
網(wǎng)絡(luò)模型確立后,對(duì)其進(jìn)行大量充分的訓(xùn)練,神經(jīng)元激活函數(shù)全部取對(duì)數(shù)Sigmoid函數(shù)。具體的訓(xùn)練步驟如下:
步驟2,計(jì)算網(wǎng)絡(luò)可變參數(shù)對(duì)網(wǎng)絡(luò)誤差的一階偏導(dǎo)數(shù)?E(t)/?wij,并根據(jù)式(4)計(jì)算Λ;
步驟3,根據(jù)式(1)計(jì)算網(wǎng)絡(luò)權(quán)值的調(diào)整量,同時(shí)根據(jù)式(2)、(3)對(duì)網(wǎng)絡(luò)權(quán)值進(jìn)行調(diào)整;
圖3 烘房系統(tǒng)網(wǎng)絡(luò)模型
步驟4,計(jì)算所有樣本的誤差平方和err,t=t+1,如果err<g或t>e,則訓(xùn)練結(jié)束,否則跳到步驟2。
網(wǎng)絡(luò)參數(shù)設(shè)置如下:
目標(biāo)誤差:g=10-3;
最大循環(huán)次數(shù):e=2 000;
最大權(quán)更新值Λmax=50.0。
設(shè)置好各參數(shù)后,使用MATLAB軟件對(duì)其進(jìn)行建模、訓(xùn)練,在模型達(dá)到預(yù)設(shè)的要求以后,運(yùn)用到實(shí)際實(shí)驗(yàn)中去。本次實(shí)驗(yàn)測(cè)得有效數(shù)據(jù)38組,以下選取其中的5組樣本進(jìn)行智能預(yù)警演練,見表1。
表1 各監(jiān)測(cè)點(diǎn)測(cè)得的數(shù)據(jù)
為了消除各數(shù)據(jù)量綱不同、變化范圍不同帶來(lái)的影響,需要事先對(duì)數(shù)據(jù)進(jìn)行歸一化處理。數(shù)據(jù)歸一化采用的公式:
式中:x'為處理后的數(shù)據(jù);x為源數(shù)據(jù),xmin和xmax分別為源數(shù)據(jù)組中的最小值和最大值。
樣本數(shù)據(jù)歸一化處理后的數(shù)據(jù),見表2。
表2 實(shí)驗(yàn)數(shù)據(jù)歸一化后的數(shù)據(jù)
將表2中的樣本數(shù)據(jù)分別輸入已訓(xùn)練的改進(jìn)BP算法,得到實(shí)際輸出值,見表3。
表3中,6個(gè)輸出節(jié)點(diǎn)分別對(duì)應(yīng)上文論述的6種故障類型,1個(gè)樣本數(shù)據(jù)對(duì)應(yīng)6個(gè)輸出,取值分別為0,1。其中0表示系統(tǒng)狀態(tài)對(duì)應(yīng)項(xiàng)處于正常,1則相反。例如樣本2對(duì)應(yīng)的6個(gè)輸出中,只有節(jié)點(diǎn)4是1,說(shuō)明系統(tǒng)該時(shí)刻可能出現(xiàn)燃油壓力不足的問(wèn)題,而樣本4則反應(yīng)出此時(shí)電機(jī)的轉(zhuǎn)子可能存在故障,兩種情況都要發(fā)出警報(bào),提醒人們系統(tǒng)出現(xiàn)故障。
2.3 改進(jìn)BP算法的智能預(yù)警效果評(píng)定
為了驗(yàn)證改進(jìn)BP算法的性能,將它與傳統(tǒng)的標(biāo)準(zhǔn)BP算法進(jìn)行比較,在MATLAB上分別對(duì)兩種算法進(jìn)行模擬、仿真,同時(shí)用表2的數(shù)據(jù)進(jìn)行分析、對(duì)比。傳統(tǒng)BP算法的實(shí)驗(yàn)結(jié)果見表4。
表3 改進(jìn)BP算法的故障診斷輸出值
比較表3與表4可知:對(duì)于同一組樣本,改進(jìn)BP算法與傳統(tǒng)BP算法的判別結(jié)果不盡相同。例如樣本3,傳統(tǒng)BP算法的診斷結(jié)果是系統(tǒng)處于正常狀態(tài),而改進(jìn)后的BP算法則認(rèn)為該時(shí)刻系統(tǒng)出現(xiàn)調(diào)節(jié)閥阻塞故障。同樣對(duì)于樣本2兩種方法也出現(xiàn)了不同的結(jié)果。為了驗(yàn)證兩種方法的正確性,我們將不同數(shù)據(jù)樣本對(duì)應(yīng)的系統(tǒng)實(shí)時(shí)狀態(tài)調(diào)取出來(lái),見表5。
表4 傳統(tǒng)BP算法的故障診斷輸出值
表5 各組樣本對(duì)應(yīng)的系統(tǒng)狀態(tài)
將表3、表4與表5的對(duì)應(yīng)項(xiàng)進(jìn)行對(duì)比后發(fā)現(xiàn),改進(jìn)后的BP算法的診斷結(jié)果與樣本2和樣本3的實(shí)際情況更符合,可知相比于傳統(tǒng)的BP算法,它具有更高的準(zhǔn)確率。
下面對(duì)用MATLAB軟件將兩種算法建模后的訓(xùn)練次數(shù)進(jìn)行分析,訓(xùn)練的實(shí)驗(yàn)結(jié)果如圖4、圖5所示。
圖4 改進(jìn)BP算法的訓(xùn)練過(guò)程
由實(shí)驗(yàn)結(jié)果可知:相比于傳統(tǒng)的BP算法,用改進(jìn)后的BP算法進(jìn)行訓(xùn)練,網(wǎng)絡(luò)的收斂速度更快,預(yù)算誤差也非常小,因此具有更好的實(shí)時(shí)性,能更及時(shí)地反映出系統(tǒng)的當(dāng)前狀態(tài)。
圖5 傳統(tǒng)BP算法的訓(xùn)練過(guò)程
本文通過(guò)對(duì)改進(jìn)BP算法的建模、性能比較,理論分析及實(shí)驗(yàn)結(jié)果都表明在機(jī)電系統(tǒng)故障模式識(shí)別中,改進(jìn)后的BP算法比標(biāo)準(zhǔn)BP算法具有更好的學(xué)習(xí)效率和泛化能力,并且具備較強(qiáng)的識(shí)別能力。改進(jìn)后的BP算法在非線性故障模式識(shí)別領(lǐng)域里具有特殊的優(yōu)越性,診斷精度高,速度較快,具有很好的應(yīng)用前景。
[1]王炳成,任朝暉,聞邦椿.基于非線性多參數(shù)的旋轉(zhuǎn)機(jī)械故障診斷方法[J].機(jī)械工程學(xué)報(bào),2012,48(5):1-8.
[2]林海,葉永偉,劉志浩,等.基于CFD的汽車車身烘房節(jié)能研究[J].機(jī)械制造,2010(10):1-2.
[3]龍泉,劉永前,楊勇平.基于粒子群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的風(fēng)電機(jī)組齒輪箱故障診斷方法[J].太陽(yáng)能學(xué)報(bào),2012,33(1):1-2.
[4]謝延敏,王新寶,王智,等.基于灰色理論和GA-BP的拉延筋參數(shù)反求[J].機(jī)械工程學(xué)報(bào),2013,49(4):1-7.
[5]馬修元,段鈺鋒,劉猛,等.基于PSO-BP神經(jīng)網(wǎng)絡(luò)的水焦?jié){管道壓降預(yù)測(cè)[J].中國(guó)電機(jī)工程學(xué)報(bào),2012,32(5):1-7.
[6]韓璞,毛新靜,周黎輝,等.基于RPROP算法的模糊系統(tǒng)優(yōu)化[J].儀器儀表學(xué)報(bào),2006,27(6):1-2.
[7]馮立穎.改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)算法及其應(yīng)用[J].計(jì)算機(jī)仿真,2010,27(12):1-5.
[8]朱大奇,史慧.人工神經(jīng)網(wǎng)絡(luò)原理及應(yīng)用[M].北京:科學(xué)出版社,2006:42-43.
The Intelligent Early Warning Based on Improved BP Algorithm for Drying Room Combustion System
YE Yongwei,GAO Bo
(Zhejiang University of Technology,Zhejiang Hangzhou,310014,China)
The characteristics of the drying room for automobile body coating line are higher energy consumption,parametric complexity,strong coupling.It is difficult and low accurate for this drying system control.In order to solve these problems,it presents the improved BP algorithm.It establishes a corresponding neural network model.The simulation analysis of oven instance shows that the method has the advantages of higher correct rate and easy to be controlled.
Coating Line;Intelligent Warning;Improved BP Algorithm;Drying Room Combustion System
TH17
A
2095-509X(2013)10-0057-04
10.3969/j.issn.2095-509X.2013.10.014
2013-08-08
葉永偉(1964—),男,浙江義烏人,浙江工業(yè)大學(xué)副教授,博士,主要研究方向?yàn)闄C(jī)電系統(tǒng)智能控制。