劉奧 牛志剛 張東光 朱曉鵬 王壯
(太原理工大學,太原 030024)
質子交換膜燃料電池(Proton Exchange Membrane Fuel Cell,PEMFC)系統在新能源汽車發展中具有廣闊的應用前景。目前,燃料電池的可靠性和壽命是PEMFC 系統大規模商用面臨的主要難點之一[1-3]。
PEMFC故障診斷系統的主要功能是檢測系統運行中產生的故障,提高系統的運行穩定性和使用壽命[4]。目前,相關研究可分為基于模型的故障診斷和基于數據驅動的故障診斷2 類。基于模型的故障診斷通過建立PEMFC 仿真模型,計算模型輸出與實際輸出之間的參數偏差,分析殘差實現故障檢測[5],包括使用等效電路模型的流阻檢測[6]、利用壓力降模型的故障診斷[7]、基于線性變參數(Linear Parameter Varying,LPV)模型的非線性動力學仿真[8]和針對膜電極失效的相關研究[9]等。此類診斷方法的難點在于保證模型相對于試驗電堆的準確率,由于系統內部數據獲取困難,燃料電池系統間存在個體偏差,難以建立準確、具有普遍性的故障診斷模型。基于數據驅動的故障診斷通過算法分析數據建立模型實現故障診斷,快速高效,且無需燃料電池專業知識,具有廣闊的研究前景。相關研究包括使用在線序列極限學習機(Online Sequential Extreme Learning Machine,OS-ELM)的故障診斷方法[10]、利用電化學阻抗譜(Electrochemical Impedance Spectroscopy,EIS)的支持向量機(Support Vector Machine,SVM)模式識別[2]、基于小波變換(Wavelet Transform,WT)和奇異值分解(Singular Value Decomposition,SVD)的信號處理方法[11]等。此外,該方法還包括在線診斷的實現,如基于K均值(K-Means)和SVM的在線自適應故障診斷[12]。
以上研究仍存在待解決的問題:SVM 受Mercer 條件限制,收斂慢;神經網絡復雜度高,對樣本、算力需求大,存在過擬合、局部極小值等問題;主成分分析(Prin?cipal Component Analysis,PCA)降維時面對復雜特征聚類準確率較低;增量學習算法的引入研究僅探討了算法本身的可行性,未考慮診斷模型更新的實現。
針對以上問題,本文提出基于在線序列極限學習機和無監督極限學習機(Unsupervised Extreme Learn?ing Machines,US-ELM)的燃料電池在線故障診斷方法,引入US-ELM 得到反映燃料電池系統運行狀態的特征向量,使用OS-ELM 對特征向量進行分類,在數據獲取方面,采用K-Means 聚類區分正常與故障狀態的數據,并使用包含3 種不同狀態的樣本對方法的有效性進行驗證。
蒸發冷卻(Evaporatively Cooled,EC)型燃料電池系統是由英國智能能源公司針對高容量、低成本的工業需求設計的PEMFC。其100 kW EC型PEMFC電堆可提供3.5 kW/L 及3.0 W/kg 的功率密度,EC 技術利用蒸發冷卻替代傳統的冷卻液循環,無需設置冷卻水流道,降低了系統的復雜性、質量和生產成本。系統原理如圖1所示,系統并聯了2 臺PEMFC 電堆,分別由300 片單電池組成,空氣和氫氣分別輸入到電池的陰極和陽極,液態冷卻水輸入到電堆,部分蒸發形成液體/蒸汽混合物并從電堆中帶走熱量,為保持系統水量平衡,熱交換器會將電堆排出的蒸汽冷凝,將水收集并送回水箱。

圖1 EC型燃料電池系統原理
2.2.1 極限學習機
極限學習機(Extreme Learning Machine,ELM)[13]是基于廣義逆矩陣的新型單隱層前饋神經網絡,該網絡由輸入層、隱含層和輸出層構成,原理如圖2所示。

圖2 ELM網絡結構示意
設數據集為?={(xi,ti)|xi∈Rn,ti∈Rm,i=1,…,N},隱含層神經元數量為,隱含層激勵函數為g(x)。數據集輸入樣本可表達為xi=(xi1,xi2,…,xin)T∈Rn,輸出目標可表述為ti=(ti1,ti2,…,tim)T∈Rm。ELM的輸出矩陣O為:

