隨著現代科學技術的發展,設備的集成度越來越高,越來越復雜,故障診斷技術的出現為提高系統的可靠性和安全性開辟了一條新的途徑。近些年來,由于計算機技術、信號處理、人工智能、模式識別技術的發展,促進了故障診斷技術的不斷發展,大型復雜電子設備的出現,使得人們更迫切地希望能提高整體可靠性與維修性,這就給故障診斷提出了更高的要求。因此,對故障診斷技術的研究有著重要的理論及現實意義。 1 BP神經網絡故障診斷模型 一個神經網絡用于故障診斷時,主要包括三層:輸入層,即從設備對象接收各種故障信息和現象;中間層,是把從輸入層得到的故障信息,經內部的學習和處理,轉化為針對性的解決辦法;輸出層,是針對輸入的故障形式,經過調整權值后得到的故障處理方法。對于一個新的輸入狀態信息,訓練好的網絡將由輸出層給出故障識別結果。BP神經網絡故障診斷模型如圖1所示。 2 BP神經網絡的優化——共軛梯度法 雖然神經網絡模型已成功應用于模式識別、函數逼近、時間序列預測等領域,但是由于BP學習算法僅改變網絡的連接值和閾值,不改變網絡的拓撲結構,因此BP網絡在處理具體問題時還存在收斂速度慢,易陷入局部極小值等缺點。為了解決BP網絡訓練的缺點,人們提出了多種有益的改進方法。 本文研究了共軛梯度法對BP神經網絡進行優化設計,基本思想如下: 傳統的前向多層網絡的BP學習算法實質上是無約束的最速下降法,改進的BP算法是對最速下降法作了一些約束;而共軛梯度法則是介于最速下降法和牛頓法之間的一種方法,它僅需要利用一階導數信息,不僅克服了BP學習算法收斂慢的缺點,又避免了存儲和計算牛頓法所需要的二階導數信息。共軛梯度法的計算步驟和最速下降梯度法差別不大,主要差別在于搜索方向不同,即每一步的方向不是梯度的負方向,而是一種共軛的方向。由原來的負梯度方向加上一個修正項得到共軛方向,也就是使得最速下降法具有共軛性,從而提高算法的有效性和可靠性。共軛梯度法應用于神經網絡中的目的是求誤差函數E(W)的最小值。算法主要是利用共扼梯度方向來修正權值W,使W的確定更為快速,計算過程如下; (1)初始化權值W1,令k=1; (2)計算網絡的負梯度矢量: 設p1=r1=-E’(W1),式中E’(W1)是根據BP算法求出的負梯度。 3 診斷實例 現以一電子設備為診斷對象,驗證優化的BP神經網絡算法。樣本數據從測試口測試獲得,一共6個測試點,10個板卡故障。診斷步驟如下: (1)故障特征提取 表1為實驗測得的故障樣本數據;表2為歸一化后的數據,其激活函數采用S型函數f=1/(1+e-ax);表3為神經網絡的目標輸出模式,1表示有故障,0表示正常。 (2)BP網絡的訓練 取輸入節點N1=6,輸出節點N3=11,隱層節點采用 ,a取1~10,本實驗中a取7(根據訓練誤差曲線調整而得),N2=15。學習率η=0.2,訓練誤差E (3)BP網識別結果分析 ①用樣本自身數據輸入訓練好的神經網絡中,其識別結果見表4。與故障模式對比分析可知,自身數據檢測正確率為100%。可見,該網絡達到了訓練的要求。 ②任取4組測試數據見表5,觀察其識別結果。表6為歸一化后的測試數據,表7為識別結果。與故障模式對比可知,第一組數據對應的故障是MA-1;第二組數據對應的故障是MB-2;第三組數據對應的故障是MD;第四組數據對應的故障是MG。由此可見,本網絡不僅能識別樣本本身的故障,而且能準確診斷樣本以外的數據故障。 4 結 語 本次實驗中的BP神經網絡采用共軛梯度法進行優化設計,由實驗數據可知,該網絡能夠準確診斷數據的故障狀態,可見,該方法能夠成功應用于設備的故障診斷中。故障診斷是一門實用性很強的技術,因此只有在實際應用中才能體現它的價值,目前在理論研究方面雖有不少進展,但真正在工程實踐中成功應用的實例還較少,因此如何將先進的故障診斷理論與方法應用到實際中,還有待更深入的研究。 |