李 根,楊劍征,劉 祺
(中國(guó)艦船研究院,北京 100101)
作為船舶系統(tǒng)重要的組成部分,柴油機(jī)的可靠性和安全性得到了越來(lái)越多的關(guān)注[1]。在整個(gè)航運(yùn)過(guò)程中,船舶柴油機(jī)運(yùn)行性能發(fā)揮著至關(guān)重要的作用。因?yàn)樘幱趷毫迎h(huán)境中,船舶柴油機(jī)在工作時(shí)出現(xiàn)了越來(lái)越多故障。如果船舶柴油機(jī)發(fā)生重大故障,會(huì)導(dǎo)致船舶停運(yùn),造成嚴(yán)重經(jīng)濟(jì)損失[2]。為實(shí)現(xiàn)船舶系統(tǒng)視情維護(hù),保障船舶穩(wěn)定運(yùn)行,及時(shí)對(duì)船舶柴油機(jī)進(jìn)行故障診斷,并根據(jù)故障診斷結(jié)果進(jìn)行合理維修,具有極其重要的意義。
神經(jīng)網(wǎng)絡(luò)基于對(duì)故障樣本的學(xué)習(xí),對(duì)所學(xué)習(xí)的故障診斷知識(shí),以連接權(quán)值形式進(jìn)行描述,解讀故障征兆和故障之間一對(duì)多的非線性關(guān)系,從而實(shí)現(xiàn)對(duì)故障的聯(lián)想記憶、模式匹配和相似歸納,在復(fù)雜系統(tǒng)故障診斷中應(yīng)用越來(lái)越廣泛,優(yōu)勢(shì)也越來(lái)越明顯[3]。目前,在故障診斷領(lǐng)域,被廣泛采用的神經(jīng)網(wǎng)絡(luò)模型有反向傳播(Back Propagation,BP)神經(jīng)網(wǎng)絡(luò)[4-6]、自組織映射(Self-organized Mapping,SOM)神經(jīng)網(wǎng)絡(luò)[7-10]等。但各神經(jīng)網(wǎng)絡(luò)因算法局限性、所需樣本數(shù)量大、網(wǎng)絡(luò)結(jié)構(gòu)未知等因素,在故障診斷過(guò)程中都存在一定缺陷?;谏鲜鰡?wèn)題,本文闡述了BP 神經(jīng)網(wǎng)絡(luò)和SOM 神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)和算法學(xué)習(xí)步驟,將二者融合構(gòu)建SOM-BP 神經(jīng)網(wǎng)絡(luò),并闡述該網(wǎng)絡(luò)的模型結(jié)構(gòu)和算法學(xué)習(xí)步驟,通過(guò)仿真試驗(yàn)驗(yàn)證了該網(wǎng)絡(luò)在船舶柴油機(jī)故障診斷中的有效性。
SOM 神經(jīng)網(wǎng)絡(luò)是無(wú)監(jiān)督、自學(xué)習(xí)網(wǎng)絡(luò)[11],通過(guò)對(duì)故障樣本數(shù)據(jù)進(jìn)行聚類(lèi),將其映射至多維空間不同的位置,從而實(shí)現(xiàn)對(duì)故障樣本數(shù)據(jù)的分類(lèi),其網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。SOM 神經(jīng)網(wǎng)絡(luò)由2 層神經(jīng)元構(gòu)成,即輸入層和輸出層神經(jīng)元。通過(guò)權(quán)向量,故障樣本數(shù)據(jù)經(jīng)輸入層傳輸?shù)捷敵鰧由窠?jīng)元。輸入層神經(jīng)元個(gè)數(shù)與故障樣本維數(shù)保持一致,輸出層神經(jīng)元結(jié)構(gòu)以二維形式呈現(xiàn)。
圖1 SOM 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig. 1 Structure diagram of SOM neural network
當(dāng)樣本數(shù)據(jù)輸入網(wǎng)絡(luò)模型,故障樣本輸入向量與神經(jīng)元權(quán)值向量間的歐式距離就可通過(guò)計(jì)算得出,獲勝神經(jīng)元可通過(guò)比較所計(jì)算出的歐式距離大小來(lái)確定。通過(guò)獲勝神經(jīng)元位置,可確定其鄰域范圍,依據(jù)學(xué)習(xí)率、故障樣本數(shù)據(jù)更新此范圍內(nèi)所有神經(jīng)元的權(quán)值,模型經(jīng)過(guò)不斷更新迭代,直至收斂。
步驟1SOM 神經(jīng)網(wǎng)絡(luò)初始化。隨機(jī)設(shè)定輸入層神經(jīng)元i與競(jìng)爭(zhēng)層神經(jīng)元j的初始權(quán)值wij(0),取(0,1)范圍內(nèi)較小的隨機(jī)數(shù);隨機(jī)設(shè)置學(xué)習(xí)速率η(t)的初始值η(0),取(0,1) 之間的隨機(jī)數(shù);賦值領(lǐng)域函數(shù)Rp(t)的初始值Rp(0),p為獲勝神經(jīng)元。
步驟2訓(xùn)練樣本向量輸入。首先進(jìn)行歸一化處理,并選取一組訓(xùn)練樣本k,將輸入樣本Xk=[x1k,x1k,...,xnk]T的n個(gè)分向量輸進(jìn)SOM 神經(jīng)網(wǎng)絡(luò)輸入層。
步驟3獲勝神經(jīng)元確定。計(jì)算輸入樣本Xk與權(quán)值向量wj間的歐式距離djk,其計(jì)算公式為:
其中:xik為輸入樣本Xk第i個(gè)分向量;wij(t)為t時(shí)刻輸入層神經(jīng)元i與競(jìng)爭(zhēng)層神經(jīng)元j的連接權(quán)值。比較計(jì)算出歐式距離,將與輸入樣本Xk歐式距離最小的神經(jīng)元作為獲勝神經(jīng)元。
步驟4獲勝神經(jīng)元鄰域范圍確定。獲勝神經(jīng)元領(lǐng)域范圍隨著更新次數(shù)不斷縮小。
步驟5權(quán)值更新。確定獲勝神經(jīng)元鄰域范圍后,對(duì)此范圍內(nèi)的神經(jīng)元進(jìn)行權(quán)值更新,其更新公式為:
其中:wij(t+1)為更新后的權(quán)值;i為輸入神經(jīng)元,j為競(jìng)爭(zhēng)神經(jīng)元。0<η(t)<1,η(t)隨時(shí)間的變化而減小,直至減為0。
步驟6競(jìng)爭(zhēng)神經(jīng)ok計(jì)算式為:
其中,f(*)為0~1 的函數(shù),或其他非線性函數(shù)。
步驟7判斷SOM 神經(jīng)網(wǎng)絡(luò)是否收斂。收斂結(jié)束訓(xùn)練,未收斂則重新返回步驟2。
SOM 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)流程圖如圖2 所示。
圖2 SOM 神經(jīng)網(wǎng)絡(luò)算法流程圖Fig. 2 Flow chart of SOM neural network algorithm
BP 神經(jīng)網(wǎng)絡(luò)是一種前饋網(wǎng)絡(luò),其結(jié)構(gòu)如圖3 所示,由輸入層、隱含層和輸出層構(gòu)成。該網(wǎng)絡(luò)的主要特點(diǎn)是各層神經(jīng)元僅與相鄰層神經(jīng)元之間相互全連接,同層內(nèi)神經(jīng)元之間無(wú)連接,各層神經(jīng)元之間無(wú)反饋連接。
圖3 BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig. 3 Structure diagram of BP neural network
圖中,[x1,x2...,xn]為網(wǎng)絡(luò)輸入值,[y1,y2...,ym]為網(wǎng)絡(luò)輸出值。wij、wjk為網(wǎng)絡(luò)權(quán)值。BP 神經(jīng)網(wǎng)絡(luò)可以被視為一個(gè)非線性函數(shù),[x1,x2...,xn]為該非線性函數(shù)的自變量,[y1,y2...,ym]為該非線性函數(shù)的因變量。
步驟1網(wǎng)絡(luò)初始化。確定BP 神經(jīng)網(wǎng)絡(luò)輸入節(jié)點(diǎn)數(shù)n,隱含層節(jié)點(diǎn)數(shù)l,輸出節(jié)點(diǎn)數(shù)m。初始化權(quán)值wij、wjk。初始化隱含層閾值a,輸出層閾值b,確定學(xué)習(xí)速率和激活函數(shù)。
步驟2隱含層輸出計(jì)算:
其中:Hj為隱含層輸出值;為隱含層激勵(lì)函數(shù)。
步驟3神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)輸出計(jì)算:
步驟4網(wǎng)絡(luò)預(yù)測(cè)誤差計(jì)算:
步驟5更新網(wǎng)絡(luò)權(quán)值:
其中, η為學(xué)習(xí)速率。
步驟6更新閾值:
步驟7判斷是否達(dá)到終止條件。判斷誤差是否在允許范圍內(nèi),如果滿足要求,則結(jié)束訓(xùn)練,否則返回步驟2。
BP 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)流程圖如圖4 所示。
圖4 BP 神經(jīng)網(wǎng)絡(luò)算法流程圖Fig. 4 Flow chart of BP neural network algorithm
BP 神經(jīng)網(wǎng)絡(luò)具有自學(xué)習(xí)、非線性映射能力,但需進(jìn)行大量的故障樣本數(shù)據(jù)訓(xùn)練,會(huì)導(dǎo)致網(wǎng)絡(luò)訓(xùn)練時(shí)間較長(zhǎng),實(shí)時(shí)性較差。SOM 神經(jīng)網(wǎng)絡(luò)能夠?qū)?shù)據(jù)進(jìn)行聚類(lèi),無(wú)需大量樣本數(shù)據(jù)和人工干預(yù),實(shí)時(shí)性強(qiáng),但SOM 神經(jīng)網(wǎng)絡(luò)分類(lèi)的準(zhǔn)確性依賴(lài)于采集故障樣本數(shù)據(jù)的完整性以及數(shù)據(jù)量的多少??紤]到單一網(wǎng)絡(luò)在故障診斷中的局限性,將二者進(jìn)行融合,構(gòu)建SOM-BP 組合神經(jīng)網(wǎng)絡(luò)。
SOM-BP 組合神經(jīng)網(wǎng)絡(luò)融合有串聯(lián)、并聯(lián)2 種方式。結(jié)合二者在故障診斷中各自?xún)?yōu)缺點(diǎn),本文將二者串聯(lián)來(lái)實(shí)現(xiàn)故障診斷。將SOM 網(wǎng)絡(luò)作為第一級(jí)網(wǎng)絡(luò),將輸入樣本進(jìn)行自聚類(lèi),目的是減輕BP 網(wǎng)絡(luò)識(shí)別壓力,降低識(shí)別難度。將BP 網(wǎng)絡(luò)作為第二級(jí)網(wǎng)絡(luò),對(duì)故障樣本進(jìn)行有導(dǎo)師學(xué)習(xí),圖5 為SOM-BP 組合網(wǎng)絡(luò)結(jié)構(gòu)圖。
圖5 SOM-BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig. 5 Structure diagram of SOM-BP neural network
圖6 SOM-BP 神經(jīng)網(wǎng)絡(luò)算法流程圖Fig. 6 Flow chart of SOM-BP neural network algorithm
步驟1樣本數(shù)據(jù)預(yù)處理,選取故障樣本數(shù)據(jù),進(jìn)行歸一化處理。
步驟2初始化SOM 神經(jīng)網(wǎng)絡(luò),輸入故障樣本數(shù)據(jù),經(jīng)過(guò)模型訓(xùn)練,得到初步聚類(lèi)結(jié)果。
步驟3將SOM 神經(jīng)網(wǎng)絡(luò)競(jìng)爭(zhēng)層輸出的結(jié)果進(jìn)行歸一化處理。
步驟4初始化BP 神經(jīng)網(wǎng)絡(luò),將歸一化后的結(jié)果輸入到BP 網(wǎng)絡(luò)中再次進(jìn)行訓(xùn)練。
步驟5進(jìn)行多次訓(xùn)練,形成SOM-BP 神經(jīng)網(wǎng)絡(luò)分類(lèi)模型。
步驟6判斷模型是否達(dá)到收斂條件。如果達(dá)到收斂條件,則終止訓(xùn)練。如果未達(dá)到收斂條件,則返回步驟4。
根據(jù)船舶柴油機(jī)壓力波形曲線,提取8 種故障特征(P1~P8),匯集船舶柴油機(jī)8 種故障類(lèi)型(T1~T8)數(shù)據(jù),形成訓(xùn)練集和測(cè)試集,如表1 和表2 所示,SOM-BP 網(wǎng)絡(luò)期望輸出如表3 所示。
表1 SOM-BP 神經(jīng)網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù)集Tab. 1 Training data of SOM-BP neural network
表2 SOM-BP 神經(jīng)網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù)集Tab. 2 Testing data of SOM-BP neural network
表3 SOM-BP 神經(jīng)網(wǎng)絡(luò)期望輸出Tab. 3 Desired output of SOM-BP neural network
將初級(jí)神經(jīng)網(wǎng)絡(luò)即SOM 神經(jīng)網(wǎng)絡(luò)輸入神經(jīng)元個(gè)數(shù)設(shè)置為8,對(duì)應(yīng)8 種船舶柴油機(jī)故障類(lèi)型。競(jìng)爭(zhēng)層網(wǎng)絡(luò)選用6×6 結(jié)構(gòu),采用六角形拓?fù)浣Y(jié)構(gòu),如圖7 為SOM 神經(jīng)網(wǎng)絡(luò)競(jìng)爭(zhēng)層36 個(gè)神經(jīng)元網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。
圖7 SOM 神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)Fig. 7 SOM neural network topology
故障樣本數(shù)據(jù)經(jīng)過(guò)SOM 神經(jīng)網(wǎng)絡(luò)處理之后,鄰近神經(jīng)元之間的距離如圖8 所示,神經(jīng)元分類(lèi)情況如圖9所示,聚類(lèi)結(jié)果如表4 所示。
表4 SOM 神經(jīng)網(wǎng)絡(luò)聚類(lèi)結(jié)果Tab. 4 Cluster result of SOM neural network
圖8 SOM 神經(jīng)網(wǎng)絡(luò)鄰近神經(jīng)元距離Fig. 8 SOM neighbor weight distances
圖9 SOM 神經(jīng)網(wǎng)絡(luò)分類(lèi)情況Fig. 9 SOM neural network classification
將表4 歸一化結(jié)果輸入到BP 神經(jīng)網(wǎng)絡(luò)中,BP 神經(jīng)網(wǎng)絡(luò)采用3 層結(jié)構(gòu)。經(jīng)過(guò)多次試驗(yàn),隱含層神經(jīng)元個(gè)數(shù)取13,傳遞函數(shù)采用S 型正切函數(shù);輸出層神經(jīng)元個(gè)數(shù)設(shè)置為8,對(duì)應(yīng)8 種故障類(lèi)型,傳遞函數(shù)采用S 型對(duì)數(shù)函數(shù)。
當(dāng)BP 神經(jīng)網(wǎng)絡(luò)模型達(dá)到收斂條件時(shí),終止訓(xùn)練。輸入表2 故障樣本數(shù)據(jù)進(jìn)行檢測(cè),診斷該故障樣本數(shù)據(jù)為T(mén)1類(lèi)型故障,故障診斷類(lèi)型與實(shí)際故障類(lèi)型一致。此外,SOM-BP 神經(jīng)網(wǎng)絡(luò)在模型訓(xùn)練階段不依賴(lài)于大量樣本,網(wǎng)絡(luò)穩(wěn)定性較好,收斂速度也很快,達(dá)到了預(yù)期效果。
1)基于SOM 神經(jīng)網(wǎng)絡(luò)和BP 神經(jīng)網(wǎng)絡(luò)理論基礎(chǔ),構(gòu)建SOM-BP 神經(jīng)網(wǎng)絡(luò)模型,用于船舶柴油機(jī)故障診斷,通過(guò)仿真試驗(yàn)驗(yàn)證SOM-BP 神經(jīng)網(wǎng)絡(luò)在船舶柴油機(jī)故障診斷中的正確性和準(zhǔn)確性。
2)避免了單一神經(jīng)網(wǎng)絡(luò)模型在復(fù)雜系統(tǒng)故障診斷中的局限性,復(fù)雜系統(tǒng)故障診斷提供理論依據(jù)。