其中,oj為隱含層神經網絡節點:

式中,Wi=(wi1,wi2,…,wim)T為輸入權重,即第i個隱含層節點與輸入層間的連接權重矩陣;βi=(βi1,βi2,…,βim)T為輸出權重,即輸出層與第i個隱含層間的連接權重矩陣;bi=(bi1,bi2,…,bim)T為第i個隱含層的偏置矩陣。
ELM 的學習目標是使輸出誤差盡量接近于零,可表述為:

若隱含層神經元數量與訓練集樣本數量相等,ELM對任意隱含層輸入權重和偏置均能實現零誤差逼近。然而,實際操作中訓練樣本數量常大于隱含層節點數量,訓練誤差可逼近任意ε>0。
結合式(1),學習目標可表述為矩陣形式:

式中,T為期望輸出;β為輸出權重矩陣;H為極限學習機隱含層輸出矩陣:


式中,H?=(HTH)-1HT為H的穆爾-彭羅斯(Moore-Penrose)廣義逆矩陣[10],該解范數唯一且最小。
2.2.1.1 無監督極限學習機
US-ELM利用了ELM的逼近能力,通過非線性映射將原數據投影到低維空間,利用高斯函數描述近鄰樣本間的相似度,并得到顯式的非線性映射函數[14]。US-ELM 繼承了ELM 的計算效率和學習能力,可用于多分類或多聚類,在精度和效率方面都滿足使用需求,在降維任務中,設訓練數據為X∈RN×ni,其輸出目標為n維空間中的嵌入矩陣E∈RN×n0(ni為訓練數據維度,n0為嵌入矩陣維度)。運算流程如下[15]:
a.基于原始數據X,構建拉普拉斯(Laplacian)參數L。
b.利用隨機輸入權值構建隱含層神經元數量為nh的ELM 網絡,并計算隱含層神經元H∈RN×nh的輸出矩陣。
c.US-ELM目標函數為:

通過將β作為矩陣給出式(7)的最優解,該求解過程可替換為廣義特征值問題的求解,根據nh與N關系式(7)進行如下替換:
若nh≤N,式(7)可替換為(Inh+λHTLH)νs=γsHTHνs,s=1,2,…,n0+1,γs(γ1≤γ2≤…≤γn0+1)為最小特征值,對應特征向量vs,使,其中,i=2,…,n0+1為歸一化特征向量;
若nh>N,式(7)可替換為(Inh+λLHHT)us=γsHHus,s=1,2,…,n0+1,γs(γ1≤γ2≤…≤γn0+1)為最小特征值,對應特征向量us,使,其中,…,n0+1為歸一化特征向量。
d.計算嵌入矩陣E=Hβ。
2.2.1.2 在線序列極限學習機
當樣本數據分批次加入時,傳統ELM 需要重新訓練模型。為適應增量學習需求,Liang 等在ELM 的基礎上提出了OS-ELM 算法[16]。OS-ELM 的學習過程分為初始和在線學習2 個階段,先通過少量樣本得到OS-ELM 的初始輸出權重β0,再利用新樣本/數據塊更新β0。
2.2.1.2.1 初始階段
設有N0個訓練樣本?0={(xi,ti)|xi∈Rn,ti∈Rm,i=1,…,N0},其中N0≥。運算流程如下:
a.產生隨機的輸入權重矩陣wi和偏置矩陣bi,其中i=1,2,…,。
b.計算初始隱含層輸出矩陣H0。
c.計算初始輸出權重矩陣β0:

d.令數據塊(Block)序號為k=0,初始化階段完成。
2.2.1.2.2 在線學習階段
在線學習階段每次投入樣本為1 個Block,每個Block包含若干樣本(xi,ti)。設 第(k+1)個Block的樣本,在Block 中的樣本數大于1 時,運算流程如下:
a.計算隱含層輸出矩陣Hk+1。
b.計算輸出權重矩陣βk+1:

c.令k自加1,重復在線學習階段,直至完成全部學習。
2.2.2 K-Means聚類算法
K-Means 是一種基于距離的經典聚類算法,因其快速、簡單而得到廣泛使用。設數據集X=[xi],xi∈Rd,i=1,2,…,k,其中k為樣本數量,d為樣本維數,樣本的類別空間a=[aj],aj∈Rm,j=1,2,…,l,其中l為類別數量。樣本點距離度量采用歐氏距離:

