盧佳音 徐飛翔 林葉錦
(大連海事大學輪機工程學院 遼寧 大連 116026)
船舶柴油機安全可靠地運行對船舶的運行和船員人身安全至關重要,故障診斷技術作為智能運維技術的有機組成部分而受到廣泛關注。目前基于數(shù)據(jù)驅(qū)動的故障診斷方法在故障診斷領域得到廣泛的應用,常用的有支持向量機、BP神經(jīng)網(wǎng)絡和深度信念網(wǎng)絡等,極限學習機(Extreme Learning Machine,ELM)作為一種前饋單隱層神經(jīng)網(wǎng)絡最早由Huang等[1]提出,因其參數(shù)設置簡單,不需要進行迭代更新,受到廣泛應用。但是,單層的網(wǎng)絡結(jié)構不能很好地對數(shù)據(jù)特征進行提取,因此,文獻[2]提出了多層極限學習機(Multilayer Extreme Learning Machine,M-ELM),M-ELM僅僅是將極限學習機進行簡單的堆疊,文獻[3]將M-ELM用于航空發(fā)動機部件的故障診斷,取得良好效果,但其僅采用單核函數(shù)。文獻[4]在稀疏極限學習機自動編碼器的基礎上,提出了一種新的深度極限學習機(Hierarchical Extreme Learning Machine,H-ELM),文獻[5]提出了多維特征提取的H-ELM并利用多核極限學習機進行最終分類,診斷效果雖然提高,但是隱含層的節(jié)點數(shù)量太多,占用計算資源較多,復雜度也有較大提高,而且多核函數(shù)的核參數(shù)選取較困難。
本文在改進人工生態(tài)系統(tǒng)優(yōu)化算法(IAEO)部分,首先利用Hammersley點集對個體初始化,提高了算法的尋優(yōu)能力。其次,引入經(jīng)典的非線性遞減策略和混沌序列來平衡算法的探索和開發(fā)能力。最后,引入煙花算法的爆炸操作和高斯變異,提高了算法跳出局部最優(yōu)的能力。網(wǎng)絡模型部分,先利用H-ELM對輸入數(shù)據(jù)進行逐層特征提取,然后采用混合核極限學習機對提取到的特征進行高維度映射并分類。因為混合核極限學習機中核參數(shù)、正則化系數(shù)和比例系數(shù)對分類性能影響較大,所以利用IAEO對核參數(shù)、正則化系數(shù)和比例系數(shù)進行尋優(yōu),有效克服了參數(shù)靠經(jīng)驗選取的缺點。將深度混合核極限學習機(Deep Hybrid Kernel Extreme Learning Machine,DHK-ELM)在通用數(shù)據(jù)集上與其他算法進行了對比。最后將IAEO-DHK-ELM應用到船舶柴油機故障診斷中,結(jié)果表明本文算法有較高的診斷精度和泛化能力。
人工生態(tài)優(yōu)化算法[6]是將食物鏈中的能量傳輸方式和生物在生態(tài)鏈中的位置進行數(shù)學建模而產(chǎn)生的一種新的自然啟發(fā)優(yōu)化算法。在最小化問題中,適應度值越大能量等級越高,最大適應度值的個體為生產(chǎn)者。人工生態(tài)系統(tǒng)優(yōu)化算法的數(shù)學模型如下:
1) 生產(chǎn)者算子:每次迭代時生產(chǎn)者算子利用當前最優(yōu)位置產(chǎn)生一個新的生產(chǎn)者位置。
x1(t+1)=(1-a)xn(t)+axrand(t)
(1)
a=(1-t/T)r1
(2)
xrand=r[U-L]+L
(3)
式中:n是個體個數(shù);t是當前迭代次數(shù);T是最大迭代次數(shù);r1是[0,1]之間的隨機數(shù);r是范圍在[0,1]之間的隨機向量;xrand是搜索空間中一個隨機產(chǎn)生的位置;U和L分別是解空間的上下界矩陣。
2) 消費者算子:首先提出了一個帶有Levy Flight特征的因子:
(4)
式中:N(0,1)是一個平均值為0、標準差為1的正態(tài)分布隨機數(shù)。
對消費者獲取能量的方式進行數(shù)學建模:
(1) 食草生物:
食草生物能量來源于生產(chǎn)者,數(shù)學模型為:
xi(t+1)=xi(t)+C·(xi(t)-x1(t))
i∈[2,3,…,n] (5)
(2) 食肉生物:
xi(t+1)=xi(t)+C·(xi(t)-xj(t))
i∈[3,4,…,n],j=randi([2i-1]) (6)
(3) 雜食生物:
xi(t+1)=xi(t)+C·(r2·(xi(t)-x1(t)))+
(1-r2)(xi(t)-xj(t))
i∈[3,4,…,n],j=randi([2i-1]) (7)
式中:r2是一個[0,1]的均勻隨機數(shù)。所有個體更新位置后,進行擇優(yōu)選取。
最后,利用分解者算子來對所有個體進行位置更新。
3) 分解者算子:
個體位置更新公式如下:
xi(t+1)=xn(t)+D·(e·xn(t)-h·xi(t))
i=1,2,…,n(8)
D=3u,u~N(0,1)
(9)
h=2·r3-1
(10)
(11)
式中:r3是[0,1]之間的一個均勻隨機數(shù)。
人工生態(tài)系統(tǒng)優(yōu)化算法步驟如下:
(1) 初始化個體位置xi,計算適應度fiti,記錄當前最優(yōu)解xbest。
(2) 判斷是否達到最大迭代次數(shù):若否,則繼續(xù)執(zhí)行步驟(3)到步驟(6);若是,則結(jié)束計算,返回最優(yōu)解xbest。
(3) 對于生產(chǎn)者x1根據(jù)式(1)更新位置。
(4) 對于消費者xi(i=2,3,…,n)分三種情況:
ifrand<1/3
被選為素食生物根據(jù)式(5)更新位置。
elseif 1/3≤rand≤2/3
被選為肉食生物根據(jù)式(6)更新位置。
else
被選為雜食生物,根據(jù)式(7)更新位置。
(5) 計算個體適應度,擇優(yōu)選取并更新當前最優(yōu)解xbest。
(6) 分解算子:根據(jù)式(8)對所有位置進行更新,計算適應度值,進行降序排列,適應度值越高能量等級越高。更新當前最優(yōu)解xbest,返回步驟(2)。
人工生態(tài)系統(tǒng)優(yōu)化算法中個體初始化位置隨機產(chǎn)生,容易發(fā)生初始化位置在解空間分布不均勻的情況,減小了可尋優(yōu)范圍,增大了陷入局部最優(yōu)值的可能性。Hammersley點集相較于隨機方法產(chǎn)生的個體在空間上分布更加均勻[7],因此,利用Hammersley點集進行初始化。圖1以二維為例展示了兩種方法的初始點分布情況,圖1(a)為Hammersley點集,圖1(b)為隨機法。

