彭 斌,胡常安,趙榮珍
(1.蘭州理工大學數字制造技術與應用省部共建教育部重點實驗室 蘭州,730050)(2.蘭州理工大學機電工程學院 蘭州,730050)
神經網絡是一個具有高度非線性的超大規模連續時間自適應信息處理系統,用分布在網絡內部的聯結權值表達所學習的故障診斷知識,對故障具有聯想記憶、模式匹配和相似歸納等能力,可實現故障與征兆之間的非線性映射關系,特別適用于多故障、多征兆復雜模式的識別,在轉子系統的故障診斷中廣泛應用。在智能算法對NN的訓練應用中,BP算法為最常用的訓練方法,但是這種基于梯度的學習算法易陷入局部最優解。GA在建立系統層次結構、全局尋優等方面具有優點,但容易導致早熟。PSO存在一定程度的早熟和收斂慢的現象。為了探索更好、更高效的算法,許多學者進行了大量研究工作。
A.R.Mehrabian等提出了一種從自然界雜草進化原理演化而來的隨機搜索算法——入侵式雜草優化算法。該算法模仿了雜草入侵的種子空間擴散、生長、繁殖和競爭性消亡的基本過程,具有很強的魯棒性和自適應性。采用多維基準函數進行大量數值模擬和比較實驗,揭示了IWO算法的特性,得到更優的結果。與GA相比,IWO算法簡單、易于實現,不需要遺傳操作算子,能簡單有效地收斂問題的最優解,是一種強有力的智能優化工具[1]。文獻[2-3]將IWO算法應用在圖像聚類和求解約束性問題中,取得了不錯的效果。張氫等[4]通過馬爾科夫鏈證明了IWO算法的全局收斂性并應用于減速器質量最輕數學模型的優化。
筆者在總結歸納以往學者研究的基礎上,提出了將GA的交叉算子和PSO的矢量跟蹤思想引入新的HIWO算法中。用HIWO算法實現對NN的權值、閾值及結構的優化,有效避免了算法陷入局部最優解。提出了一種主副分區編碼方案,將網絡的拓撲結構、連接權和閾值級聯分區編碼。在滿足某一特定性能指標的前提下,采用HIWO算法尋找全局最優解,并給出了HIWO動態創建網絡參數的整體算法。通過對故障信號分類的仿真,并與GA,PSO和IWO的結果進行對比,驗證了新方法的優越性和有效性。
NN是由多個非常簡單的處理單元彼此按某種方式互相連接而成的一種非線性動力學網絡系統。系統靠其狀態對外部輸入信息的動態響應來處理信息,具有高度并行處理能力。該系統模擬人的大腦神經元結構特征建立,可看成為從輸入到輸出的高度非線性映射。目前,NN的優化研究主要集中在前饋NN-BP上,標準BPNN由3層神經元組成(輸入層、隱含層和輸出層)。網絡中相鄰層采用全互連方式連接,同層各神經元沒有連接,輸出層和輸入層之間沒有直接的聯系,結構如圖1所示。

圖1 標準BPNN結構
假設網絡有n個輸入和m個輸出,則其作用可看作是由n維歐氏空間到m維歐氏空間的一個非線性映射。許多研究表明,只要隱層的神經元個數足夠多,則這種映射可以逼近任何連續函數。
人工神經網絡的數學模型為

其中:X=[x1,x2,…,xn]T為輸入;Y=[y1,y2,…,ym]T為輸出;F(·)為激活函數;S為神經元的激活水平;W 為權重,表示輸入層神經元與隱層神經元以及隱層神經元與輸出層神經元之間的聯接強度。
網絡輸出僅與輸入及網絡權重有關,輸出為輸入的顯式表達。
BP網絡模型處理信息的基本原理是:輸入信號xi通過中間節點(隱層點)作用于輸出節點,經過非線形變換,產生輸出信號ym。通過調整輸入節點與隱層節點的聯接強度取值Wij和隱層節點與輸出節點之間的聯接強度以及閾值,使誤差沿梯度方向下降。經過反復學習訓練,確定與最小誤差(網絡輸出值y與期望輸出值t之間的偏差)相對應的網絡參數(權值和閾值),訓練即告停止。
BP算法本質上為梯度下降法,它要優化的目標函數非常復雜,在進行全局搜索時,不可避免地存在收斂速度慢的問題。此外,BP算法是一種局部搜索的優化方法,在求解復雜非線性函數的全局極值時,算法有可能陷入局部極小值,導致訓練失敗。
IWO算法是一種非常新穎而高效的全局優化算法[2]。該算法模擬雜草克隆、占地、生長并繁殖的自然行為,具體的實現步驟如下。
1)初始化種群:初始種群大小n-ini、最大迭代次數itermax、問題的求解維數dim、最大種群數量plant-max-no、最大種子數seedmax、最小種子數seedmin、自變量初始搜索空間最小值xmin及最大值xmax、非線性調制指數n、初始標準差σinitial和最終標準差σfinal。
2)根據初始種群、自變量初始搜索空間以及問題的求解維數隨機產生初始解。
3)進化代數的更新及子代個體正態分布的標準差計算。其計算公式為

