覃愛淞,2,呂運容,張清華,胡 勤,孫國璽
(1.廣東石油化工學(xué)院 廣東省石化裝備故障診斷重點實驗室,廣東 茂名 525000;2.廣東省石油化工裝備工程技術(shù)研究中心,廣東 茂名 525000)
在滾動軸承故障診斷研究中,通常采用時域或頻域分析方法對振動監(jiān)測數(shù)據(jù)進行故障診斷。由于時域信號是最基本、最原始的信號,直接通過時域信號進行故障特征提取,進行故障診斷,將有利于保持信號的基本特征。在時域分析中,廣泛采用無量綱指標(biāo),如脈沖指標(biāo),峭度指標(biāo),裕度指標(biāo),波形指標(biāo)和峰值指標(biāo)[1],但這些指標(biāo)只對某些故障種類較為敏感,而對其他一些故障種類分類效果可能不好[2]。因此文獻[3-4]利用遺傳編程方法對傳統(tǒng)5種無量綱指標(biāo)進行組合優(yōu)化,通過構(gòu)建新無量綱指標(biāo)進行故障診斷,但是該方法對于混疊程度很大的樣本數(shù)據(jù)時,通常也往往難以獲得一個具有較好分類能力的無量綱指標(biāo)。
極限學(xué)習(xí)機(Extreme Learning Machine,ELM)是一類針對前饋神經(jīng)網(wǎng)絡(luò)設(shè)計的機器學(xué)習(xí)算法[5],它學(xué)習(xí)效率高,計算復(fù)雜度低,同時它克服了梯度下降算法的一些缺點,但是隱含層個數(shù)預(yù)先分配、隱含層參數(shù)隨機選擇、參數(shù)在訓(xùn)練過程中保持不變,這些參數(shù)的設(shè)置直接影響ELM分類結(jié)果,只有設(shè)置合適的參數(shù)才能取得較好的性能。
為了解決此問題,本文采用蝙蝠算法對ELM進行參數(shù)優(yōu)化,提高故障診斷準(zhǔn)確率。蝙蝠算法(Bat algorithm,BA)是一種新興的啟發(fā)式群智能算法,是一種基于迭代的優(yōu)化技術(shù),可以實現(xiàn)局部搜索和全局搜索間的相互轉(zhuǎn)換,因此,避免算法陷入局部最優(yōu),具有更好的收斂性[6-7]。與現(xiàn)有的遺傳優(yōu)化算法和粒子群優(yōu)化算法相比,BA算法具有更好地局部搜索和全局搜索的性能,研究人員和學(xué)者已經(jīng)廣泛地將BA應(yīng)用于各種優(yōu)化問題[8-9]
目前研究中直接采用原始無量綱指標(biāo)作為故障特征參量,并結(jié)合經(jīng)蝙蝠算法優(yōu)化后的極限學(xué)習(xí)機進行診斷的研究甚少,大多數(shù)文獻在采用極限學(xué)習(xí)機或者改進的極限學(xué)習(xí)機之前,運用了各種特征提取和選擇方法[10-12]。本文以原始機械振動信號作為輸入,對振動信號不做任何處理,保留振動信號最真實的面貌,直接采用原始信號的5個無量綱指標(biāo)作為診斷參數(shù),結(jié)合蝙蝠極限學(xué)習(xí)機(BA-ELM)方法,將其運用到滾動軸承故障診斷中,經(jīng)過美國西儲大學(xué)(Case Western Reserve University,CWRU)軸承數(shù)據(jù)中心網(wǎng)站公開發(fā)布的軸承探傷數(shù)據(jù)集的驗證,相比BP神經(jīng)網(wǎng)絡(luò)、SVM和ELM3種方法,本文所提出的方法能夠獲得更高的分類精度。
蝙蝠算法[13]是Yang教授于2010年提出的一種模擬蝙蝠利用聲吶來探測獵物、避免障礙物的啟發(fā)式搜索算法,可以實現(xiàn)動態(tài)控制局部搜索和全局搜索間的相互轉(zhuǎn)換。因此,蝙蝠算法有更好的尋優(yōu)能力、更快的收斂速度。蝙蝠算法的具體實施過程詳見文獻[14]。
1)蝙蝠個體的速度更新和位置更新。
(1)
式(1)中:Y*為當(dāng)前全局最優(yōu)解,fi是蝙蝠個體i的搜索脈沖頻率,按式(2)進行更新。
fi=fmin+(fmax-fmin)λ
(2)
式(2)中:λ屬于[0,1]是均勻分布的隨機數(shù),fmin和fmax是最小和最大搜索脈沖頻率,種群初始化時隨機給定搜索脈沖頻率范圍[fmin,fmax]。
在局部搜索中,一旦選中一個當(dāng)前的全局最優(yōu)解,則該解將根據(jù)式(3)產(chǎn)生一個新的替代解:
Yn(i)=Y0+μAt
(3)
式(3)中:Y0是當(dāng)前的全局最優(yōu)解,At為當(dāng)前蝙蝠種群脈沖音量的平均值,μ為-1和1之間的D維隨機向量。
2)蝙蝠個體的脈沖率更新和脈沖音量更新。
蝙蝠在迭代進化過程中,隨著不斷靠近最優(yōu)解,蝙蝠個體的脈沖率ri會越來越大,而脈沖音量Ai則會逐漸變小,進化過程按式(4)對ri和Ai進行更新:
(4)
式(4)中:α和γ通常等于0.9。
極限學(xué)習(xí)機是一種泛化的單隱藏層前饋神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí)算法,其輸入層和隱含層間的連接權(quán)值和隱含層閾值隨機產(chǎn)生,且訓(xùn)練過程中無需調(diào)整,從而可以避免迭代調(diào)整神經(jīng)網(wǎng)絡(luò)參數(shù)的繁瑣[5]。
假設(shè)有N個任意的樣本(Xi,ti),其中,Xi=(xi1,xi2,...,xin)T∈Rn,ti=(ti1,ti2,...,tin)T∈Rm,n為輸入層的維度,m為輸出層的維度。對于一個具有L個隱層節(jié)點的單隱層前饋神經(jīng)網(wǎng)絡(luò)輸出可以表示為:
(5)
其中:i=1,2,...,N,Wj=(wj1,wj2,...,wjn)T為輸入權(quán)重,βj=(βj1,βj2,...,βjm)T為輸出權(quán)重,bj是第j個隱層單元的偏置,Wj·Xi表示W(wǎng)j與Xi的內(nèi)積,g(x)激活函數(shù)。
單隱層前饋神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的目標(biāo)是在最小的誤差下逼近N個樣本,可以表示為:
(6)
即存在Wj,βj,bj使得:
(7)
可簡化為Hβ=T,其中,H是隱層節(jié)點輸出矩陣,β為輸出權(quán)重,T為期望輸出。
H(W1,W2,...,WL,b1,b2,...,bL,X1,X2,...,XL)=
(8)
j=1,2,...,L
(9)
當(dāng)單隱層前饋神經(jīng)網(wǎng)絡(luò)的輸入權(quán)重Wi和隱含層偏置bi隨機確定后,隱層的輸出矩陣H就會被確定,單隱層神經(jīng)網(wǎng)絡(luò)的求解過程就會被轉(zhuǎn)換成一個線性系統(tǒng)Hβ=T的求解問題,輸出權(quán)重β可由式(10)確定。
(10)
采用無量綱指標(biāo)直接對原始信號進行分析處理,可以有效地減少誤差,獲取更多的故障信息。本文選取5個常用的時域無量綱指標(biāo)作為樣本的特征向量,分別是峭度指標(biāo)Kv、波形指標(biāo)Sf、峰值指標(biāo)Cf、裕度指標(biāo)CLf、脈沖指標(biāo)If,具體的定義分別如式9~13。BA-ELM模型的輸入層節(jié)點數(shù)為5。
(11)
(12)
(13)
(14)
(15)
為了提高ELM方法的分類精度,本文將蝙蝠算法用于ELM網(wǎng)絡(luò)輸入層和隱含層的參數(shù)優(yōu)化,利用蝙蝠算法的全局尋優(yōu)能力,獲取最優(yōu)的ELM輸入層權(quán)值和隱含層閾值,輸出權(quán)重可由式(10)確定,從而彌補ELM因參數(shù)選擇不良造成診斷準(zhǔn)確率不夠高的缺陷。BA算法優(yōu)化ELM模型參數(shù)的流程圖如圖1所示。
圖1 BA優(yōu)化ELM模型參數(shù)
假設(shè)有N個任意的樣本(Xi,ti),其中,Xi=(xi1,xi2,...,xin)T∈Rn,ti=(ti1,ti2,...,tin)T∈Rm,n為輸入層的維度,m為輸出層的維度,g(x)為激活函數(shù),隱含層節(jié)點數(shù)為L,BA算法優(yōu)化ELM模型參數(shù)的主要過程如下:
1)初始化參數(shù)。最大迭代次數(shù)N_iter=50,初始種群數(shù)量N_pop=20,最大脈沖音量A0=1.6和最大脈沖率r0=0.000 1,搜索脈沖頻率范圍[fmin,fmax]=[0,2],音量的衰減系數(shù)α=0.9,搜索頻率的增強系數(shù)γ=0.99;
2)隨機初始化蝙蝠的位置Yi,其由ELM網(wǎng)絡(luò)的輸入層權(quán)重Wi和隱含層偏置bi組成,計算隱層節(jié)點輸出矩陣H,通過式(10)確定相應(yīng)的輸出權(quán)重β;
3)適應(yīng)度函數(shù)的設(shè)計。本文采用分類結(jié)果的均方根誤差作為BA算法的適應(yīng)度函數(shù),其表達式如式(16)所示,進化過程選擇適應(yīng)度值最小的個體作為當(dāng)前最優(yōu)解;
(16)
4)調(diào)整蝙蝠的搜索脈沖頻率,對速度和位置進行更新,獲取下一代種群;
5)判斷是否滿足中止條件,如果滿足,輸出蝙蝠全局最優(yōu)位置對應(yīng)的ELM參數(shù)(輸入權(quán)值Wi和隱含層偏置bi),輸出權(quán)重β可由式(10)確定。否則返回步驟2),重復(fù)步驟2)~5)。
圖2 基于BA-ELM方法的滾動軸承故障診斷流程圖
基于BA-ELM的滾動軸承故障診斷流程如圖2所示。首先將滾動軸承不同狀態(tài)下的原始信號數(shù)據(jù)進行數(shù)據(jù)分割,分別計算5種時域無量綱指標(biāo)構(gòu)建5維特征向量,作為極限學(xué)習(xí)機的輸入向量;其次采用蝙蝠算法優(yōu)化極限學(xué)習(xí)機參數(shù),通過訓(xùn)練樣本對ELM進行訓(xùn)練,獲取最優(yōu)的ELM診斷模型;最后將該診斷模型作為最終的分類器,對測試樣本進行識別分類。
為了驗證上述方法的有效性,實驗所用的數(shù)據(jù)是CWRU軸承數(shù)據(jù)中心網(wǎng)站公開發(fā)布的軸承探傷測試數(shù)據(jù)集,此數(shù)據(jù)已被國內(nèi)外故障診斷領(lǐng)域中的學(xué)者廣泛研究,成為驗證機械設(shè)備狀態(tài)識別新方法的標(biāo)準(zhǔn)數(shù)據(jù)集。機械故障模擬實驗平臺由1.5 kW電動機、扭矩傳感器/譯碼器、功率測試計和電子控制器等組成,如圖3所示,模擬產(chǎn)生多種軸承故障。軸承用電火花加工單點損傷,損傷直徑0.021英寸,加速度傳感器布置在驅(qū)動端的軸承座上用來采集故障軸承的振動加速度信號,對軸承正常狀態(tài)(NS)、內(nèi)圈故障(IF)、外圈故障(OF)和滾動體故障(BF)4種狀態(tài)信號分別進行采樣,轉(zhuǎn)速為1 797 r/min,采樣頻率為12 kHz。
圖3 機械故障模擬實驗平臺
每種故障采集的數(shù)據(jù)點高達120 000以上,因此對同一故障的數(shù)據(jù)進行分割,分割后每個樣本包含的數(shù)據(jù)點長度為1 024點,根據(jù)式(11~15)分別計算出5種時域無量綱指標(biāo),獲得每種狀態(tài)各110組樣本,其中80組作為訓(xùn)練樣本,余下30組作為測試樣本。5種時域無量綱指標(biāo)(Kv、Sf、Cf、CLf和If)對軸承4種工作狀態(tài)的取值范圍見圖4,橫坐標(biāo)為數(shù)據(jù)樣本個數(shù),其中樣本段1~110、111~220、221~330、331~440分別對應(yīng)軸承正常、內(nèi)圈故障、外圈故障和缺滾動體故障4種狀態(tài),縱坐標(biāo)為無量綱指標(biāo)值。
圖4 無量綱指標(biāo)對軸承4種工作狀態(tài)分類比較圖
從圖4可以看出,雖然5個無量綱指標(biāo)均能夠?qū)⒄顟B(tài)和3種軸承故障狀態(tài)進行區(qū)分,但是滾動軸承3種故障狀態(tài)的5種無量綱指標(biāo)的取值范圍存在嚴(yán)重交叉、混疊,并且指標(biāo)值的波動很大,無法直接通過5個無量綱指標(biāo)實現(xiàn)對故障狀態(tài)的區(qū)分,為了解決這個問題,下文將采用極限學(xué)習(xí)機的方法來實現(xiàn)對4種軸承狀態(tài)進行分類。
將訓(xùn)練樣本作為BA-ELM模型的輸入進行網(wǎng)絡(luò)訓(xùn)練,輸入層節(jié)點數(shù)為5,隱含層節(jié)點數(shù)L=30,激活函數(shù)選用sigmoidal函數(shù),輸入權(quán)重和隱含層偏置由BA算法優(yōu)化得到,獲取分類效果最佳的滾動軸承狀態(tài)辨識模型,利用測試樣本檢驗分類器的準(zhǔn)確性。BA算法優(yōu)化過程的適應(yīng)度值如圖5所示。
圖5 BA的適應(yīng)度變化曲線圖
從圖5可以看出,BA算法優(yōu)化過程收斂非常快,從第5代開始,適應(yīng)度值保持0.008 3保持不變,滿足終止條件,輸出最優(yōu)解,獲取ELM最優(yōu)的輸入權(quán)重和隱含層偏置。此時,BA-ELM模型對軸承故障的平均分類準(zhǔn)確率為99.17%,測試樣本的診斷結(jié)果如表1所示,從表1中可以看出,120個測試樣本僅有1個樣本診斷錯誤,說明該方法可以對滾動軸承的故障進行非常精確地診斷。
表1 測試樣本的診斷結(jié)果
同時,為了進一步驗證BA-ELM診斷模型對滾動軸承故障具有診斷率高的優(yōu)勢,利用上文的實驗數(shù)據(jù),分別采用BP神經(jīng)網(wǎng)絡(luò)、SVM和ELM算法等3種方法構(gòu)建診斷模型,利用訓(xùn)練樣本和測試樣本分別進行訓(xùn)練和測試,3種診斷模型和BA-ELM模型的故障分類精度對比見表2。其中,BP隱含層節(jié)點個數(shù)S設(shè)為30;SVM人為選擇懲罰系數(shù)C=2,核寬度系數(shù)g= 0.2。從表2中很容易看出,雖然ELM模型的具有較高的診斷準(zhǔn)確率為97.5%,120個測試樣本有3個樣本診斷錯誤,診斷準(zhǔn)確率明顯高于BP神經(jīng)網(wǎng)絡(luò)和SVM分類器,但是利用BA算法對ELM網(wǎng)絡(luò)優(yōu)化后的BA-ELM分類模型具有最高的診斷準(zhǔn)確率,達到99.17%,120個測試樣本僅有1個樣本診斷錯誤,對軸承正常狀態(tài)、內(nèi)圈故障、滾動體故障的診斷準(zhǔn)確率均達到100%,表明了基于BA-ELM滾動軸承故障診斷方法可以對滾動軸承的故障進行非常精確地診斷。
表2 4種狀態(tài)辨識模型運行時間與分類精度的對比
本文提出了一種基于BA算法優(yōu)化ELM的滾動軸承故障診斷分類算法,直接提取滾動軸承振動信號的時域無量綱指標(biāo)作為BA-ELM模型特征向量輸入進行故障狀態(tài)的分類,經(jīng)過實驗結(jié)果表明,本文直接采用無量綱指標(biāo)作為診斷參數(shù),能夠最大程度地保障原始信號的特征,避免了采用信號處理方法而導(dǎo)致局部信息丟失的缺陷;采用BA-ELM作為診斷模型,不僅可以最大化利用BA的全局和局部搜索能力和ELM的快速學(xué)習(xí)的優(yōu)點,同時也克服了ELM固有的不穩(wěn)定性,使得算法收斂速度快、診斷精度高,對滾動軸承故障診斷效果明顯。