(a)
Hammersley點集是在Van der Corput序列的基礎上構造的一種低差異度點集。
以b為基的Van der Corput序列為:
{xn=φb(n),n∈N},N為元素個數(shù),b≥2
式中:b進制根數(shù)逆函數(shù)φb:N0→[0,1)。
(12)
包含N個點的以b1,b2,…,bd-1為底Hammersley點集為:
HN,b1,b2,…,bd-1={H0,H1,…,HN-1}
(13)
(14)
式中:n=0,1,…,N-1在搜索空間[Up,Low]D,D為空間維數(shù),Up和Low表示搜索空間的上下界,初始個體數(shù)量為N。個體的初始化位置為:
xi=Low×rand(1,D)+Hi(Up-Low)
(15)
在式(1)中a用來調(diào)整算法的探索和開發(fā),由于a是隨機產(chǎn)生,不能很好地平衡不同階段算法探索和開發(fā)能力,因此,引入在優(yōu)化算法領域經(jīng)典的非線性遞減策略,使算法前期充分進行探索,后期下降較快,加快收斂。
b=π(t/T)a=(1-sin(b/2)2)
(16)
混沌作為自然界普遍存在的一種非線性現(xiàn)象,因混沌變量具有隨機性、遍歷性和規(guī)律性的特點,被廣泛用于優(yōu)化算法的改進。本文選用Iterative混沌序列代替分解者算子中的r3來提高算法的探索性能。Iterative混沌序列的表達式如下:
(17)
因為Iterative混沌序列的范圍是[-1,1],所以需要將其歸一化到[0,1]。
為了提高算法跳出局部最優(yōu)解的能力,將煙花算法[8]中爆炸操作和高斯變異機制引入到人工生態(tài)系統(tǒng)算法中,選擇適應度最好的個體來用于對全部個體進行位置更新。根據(jù)式(18)、式(19)計算爆炸半徑Ai和產(chǎn)生的火花數(shù)目Si。
(18)
(19)
式中:fmax、fmin是目前個體中適應度的最大和最小值;A是產(chǎn)生火花的爆炸半徑常數(shù)因子;M是產(chǎn)生爆炸火花數(shù)的常數(shù)因子;ω為機器最小數(shù),避免發(fā)生除零操作。
利用式(21)和式(22)對根據(jù)式(20)來選擇的Z個維度進行操作,產(chǎn)生爆炸火花。
z=round(d·rand(0,1))
(20)
h=Ai·rand(-1,1)
(21)
(22)

