陳金輝,趙雷振,楊宗宵,郭 偉
(南京信息工程大學信息與控制學院,江蘇南京 210044)
改進的BP神經網絡在故障診斷中的應用
陳金輝,趙雷振,楊宗宵,郭 偉
(南京信息工程大學信息與控制學院,江蘇南京 210044)
針對傳統BP算法存在的收斂速度緩慢和易陷入局部極小值的固有缺陷,提出用具有全局搜索能力的模擬退火算法優化BP神經網絡,避免陷入局部極小值,提高網絡的穩定性;引入Powell算法優化模擬退火算法,加快網絡的收斂速度。最后,以齒輪箱故障診斷為例進行仿真試驗,結果表明改進后的BP神經網絡比傳統BP神經網絡的訓練收斂速度快、精度高。
模擬退火算法;Powell算法;BP算法;PSA-BP算法;故障診斷
人工智能故障診斷技術因不需要建立對象的精確數學模型,部分解決了故障診斷的模糊性和不確定性等經典常規方法不能解決的各類問題,因而在故障診斷中得到了越來越廣泛的重視[1]。人工神經網絡著眼于模擬人腦,是一個廣泛連接的巨型系統,它具有I/O非線性特性、信息的分布存儲、并行處理和全局集體作用,特別是其高度的自組織和自學習能力,為故障診斷問題提供了一種嶄新的途徑[2]。BP神經網絡是目前應用最廣泛的人工神經網絡模型之一。但是,BP算法采用的是梯度訓練法,是一種局部搜索算法,很容易陷入局部極小和收斂速度緩慢的問題。所以很多學者提出了不同的改進算法,如變學習速率BP算法、動量BP算法、LM算法、遺傳算法等[3-6],取得了一定效果。筆者將具有全局尋優的快速模擬退火算法引入到BP神經網絡用于故障診斷,主要包括:首先介紹了模擬退火算法,闡述了模擬退火算法的不足,用Powell算法優化模擬退火算法,形成快速模擬退火算法,加快模擬退火的速度;然后簡要說明BP算法的訓練過程,將快速模擬退火算法與BP算法結合,形成新的PSA-BP算法;最后將PSA-BP算法應用到齒輪箱的故障診斷中,仿真結果表明該算法具有很好的應用價值。
模擬退火(SA)算法的思想最早由METROPOLIS于1953年提出[7],1983年KIRKPATRICK等成功將其應用于組合優化問題[8]。SA算法是一種關于Mente-carlo迭代求解策略的隨機尋優算法,其出發點是基于物理中固體物質的退火過程和一般組合優化問題的相似性。SA算法是在某一初始溫度下,伴隨溫度參數的不斷下降,結合概率突跳性在解空間中隨機尋找目標函數的全局最優算法,在局部優解狀態下能概率性地跳出并最終趨于全局最優解[9]。模擬退火算法過程可參考文獻[10]。
利用SA算法求解復雜問題的時候,需要大量的迭代計算,因而收斂速度緩慢。Powell算法是局部優化直接算法中收斂性較好的一種,迭代次數遠遠小于SA算法[11]。將Powell算法與模擬退火算法組合形成快速模擬退火算法(PSA算法),可以減小迭代次數。
該算法步驟:1)從任一初始解出發,執行Powell算法快速得到一局部極小值點;2)調用SA算法進行全局搜索;3)若在指定搜索次數內找到一個比該極小值點更小的點,則初始解被替換為此次的更優解,返回1),否則該初始解為全局最優解,退出。
BP(back propagation)網絡即誤差反向傳播訓練的神經網絡,是RUMELHART等在1986年提出的。它是一種多層前饋神經網絡,網絡一般由三層或者三層以上的神經元組成,包括輸入層、隱含層(至少包含一個隱含層)、輸出層。根據Kolmogarav定理,一個三層BP網絡可以逼近n維到m維的任意連續函數[12]。所以選用三層的神經網絡結構,如圖1所示。
BP算法的中心思想是不斷調整網絡權值和閾值來修正網絡的輸出誤差,下面給出BP算法實現過程。
設輸入層有n個神經元,隱含層有q個神經元,輸出層有m個神經元,輸入層到隱含層的權值為wij,隱含層的閾值為θj,隱含層到輸出層的權值為vjk,輸出層的閾值為γk,(P,T)為含有N個樣本的樣本集合,p為N 個樣本的任意一個,激勵函數選用其中i=(1,2,…,n),j=(1,2,…,q),k=(1,2,…,m),P=(p1,p2,…,pn),T=(t1,t2,…,tn)。

