晏生蓮 鞏永旺 潘琳鑫
(鹽城工學院信息工程學院 鹽城 224051)
滾動軸承是機械設備中最常用的機械零件,也是最易磨損的零件之一,關乎到機械生產(chǎn)過程中的安全。因此如何實現(xiàn)軸承故障的快速準確診斷長期受到人們的關注。常規(guī)軸承的故障診斷方法一般有振動信號法、溫度分析法、聲輻射法、光纖檢測法等[1]。在這些方法中,振動信號法是最常用的。但由于滾動軸承的失效影響因素比較復雜,這些常規(guī)的故障診斷方法容易出現(xiàn)誤診,嚴重地影響了故障診斷的精度。
隨著人工智能技術的發(fā)展,人們利用多種智能算法對軸承故障的診斷問題進行了分析研究[2~3]。作為最成功的神經(jīng)網(wǎng)絡之一,BP神經(jīng)網(wǎng)絡具有很強的非線性映射和適應性,常用于解決各領域復雜的非線性問題[4~6]。BP神經(jīng)網(wǎng)絡的學習規(guī)則是通過最速下降法來確定誤差函數(shù)的最優(yōu)值,這種方法使得BP網(wǎng)絡存在學習算法收斂緩慢,難以判斷隱層結點數(shù)目,網(wǎng)絡泛化能力差[7]等問題。近年來,隨著智能算法的發(fā)展,將BP神經(jīng)網(wǎng)絡與智能算法結合起來,以優(yōu)化權值和閾值得到了越來越多的研究者的認可,并提出了眾多的改進算法[8~9]。例如,蝙蝠算法[10](Bat Algorithm,BA)作為一種基于仿生優(yōu)化算法的全局最優(yōu)搜索方法,模擬蝙蝠種群,在解空間中進行最佳搜索,獲得全局最優(yōu)值,算法簡單、收斂速度快,極大地改善了BP神經(jīng)網(wǎng)絡的缺點,然而,在迭代的后期,蝙蝠算法往往會陷入局部最優(yōu),這對種群的多樣性產(chǎn)生一定的影響。天牛須算法(Beetle Antennae Search,BAS)[11]是一種新型智能優(yōu)化算法,參數(shù)少、計算量小,憑借其在個體查找局部最優(yōu)方面具有優(yōu)勢,常被運用于其他智能算法的優(yōu)化問題中[12~13]。文獻[14]將BAS和BA進行混合(Beetle Antennae Search Bat Algorithm,BAS-BA算法),彌補了BAS算法在全局尋優(yōu)上以及BA算法在局部尋優(yōu)上存在的不足,提高了算法收斂速度和穩(wěn)定性。
基于文獻[14]的研究,本文將BAS-BA算法用于優(yōu)化BP神經(jīng)網(wǎng)絡的初始權值和閾值,提出一種基于BAS-BA算法優(yōu)化BP神經(jīng)網(wǎng)絡并應用于軸承故障診斷?;趧P斯西儲大學軸承數(shù)據(jù)集進行仿真實驗,結果表明,BAS-BA算法優(yōu)化的BP神經(jīng)網(wǎng)絡在收斂能力和軸承故障診斷準確率方面均優(yōu)于單個算法(BAS或BA)優(yōu)化的BP神經(jīng)網(wǎng)絡。
BP神經(jīng)網(wǎng)絡模型[15]是一種較為成熟且應用廣泛的神經(jīng)網(wǎng)絡模型,相對其他傳統(tǒng)模型而言,BP神經(jīng)網(wǎng)絡的輸入層、隱藏層和輸出層的三層模型結構(見圖1)具有較好的持久性、適時預報性和分類能力。核心算法過程分成兩個部分:正向和逆向傳遞。在正向傳遞過程中,信號由輸入層向隱含層傳遞,經(jīng)過隱含層的處理后,再向輸出層傳遞,各層中的神經(jīng)元狀態(tài)只對下一層的神經(jīng)元狀態(tài)產(chǎn)生影響。如果輸出層接收到的信號誤差超出了誤差門限,則轉入反向傳播,并沿著原來的神經(jīng)元連接路徑返回誤差信號。在返回的過程中,網(wǎng)絡對各連接層神經(jīng)元的權重和閾值進行修正。重復迭代以上過程,使得信號誤差能夠達到允許的誤差范圍,網(wǎng)絡模型趨于最優(yōu)化。
圖1 典型的三層BP神經(jīng)網(wǎng)絡結構
其中A1,A2,…,Ai,…,Am為輸入層神經(jīng)元的輸入,W1j,W2j,…,Wij,…,Wmj為輸入層第i個節(jié)點與隱藏層第j個節(jié)點之間的網(wǎng)絡權重,K1,K2,…,Kj,…,Kn為隱藏層輸入,P1,P2,…,Pt為輸出層輸出。
蝙蝠算法[16]是根據(jù)蝙蝠的覓食過程進行位置優(yōu)化的,蝙蝠在早期階段發(fā)出大響度的脈沖,以便在捕獵時尋找獵物,當它快要接近獵物的時候,它會降低脈沖的聲音來捕捉獵物,其步驟如下。
第一步:初始化蝙蝠的種群規(guī)模size,響度Ai,脈沖發(fā)射率ri,以及最大迭代次數(shù)T,最大和最小的脈沖頻率fmax和fmin,計算初始種群中蝙蝠適應度值,選擇最優(yōu)個體x*。
第二步:全局搜索,根據(jù)位置、速度更新公式對參數(shù)進行更新。
其中,α為隨機數(shù),在[0,1]上均勻分布,和分別表示第i只蝙蝠在第t+1代時的速度和位置。
第三步:局部搜索,生成隨機數(shù)R1、R2,若R1<ri,接受新解,否則隨機飛行產(chǎn)生新解),若R2<Ai且新解更優(yōu),則選擇接受新解,調整ri、Ai大小,否則轉向局部搜索,更新種群最優(yōu)速度和位置,Ai、ri調整算法如式(3)和式(4)所示:
其中xnew表示新解服從均勻分布,ε,γ為常數(shù),At是t時刻所有蝙蝠的平均響度。
第四步:比較當前所有蝙蝠的適應度值,得到當前最優(yōu)解x*。
第五步:判斷是否滿足終止條件,若滿足則輸出最優(yōu)解,否則繼續(xù)迭代,直至滿足終止條件。
作為解決優(yōu)化問題的算法,BAS算法[17]受自然啟發(fā),模仿天牛的自然覓食行為。天牛在覓食過程中,天牛的移動方向是由兩只觸角嗅到目標氣味的濃度決定,哪邊目標氣味更濃,就向哪一邊移動,否則就會轉向另一邊搜索獵物,逐步接近搜索目標,多次迭代,最終確定目標的位置。
在N維空間中,天牛第t時刻的位置為矢量Xt,其中t={1,2,3,…M},M為迭代次數(shù),則天牛左右兩只觸角的位置為
其中,和分別表示第t時刻天牛須的左右須位置,l表示天牛質心與觸須之間的距離,表示隨機單位向量。根據(jù)兩須嗅到的目標氣味的濃度的不同,來判斷天牛下一步前進位置:
其中,f(x)為適應度函數(shù),δt表示第t次迭代時的搜索步長,sign(x)為符號函數(shù),η代表步長因子,一般取0.95。
基于天牛須算法思想的改進蝙蝠算法能夠幫助群體中的每一個蝙蝠增加搜尋過程中的搜索次數(shù)或搜索方向,顯著提高全局搜索功能,從而使整體優(yōu)化算法的精確度得到了極大的提高,有更多機會求解全局最優(yōu)解,且不易陷入局部最優(yōu)。算法步驟如下[14]。
第一步:初始化種群大小、搜索范圍,響度、脈沖頻率和初始步長,種群的位置與速度。
第二步:記錄初始最優(yōu)位置,對最優(yōu)位置的蝙蝠進行局部搜索,根據(jù)天牛須更新公式更新蝙蝠種群的全局最優(yōu)位置,改進后的種群位置更新公式如下:
第三步:根據(jù)BA算法中的局部搜索步驟,對全局最優(yōu)位置處的個體進行局部最優(yōu)搜索,比較個體位置優(yōu)劣和響度大小以更新位置和新解,將該結果和算法第二步中的新位置與最優(yōu)值進行比較,并使用BAS算法進行全局最優(yōu)搜索,使天牛個體向最佳位置移動。
第四步:判斷是否滿足終止條件,若滿足則輸出最優(yōu)個體和最優(yōu)解,否則繼續(xù)迭代直至滿足終止條件。
將BAS-BA算法用于優(yōu)化BP神經(jīng)網(wǎng)絡的初始權值和閾值,然后使用優(yōu)化好的參數(shù)對BP神經(jīng)網(wǎng)絡進行訓練,提出一個新的故障診斷的BP神經(jīng)網(wǎng)絡模型(記為BAS-BA-BP模型),其原理與步驟如下:
第一步:構建BP網(wǎng)絡結構,確定輸入層、隱含層和輸出層的節(jié)點數(shù)目,劃分訓練集樣本和測試集樣本;
第二步:初始化BAS-BA參數(shù),蝙蝠數(shù)目、初始響度,迭代次數(shù)和誤差精度等;
第三步:計算每個個體的適應度值,尋找當前最優(yōu)位置;
第四步:根據(jù)BAS-BA算法中的第四步和第五步,判斷是否更新當前最優(yōu)解;
第五步:重復迭代,直到達到最大迭代次數(shù)或者BP神經(jīng)網(wǎng)絡設定的誤差,輸出最終的權值和閾值,對BP神經(jīng)網(wǎng)絡進行訓練;
In conclusion, the compliance of the Attikon University General Hospital personnel with a FIT-based CRC screening program was suboptimal, especially among physicians, despite the well-organized, guided and supervised provision of the service.
第六步:將測試集樣本輸入訓練好的BP神經(jīng)網(wǎng)絡,得出輸出數(shù)據(jù),計算均方誤差MSE作為三種算法的評價指標,分析結果。
其中S表示輸出樣本的維度,ysim(i)代表給定樣本的第i維的仿真輸出結果,y(i)代表給定樣本的第i維的期望輸出結果。
BAS-BA-BP神經(jīng)網(wǎng)絡流程如圖2所示。其中右邊虛線框內是BAS-BA混合算法流程,輸出的最優(yōu)解作為BP神經(jīng)網(wǎng)絡的初始權值和閾值,左邊是BP神經(jīng)網(wǎng)絡的訓練過程,對模型進行訓練,不斷迭代,直到找到最優(yōu)權值和閾值。
圖2 BAS-BA-BP模型流程
為驗證BAS-BA算法優(yōu)化的BP神經(jīng)網(wǎng)絡性能,基于凱斯西儲大學的軸承振動數(shù)據(jù)集進行實驗與分析。該數(shù)據(jù)集包含正常狀態(tài)、內圈故障、滾動體故障和外圈故障等四種狀態(tài)數(shù)據(jù)。
針對軸承的振動特點,采用了基于功率譜特征、小波特征和時頻域特征提取的方法,對信號進行處理,提取出正常狀態(tài)、內圈、滾動體、外圈等故障信號,并對所提取的特征向量進行歸一化,將其作為BP神經(jīng)網(wǎng)絡的訓練集和測試集。BAS-BA的參數(shù)設計如下:算法的最大迭代次數(shù)為1000,64個訓練集樣本,16個測試集樣本,蝙蝠種群規(guī)模為10,脈沖音強0.25,脈沖頻度0.5,最大頻率為2,最小頻率為0;設置天牛須長為5,初始步長30,每種優(yōu)化算法獨立運行10次作平均。該實驗通過Matlab 2020b軟件構建3層結構的BP神經(jīng)網(wǎng)絡,具體每層節(jié)點數(shù)見表1。神經(jīng)網(wǎng)絡參數(shù)設置為訓練次數(shù)100次,學習率0.1,目標誤差0.00001,其余參數(shù)為默認值。
表1 不同特征下BP神經(jīng)網(wǎng)絡各層節(jié)點數(shù)目
三種特征下,針對BAS-BA-BP模型與單個BAS算法和BA算法優(yōu)化的神經(jīng)網(wǎng)絡(分別記為BAS-BP模型和BA-BP模型)的實驗結果如表2所示,MSE值越小表示軸承故障診斷準確率越高。
表2 三種算法優(yōu)化BP神經(jīng)網(wǎng)絡
由表2可知,在功率譜特征下,BAS-BA-BP模型故障診斷準確率均高于BAS-BP模型和BA-BP模型。在小波特征和時域特征下,可得出相似的結論。另一方面,對比同一種算法在三種不同特征下訓練的BP神經(jīng)網(wǎng)絡,其故障診斷準確率不盡相同,但BAS-BA算法的優(yōu)化能力均是最強的。因此,BAS-BA混合算法優(yōu)化的BP神經(jīng)網(wǎng)絡提高了軸承故障診斷準確率。
圖5 BA-BP真實值和預測值結果對比
由圖3可知,BAS-BA算法在迭代到17次的時候已經(jīng)趨于收斂,而BAS算法和BA算法分別在迭代到44次和57次時才找到全局最優(yōu)值,說明BAS-BA混合算法的收斂速度更快。為進一步展示三種算法優(yōu)化BP神經(jīng)網(wǎng)絡下的預測值和真實值之間的逼近程度,在時域頻域特征上,分別實驗對比了三種模型故障診斷的預測值和真實值如圖4~圖6所示。其中*表示測試集的真實值,〇表示預測值。重合點表示在此處預測值和真實值一致,重合點數(shù)越多,說明該算法下BP神經(jīng)網(wǎng)絡的預測結果準確率越高。顯然BAS-BA-BP模型的預測值與真實值逼近效果最好,表示使用BAS-BA優(yōu)化的BP神經(jīng)網(wǎng)絡軸承故障診斷準確率最高。
圖3 迭代次數(shù)和適應度值關系圖
圖4 BAS-BP真實值和預測值結果對比
圖6 BAS-BA-BP真實值和預測值結果對比
表3為軸承故障的四種輸出狀態(tài)與對應坐標。三種算法優(yōu)化BP神經(jīng)網(wǎng)絡的故障診斷結果如圖7所示,其橫坐標為測試集樣本,縱坐標表示軸承的故障類型?!鰹檎鎸嵵?,●、▲和▲分別表示BA-BP、BAS-BP和BAS-BA-BP三種模型下的軸承故障的預測值,可更加直觀地看出BAS-BA-BP模型的預測值總體上更接近真實值,說明BAS-BA算法優(yōu)化BP神經(jīng)網(wǎng)絡模型對軸承故障診斷的效果最佳。
圖7 三種模型故障診斷結果
表3 軸承故障輸出狀態(tài)表
本文提出一種基于天牛須-蝙蝠算法優(yōu)化BP神經(jīng)網(wǎng)絡的軸承故障診斷方法,用天牛須-蝙蝠混合算法優(yōu)化BP神經(jīng)網(wǎng)絡的初始權值和閾值,避免由于系統(tǒng)隨機初始化的權值和閾值造成的神經(jīng)網(wǎng)絡效率低下問題,優(yōu)化初始權值及閾值可以減小訓練誤差,提高網(wǎng)絡的訓練速度和精度,最終達到提升軸承故障診斷準確率的目的。將軸承四種狀態(tài)下的信號分別進行了功率譜分析、小波分析和時頻域分析,并將其分別作為BP神經(jīng)網(wǎng)絡的輸入,先對BP神經(jīng)網(wǎng)絡進行了參數(shù)優(yōu)化,后將BP神經(jīng)網(wǎng)絡應用到滾動軸承故障診斷中。實驗證明,BAS-BA算法優(yōu)化的BP神經(jīng)網(wǎng)絡方法與其他算法相比,其預測結果與真實結果的誤差更小,準確率更高,本方法在實際故障診斷,對軸承等機械設備的可靠性保障、企業(yè)的安全生產(chǎn)研究具有一定現(xiàn)實意義。