為了提高個體的多樣性,隨機選擇一些個體進行高斯變異。同樣是利用式(20)選取Z個維度,根據(jù)式(23)和式(24)來產(chǎn)生高斯變異火花。
g=Gaussian(1,1)
(23)
式中:Gaussian(1,1)表示均值為1、方差為1的高斯分布。
(24)
選取四種非線性基準函數(shù)對比IAEO、AEO、MFO、GOA、SSA和PSO[6,9-12]的性能,基準函數(shù)的屬性如表1所示。實驗中所有算法的種群規(guī)模都設為30,最大迭代次數(shù)設為500,每個函數(shù)獨立運行30次,最后統(tǒng)計結(jié)果的最優(yōu)值、最差值、平均值和標準差。IAEO選用Iterative混沌序列,火花的最大和最小個數(shù)為200、10,高斯火花個數(shù)為30,MFO的r從-1到-2線性遞減,GOA的cmax=1,cmin=0.000 04,WOA中A從2遞減到0,C為分布在[0,2]的隨機數(shù),SSA中更新位置公式選擇的判定條件設為c3<0.5,PSO慣性權重從0.9到0.2線性遞減,c1=2,c2=2,實驗環(huán)境為Windows 7專業(yè)版64位操作系統(tǒng),Inter Core i7-3770 CPU @ 3.4 GHz處理器,16 GB RAM,軟件為MATLAB 2016b,實驗結(jié)果如表2所示,平均收斂曲線如圖2所示。

表1 四種非線性基準函數(shù)

表2 結(jié)果對比

(a) F1
由表2數(shù)據(jù)可知,IAEO算法在函數(shù)F1、F2、F4上的表現(xiàn)好于其他算法,具有更高的收斂精度。IAEO和AEO在F3上尋到的最優(yōu)值相同,但是IAEO的收斂速度更快。
極限學習機中輸入層與隱含層之間的權值和偏置可以隨機選取不需要進行迭代調(diào)整,具有參數(shù)設置簡單、訓練速度快的優(yōu)點,但也存在著容易過擬合、可控性和魯棒性差等缺點。之后,Huang等[13]將核函數(shù)引入到極限學習機中,利用核函數(shù)代替點積計算,可以將樣本從向量空間映射到高維特征空間,從而避免陷入“維數(shù)災難”。
極限學習機的基本知識如下:

(25)

(26)
(27)
式(25)可以寫成:
Hβ=T
(28)
β=H?T
(29)
式中:H?為Moore-Penrose廣義逆。加入正則化系數(shù)C來提高算法的穩(wěn)定性和泛化能力,則式(29)變?yōu)?
(30)
當隱含層輸出矩陣H未知時,引入核函數(shù)則有:
ΩELM=HHT
(31)
ΩELMij=h(xi)·h(xj)=K(xi,xj)
(32)
核極限學習機的輸出為:
(33)
核函數(shù)根據(jù)受測試點周圍值影響范圍的大小分為局部核函數(shù)和全局核函數(shù),局部核函數(shù)有很好的學習能力,全局核函數(shù)有很強的泛化能力[14]。常見的局部核函數(shù)有徑向基核函數(shù),全局核函數(shù)有多項式核函數(shù)和感知器核函數(shù)。將局部核函數(shù)和全局核函數(shù)進行線性組合可以很好地平衡核函數(shù)的學習能力和泛化能力。
圖3是徑向基核函數(shù)、感知器核函數(shù)和它們線性組合形成的混合核函數(shù)在測試點0.05處的曲線,其中徑向基核函數(shù)的σ分別取值0.1、0.3和0.5;感知器核函數(shù)的ν=10,c分別取值1、2和3;混合核函數(shù)的比例系數(shù)λ分別取值0.1、0.3和0.5,σ=0.5、ν=10、c=3。