圖1 三層神經網絡結構Fig.1 Structure of three-layer neural network
1)正向傳播過程
①初始化網絡權值wij,vjk;閾值θj,γk;
②輸入訓練樣本集(P,T);
③計算隱含層第j個神經元輸出


⑤返回1)③,重新計算,直至ET小于設定的值或者達到訓練次數,訓練結束。
傳統BP算法是通過梯度最速下降法來修正權值、閾值向量,很容易陷入局部極小值,且收斂速度慢。為了克服BP算法的缺陷,將具有全局搜索能力的PSA算法和局部搜索的BP算法完美地結合在一起,形成PSA-BP算法,既避免了網絡陷入極小值的發生,又加快了訓練的收斂速度。
1)構造目標函數,即所有訓練樣本的平方誤差的均值:

2)采用T=T0(1+ln(i))的降溫策略。
3)初始化網絡的權值W,閾值B,溫度T0,迭代次數N,網絡最大允許誤差E_GOAL。
4)輸入訓練樣本。
5)計算當前的誤差E,若E小于E_GOAL,退出程序。
6)將網絡的權值W,閾值B作為初始解,調用Powell算法快速搜索到某個局部極小值,得到一組新的網絡權值W′、閾值B′,計算當前的誤差記為E′。令W=W′,B=B′,E=E′,轉7)。
7)調用模擬退火算法:
① 加入隨機擾動,令W*=W+ΔW,B*=B+ΔB,其中ΔW和ΔB 為很小的均勻分布的隨機擾動。
② 重新計算誤差E,記為E*。若E*<E,則W=W*,B=B*;否則計算接受概率r=exp[(-E*-E)/(k Ti)],Ti為當前溫度,產生一個[0,1]區間的隨機數p=random(0,1),若r>p則W=W*,B=B*,否則W=W,B=B。
③ 若E*小于E_GOAL或者超過迭代次數N,退出。否則i=i+1。
8)若E*<E,轉6);若E*>E,轉7)。
利用新的PSA-BP算法,對齒輪箱故障進行仿真。樣本集[13]選擇15個特征信號作為齒輪箱故障信號,故障類型有3種,所以輸入層神經元數目為15個,輸出層神經元數目為3個。根據經驗,試驗后得出隱含層神經元數目為6個,得到15-6-3的網絡結構。隱含層采用S型正切函數tansig,輸出層采用S型對數函數logsig。參數設置:初始溫度T=30℃,SA最大迭代次數N=50,系統最大誤差0.001,網絡總的迭代次數10 000次。歸一化后的樣本數據如表1所示。
圖2是采用傳統BP神經網絡訓練誤差曲線圖,圖3是采用PSA-BP算法的神經網絡訓練誤差曲線圖,從兩圖的比對結果來看,傳統BP神經網絡經過10 000次的訓練,精度遠遠大于給定值,收斂速度慢,訓練時間長;采用PSA-BP算法的神經網絡只需要經過493次的訓練,精度達到并小于給定值,收斂速度快,訓練時間短。同時,重復多次試驗的統計結果表明,采用PSA-BP算法的神經網絡更易獲取全局最優解。

表1 齒輪箱狀態訓練樣本數據Tab.1 Training sample data of gearbox state

圖2 傳統BP神經網絡訓練誤差曲線圖Fig.2 Curve of traditional BP neural network training error

圖3 PSA-BP算法的神經網絡訓練誤差曲線圖Fig.3 PSA-BP algorithm based training error curve of neural network
為了驗證PSA-BP算法的有效性,選取6組測試樣本進行預測試驗,歸一化后的樣本數據如表2所示,測試結果如表3所示。

表2 齒輪箱狀態測試樣本數據Tab.2 Test sample data of gearbox state
從表3中可以看出,采用PSA-BP算法的神經網絡診斷正確率明顯高于傳統的BP神經網絡,特別是閾值越大,優勢越明顯。