聚類中心為:

式中,kj為屬于第j類的樣本數量。
K-Means的目標是使簇內樣本距離最小,簇間樣本距離最大化,其目標函數為:

算法迭代的時間復雜度為O(tldk),空間復雜度為O((k+c)d),其中t為迭代次數,一般t、c均不大于n[12]。
現有的大部分基于數據驅動的診斷方法中,訓練好的診斷模型不再做進一步調整,當故障出現新的特征時,只能重新訓練模型,雖然有文獻探討了增量學習在故障診斷領域的應用,但在故障特征提取等方面并沒有考慮新數據的獲取過程。
為解決增量學習過程中的樣本獲取問題,本文提出使用US-ELM 和K-Means 構建基于OS-ELM 的在線故障診斷方法,利用OS-ELM的增量學習能力構建診斷模型,US-ELM實現基于流形正則的降維并輸出顯式的降維函數。由于數據采集和舊模型的分類往往無法標記全部數據,故引入K-Means 聚類算法,利用不同狀態數據聚類準確率較高的特點,在進行少量人工標記的情況下達到批量區分標記新數據的目的。圖3 所示為使用該方法進行燃料電池系統故障診斷的流程。

圖3 在線診斷模型流程
在系統流程中,預處理步驟包含在US-ELM算法程序內,K-Means 聚類用于輔助新樣本的數據劃分,根據研究經驗,US-ELM 降維后數據的聚類效果明顯,故利用聚類輔助區分,根據診斷系統的部分預標記對各聚類區塊進行標記。另外,在整個流程中,初始的在線診斷模型由OS-ELM初始模型提供,之后均由在線OS-ELM模型提供,該在線OS-ELM模型即為在線學習階段通過新樣本更新的OS-ELM初始模型。
為驗證本文提出的方法,利用正常狀態、膜干故障和陽極缺氣故障共3 種狀態的數據驗證算法的診斷效果。由蒸發冷卻型PEMFC 獲得的原始數據共有約182 130 組,其中正常狀態(Normal)171 020 組,陽極缺氣故障(F1)2 604組,膜干故障(F2)8 506組,2種故障對電堆的影響如下:
a.膜干故障。質子交換膜為保持良好的離子導電性,運行狀態下需要與水接觸以保持較高的相對濕度,否則產生膜干故障會導致膜的歐姆阻抗變化[17],極大地影響質子傳導率,引起歐姆過電勢增加和電池輸出電壓下降,嚴重時會導致電堆內部溫度過高,縮短PEMFC使用壽命。
b.陽極缺氣故障。陽極缺氣會導致電堆無法獲得足夠的氫氣供應,在負載電流下表現為工作電壓逐漸下降。嚴重時,電池電壓降至0 后會發生“反極”現象,電池陽極析出氧氣,大幅降低電堆的電壓。極端條件下,氫氧混合可能會在陰極催化劑上反應發生燃燒,造成燃料電池系統內部爆炸。
考慮機器學習的數據均衡,本實例對每種狀態各采樣400組數據,從中隨機抽取形成訓練集、測試集,采樣結果數據集各包含樣本600組,每個數據集包含3種狀態數據各200組,數據的具體參數如表1所示。

表1 電堆參數
為提高聚類和模式識別的效率及準確率,選用US-ELM 對歸一化數據進行降維。US-ELM 降維基于流形正則思想,利用ELM 的逼近能力將高維樣本通過非線性映射投影至低維空間,并能夠得到顯式的映射函數[14]。在保證降維數據各維度的相關性盡量最小的同時,通過將高維數據合理展開至低維空間,可大幅簡化模型復雜度。
由表1 可知,每組原始數據為1 個20 維特征向量X=(x1,x2,…,x20),對樣本進行歸一化處理,將向量中各變量歸一化至[-1,1]區間,在保留數據特征的同時減少了量綱差異所帶來的問題。
由于非線性降維的參數選取缺乏統一的評判指標,本文以US-ELM 在不同參數下的聚類準確率作為衡量標準,對比并最終確定特征提取的參數設置如下:拉普拉斯算子采用基于距離的權重,距離度量采用歐氏距離函數,算子歸一化參數為0,迭代階數為1 階,近鄰數量為5個,超參數設定嵌入層數為5層,隱含層神經元數量默認為2 000 個,歸一化輸入、輸出均為1,核函數使用Sigmoid函數。降維后部分樣本數據如表2所示。