(a) 徑向基核函數(shù)

圖4 深度混合核極限學習機網(wǎng)絡結(jié)構
可以看出徑向基函數(shù)在測試點附近學習能力強,但是泛化能力差,且σ越小學習能力越強。感知器核函數(shù)有很強的泛化能力,且c越大泛化能力越好。混合核函數(shù)則較好地平衡了核函數(shù)的學習能力和泛化能力。
本文采用徑向基核函數(shù)和感知器核函數(shù)線性組合形成混合核函數(shù)[14],表達式如下:
(1-λ)tanh(ν(x·xi)+c)
σ>0,0≤λ≤1 (34)
式中:第一項是徑向基核函數(shù),第二項是感知器核函數(shù),λ是比例系數(shù)。
單層極限學習機對數(shù)據(jù)特征的提取能力較差,文獻[4]提出了多層極限學習機。H-ELM是將多個稀疏極限學習機自編碼器進行堆疊形成的深層網(wǎng)絡結(jié)構,相較于其他深度神經(jīng)網(wǎng)絡,具有網(wǎng)絡參數(shù)不需要微調(diào)、訓練速度快的優(yōu)點。H-ELM最后采用ELM進行分類,在維度高的情況下運算復雜、泛化性能較差。因此,利用上文中提到的混合核極限學習機代替ELM對提取到的特征進行高維度映射并分類,這種算法稱為深度混合核極限學習機(Deep Hybrid Kernel Extreme Learning Machine,DHK-ELM)。
因在網(wǎng)絡結(jié)構確定的情況下,正則化系數(shù)C、核函數(shù)中的核參數(shù)σ、ν、c和比例系數(shù)λ對分類效果影響較大,故采用IAEO對上述參數(shù)進行尋優(yōu)。基于IAEO-DHK-ELM的分類模型的流程如圖5所示。

圖5 IAEO-DHK-ELM流程
稀疏極限學習機編碼器讓輸入等于輸出,輸出權值β即輸入數(shù)據(jù)的一種特征表示:
(35)
每層的輸出矩陣作為下一層的輸入:
Hi=g(Hi-1·β)
(36)
將DBN[15]、M-ELM、H-ELM和IAEO-DHK-ELM算法在UCI機器學習庫的標準數(shù)據(jù)集上進行對比,考慮到不同網(wǎng)絡結(jié)構的最佳隱含層數(shù)不同,DBN在2個隱含層,其他選用3個隱含層時效果最好[3]。每層的節(jié)點個數(shù)依靠經(jīng)驗選取。DBN預訓練階段的RBM訓練次數(shù)為50,微調(diào)訓練次數(shù)為500,激活函數(shù)為Sigmoid函數(shù),Diabetes和Wine的批訓練數(shù)分別設置為16和12,Wi-Fi的批訓練數(shù)設為100。IAEO初始個體設置為30,最大迭代次數(shù)為20,其他參數(shù)與前文相同。除IAEO-DHK-ELM外每個算法獨立運行30次,結(jié)果取平均值,表3為數(shù)據(jù)集屬性。

表3 標準數(shù)據(jù)集屬性
從表4看出在Diabetes數(shù)據(jù)集上M-ELM與H-ELM表現(xiàn)差不多,IAEO-DHK-ELM的表現(xiàn)最好,DBN次之,在Wine數(shù)據(jù)集上四種算法都達到了較高的分類準確度,其中IAEO-DHKELM表現(xiàn)最好,M-ELM的表現(xiàn)次之,H-ELM的表現(xiàn)最差。

表4 標準數(shù)據(jù)集測試結(jié)果
利用船舶柴油機實物進行故障模擬,成本較高,對機器具有一定的破壞性。因此,本文利用AVL BOOST軟件建立燃油模式下的MAN &B W 8L51/60DF船舶柴油機模型進行故障模擬。
MAN &B W 8L51/60DF船舶柴油機的主要參數(shù)如表5所示。