表3 PSA-BP算法與傳統BP算法預測結果Tab.3 The prediction results of PSA-BP algorithm and the traditional BP algorithm
BP網絡具有良好的非線性映射能力,故可以應用到故障診斷中。但是傳統BP神經網絡存在的收斂速度緩慢和易陷入局部極小值的固有缺陷,阻礙了其應用范圍。為了克服BP網絡的缺陷,將具有全局搜索能力的快速模擬退火算法加入到BP神經網絡權值和閾值的優化中,避免了傳統BP神經網絡容易陷入極小值的問題,加快了網絡訓練速度。最后對齒輪箱故障的仿真結果表明,應用PSA-BP算法的神經網絡更穩定、更可靠。
[1] 李春華,張 生,楊智慧.基于BP神經網絡電路故障診斷系統研究[J].煤礦機械(Coal Mine Machinery),2009,30(3):196-198.
[2] 周世官,張 云.基于進化神經網絡的模擬電路故障診斷[J].計算機測量與控制(Computer Measurement and Control),2007,15(8):991-993.
[3] 周開利,康耀紅.神經網絡模型及其MATLAB仿真程序設計[M].北京:清華大學出版社,2005.
[4] 陳玉芳.BP神經網絡的算法改進及應用研究[D].成都:電子科技大學,2004.
[5] CHIEN C Y,BIN D L.A backpropagation algorithm with adaptive learning rate and momentum coefficient[J].Neural Networks,2002(2):1 218-1 223.
[6] VAN ROOIJ A J F,JAIN L C,JOHNSON R P.Neural Network Training Using Genetic Algorithm[M].[S.l.]:World Scientific,1996.
[7] METROPOLIS N.Equations of state calculations by fast computing machines[J].J Chem Phys,1953,21:1 087-1 091.
[8] KIRKPATRICK S,GELATT C D Jr,VECCHI M P.Optimization by simulated annealing[J].Science,1983,220:671-680.
[9] 王 凌.智能優化算法及其應用[M].北京:清華大學出版社,2003.
[10] 田景文,高美娟.基于改進的模擬退火人工神經網絡的薄互儲層參數預測[J].信息與控制(Infornation and Control),2002,31(2):180-184.
[11] 肖玉剛.一種新型模擬退火神經網絡及其應用[J].控制工程(Control Engineering of China),2006,13(6):550-552.
[12] KOLMOGOROV A N.On the representation of continuous functions of many variables by superposition of continuous funcitons of one variable and addition[J].Dokl Akad Nauk SSSR,1957,114(5):953-956.
[13] 張 捷.基于神經網絡的齒輪箱智能故障診斷技術的研究[D].蘇州:江蘇大學,2003.
[14] 陳曉明,屈寶存,王小菽,等.混沌神經網絡在球磨機故障診斷中的應用[J].河北工業科技(Hebei Journal of Industrial Science and Technology),2008,25(5):301-303.
[15] 李森林,鄧小武.基于二參數的BP神經網絡算法改進與應用[J].河北科技大學學報(Journal of Hebei University of Science and Technology),2010,31(5):447-450.
Application of improved BP neural network in fault diagnosis
CHEN Jin-hui,ZHAO Lei-zhen,YANG Zong-xiao,GUO Wei
(School of Information and Control,Nanjing University of Information Science and Technology,Nanjing Jiangsu 210044,China)
The traditional BP algorithm has the inherent shortcomings such as low convergent speed and local minimum.So this paper proposes a simulated annealing algorithm with globalsearch property to optimize the BP neural network for avoiding the local minimum and improving its stability.In order to improve the convergent speed of neural network,the Powell algorithm is proposed to optimize the simulated annealing algorithm.Finally,the simulated results of gearbox fault diagnosis are presented to show that the improved BP neural network has higher convergent speed and precision than those of the traditional BP neural network.
simulated annealing algorithm;Powell algorithm;BP algorithm;PSA-BP algorithm;fault diagnosis
TP183
A
1008-1542(2011)05-0455-05
2011-03-06;
2011-09-01;責任編輯:陳書欣
國家自然科學基金資助項目(71071078)
陳金輝(1970-),女,新疆烏魯木齊人,副教授,主要從事軟件自動化技術、中間件技術方面的研究。