表2 US-ELM降維后的部分訓練樣本和測試樣本
OS-ELM初始階段,算法參數包括初始訓練數據量N0=200 組,隱含層神經元數量L=5 個(考慮預處理后數據維度),激活函數使用Sigmoid函數。該階段對應OSELM 的初始模型生成。在系統流程中,該步驟生成的模型即可用作最初的在線診斷模型,對后續試驗中獲得的數據進行故障識別及標記。
該步驟用于標記經預處理的原始數據,此時數據缺少狀態標簽(正常或故障),需對新數據進行聚類和標記。使用K-Means算法,基于診斷模型的結果和少量人工標記,即可實現快速分類獲得不同狀態的數據,形成新的訓練集,配合增量算法實現診斷模型的更新。
為更好地驗證聚類結果,將試驗樣本合并后進行K-Means 聚類分析,可視化結果如圖4 所示,經降維后數據的聚類準確率達95.75%,較原始樣本提升約12.5%,其中正常狀態數據的聚類準確率達到100%,可達到快速有效分離各狀態數據的目的。

圖4 K-Means的聚類結果
在聚類過程中,存在少量樣本標記錯誤的情況,由于診斷模型的更新在原模型基礎上產生,新樣本數量遠少于模型累計訓練樣本的數量,因此這類錯誤并不會影響更新后新模型的診斷準確率。
OS-ELM 在線學習階段,隱含層神經元數量L=5個(考慮預處理后數據維度),激活函數使用Sigmoid函數,以上參數需與初始階段保持一致。數據塊為40組,表示未訓練樣本將以40組為1個數據塊投入模型模擬增量學習過程,在初始階段的基礎上對模型進行更新。試驗結果的分布如圖5所示,OS-ELM的運算用時為0.187 5 s,訓練樣本分類準確率為93.17%,測試樣本分類準確率為92.00%,其中正常狀態的分類準確率達100%。

圖5 US-ELM-OS-ELM的分類結果
基于US-ELM-OS-ELM 的燃料電池系統診斷結果如表3 所示。由表3 可以看出,US-ELM-OS-ELM 的準確率均達到90%以上,整體準確率為92%,分類診斷效果較好。

表3 基于US-ELM-OS-ELM的燃料電池系統診斷結果
試驗結果驗證了US-ELM-OS-ELM 構建模型的故障診斷能力,此外,結果較PCA-OS-ELM得到的同維數樣本準確率提高約6.97%,且達到相近準確率所用的L數值更小,說明US-ELM用于特征提取在改善K-Means聚類效果的同時,對模型復雜度的降低能力更好。
試驗驗證了使用US-ELM 和K-Means 建立以OSELM為核心的在線學習診斷模型的可行性。由于試驗的主要目的為檢驗聚類輔助數據標記的可行性和算法的在線學習能力,樣本偏重表現數據特征的復雜度,導致在樣本總量有限的情況下部分特征獨立出現,對分類準確率產生了較大影響,OS-ELM的分類準確率略低于預期。本文認為隨著增量學習的進一步深入,該影響會隨著訓練數據的增加得到改善,OS-ELM 相關文獻[10]表明,在各特征樣本數量充足的情況下,OS-ELM 準確率、召回度均可達98%以上,且性能優于SVM、反向傳播(Back Propagation,BP)等同類算法。
本文利用蒸發冷卻型燃料電池系統數據進行了故障診斷研究,提出了在OS-ELM基礎上使用US-ELM和K-Means 構建的在線診斷方法,并在試驗中實現了對3種運行狀態的識別。該方法具有以下優點:
a.US-ELM 實現了非線性的故障特征提取,在樣本可視化、聚類及故障診斷等方面均表現了較好的處理結果,提高了聚類結果的準確率并降低了模型復雜度。
b.K-Means 聚類的使用實現了新數據的快速區分,在診斷模型給出結果的基礎上能夠對大部分數據進行正確分類,擴展了增量學習中舊模型的數據區分范圍,降低了增量學習過程中數據標記的困難程度。
c.OS-ELM 作為基于機器學習的診斷方法,在樣本數量較少的情況下獲得較為可靠的診斷模型,通過增量學習能夠不斷更新診斷模型并提高診斷性能,具備較高的實用性,并可擴展應用到類似的模式識別問題中。