其中:iter為當前的迭代次數。
4)子代的繁殖,子代個體按照正態分布N(0,σ2)隨機擴散在父代個體周圍。在計算子代個體(種子數)時,根據其適應值的優劣來決定繁殖個數。最優適應值個體允許繁殖的子代個數為seedmax,最差適應值個體允許繁殖的子代個數為seedmin,其他個體允許繁殖的子代個數與其適應值服從向下取整的線性關系。這種機制在加強優秀個體局部搜索能力的同時,兼顧群體的多樣性,與自然界雜草群落真實發生的狀況更為相似,其繁殖操作如圖2所示。

圖2 父代個體繁殖產生種子的過程示意圖
5)判斷是否達到最大種群數量,在未達到最大種群數量時重復操作步驟4。
6)當超過最大種群數量時,競爭淘汰,適者生存。將父代個體和子代個體按適應值優劣排序,保留適應值優秀的個體,使種群數目保持在最大種群數量以內,精英個體在操作中被自動保留到下一代,從而保證了算法的收斂性。
7)判斷是否達到最大種群數,未達到時重復步驟4~6,反之則將適應值最優個體輸出作為最優解。
HIWO算法構建NN結構參數的基本原理是利用雜草進化的優點,將網絡的拓撲結構、連接權及閾值連成主副分區編碼串而構成進化的初始群體。通過雜草繁殖操作,在滿足某一特定性能指標的前提下尋找全局最優解。該最優解的編碼串經解碼即為特定求解問題的合適NN結構參數。圖3為基于HIWO-NN的模型設計流程圖。
3.2.1 拓撲結構
由Kolmogarav定理可知在有合理的結構和恰當權值條件下,3層前向網絡能以任意精度逼近有界非線性函數,在此設計3層神經網絡結構來進行優化訓練[5-6]。
3.2.2 隱層節點數
在BP網絡中,隱層節點數的選擇非常重要。為盡可能避免訓練時出現過擬合現象,保證足夠高的網絡性能和泛化能力,確定隱層節點數的最基本原則是:在滿足精度要求的前提下,取盡可能少的隱層節點數。若隱層節點數太少,網絡可能根本不能訓練或網絡性能很差;若隱層節點數太多,雖然可使網絡的系統誤差減小,但也會使網絡訓練時間延長。另一方面,訓練容易陷入局部極小點而得不到最優點,同時也是訓練時出現過擬合的內在原因。
隱層的節點數選擇并沒有固定模式可取,合理的隱層節點數應在綜合考慮網絡結構復雜程度和誤差大小的情況下確定。
任何的數學函數只要滿足定義域為全體實數且其傅里葉展開式不是完備的正交集函數,都可以作為NN的傳遞函數,從而得到性能不同的NN,滿足實際的需求。
BP網絡的傳遞函數(又稱激活函數)有十幾種,經常采用的有對數Sigmoid函數(logsig)、正切Sigmoid函數(tansig)和線性函數(purelin)

圖3 基于HIWO-NN的模型設計流程圖

在實際的應用中要根據具體輸出情況選擇:對數Sigmoid函數將輸出值限定在0到1之間;正切Sigmoid函數將輸出值限定在-1到1之間;purelin線性函數的輸出和輸入相同。
3.4.1 編碼
IWO算法中正態分布采用實數編碼,所以這里主編碼采用實數編碼。
N,L和M分別代表NN的輸入層、隱層和輸出層個數,整個主編碼由4部分組成,如圖4所示。

