謝永成,李光升,魏 寧,李 剛
(陸軍裝甲兵學院 兵器與控制系,北京 100072)
裝甲車輛電氣系統的工作狀態直接影響著裝甲車輛整體作戰性能。 當前,隨著科技發達,電路板作為裝甲車輛電氣系統的關鍵組件,功能日趨多樣、結構日趨復雜,隨之而來,故障發生的種類也越來越多、復雜程度也越來越高,對故障診斷的要求也不斷提升。 目前,對于裝甲車輛電氣系統的故障診斷,大多是系統級故障診斷,即使發現電路板故障,也多是以更換為主。 雖有部分學者將神經網絡方法應用在電路板故障診斷中,但由于存在訓練停滯現象、收斂效果較差等問題,使得基于神經網絡的智能診斷方法應用在電路板故障診斷中存在著諸多問題和限制[1]。 為了克服該問題,有部分學者引入附加動量項、學習率自適應等方法對模型進行改進,取得了一定效果,但由于動量因子是固定的,學習率變化范圍不大,其整體自適應能力仍然不夠[2-5]。 基于此,文章探索將遺傳算法與BP 神經網絡進行結合,以嘗試解決單一BP 網絡容易陷入局部最小值、收斂效果差等問題,以期在以往神經網絡診斷方法基礎上[2-5],為裝甲車輛電氣系統電路板故障診斷提供更好的解決方法。
BP 神經網絡又稱為誤差反向傳播神經網絡,數據信息通過神經網絡的輸入端向輸出端正向傳播,而輸出信息的誤差沿著相反的方向傳遞給神經網絡的權值和閥值,使其按照反饋信息調節網絡結構[6]。BP 神經網絡結構如圖1 所示。

圖1 BP 神經網絡結構圖Fig.1 BP neural network structure diagram
輸出層梯度:

隱含層梯度:

第n 次迭代閾值:

第n 次迭代權值:
學習率η 根據誤差變化e(n)進行自適應調整:

由典型BP 神經網絡基本結構及原理可知,雖然其具有較好的收斂速度和自適應能力,但其學習率范圍和動量因子本身的問題導致其對網絡誤差仍然敏感性不足,難以適應學習率較大范圍變化的情況。 為了解決上述問題,對其進行如下改進:
設定p1,p2分別是網絡誤差e(n)連續增大、減小的標志量:

將其代入公式(5)中,得到學習率η:

自適應動量因子為

若誤差連續減小k 次時, 說明方向正確但學習率不夠,從而可以以k 冪指數提高η,并降低μ,推動網絡進一步收斂[11]。
為了對典型BP 神經網絡進行優化,可引入遺傳算法, 對典型BP 神經網絡的各層節點參數進行尋優操作。 遺傳算法是一種常用的全局搜索方法,通過設置種群初始值、選擇、交叉、變異等操作步驟,可以對典型BP 神經網絡的各層節點參數進行尋優,從而降低訓練停滯和局部極小值問題對模型預測結果的影響[12-15]。 其與BP 神經網絡結合對各層參數進行優化的基本流程如圖2 所示。

圖2 改進型GA-BP 算法基本流程Fig.2 Basic flow chart of improved GA-BP algorithm
運用遺傳算法對BP 神經網絡模型參數尋優的基本操作可分為5 個步驟:
步驟1種群初始化。 遺傳算法是從潛在的解集出發進行尋優的過程,因此,在模型運用過程中,首先應按照一定的編碼規則給出種群的初始解,對種群進行初始化,生成初始種群、確定適應度函數。本模型中,選取網絡誤差為適應度函數。
步驟2選擇操作。在本模型中,采取基于適應度比例的選擇操作,每個個體被選擇的幾率為:Pi=
步驟3交叉操作。通過交叉操作,可以進一步增大子代基因信息范圍。本模型中,第k 個染色體ak和第s 個染色體as在第j 位的交叉方法為

式中:d 為[0,1]之間的隨機值。
步驟4變異操作。通過變異,能夠提高種群的多樣性,使種群得到豐富和優化。若對第i 個個體第j 個基因a 進行變異操作,可得到:

式中:amax是基因aij的上邊界;為一個隨機值;g 為當前迭代次數;Gmax為最大迭代次數;r 為[0,1]之間的隨機值。
步驟5判斷。按照上述步驟進行計算,并判斷進化是否達到了預期目標,若沒有達到,則重復上述步驟直到達到預設目標為止。
以裝甲車輛電氣系統中80 式滅火系統控制盒電路板撕裂后存在故障的子網絡為例,對優化后的BP 神經網絡模型進行驗證分析。選擇撕裂后的子網絡作為數據采集的區域,故障信息通過節點電壓測量法獲取。 其故障采集區域如圖3 所示。

圖3 80 式滅火系統控制盒電路板電壓信息采集區域Fig.3 Type 80 fire extinguishing system control box circuit board voltage information collection area
首先設置故障元器件以及元器件所產生的故障,如表1 所示。

表1 故障注入參數設置Tab.1 Fault injection parameter settings
然后依據測量節點的順序依次將故障測量節點命名為a~g,并將故障依次注入電路可以通過測量節點電壓獲得故障數據。 獲得節點電壓數據后,進行歸一化處理,如表2 所示,對應的神經網絡輸出,如表3 所示。

表2 故障參數(0-1)歸一化Tab.2 Fault parameters(0-1) are normalized

表3 故障參數(0-1)歸一化網絡輸出Tab.3 Fault parameters(0-1) normalize the network output
設置BP 神經網絡3 個層次的節點數量分別為3,5,6,η=0.8,μ=0.6,并對其進行批量訓練,從而獲得誤差滿足要求的網絡模型。
對于遺傳算法部分,其初始種群規模設定為16,交叉概率和變異概率分別為0.4,0.2,共進行20 次的進化,以得到經GA 優化的BP 神經網絡各層節點初始值,如表4 所示。 其中,ω1~ω3是第1~2 層網絡權值,b 是第2 層網絡閾值,W1~W5是第2~3 層網絡權值,B 是第3 層網絡閾值。

表4 優化后的BP 神經網絡初始值Tab.4 Initial values of the optimized BP neural network
將上述優化得到的BP 神經網絡各層節點初始值代入模型中,以表2 和表3 數據作為訓練數據對模型進行訓練,經過4 次迭代之后,可以得到訓練誤差為0.0563,此時,模型的訓練誤差滿足要求,該模型可以對裝甲車輛電氣系統電路板故障進行診斷,如圖4 所示。

圖4 優化神經網絡(0,1)區間訓練誤差曲線Fig.4 Optimization neural network(0,1) interval training error curve
為了驗證優化后的GA-BP 神經網絡模型的可靠性, 將其與典型BP 神經網絡以及測試數據進行預測結果對比。 首先對沒有優化的典型BP 神經網絡模型進行訓練,經過12 次迭代之后,得到訓練誤差為0.16125,如圖5 所示。 將實驗數據分別帶入優化后的神經網絡模型和沒有優化的神經網絡模型,可以得到預測結果,如圖6 所示。 可見,沒有優化的網絡模型預測結果明顯與測試數據偏離較大,而優化后的網絡模型預測結果與測試結果擬合度較好,優化后的網絡模型預測結果明顯優于沒有優化的網絡模型預測結果。

圖5 未優化神經網絡訓練誤差曲線Fig.5 Not optimized neural network training error curve

圖6 免疫遺傳算法預測結果對比Fig.6 Comparison of prediction results of immunogenetic algorithms
裝甲車輛電氣系統電路板故障診斷問題一直是一個難點問題,傳統的電路板故障診斷方法主要存在故障檢出率低、虛警等問題,應用BP 神經網絡雖然能一定程度上解決檢出率低等問題,但其存在的自適應問題和局部極小值問題仍然導致故障診斷虛警率較高。 而通過引入遺傳算法,對典型BP 神經網絡進行參數尋優改進,從而使得神經網絡故障診斷方法可以得到優化。 本文在改進模型的基礎上, 以裝甲車輛電氣系統中80 式滅火系統控制盒電路板故障診斷數據對模型進行驗證分析,由結果可見, 經過遺傳算法參數尋優改進后的BP 神經網絡模型可以有效克服自適應不夠和局部極小值問題,實現對裝甲車輛電氣系統電路板的故障診斷。