表5 柴油機集參數(shù)
柴油機仿真模型如圖6所示,其中:SB1、SB2為系統(tǒng)邊界;TC1為廢氣渦輪增壓器;CO1為空冷器;PL1、PL2分別為進排氣總管;C1-C8為氣缸;MP1-MP3為測量點;J1-J16為連接點;E1為發(fā)動機;其他連線為管道。

圖6 柴油機仿真模型
模型驗證:將燃油模式額定工況下船舶柴油機仿真模型的主要參數(shù)值與臺架實驗數(shù)據(jù)進行比較如表6所示。

表6 性能參數(shù)對比
可以看出船舶柴油機仿真模型的運行參數(shù)值與臺架實驗的參數(shù)值誤差在4%以內(nèi),滿足一定的精度要求,可以將其用于故障模擬。
本文共選取五種狀態(tài)進行模擬:正常(F1)、噴油提前(F2)、噴油滯后(F3)、壓氣機效率下降(F4)和空冷器效率下降(F5)。運行50個循環(huán),每種狀態(tài)得到50組數(shù)據(jù),共250組數(shù)據(jù)。隨機選取200組數(shù)據(jù)組成訓練集,50組數(shù)據(jù)組成測試集。采集的有柴油機功率、平均有效壓力、最高爆發(fā)壓力、耗油率、增壓器出口壓力、增壓器出口溫度、空冷器出口壓力、空冷器出口溫度、排氣總管壓力、排氣總管溫度、渦輪后排氣溫度和壓力升高率共12個熱工參數(shù),對故障數(shù)據(jù)進行歸一化處理,采用-1、1對狀態(tài)標簽進行多維編碼。
算法參數(shù)設置:DBN預訓練階段的RBM訓練次數(shù)為50,微調(diào)訓練次數(shù)為500,將批訓練數(shù)設為10,激活函數(shù)為Sigmoid函數(shù)。IAEO初始個體數(shù)為30,最大迭代次數(shù)為20,其他參數(shù)與前文相同,每個算法運行一次。仿真模型關鍵參數(shù)運行曲線如圖7所示。

(a) 柴油機扭矩曲線
從表7看出IAEO-DHK-ELM在訓練數(shù)據(jù)集和故障數(shù)據(jù)上都表現(xiàn)出較好的分類準確度。混合核函數(shù)的高維映射能力使其具有更強的分類能力和泛化性能,利用IAEO進行參數(shù)尋優(yōu)較好地克服了依靠經(jīng)驗選取參數(shù)的缺點,縮短了模型調(diào)試的時間。

表7 故障數(shù)診斷結(jié)果
圖8是各個算法在測試集上的診斷結(jié)果的混淆矩陣。四種算法都能準確地識別正常(F1)和噴油提前(F2),主要是因為噴油提前會造成氣缸內(nèi)最大爆發(fā)壓力和最大壓力升高率顯著升高,特征明顯易于識別。在噴油滯后(F3)和壓氣機效率下降(F4)間容易識別錯誤,原因是兩種故障類型在功率下降、耗油率增加和排溫升高等熱工參數(shù)變化趨勢相似。其中IAEO-DHK-ELM在F3和F4的識別上效果最好,核函數(shù)的高維映射能力提高了識別正確率。

(a) DBN算法
本文利用Hammersley點集初始化個體位置,使個體具有較好的多樣性和空間分布特性,非線性遞減策略和混沌序列的引入改善了AEO的尋優(yōu)能力,爆炸操作和高斯變異使分解算子能利用一個較優(yōu)解來進行位置更新,使IAEO具有較強跳出局部最優(yōu)的能力。在充分利用H-ELM對數(shù)據(jù)進行特征提取的基礎上,利用混合核極限學習機對提取到的特征進行高維映射和分類,提高了模型分類準確度和泛化能力。但是,船舶柴油機仿真模型的限制導致可模擬的故障類型較少,以后可以對模型進行改進使其能夠模擬更多的故障類型。另外,雖然利用IAEO來優(yōu)化診斷模型的參數(shù)使網(wǎng)絡的參數(shù)選取容易,但是訓練時間也有所增加。