翁勝龍,單外平,何國林
(華南理工大學 機械與汽車工程學院,廣東 廣州 510640)
滾動軸承作為旋轉(zhuǎn)機械的重要組成部分,經(jīng)常工作在高溫、高速、重載等惡劣環(huán)境,是容易產(chǎn)生故障的機械部件,機械失效歸因于軸承故障的機率非常高[1]。因此,快速、準確的軸承故障監(jiān)測對于機械設(shè)備的正常工作以及安全生產(chǎn)具有重大的意義。
神經(jīng)網(wǎng)絡(luò),只需三層結(jié)構(gòu)就能夠?qū)崿F(xiàn)任意精度的非線性映射[2],以其良好的泛化性能在旋轉(zhuǎn)機械故障診斷領(lǐng)域受到極大的重視和廣泛推廣[3-4],如王志等[5]將神經(jīng)網(wǎng)絡(luò)應(yīng)用于航空發(fā)動機的整機振動故障診斷,有效降低了虛報率。神經(jīng)網(wǎng)絡(luò)的標準算法為BP算法,其具有良好的可塑性、簡易性,但在本質(zhì)上為一種局部尋優(yōu)算法,網(wǎng)絡(luò)訓練過程中對初始權(quán)值要求較高,易陷入局部極值點,導致神經(jīng)網(wǎng)絡(luò)的訓練精度較低、無法有效識別故障。螢火蟲算法,具備良好的全局尋優(yōu)特性,能夠有效地避免局部極值問題,一經(jīng)提出,迅速引起國內(nèi)外學者的廣泛關(guān)注,已成功應(yīng)用于生產(chǎn)調(diào)度、結(jié)構(gòu)優(yōu)化、圖像處理、機器人等領(lǐng)域[6-7]。
為解決BP神經(jīng)網(wǎng)絡(luò)的局部極值問題,有效提高神經(jīng)網(wǎng)絡(luò)的訓練性能,提出將螢火蟲算法結(jié)合BP算法共同訓練神經(jīng)網(wǎng)絡(luò),在本質(zhì)上,利用螢火蟲算法的全局尋優(yōu)特性對神經(jīng)網(wǎng)絡(luò)進行早期訓練,有效避免局部極值點,得到優(yōu)化的神經(jīng)網(wǎng)絡(luò)初始權(quán)值后,采用BP算法對神經(jīng)網(wǎng)絡(luò)做進一步精細訓練,得到螢火蟲BP神經(jīng)網(wǎng)絡(luò)診斷模型,并應(yīng)用于軸承故障診斷。
神經(jīng)網(wǎng)絡(luò)[8]標準訓練算法——BP算法,其核心是誤差逆向傳播,以三層神經(jīng)結(jié)構(gòu)為例,如圖1所示。圖1中,輸入層、隱含層、輸出層的節(jié)點數(shù)分別為R、S1、S2,隱含層和輸出層的傳遞函數(shù)分別為f1和f2,各層連接權(quán)值分別為

圖1 三層BP網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Three layer structure

