(上海海事大學 上海 200120)
BP網絡和遺傳算法是廣泛運用于數據挖掘[1~2]的方式。針對集裝箱橋吊機械小車電機日常產生的龐大數據,需要從這些數據中發現橋吊的工作信息以及故障預測。所以提高BP神經網絡的系統性能很有價值。
遺傳算法[3]是模仿生物遺傳的方法,首先編碼產生初始的群體,其中任務是對群體實施一些的操作,并以其對環境的適應情況為基礎,進行優勝劣汰的進化。就優化搜索的方面來看,遺傳算法能夠將解實施一代代的優化,最終得到最優解。遺傳算法的構造步驟分為以下幾步:(1)確定決策變量及其各類約束條件。這一步確定出個體的表現型X和問題的解空間。(2)建立優化模型。這一步要確定出目標函數的類型(是求目標函數的最大值還是求最小值)及其數學描述形式或量化方法。(3)確定染色體編碼方案。這一步要確定出個體的基因型X及遺傳算法的搜索空間。(4)確定解碼方法。這一步要確定出由個體基因型X到個體表現型X的對應關系或轉換方法。(5)確定個體適應度的量化評價方法。這一步要確定出由目標函數值f(x)到個體適應度F(X)的轉換原則。(6)設計遺傳算子。這一步要確定出采用哪種選擇算子、交叉算子、變異算子等遺傳算子以及各自的具體操作方法。(7)確定遺傳算法相關運行參數。這一步要確定出遺傳算法的種群大小population、終止進化代generation、交叉概率Pc、變異概率Pm等參數[4~5]。
BP網絡[6]實現了多層網絡學習的設想。當給定網絡的一個輸入模式時,它由輸入層單元傳到隱層單元,經過隱層單元逐層處理后再送到輸出層單元,由輸出層單元處理后產生一個輸出模式,這是一個逐層狀態更新過程,稱為前向傳播。如果輸出響應與期望輸出模式有誤差,不滿足要求,那么就轉入誤差反向傳播,將誤差值沿連接通路逐層傳送并修正各層連接權值。傳統調整各層的連接權值[7]的方法為

在遺傳算法的優化中,我們通過對連接權值和節點的閾值進行迭代,減少次環節的運行時間,通過對連接權值和節點閾值計算適應度,得出最佳適應度所對應的連接權值。
岸橋港機小車電機數據通過遠程在線監控系統實時監測,隨時發現異常情況,及時排除隱患,狀態信息實時的存儲在數據庫中,數據量非常大。這些海量的數據是在岸橋正常作業的時候采集的,反映的是岸橋在各種工況下的機械狀態。對這些數據進行數據挖掘研究,可以發現岸橋運行中狀態變化的一些規律。我們利用其中的一個點的連續數據進行分析。
經過參數反復測試發現如下參數較佳,設定遺傳算法的主要參數如下:種群數population=10,終止進化代數generation=30,交叉概率pc=0.3,變異概率pm=0.01;輸入層節點個數inputnum=2;隱含層節點個數hiddennum=5;輸出層節點個數outputnum=1;數據選取某臺集裝箱橋吊小車電機的一個月的檢測數據,每天選取前2000個數據共28天。
我們先選取前20天的結果進行BP神經網絡的學習訓練數據,用后8天的數據進行目標數據以測試我們的精度[8],對程序結果進行分析,通過計算結果的均方誤差來判定我們的優化程度

圖1 均方誤差

圖2 訓練誤差

圖3 測試誤差
評價一個網絡設計的好壞,首先是它的精度,再一個就是訓練時間。時間包含兩個方面一是迭代次數,二是每一次迭代循環中計算所花費的時間。從以上不同隱層節點數的訓練性能上可以得出在訓練過程中,隱層節點數在一之間,網絡收斂性能好,而且收斂時間較短而隱層節點數在一之間,網絡收斂性變差,運行時間也變長。由此可以看出,網絡隱含層節點數不是只有一個合適的數,而是有一個可選的范圍,結合實際綜合考慮。由圖1可知,遺傳算法在迭代到5次左右即將誤差計算在最佳值附近。
圖2、3所對應得訓練誤差、測試誤差啊的變化曲線,可見測試誤差的變化趨勢基本一致,說明樣本集的劃分基本合理。由訓練誤差曲線可見,訓練誤差結果也是比較滿意的,三種誤差和擬合函數fit十分吻合,說明由數據訓練出的擬合函數初步可實現基本的數據預測。
利用遺傳算法對岸橋的各機械系統進行動態分析,通過對在線監測數據的一系列處理,挖掘出各點的趨勢,為岸橋各系統的工作狀態的評估以及機械故障的預測提供信息。對岸橋動態特征的分析與機械故障的預測起到很明顯的作用。經過驗證,用遺傳算法進行優化BP神經網絡在收斂速度和解決其固有缺陷方面很有效。