童珠滿 費樹岷
摘要 針對目前機車滾動軸承故障診斷效率低、速度慢的問題,設計一種基于小波包與粗糙集神經網絡的機車走行部滾動軸承故障診斷方法。首先運用小波包分解構造故障特征集,之后運用粗糙集對故障特征集進行降維處理,消除冗余信息,然后將降維后的最小屬性集作為LevenbergMarquardt算法改進的BP神經網絡的輸入,建立相應的神經網絡模型實現故障診斷。測試結果表明,相較于普通BP網絡模型,該方法降低了神經網絡模型構建的復雜度,提高了故障診斷速度與故障診斷準確率。
關鍵詞 小波包;粗糙集理論;故障診斷;LevenbergMarquardt算法;神經網絡;機車滾動軸承
DOIDOI:10.11907/rjdk.181025
中圖分類號:TP319
文獻標識碼:A文章編號文章編號:16727800(2018)009015304
英文標題Fault Diagnosis of Locomotive Rolling Bearing Based on Neural Network
——副標題
英文作者TONG Zhuman,FEI Shumin
英文作者單位(Automated Institute,Southeast University,Nanjing 210096, China)
英文摘要Abstract:Aiming at the problem of low efficiency and slow speed of locomotive rolling bearing fault diagnosis,this paper presents a fault diagnosis method of rolling bearing of locomotive running department based on wavelet packet and rough set and neural network.Firstly,wavelet packet decomposition is used to construct the fault feature set,and then the rough set is used to reduce the dimension to eliminate the redundant information.Secondiy,the minimum attribute set after dimension reduction is used as the input of BP neural network improved by LevenbergMarquardt algorithm to establish the corresponding neural network model to achieve fault diagnosis.The test results show that the method not only reduces the complexity of the neural network construction model but also improves the convergence speed and accuracy of fault diagnosis compared with the ordinary BP network model.
英文關鍵詞Key Words:wavelet packet;rough set theory;fault diagnosis;LevenbergMarquardt algorithm;neural network;locomotive rolling bearing
0引言
隨著經濟的快速發展,我國鐵路運輸的相關配套設施也日益完善,機車經過多次提速之后進入高鐵時代,然而機車安全事故仍時有發生。機車走行部的滾動軸承是十分重要且容易受損的零件,滾動軸承狀態對整臺機車的正常運行起著決定性作用。一旦滾動軸承出現故障,將可能導致重大鐵路交通事故。由于發生故障時,導致故障原因復雜,各類故障反映的特征參數也不完全相同,因而給故障診斷帶來極大困難[1]。BP神經網絡由于具有很強的非線性映射能力和柔性的網絡結構及分類能力,在故障診斷領域得到廣泛應用。如黃國強[2]在基于遺傳算法的BP網絡在機車滾動軸承故障診斷應用中,設計的GABP算法模型診斷精度較高,提升了診斷能力;張肖曼[3]在基于BP神經網絡的機車走行部滾動軸承故障診斷研究中,設計了一套機車走行部滾動軸承故障診斷工具箱;陳特放[4]在基于小波分析的機車走行部故障診斷方法中,對鐵路機車高噪聲背景下瞬變信號的描述比以往的時域、頻域信號處理技術更為精確;陳二恒[5]在基于小波包與貝葉斯分類的機車走行部滾動軸承故障診斷研究中,構建的模型時間較短,分類準確率也較高;李虎成[6]在基于粗糙集BP神經網絡的機車滾動軸承故障診斷中,設計的故障診斷模型也取得了較好效果。總體而言,以上研究都取得了一定成果,然而小波變換方法存在模型構建時間長、采樣數據量大以及冗余信息多等缺陷,而普通BP神經網絡存在訓練時間長、診斷精度低、易陷入局部極小值等問題,這些都給滾動軸承故障診斷工作帶來一定困難。
本文針對以上問題作出改進,提出一種基于小波包與粗糙集LevenbergMarquardt算法改進(簡稱LM法)BP神經網絡的機車走行部滾動軸承故障診斷方法。該方法首先運用3層小波包分解處理故障樣本數據,得到8個頻率分量的能量作為故障特征集,并將其作為條件屬性;然后使用粗糙集對條件屬性進行約簡,通過刪除冗余信息實現降維;最后將未降維和使用粗糙集方法降維后的故障特征集分別作為經LM算法優化之后BP神經網絡的輸入,以達到滾動軸承故障診斷的目的。本故障診斷方法和傳統方法最大的區別在于:將3層小波包分解后的結果再用粗糙集理論進行約簡,可減少模型構建時間,提高診斷精度;另外普通BP網絡經LM算法優化之后,訓練速度得到了很大提高,也是本方法的獨特之處。
1小波包分解
小波包變換是小波變換的發展和延伸,繼承了小波變換時頻的局部化特性,并對多分辨分析中未分解的高頻頻帶作進一步分解,使信號中的微弱信號特征明顯體現出來。小波包分解很好地彌補了小波變換的不足,通過自適應選擇對應頻帶,使該頻帶與信號頻譜相匹配,提高時頻分辨率[7]。
小波包分解的原理是對多分辨率分析中的各小波子空間進行分解。在多分辨率分析中,定義函數un(t)的閉包空間為Unj,函數u2n(t)的閉包空間為U2nj,令un(t)滿足如下組合方程:
u2n(t)=2∑k∈Zhkun(2t-k)u2n+1(t)=2∑k∈Zgkun(2t-k)(1)
其中g(k)=(-1)kh(1-k),由基函數u0(t)=φ(t)得到的正交小波包序列為{un(t)}n∈Z。u0(t)為尺度函數φ(t),u1(t)為小波基函數ψ(t)。設gnj(t)∈unj,則gnj可表示為:
gnj(t)=∑ldj,nlu(2jt-1)(2)
由上式(1)、(2)易知,小波包分解即是將gnj+1(t)分解為g2nj(t)和g2n+1j(t)。小波包分解算法是由{dj,nl}求{dj+1,2nl}和{dj+1,2n+1l},即:
dj+1,2nl=∑khk-2ldj,nkdj+1,2n+1l=∑kgk-2ldj,nk(3)
小波包的重構算法即是由{dj+1,2nl}和{dj+1,2n+1l}計算{dj,nl},可表示為:
dj,nl=∑k[hl-2kdj+1,2nk+gl-2kdj+1,2n+1k](4)
2粗糙集基礎
粗糙集理論(Rough Set,RS)是一種主要用于處理不完整數據、不精確知識表達以及模糊數據集的信息處理方法。該方法在保持分類能力不變的前提下,通過對樣本數據進行約簡,建立問題決策規則,從而找到其中的潛在規律。目前,該理論已被廣泛應用于機器學習等研究領域。
2.1信息系統與決策表
定義R代表論域U中的一種關系,U/R表示根據R、U中對象構成的所有等價類族。對于子集X,Y∈U,用[X]R表示X和Y由屬性R無法分辨。若PR,且P≠,則∩P也是一個等價關系,記作ind(P)。
信息系統可用三元組S=(U,A,V)表示,其中U是有限非空集,也稱為論域;A為屬性的有限非空集,V=∪a∈AVa,Va是屬性a集的值域,也可用S=(U,A)代替S=(U,A,V)。如果A=C∪D,C∩D=,則稱(U,A)為一個決策表,其中C、D中的屬性分別稱為條件屬性和決策屬性。
2.2知識約簡
知識約簡是粗糙集理論的核心內容之一,是指在保持分類能力不變的情況下,刪除其中的冗余信息。約簡(Reduct)和核(core)是其中的兩個基本概念,其中核是屬性集的本質部分,從中去掉任何一個屬性都將影響屬性集對論域中對象的分辨能力。
設B∈A為屬性集,屬性b∈B,如果ind(B-{b})=ind(B),則b在B中可省去,否則b在B中是必要的。如果所有的b∈B在B中都是必需的,則稱B是無關的,否則B是相關的。子集B∈A是A的一個約簡,當且僅當B是無關的,ind(B)=ind(A)。A中所有必要屬性的集稱為A的核,表示為core(A)。核是所有約簡的交集,即core(A)=∩red(A),其中red(A)是A的所有約簡構成的族[89]。
3BP學習算法及其改進
BP算法也稱為誤差反向傳播算法,是一類有導學習算法,用于BP網的權值和閾值學習。評價一個神經網絡學習算法的優劣有很多指標,包括:①學習所需時間;②泛化能力;③神經網絡結構復雜性;④魯棒性,即算法參數出現很大波動時,算法是否還能維持原有學習效果[10]。
BP神經網絡在故障診斷方面具有一定優勢,然而BP算法也存在易陷入局部極小點、收斂速度慢等缺陷,本文針對避免局部最小和提高收斂速度等問題作出一些改進。
(1)加動量算法。為提高算法收斂速度,可引入動量項,即:
w(n0+1)=w(n0)+η(n0)d(n0)+αΔw(n0)(5)
其中:
d(n0)=-EAw(n0)(6)
Δw(n0)=w(n0)-w(n0-1)=η(n0-1)d(n0-1)(7)
此時權值修正量加上了有關上一時刻權值修改方向的記憶。動量因子α一般取值為0.1~0.8。
(2)LM算法。LM法是使用最廣泛的非線性最小二乘算法,也是一種最優化算法。其權值調整率選為:
Δw=(JTJ+μI)-1JTe(8)
式中,參數J是誤差為權值微分的Jacobian矩陣,參數e為訓練誤差向量。
μ=0時,Δw則接近于Hessian陣的牛頓法。當μ較大時,LM算法近似為小步長梯度法。迭代時為了保證表現函數最后減小到一定的值,訓練成功時需要減小μ值,反之要增加μ值。
下面分別對普通BP算法和上述兩種改進方法進行訓練,比較其訓練結果[11]。為便于比較,在以下訓練中,規定樣本數據如下:
輸入:my_input=[-1 -1 2 2;0 5 0 5]
輸出:my_output=[-1 -1 1 1]
隱含層節點數都為3,隱含層神經元傳遞函數都為tansig,輸出層神經元傳遞函數都為purelin,訓練周期epochs=2 000,訓練要求精度為0.001,訓練步長show=10,學習率為0.05。
普通BP網絡訓練結果如圖1所示。
經過190次循環訓練成功,網絡驗證結果為:(-1003,-0.998,0.995,1.002)。
有動量的梯度下降法訓練結果如圖2所示。
經過32次循環訓練成功,網絡驗證結果為:(-1.001,-0.999,0.997,1.001)。
LM方法訓練結果如圖3所示。
經過2次循環訓練成功,網絡驗證結果為:(-1000,-1.000,1.000,1.000)。
從以上3種訓練方法對比得出:LM訓練方法收斂速度很快,且準確率能達到100%。因此,本文采用基于LM算法改進的BP神經網絡取代普通BP網絡實現故障診斷。
4基于小波包與粗糙集的神經網絡滾動軸承故障診斷流程
本文所用數據來自美國Case Western Reserve大學軸承數據中心提供的免費數據,是在軸承轉速30r/s、采樣頻率為1kHz情況下通過加速度傳感器采集到的原始振動加速度信號。首先,建立LM算法改進的BP神經網絡訓練樣本集;然后通過小波包分解對頻譜信號進行3層分解,得到8個頻率分量的能量作為故障特征集元素,從而構造原始故障特征集。將分解得到8個頻率分量的能量作為條件屬性,分別用a1~a8表示,實際出現的滾動軸承故障類型分為4種:正常狀態、內圈故障、外圈故障和滾子故障,將其作為決策屬性,分別用1、2、3、4表示,從而建立包括8 類條件屬性和4 類決策屬性的滾動軸承故障診斷信息決策表;接下來進行粗糙集預處理,包括連續屬性離散化和決策表約簡,以刪除冗余信息;之后將得到的相對最小條件屬性作為LM算法改進后BP神經網絡的輸入向量,對應的故障類型作為BP神經網絡的輸出,建立相應的滾動軸承故障診斷模型,并利用梯度下降法調節權值,進行學習和訓練,從而確定BP神經網絡的結構參數[12]。具體流程如圖4所示。
5仿真分析
5.1故障診斷模型建立
由于篇幅所限,本文只采用采集數據樣本的其中8 組滾動軸承振動加速度數據作為原始數據樣本(用u-1~u-8表示)進行分析研究。經小波包3層分解后,每個數據樣本有8維特征向量(用a1~a8表示),從而構造出8·8的故障特征訓練樣本集。然后將8個頻率分量的能量作為粗糙集條件屬性,對應的故障類別作為決策屬性,構建學習樣本集,如表1所示。
將本文的連續條件屬性值劃分成3個等寬度的值域進行離散化,取[0,0.3]、[0.3,0.7]、[0.7,1]區間的編碼分別為1、2、3,得到離散化后的故障診斷信息表。然后將其分成兩塊建立決策表進行約簡處理,得到條件屬性為a1~a4與a5~a8的分決策表。通過計算可獲得兩者的核分別為{a1,a3}與{a5,a6,a7},則整個實驗樣本的核為屬性a1、a3、a5、a6、a7。由于得到的離散化信息表中的u2和u7行不相容,故需要刪除u2與u7行,最終得到如表2所示的相對最小約簡的學習樣本集。可以看出,經過粗糙集約簡后,在保持原分類不變的情況下,條件屬性明顯減少,刪除了其中的冗余信息[1314]。
5.2仿真測試
分別建立兩種故障診斷網絡模型。普通BP網絡的結構為8143,其中傳遞函數為[tansig,purelin],訓練要求精度都為0.001,訓練周期都是epochs= 1 000;粗糙集BP網絡模型的結構為5143,其它參數相同。得到的神經網絡訓練誤差曲線分別如圖5、圖6所示[1516]。
由圖5、圖6看出,普通BP網絡迭代99次可訓練成功,而本方法模型只用迭代68次即可訓練成功。因此,相對于普通BP網絡而言,粗糙集BP網絡提高了網絡訓練速度。
6結語
本文充分利用基于粗糙集理論和LM算法改進的BP
神經網絡的優點,并將其運用于機車走行部滾動軸承故障診斷中。分別用普通BP網絡和本文方法模型對滾動軸承故障進行訓練和測試,測試結果表明:相較于普通BP網絡,本文提出的模型故障診斷方法不僅簡化了神經網絡結構,訓練速度也得到提高,且故障診斷準確率較高,在故障原因較復雜的機車走行部滾動軸承故障診斷中具有一定實用價值。
參考文獻參考文獻:
[1]賈天麗.軌道列車走行部滾動軸承故障診斷研究[D].北京:北京交通大學,2011:812.
[2]黃國強,陶海龍.基于遺傳算法的BP網絡在機車滾動軸承故障診斷中的應用[J].甘肅科技,2011,27(12):5860.
[3]張肖曼.基于BP神經網絡的機車走行部滾動軸承的故障診斷研究[D].北京:北京交通大學,2012:6467.
[4]陳特放,黃采倫,樊曉平.基于小波分析的機車走行部故障診斷方法[J].中國鐵道科學,2005,26(4):8992.
[5]陳二恒,賀德強,劉建仁.基于小波包和貝葉斯分類的機車走行部滾動軸承故障診斷研究[J].鐵道科學與工程學報,2015(3):636642.
[6]李虎成,邱建東,李屹.基于粗糙集BP神經網絡的機車滾動軸承故障診斷[J].計算機與數字工程,2014,42(3):526530.
[7]衡玲燕,戴鵬,符曉.基于小波包頻帶能量重構的電機斷條故障診斷[J].電機與控制應用,2010,37(10):5660.
[8]張文修,吳偉志,梁吉業.粗糙集理論與方法[M].北京:科學出版社,2001:156.
[9]PAWLAK Z.Rough sets [J].International Journal of Computer and Information Science,1982,11(5):341356.
[10]魏海坤.神經網絡結構設計的理論與方法[M].北京:國防工業出版社,2005.
[11]宋曉娟,馬勝前.BP改進算法在MATLAB7.0中的實現及比較研究[J].甘肅科技,2007,23(11):4344.
[12]董健康,李艷,耿宏.基于粗糙集神經網絡的機載設備故障診斷方法研究[J].航空電子技術,2008,39(1):3741.
[13]孫永厚,李聰.基于粗糙集BP神經網絡的垃圾破碎機故障診斷[J].機械設計與制造,2012(1):218220.
[14]蘇劍飛.基于粗糙集和神經網絡的故障診斷方法研究[D].太原:中北大學,2007:3338.
[15]陳偉,馬如雄,郝艷紅.基于MATLAB的BP人工神經網絡設計[J].智能計算機與應用,2005(2):3031.
[16]羅成漢.基于MATLAB神經網絡工具箱的BP網絡實現[J].計算機仿真,2004,21(5):109111.
責任編輯(責任編輯:黃健)