訓練誤差逆向傳播,對各層權(quán)值的進行修正,不斷反復迭代,直到訓練誤差達到臨界值,完成神經(jīng)網(wǎng)絡(luò)的訓練。因此,BP神經(jīng)網(wǎng)絡(luò)的訓練誤差的收斂情況與初始權(quán)值直接相關(guān),初始權(quán)值選取不當,極易導致訓練過程陷入局部極小值點。但BP神經(jīng)網(wǎng)絡(luò)本身沒有給出初始權(quán)值的確定方法,初始權(quán)值往往采用隨機方式進行確定、從而導致BP神經(jīng)網(wǎng)絡(luò)的訓練結(jié)果不穩(wěn)定性較大。具有全局尋優(yōu)特性的螢火蟲算法,是群體智能的一個新的分支,尋優(yōu)過程對初始條件的要求低,能夠有效避免局部極值點。
為解決BP神經(jīng)網(wǎng)絡(luò)的局部極值問題,避免初始權(quán)值選取的盲目性,提出將螢火蟲算法用于BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值的確定,從而解決BP神經(jīng)網(wǎng)絡(luò)的局部極值問題,提高神經(jīng)網(wǎng)絡(luò)的訓練性能。
螢火蟲算法的基本思想:每個優(yōu)化問題的潛在解都是搜索空間內(nèi)的螢火蟲,所有螢火蟲都有一個被優(yōu)化的函數(shù)決定的適應(yīng)值,適應(yīng)值愈大,螢火蟲亮度愈大。所有螢火蟲之間都能相互吸引,亮度小的會朝向亮度大的移動,亮度最大的則進行隨機移動。
在螢火蟲算法[9]中,初始生成m個隨機的螢火蟲X=(X1,表示該螢火蟲在D維搜索空間的位置,也是一個潛在解,然后通過迭代找到最優(yōu)解。在每一次迭代中,螢火蟲通過相互吸引來更新位置,若螢火蟲j的亮度Ij小于螢火蟲i的亮度Ii,則螢火蟲i保持不動,螢火蟲j朝向螢火蟲i移動:

其中:i,j=1,2,…,m;d=1,2,…,D;k 為當前迭代次數(shù);βo為吸引力系數(shù),通常取βo=1。rij為螢火蟲之間的歐式距離;γ為衰減系數(shù),一般γ取1,控制吸引力隨rij增加的衰減速度;α為隨機性系數(shù),α∈[0,1],用于控制隨機運動在移動過程的比重;為[0,1]分布的隨機數(shù)。
螢火蟲BP神經(jīng)網(wǎng)絡(luò)診斷模型如圖2所示,分3個部分:神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)結(jié)構(gòu)的確定、螢火蟲算法優(yōu)化、BP神經(jīng)網(wǎng)絡(luò)訓練和預測,具體步驟如下:
1)確定神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),網(wǎng)絡(luò)的輸入層節(jié)點數(shù)R由訓練樣本的特征維數(shù)確定,輸出層節(jié)點數(shù)S2由訓練樣本的類別數(shù)決定,隱含層節(jié)點數(shù)S1靠人為選取。確定螢火蟲種群個數(shù)m,設(shè)置 βo、γ 和 α。
2)計算連接權(quán)值長度L=R×S1+S1+S2×S1+S2連接權(quán)值長度L確定搜索空間的維度D,即D=L。
3)螢火蟲種群初始化。
4)將各螢火蟲i的位置向量Xi中元素賦值于連接權(quán)集合后 W1,b1W2,b2,將訓練樣本 Pq輸入網(wǎng)絡(luò),得到輸出 aq,q=1,2,…Q,通過式(1)計算訓練誤差ei來確定每個螢火蟲的適應(yīng)值fi,即 fi=-ei,從而得到螢火蟲亮度 Ii,即 Ii=fi,i=1,2,…,m。
5)通過式(2)對種群進行一輪更新。
6)若種群中亮度最大的個體對應(yīng)的訓練誤差e低于臨界值e′或者達到最大迭代次數(shù)n1,則轉(zhuǎn)到步驟7),否則轉(zhuǎn)到步驟4)。
7)將亮度最大的螢火蟲的位置賦值于BP網(wǎng)絡(luò)的連接權(quán)初值。
8)通過BP算法更新連接權(quán)值。
9)若BP算法到達最大迭代次數(shù)n2,或者訓練誤差低于臨界值e″,則轉(zhuǎn)到步驟10),否則轉(zhuǎn)到步驟8)。
10)訓練結(jié)束,輸入測試樣本,得到預測結(jié)果。

圖2 螢火蟲BP神經(jīng)網(wǎng)絡(luò)診斷模型Fig.2 FA-BP neural network diagnosis model
實驗裝置由電機、齒輪減速機、聯(lián)軸器、轉(zhuǎn)速扭矩傳感器、齒輪箱,磁粉加載器載荷組成,如圖3所示。實測的軸承為NU204型滾動軸承,振動信號由安裝在齒輪箱軸承座上方的加速度傳感器來拾取。

圖3 實驗臺示意圖Fig.3 Test rig
實驗中,軸的轉(zhuǎn)速 600 r/min,載荷 50Nm,采樣頻率為51.2 kHz。軸承正常、內(nèi)圈故障、外圈故障的振動加速度信號如圖3所示。各類信號提取100組樣本,每組樣本含25 600個點。訓練和測試樣本各占總樣本的50%。
從圖4中可知,軸承內(nèi)圈故障和外圈故障振動加速度信號中的沖擊比正常情況下明顯得多,沖擊間隔具有一定的規(guī)律性;隨轉(zhuǎn)速波動,內(nèi)外圈故障信號具有一定程度的非平穩(wěn)性,在時域上直接進行診斷難度較大。