圖4 主編碼構成
HIWO算法的種群維數D=N×L+L+L×M+M。其中:N和M相對固定,大小由具體問題的輸入與輸出參數個數決定;A區為輸入層節點到隱層的連接權編碼,aij為輸入層第i節點同隱層第j節點的連接權編碼;B區為隱層節點的閾值編碼,bi為隱層第i節點的閾值編碼;C區為隱層節點到輸出節點的連接權編碼,cij為隱層第i節點同輸出層第j節點的連接權編碼;D區為輸出節點各神經元的閾值編碼,di為輸出層第i節點的閾值編碼。
HIWO算法的初始編碼以充分大的隱層個數L及層間全相連的方式組成初始群體。副編碼為0和1組成的矩陣,維數與主編碼一致,初始設定為全1矩陣表示全連接,在求解中與主編碼相乘。隨著進化過程中自適應調整隱層節點數L及刪去部分層間的連接權,實現自適應地動態改變編碼長度。
3.4.2 適應度函數
HIWO算法的適應度函數F(即NN性能評價函數)是算法指導搜索的惟一信息,它的選取是算法好壞的關鍵。適應度函數要能有效地指導搜索沿著優化參數組合的方向,逐漸逼近最佳參數組合,而不會導致搜索不收斂或陷入局部最優的狀況,同時也要求這個函數易于計算。
NN的目標函數E定義為:在所有的進化代數中搜索網絡誤差最小的權重。HIWO算法的適應度函數和NN的目標函數有著必然的聯系。HIWO算法用來求解最小值問題,它的適應度函數定義為NN的目標函數,表達式為

其中:N為測試樣本數;M為網絡輸出神經元的個數;Yij為第j個樣本的第i個網絡輸出節點的理想輸出值;Tij為第i個網絡輸出節點的實際輸出值。
HIWO算法的適應度函數與GA的適應度函數互為倒數,這是因為GA只能朝著適應度函數值增大的方向進化[7]。
3.4.3 子代的矢量跟蹤
HIWO算法借鑒PSO算法中速度更新公式中的“社會”部分,子代在繁殖的過程中不僅正態分布于父代周圍,而是也有向群體或鄰域歷史最佳位置逼近的趨勢。
3.4.4 交叉操作
交叉操作通過種群中兩個個體隨機交換遺傳信息,形成兩個相似的后代。主要目的是通過重新組合以進化出適應度更高的個體。將GA中的交叉算子引入到IWO算法,避免了算法的早熟收斂,提高了算法的性能。通過交叉操作,不僅能夠產生新的個體,更能夠在父代與子代競爭之前,對所有個體進行二次選擇[8-9]。具體步驟:對父代和子代的所有個體取適應值較差的后一半種群進行相鄰交叉操作,交叉前和交叉后的適應值排序比較,取優秀個體。
3.4.5 其他HIWO算法參數的設置
雜草種群的增加并不提高尋優成功率,非線性調制指數n對IWO算法的收斂起著關鍵作用[1]。在求解高維問題時,一般參數設置如表1所示。

表1 高維問題求解參數設置
為了驗證HIWO算法創建NN的可行性及有效性,以轉子實驗臺模擬6類故障數據的4類譜熵為訓練樣本,應用Matlab軟件進行仿真分析。
轉子實驗臺如圖5所示。實驗臺在不同的位置布置了13個通道的電渦流傳感器,其中:1~12號電渦流傳感器采集轉子的振動信號;13號采集轉速信號。分別模擬6類故障:轉子不對中、質量不平衡、動靜碰磨、松動、油膜渦動和油膜振蕩。選取轉速為2.8kr/min的實驗數據作為原始數據,選取其中一個通道的3 000組數據,經過中值濾波、去直流分量和小波消噪,計算其奇異值譜熵、功率譜熵、小波能譜熵和小波空間譜熵4類譜熵,并對樣本數據進行歸一化處理,并將其作為HIWO-NN的訓練樣本。
初始網絡結構輸入層為4,隱層為8,輸出層為1。輸出層的設計歸一化至0.4~0.9之間的一組數據。選取60組數據作為訓練樣本,HIWO算法的初始種群為5,最大迭代次數為300,最大種群數目為30,最大種子數為4,最小種子數為0,非線性調制指數為2.3,初始標準差為5,最終標準差為0.01,初始搜索空間最大值為1,最小值為-1,交叉概率為0.9,學習因子為1。IWO的參數設置與HIWO相同,但沒有交叉概率和學習因子。GA的種群大小為40,交叉概率為0.75,變異概率為0.1。PSO的種群大小為40,初始慣性權重為0.7,學習因子均為1.5,最大飛行速度限制為0.1。對4種算法的初始解都采用網格分布法,輸入層與隱層之間、隱層與輸出層之間的傳遞函數都是采用對數Sigmoid函數[10-12]。

圖5 轉子實驗臺
圖6為4種算法的迭代誤差比較結果。可以看出,128代之前有交叉優勢的PSO和HIWO占有較大優勢,128代之后HIWO算法占有絕對優勢。在對NN的訓練中,HIWO算法將隱層連接權優化到39個,PSO算法和IWO算法將隱層連接權優化到42個,GA將隱層連接權優化到45個。

圖6 迭代誤差比較
圖7為不同運行次數下的誤差比較。總體上,HIWO算法比其他3種算法能更精確地收斂到較低的誤差。

