翁勝龍,單外平,何國(guó)林
(華南理工大學(xué) 機(jī)械與汽車(chē)工程學(xué)院,廣東 廣州 510640)
滾動(dòng)軸承作為旋轉(zhuǎn)機(jī)械的重要組成部分,經(jīng)常工作在高溫、高速、重載等惡劣環(huán)境,是容易產(chǎn)生故障的機(jī)械部件,機(jī)械失效歸因于軸承故障的機(jī)率非常高[1]。因此,快速、準(zhǔn)確的軸承故障監(jiān)測(cè)對(duì)于機(jī)械設(shè)備的正常工作以及安全生產(chǎn)具有重大的意義。
神經(jīng)網(wǎng)絡(luò),只需三層結(jié)構(gòu)就能夠?qū)崿F(xiàn)任意精度的非線性映射[2],以其良好的泛化性能在旋轉(zhuǎn)機(jī)械故障診斷領(lǐng)域受到極大的重視和廣泛推廣[3-4],如王志等[5]將神經(jīng)網(wǎng)絡(luò)應(yīng)用于航空發(fā)動(dòng)機(jī)的整機(jī)振動(dòng)故障診斷,有效降低了虛報(bào)率。神經(jīng)網(wǎng)絡(luò)的標(biāo)準(zhǔn)算法為BP算法,其具有良好的可塑性、簡(jiǎn)易性,但在本質(zhì)上為一種局部尋優(yōu)算法,網(wǎng)絡(luò)訓(xùn)練過(guò)程中對(duì)初始權(quán)值要求較高,易陷入局部極值點(diǎn),導(dǎo)致神經(jīng)網(wǎng)絡(luò)的訓(xùn)練精度較低、無(wú)法有效識(shí)別故障。螢火蟲(chóng)算法,具備良好的全局尋優(yōu)特性,能夠有效地避免局部極值問(wèn)題,一經(jīng)提出,迅速引起國(guó)內(nèi)外學(xué)者的廣泛關(guān)注,已成功應(yīng)用于生產(chǎn)調(diào)度、結(jié)構(gòu)優(yōu)化、圖像處理、機(jī)器人等領(lǐng)域[6-7]。
為解決BP神經(jīng)網(wǎng)絡(luò)的局部極值問(wèn)題,有效提高神經(jīng)網(wǎng)絡(luò)的訓(xùn)練性能,提出將螢火蟲(chóng)算法結(jié)合BP算法共同訓(xùn)練神經(jīng)網(wǎng)絡(luò),在本質(zhì)上,利用螢火蟲(chóng)算法的全局尋優(yōu)特性對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行早期訓(xùn)練,有效避免局部極值點(diǎn),得到優(yōu)化的神經(jīng)網(wǎng)絡(luò)初始權(quán)值后,采用BP算法對(duì)神經(jīng)網(wǎng)絡(luò)做進(jìn)一步精細(xì)訓(xùn)練,得到螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)診斷模型,并應(yīng)用于軸承故障診斷。
神經(jīng)網(wǎng)絡(luò)[8]標(biāo)準(zhǔn)訓(xùn)練算法——BP算法,其核心是誤差逆向傳播,以三層神經(jīng)結(jié)構(gòu)為例,如圖1所示。圖1中,輸入層、隱含層、輸出層的節(jié)點(diǎn)數(shù)分別為R、S1、S2,隱含層和輸出層的傳遞函數(shù)分別為f1和f2,各層連接權(quán)值分別為
圖1 三層BP網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Three layer structure
訓(xùn)練誤差逆向傳播,對(duì)各層權(quán)值的進(jìn)行修正,不斷反復(fù)迭代,直到訓(xùn)練誤差達(dá)到臨界值,完成神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。因此,BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練誤差的收斂情況與初始權(quán)值直接相關(guān),初始權(quán)值選取不當(dāng),極易導(dǎo)致訓(xùn)練過(guò)程陷入局部極小值點(diǎn)。但BP神經(jīng)網(wǎng)絡(luò)本身沒(méi)有給出初始權(quán)值的確定方法,初始權(quán)值往往采用隨機(jī)方式進(jìn)行確定、從而導(dǎo)致BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練結(jié)果不穩(wěn)定性較大。具有全局尋優(yōu)特性的螢火蟲(chóng)算法,是群體智能的一個(gè)新的分支,尋優(yōu)過(guò)程對(duì)初始條件的要求低,能夠有效避免局部極值點(diǎn)。
為解決BP神經(jīng)網(wǎng)絡(luò)的局部極值問(wèn)題,避免初始權(quán)值選取的盲目性,提出將螢火蟲(chóng)算法用于BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值的確定,從而解決BP神經(jīng)網(wǎng)絡(luò)的局部極值問(wèn)題,提高神經(jīng)網(wǎng)絡(luò)的訓(xùn)練性能。
螢火蟲(chóng)算法的基本思想:每個(gè)優(yōu)化問(wèn)題的潛在解都是搜索空間內(nèi)的螢火蟲(chóng),所有螢火蟲(chóng)都有一個(gè)被優(yōu)化的函數(shù)決定的適應(yīng)值,適應(yīng)值愈大,螢火蟲(chóng)亮度愈大。所有螢火蟲(chóng)之間都能相互吸引,亮度小的會(huì)朝向亮度大的移動(dòng),亮度最大的則進(jìn)行隨機(jī)移動(dòng)。
在螢火蟲(chóng)算法[9]中,初始生成m個(gè)隨機(jī)的螢火蟲(chóng)X=(X1,表示該螢火蟲(chóng)在D維搜索空間的位置,也是一個(gè)潛在解,然后通過(guò)迭代找到最優(yōu)解。在每一次迭代中,螢火蟲(chóng)通過(guò)相互吸引來(lái)更新位置,若螢火蟲(chóng)j的亮度Ij小于螢火蟲(chóng)i的亮度Ii,則螢火蟲(chóng)i保持不動(dòng),螢火蟲(chóng)j朝向螢火蟲(chóng)i移動(dòng):
其中:i,j=1,2,…,m;d=1,2,…,D;k 為當(dāng)前迭代次數(shù);βo為吸引力系數(shù),通常取βo=1。rij為螢火蟲(chóng)之間的歐式距離;γ為衰減系數(shù),一般γ取1,控制吸引力隨rij增加的衰減速度;α為隨機(jī)性系數(shù),α∈[0,1],用于控制隨機(jī)運(yùn)動(dòng)在移動(dòng)過(guò)程的比重;為[0,1]分布的隨機(jī)數(shù)。
螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)診斷模型如圖2所示,分3個(gè)部分:神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)結(jié)構(gòu)的確定、螢火蟲(chóng)算法優(yōu)化、BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練和預(yù)測(cè),具體步驟如下:
1)確定神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),網(wǎng)絡(luò)的輸入層節(jié)點(diǎn)數(shù)R由訓(xùn)練樣本的特征維數(shù)確定,輸出層節(jié)點(diǎn)數(shù)S2由訓(xùn)練樣本的類(lèi)別數(shù)決定,隱含層節(jié)點(diǎn)數(shù)S1靠人為選取。確定螢火蟲(chóng)種群個(gè)數(shù)m,設(shè)置 βo、γ 和 α。
2)計(jì)算連接權(quán)值長(zhǎng)度L=R×S1+S1+S2×S1+S2連接權(quán)值長(zhǎng)度L確定搜索空間的維度D,即D=L。
3)螢火蟲(chóng)種群初始化。
4)將各螢火蟲(chóng)i的位置向量Xi中元素賦值于連接權(quán)集合后 W1,b1W2,b2,將訓(xùn)練樣本 Pq輸入網(wǎng)絡(luò),得到輸出 aq,q=1,2,…Q,通過(guò)式(1)計(jì)算訓(xùn)練誤差ei來(lái)確定每個(gè)螢火蟲(chóng)的適應(yīng)值fi,即 fi=-ei,從而得到螢火蟲(chóng)亮度 Ii,即 Ii=fi,i=1,2,…,m。
5)通過(guò)式(2)對(duì)種群進(jìn)行一輪更新。
6)若種群中亮度最大的個(gè)體對(duì)應(yīng)的訓(xùn)練誤差e低于臨界值e′或者達(dá)到最大迭代次數(shù)n1,則轉(zhuǎn)到步驟7),否則轉(zhuǎn)到步驟4)。
7)將亮度最大的螢火蟲(chóng)的位置賦值于BP網(wǎng)絡(luò)的連接權(quán)初值。
8)通過(guò)BP算法更新連接權(quán)值。
9)若BP算法到達(dá)最大迭代次數(shù)n2,或者訓(xùn)練誤差低于臨界值e″,則轉(zhuǎn)到步驟10),否則轉(zhuǎn)到步驟8)。
10)訓(xùn)練結(jié)束,輸入測(cè)試樣本,得到預(yù)測(cè)結(jié)果。
圖2 螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)診斷模型Fig.2 FA-BP neural network diagnosis model
實(shí)驗(yàn)裝置由電機(jī)、齒輪減速機(jī)、聯(lián)軸器、轉(zhuǎn)速扭矩傳感器、齒輪箱,磁粉加載器載荷組成,如圖3所示。實(shí)測(cè)的軸承為NU204型滾動(dòng)軸承,振動(dòng)信號(hào)由安裝在齒輪箱軸承座上方的加速度傳感器來(lái)拾取。
圖3 實(shí)驗(yàn)臺(tái)示意圖Fig.3 Test rig
實(shí)驗(yàn)中,軸的轉(zhuǎn)速 600 r/min,載荷 50Nm,采樣頻率為51.2 kHz。軸承正常、內(nèi)圈故障、外圈故障的振動(dòng)加速度信號(hào)如圖3所示。各類(lèi)信號(hào)提取100組樣本,每組樣本含25 600個(gè)點(diǎn)。訓(xùn)練和測(cè)試樣本各占總樣本的50%。
從圖4中可知,軸承內(nèi)圈故障和外圈故障振動(dòng)加速度信號(hào)中的沖擊比正常情況下明顯得多,沖擊間隔具有一定的規(guī)律性;隨轉(zhuǎn)速波動(dòng),內(nèi)外圈故障信號(hào)具有一定程度的非平穩(wěn)性,在時(shí)域上直接進(jìn)行診斷難度較大。
圖4 軸承信號(hào)的時(shí)域圖Fig.4 Bearing signals
為定量描述時(shí)域沖擊特性,采用5個(gè)無(wú)量綱時(shí)域統(tǒng)計(jì)特征:峭度 xq(1)、波形指標(biāo) k(2)、脈沖指標(biāo) I(3)、峰值指標(biāo) C(4)、裕度指標(biāo)L(5)來(lái)表征3類(lèi)軸承信號(hào),經(jīng)歸一化后,構(gòu)輸入神經(jīng)網(wǎng)絡(luò)。
神經(jīng)網(wǎng)絡(luò)采用三層結(jié)構(gòu),隱含層節(jié)點(diǎn)數(shù)由訓(xùn)練樣本特征維度確定為5,輸入層節(jié)點(diǎn)數(shù)由3類(lèi)故障模式確定為3,為對(duì)比不同隱含層節(jié)點(diǎn)下螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練、診斷性能,隱含層節(jié)點(diǎn)數(shù)分別選取 2,3,4,5,6,7,8,9,10 共 9 種情況。
將螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)(FABPNN)用于3種故障模式的分類(lèi),并與BP神經(jīng)網(wǎng)絡(luò)(BPNN)、螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)(FANN)進(jìn)行對(duì)比。螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的參數(shù)設(shè)置為:種群數(shù)30,螢火蟲(chóng)訓(xùn)練的最大迭代次數(shù) n1和誤差臨界值e′分別為100和0.1,BP算法訓(xùn)練的最大迭代次數(shù)n2和誤差臨界值e″分別為900 和 1e-3。 螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò),初始種群數(shù) 30,β0=1,γ=1,α=0.2。BP算法神經(jīng)網(wǎng)絡(luò),學(xué)習(xí)步長(zhǎng)lr=0.1。螢火蟲(chóng)初始種群在[-10,10]中隨機(jī)生成。
神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過(guò)程為訓(xùn)練迭代次數(shù)達(dá)到1000或者訓(xùn)練誤差收斂值達(dá)到誤差臨界值1e-3。圖5為3種神經(jīng)網(wǎng)絡(luò)的一次訓(xùn)練過(guò)程中誤差收斂情況對(duì)比。從圖5可知,BP神經(jīng)網(wǎng)絡(luò)迭代到第23代,陷入極值點(diǎn),訓(xùn)練誤差無(wú)法進(jìn)一步收斂,直到達(dá)到最大迭代次數(shù)1 000,訓(xùn)練誤差仍處于0.1上。迭代次數(shù)從第1代開(kāi)始,螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)、螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)分別迭代了10代、34代收斂到訓(xùn)練誤差0.1,螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)的誤差收斂速度為螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的3.4倍;在第34代達(dá)到訓(xùn)練誤差0.1之后,螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)開(kāi)始采取BP算法進(jìn)行,共迭代了5代達(dá)到誤差臨界值1e-3,而螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)在第10代之后共迭代了101代使訓(xùn)練誤差由0.1下降到1e-3,在訓(xùn)練后期,螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的誤差收斂速度為螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)的20.2倍。因此,螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過(guò)程前期,采用螢火蟲(chóng)算法訓(xùn)練,能有效避免局部極值問(wèn)題,在訓(xùn)練后期采用BP算法,能夠完成神經(jīng)網(wǎng)絡(luò)的迅速收斂。
圖5 訓(xùn)練誤差收斂對(duì)比Fig.5 Error converging contrast
為避免試驗(yàn)結(jié)果的隨機(jī)性,重復(fù)訓(xùn)練40次,各隱含層節(jié)點(diǎn)數(shù)下,3種神經(jīng)網(wǎng)絡(luò)的平均訓(xùn)練結(jié)果,如表1所示。
表1 3種神經(jīng)網(wǎng)絡(luò)的平均訓(xùn)練結(jié)果Tab.1 Average training results of three neural networks
從表1可知,在9種隱含層節(jié)點(diǎn)數(shù)下,BP神經(jīng)網(wǎng)絡(luò)的平均誤差收斂結(jié)果都高于誤差臨界值1e-3,在隱含層節(jié)點(diǎn)數(shù)為3時(shí),BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練誤差為最小,為0.015。在各隱含層節(jié)點(diǎn)數(shù)下,螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)、螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的平均誤差收斂結(jié)果都低于臨界值1e-3,并螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的結(jié)果都為最低。在訓(xùn)練時(shí)間上,螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)具有明顯的優(yōu)勢(shì),在隱含層節(jié)點(diǎn)數(shù)10下,螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時(shí)間相比螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)、BP神經(jīng)網(wǎng)絡(luò)分別減少了3.08 s、3.52 s。因此,螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練誤差收斂速度明顯優(yōu)于BP神經(jīng)網(wǎng)絡(luò)和螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)。圖6為3種神經(jīng)網(wǎng)絡(luò)訓(xùn)練模型在各個(gè)節(jié)點(diǎn)數(shù)下的平均測(cè)試結(jié)果。
圖6 3種神經(jīng)網(wǎng)絡(luò)的識(shí)別正確率對(duì)比Fig.6 Contrast on the rate of three neural model
從圖6可知,BP神經(jīng)網(wǎng)絡(luò)的識(shí)別診斷結(jié)果在不同隱含層節(jié)點(diǎn)數(shù)具有較大不同,其中在節(jié)點(diǎn)數(shù)3,達(dá)到最高識(shí)別率92.4%,在節(jié)點(diǎn)數(shù)6,達(dá)到最低識(shí)別率66.00%。在各個(gè)節(jié)點(diǎn)數(shù)下,螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)和螢火蟲(chóng)BP神經(jīng)的識(shí)別結(jié)果都達(dá)到95%以上,并且螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的識(shí)別率都為最高。在節(jié)點(diǎn)數(shù)10下,螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的識(shí)別率達(dá)到最高,為99.47%,相比螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)、BP神經(jīng)網(wǎng)絡(luò)提高了1.6%、26.8%。
提出將螢火蟲(chóng)算法結(jié)合BP算法共同訓(xùn)練神經(jīng)網(wǎng)絡(luò),用于解決BP算法的局部極值問(wèn)題,提高神經(jīng)網(wǎng)絡(luò)的訓(xùn)練誤差收斂特性。
軸承實(shí)驗(yàn)表明,螢火蟲(chóng)BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練誤差收斂速度相比于BP神經(jīng)網(wǎng)絡(luò)、螢火蟲(chóng)神經(jīng)網(wǎng)絡(luò)有顯著提升,取得了99.47%的最高故障識(shí)別率。
[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)機(jī)械故障診斷技術(shù)的現(xiàn)狀與展望[J].振動(dòng)與沖擊,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ìn)證據(jù)理論及多神經(jīng)網(wǎng)絡(luò)融合的故障分類(lèi)[J].機(jī)械工程學(xué)報(bào),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ā)動(dòng)機(jī)整機(jī)振動(dòng)故障診斷技術(shù)研究 [J].儀器儀表學(xué)報(bào),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]曾冰,李明富,張翼,等.基于螢火蟲(chóng)算法的裝配序列規(guī)劃研究[J].機(jī)械工程學(xué)報(bào),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.