圖4 軸承信號的時域圖Fig.4 Bearing signals
為定量描述時域沖擊特性,采用5個無量綱時域統(tǒng)計特征:峭度 xq(1)、波形指標 k(2)、脈沖指標 I(3)、峰值指標 C(4)、裕度指標L(5)來表征3類軸承信號,經(jīng)歸一化后,構(gòu)輸入神經(jīng)網(wǎng)絡(luò)。
神經(jīng)網(wǎng)絡(luò)采用三層結(jié)構(gòu),隱含層節(jié)點數(shù)由訓練樣本特征維度確定為5,輸入層節(jié)點數(shù)由3類故障模式確定為3,為對比不同隱含層節(jié)點下螢火蟲BP神經(jīng)網(wǎng)絡(luò)的訓練、診斷性能,隱含層節(jié)點數(shù)分別選取 2,3,4,5,6,7,8,9,10 共 9 種情況。
將螢火蟲BP神經(jīng)網(wǎng)絡(luò)(FABPNN)用于3種故障模式的分類,并與BP神經(jīng)網(wǎng)絡(luò)(BPNN)、螢火蟲神經(jīng)網(wǎng)絡(luò)(FANN)進行對比。螢火蟲BP神經(jīng)網(wǎng)絡(luò)的參數(shù)設(shè)置為:種群數(shù)30,螢火蟲訓練的最大迭代次數(shù) n1和誤差臨界值e′分別為100和0.1,BP算法訓練的最大迭代次數(shù)n2和誤差臨界值e″分別為900 和 1e-3。 螢火蟲神經(jīng)網(wǎng)絡(luò),初始種群數(shù) 30,β0=1,γ=1,α=0.2。BP算法神經(jīng)網(wǎng)絡(luò),學習步長lr=0.1。螢火蟲初始種群在[-10,10]中隨機生成。
神經(jīng)網(wǎng)絡(luò)的訓練過程為訓練迭代次數(shù)達到1000或者訓練誤差收斂值達到誤差臨界值1e-3。圖5為3種神經(jīng)網(wǎng)絡(luò)的一次訓練過程中誤差收斂情況對比。從圖5可知,BP神經(jīng)網(wǎng)絡(luò)迭代到第23代,陷入極值點,訓練誤差無法進一步收斂,直到達到最大迭代次數(shù)1 000,訓練誤差仍處于0.1上。迭代次數(shù)從第1代開始,螢火蟲神經(jīng)網(wǎng)絡(luò)、螢火蟲BP神經(jīng)網(wǎng)絡(luò)分別迭代了10代、34代收斂到訓練誤差0.1,螢火蟲神經(jīng)網(wǎng)絡(luò)的誤差收斂速度為螢火蟲BP神經(jīng)網(wǎng)絡(luò)的3.4倍;在第34代達到訓練誤差0.1之后,螢火蟲BP神經(jīng)網(wǎng)絡(luò)開始采取BP算法進行,共迭代了5代達到誤差臨界值1e-3,而螢火蟲神經(jīng)網(wǎng)絡(luò)在第10代之后共迭代了101代使訓練誤差由0.1下降到1e-3,在訓練后期,螢火蟲BP神經(jīng)網(wǎng)絡(luò)的誤差收斂速度為螢火蟲神經(jīng)網(wǎng)絡(luò)的20.2倍。因此,螢火蟲BP神經(jīng)網(wǎng)絡(luò)在訓練過程前期,采用螢火蟲算法訓練,能有效避免局部極值問題,在訓練后期采用BP算法,能夠完成神經(jīng)網(wǎng)絡(luò)的迅速收斂。

圖5 訓練誤差收斂對比Fig.5 Error converging contrast
為避免試驗結(jié)果的隨機性,重復訓練40次,各隱含層節(jié)點數(shù)下,3種神經(jīng)網(wǎng)絡(luò)的平均訓練結(jié)果,如表1所示。

表1 3種神經(jīng)網(wǎng)絡(luò)的平均訓練結(jié)果Tab.1 Average training results of three neural networks
從表1可知,在9種隱含層節(jié)點數(shù)下,BP神經(jīng)網(wǎng)絡(luò)的平均誤差收斂結(jié)果都高于誤差臨界值1e-3,在隱含層節(jié)點數(shù)為3時,BP神經(jīng)網(wǎng)絡(luò)的訓練誤差為最小,為0.015。在各隱含層節(jié)點數(shù)下,螢火蟲神經(jīng)網(wǎng)絡(luò)、螢火蟲BP神經(jīng)網(wǎng)絡(luò)的平均誤差收斂結(jié)果都低于臨界值1e-3,并螢火蟲BP神經(jīng)網(wǎng)絡(luò)的結(jié)果都為最低。在訓練時間上,螢火蟲BP神經(jīng)網(wǎng)絡(luò)具有明顯的優(yōu)勢,在隱含層節(jié)點數(shù)10下,螢火蟲BP神經(jīng)網(wǎng)絡(luò)的訓練時間相比螢火蟲神經(jīng)網(wǎng)絡(luò)、BP神經(jīng)網(wǎng)絡(luò)分別減少了3.08 s、3.52 s。因此,螢火蟲BP神經(jīng)網(wǎng)絡(luò)的訓練誤差收斂速度明顯優(yōu)于BP神經(jīng)網(wǎng)絡(luò)和螢火蟲神經(jīng)網(wǎng)絡(luò)。圖6為3種神經(jīng)網(wǎng)絡(luò)訓練模型在各個節(jié)點數(shù)下的平均測試結(jié)果。