圖7 不同運行次數下迭代誤差比較(迭代次數為300)
IWO算法是一種高效的隨機智能優化算法,以群體中優秀個體來指導種群的進化,以正態分布的方式將子代個體疊加在父代個體周圍,通過標準差的動態調整,兼顧了群體的多樣性和選擇力度。
仿真結果表明,提出的HIWO算法既能構建網絡結構,又能起到網絡學習的作用,相比GA,PSO和IWO在搜索精度上有顯著提高,且極易擺脫局部極小的困擾。同時,采用HIWO算法自學習構建NN結構的方法能大大減少NN的連接權,縮短對NN的訓練時間。
隨著函數維數和群體規模的增加,如何有效縮短算法的運行時間和提高求解精度是今后研究的方向之一。目前,IWO算法的研究與應用仍有限,IWO算法的理論以及與其他算法的有效混合及應用都有待進一步研究。
[1] Mehrabian A R,Lucas C.A novel numerical optimization algorithm inspired from weed colonization[J].Ecological Informatics,2006,1(4):355-366.
[2] 蘇守寶,方杰,汪繼文,等.基于入侵性雜草克隆的圖像聚類方法[J].華南理工大學學報:自然科學版,2008,36(5):95-100.Su Shoubao,Fang Jie,Wang Jiwen,et al.Image clustering method based on invasive weed colonization[J].Journal of South China University of Technology:Natural Science Edition,2008,36(5):95-100.(in Chi-nese)
[3] Su Shoubao,Wang Jiwen,Zhang ling,et al.An invasive weed optimization algorithm for constrained engineering design problems[J].Journal of University of Science and Technology of China,2009,39(8):885-893.
[4] 張氫,陳丹丹,秦仙蓉,等.雜草算法收斂性分析及其在工程中的應用[J].同濟大學學報:自然科學版,2010,38(11):1689-1693.Zhang Qing,Chen Dandan,Qin Xianrong,et al.Convergence analysis optimization algorithm in engineering of invasive weed and its application[J].Journal of Tongji University:Natural Science Edition,2010,38(11):1689-1693.(in Chinese)
[5] 劉亮,李龍澍.基于神經網絡和遺傳算法的RoboCup截球策略[J].計算機工程與應用,2006,42(33):28-30.Liu Liang,Li Longshu.Intercept strategy based on neural network and genetic algorithms in RoboCup[J].Computer Engineering and Applications,2006,42(33):28-30.(in Chinese)
[6] 李振濤,王淑玲,張國立.利用遺傳模擬退火算法優化神經網絡結構[J].計算機工程與應用,2007,43(36):74-76.Li Zhentao,Wang Shuling,Zhang Guoli.Application genetic and simulated annealing algorithm for optimization of neural network structure[J].Computer Engineering and Applications,2007,43(36):74-76.(in Chinese)
[7] 梁艷春,吳春國,時小虎.群智能優化算法理論與應用[M].北京:科學出版社,2009:19-25.
[8] 王晶,張慶,梁霖,等.采用遺傳算法的自適應隨機共振系統弱信號檢測方法研究[J].西安交通大學學報,2010,44(3):32-36.Wang Jing,Zhang Qing,Liang Lin,et al.Adaptive stochastic resonance based on genetic algorithm with applications in weak signal detection[J].Journal of Xi′an Jiaotong University,2010,44(3):32-36.(in Chinese)
[9] 程力旻,謝志江,劉利云,等.運用免疫遺傳神經網絡的汽輪機振動故障診斷[J].振動、測試與診斷,2010,30(6):675-678.Cheng Limin,Xie Zhijiang,Liu Liyun,et al.Vibration fault diagnosis of steam turbine using immune genetic neural networks[J].Journal of Vibration,Measurement & Diagnosis,2010,30(6):675-678.(in Chinese)
[10]霍天龍,趙榮珍,胡寶權.基于熵帶法與PSO優化的SVM轉子故障診斷[J].振動、測試與診斷,2011,31(3):279-284.Huo Tianlong,Zhao Rongzhen,Hu Baoquan.Fault diagnosis for rotor systems based on entropy band method and support vector machine optimized by PSO[J].Journal of Vibration,Measurement &Diagnosis,2011,31(3):279-284.(in Chinese)
[11]Pourjafari E,Mojallali H.Solving nonlinear equations systems with a new approach based on invasive weed optimization algorithm and clustering[J].Swarm and Evolutionary Computation,2012,4:33-43.
[12]Peng Bin,Hu Changan,Zhao Rongzhen,et al.The investigation of fault diagnosis based on GA-HPSONN[J].Journal of Computers,2012,7(10):2511-2517.