圖6 3種神經(jīng)網(wǎng)絡(luò)的識別正確率對比Fig.6 Contrast on the rate of three neural model
從圖6可知,BP神經(jīng)網(wǎng)絡(luò)的識別診斷結(jié)果在不同隱含層節(jié)點數(shù)具有較大不同,其中在節(jié)點數(shù)3,達到最高識別率92.4%,在節(jié)點數(shù)6,達到最低識別率66.00%。在各個節(jié)點數(shù)下,螢火蟲神經(jīng)網(wǎng)絡(luò)和螢火蟲BP神經(jīng)的識別結(jié)果都達到95%以上,并且螢火蟲BP神經(jīng)網(wǎng)絡(luò)的識別率都為最高。在節(jié)點數(shù)10下,螢火蟲BP神經(jīng)網(wǎng)絡(luò)的識別率達到最高,為99.47%,相比螢火蟲神經(jīng)網(wǎng)絡(luò)、BP神經(jīng)網(wǎng)絡(luò)提高了1.6%、26.8%。
提出將螢火蟲算法結(jié)合BP算法共同訓練神經(jīng)網(wǎng)絡(luò),用于解決BP算法的局部極值問題,提高神經(jīng)網(wǎng)絡(luò)的訓練誤差收斂特性。
軸承實驗表明,螢火蟲BP神經(jīng)網(wǎng)絡(luò)的訓練誤差收斂速度相比于BP神經(jīng)網(wǎng)絡(luò)、螢火蟲神經(jīng)網(wǎng)絡(luò)有顯著提升,取得了99.47%的最高故障識別率。
[1]Randall R B,Antoni J.Rolling element bearing diagnostics—A tutorial[J].Mechanical Systems and Signal Processing,2011,25(2):485-520.
[2]Hornik K,Stinchcombe M,White H.Multilayer feed-forward networks are universal approximators[J].Neural Networks,1989,2(5):359-366.
[3]夏松波,張嘉鐘,徐世昌等.旋轉(zhuǎn)機械故障診斷技術(shù)的現(xiàn)狀與展望[J].振動與沖擊,1997,16(2):5-9,96.XIA Song-bo,ZHANG Jia-zhong,XU Shi-chang,et al.State of the art and development trends of fault diagnosis of rotating machinery[J].Journal of Vibration and Shock,1997,16(2):5-9,96.
[4]李巍華,張盛剛.基于改進證據(jù)理論及多神經(jīng)網(wǎng)絡(luò)融合的故障分類[J].機械工程學報,2010,46(9):93-99.LI Wei-hua,ZHANG Sheng-gang.Fault classification based on improved evidence theory and multiple neural network fusion[J].Journal of Mechanical Engineering,2010,46(9):93-99.
[5]王志,艾延廷,沙云東.基于BP神經(jīng)網(wǎng)絡(luò)的航空發(fā)動機整機振動故障診斷技術(shù)研究 [J].儀器儀表學報,2007,28(4):168-171.WANG Zhi,AI Yan-ting,SHA Yun-dong.Research on fault diagnosis technology of whole body vibration of aero-engine based on BP neural network[J].Chinese Journal of Scientific Instrument,2007,28(4):168-171.
[6]曾冰,李明富,張翼,等.基于螢火蟲算法的裝配序列規(guī)劃研究[J].機械工程學報,2013,49(11):177-184.ZENG Bing,LI Ming-fu,ZHANG Yi,et al.Research on assembly sequence planning based on firefly algorithm[J].Journal of Mechanical Engineering,2013,49(11):177-184.
[7]IztokFister,IztokFister Jr,Xin-She Yang,et al.A comprehensive review of firefly algorithms[J].Swarm and Evolutionary Computation,2013,6:1-13.
[8]Rumelhart D E,Hinton G E.Learning representations by backpropagating errors[J].Nature,1986,323(11):533-536.
[9]Yang X H.Firefly algorithms for multimodal optimization[J].Stochastic Algorithms:Foundations and Applications,2009,5792:169-178.