郭 金 玉, 王 霞, 李 元
( 沈陽化工大學(xué) 信息工程學(xué)院, 遼寧 沈陽 110142 )
由于現(xiàn)代工業(yè)設(shè)備的復(fù)雜性不斷增加,工業(yè)過程的各個子系統(tǒng)之間聯(lián)系緊密,任何一個單元發(fā)生故障都會影響生產(chǎn)過程的穩(wěn)定運(yùn)行和最終的產(chǎn)品質(zhì)量[1-2]。目前大量的過程數(shù)據(jù)已經(jīng)可以實時訪問,過程監(jiān)控可以成功檢測異常操作行為、提高故障檢測精度和減少誤報。通過利用歷史過程數(shù)據(jù),基于數(shù)據(jù)驅(qū)動的故障診斷方法[3]為監(jiān)控過程系統(tǒng)的穩(wěn)定運(yùn)行提供了強(qiáng)大的工具。
近幾年,以數(shù)據(jù)驅(qū)動為基礎(chǔ)的統(tǒng)計過程監(jiān)測方法被應(yīng)用于各種工業(yè)過程領(lǐng)域[4-8]。其中多元統(tǒng)計過程控制(multivariate statistical process control,MSPC)是對過程數(shù)據(jù)進(jìn)行降維處理。傳統(tǒng)的降維方法有基于高斯分布假設(shè)的主元分析(principal component analysis,PCA)以及基于非高斯分布的獨(dú)立元分析(independent component analysis,ICA)。Kresta等[9]關(guān)于非線性數(shù)據(jù)的降維處理證明了核主元分析(kernel principal component analysis,KPCA)的有效性。主元分析不可避免地存在局限性,因為PCA關(guān)于數(shù)據(jù)分布的假設(shè)不適用于實際的工業(yè)過程?;谶@樣的假設(shè),PCA提取的變量符合高斯分布,而許多實際工業(yè)過程中PCA提取的變量很少符合高斯分布。為了彌補(bǔ)PCA的不足,Kano等[10]提出ICA算法并應(yīng)用于非高斯過程的故障檢測,其性能優(yōu)于一些在高斯分布假設(shè)下的故障檢測算法。隨著過程監(jiān)控設(shè)備的完善,大多數(shù)過程并非是單模態(tài)的,而是具有較強(qiáng)的時間相關(guān)性。為了打破傳統(tǒng)建模的局限,Vanhatalo等[11]將動態(tài)主元分析(dynamic principal component analysis,DPCA)用于統(tǒng)計過程監(jiān)控,充分證明了該算法能夠有效提取過程數(shù)據(jù)的動態(tài)特征,從而實現(xiàn)較好的檢測效果。Lee等[12]提出基于動態(tài)獨(dú)立元分析(dynamic independent component analysis,DICA)的統(tǒng)計過程監(jiān)控。該方法構(gòu)造帶有時滯變量的增廣矩陣,建立ICA模型,其目的是從自相關(guān)和交叉相關(guān)變量中提取統(tǒng)計上獨(dú)立的分量,捕捉主要的動態(tài)特征,在動態(tài)過程監(jiān)控中達(dá)到較好的檢測效果。張成等[13]致力于對微小故障的研究,針對非線性動態(tài)過程中的微小故障,提出基于加權(quán)統(tǒng)計特征KICA的故障檢測與診斷方法。李元等[14]提出一種動態(tài)局部鄰域主多項式分析的故障檢測方法,該方法對復(fù)雜的工業(yè)過程中出現(xiàn)的多模態(tài)以及動態(tài)時序問題給出了有效解決方法。Said等[15]提出一種改進(jìn)的動態(tài)優(yōu)化核偏最小二乘法,該方法應(yīng)用于監(jiān)控時變動態(tài)系統(tǒng),不僅能夠最小化計算成本和時間,并且還能選擇簡化的核函數(shù)集。
為了提取數(shù)據(jù)的局部結(jié)構(gòu)信息,Hu等[16]驗證了局部保持投影(locality preserving projections,LPP)算法在故障檢測中的有效性。LPP只利用給定數(shù)據(jù)集的鄰域幾何流形,并傾向于將數(shù)據(jù)點(diǎn)投影到一個小區(qū)域,因此投影到低維子空間的數(shù)據(jù)集的外部形狀可能會被破壞。在此基礎(chǔ)上,大多數(shù)研究人員開始致力于監(jiān)控過程數(shù)據(jù)的局部和全局結(jié)構(gòu)信息。Zhang等[17]提出一種用于故障檢測的全局-局部結(jié)構(gòu)分析(global-local structure analysis,GLSA)模型,能夠獲得較多的局部與全局結(jié)構(gòu)信息,因此該模型在故障檢測領(lǐng)域中具有一定的優(yōu)勢。Tong等[18]對多流形投影算法(multi-manifold projections,MMP)在故障檢測中發(fā)揮的重要作用給出有力證明。郭金玉等[19]提出一種動態(tài)多流形投影算法(dynamic multi-manifold projections,DMMP)。該算法能提取過程數(shù)據(jù)的局部和全局結(jié)構(gòu)信息,在動態(tài)過程監(jiān)控中具有較強(qiáng)的優(yōu)越性。
為了進(jìn)一步提高所建立的監(jiān)測模型的適用性和可靠性,需要對給定數(shù)據(jù)集的結(jié)構(gòu)信息進(jìn)行徹底的保留,而不是單方面的保留。針對傳統(tǒng)動態(tài)多元統(tǒng)計分析方法不能同時考慮給定數(shù)據(jù)集的不同結(jié)構(gòu)特征問題,本研究提出一種基于集成動態(tài)結(jié)構(gòu)分析(ensemble dynamic structural analysis,EDSA)的故障檢測算法。EDSA模型利用DPCA、動態(tài)局部保持投影(dynamic locality preserving projections,DLPP)和DMMP模型,通過貝葉斯推理將多個檢測結(jié)果組合在一個集成統(tǒng)計量中。這是由模式識別領(lǐng)域中普遍采用的集成學(xué)習(xí)技術(shù)所推動的。集成學(xué)習(xí)技術(shù)最近也被應(yīng)用于非高斯過程監(jiān)測中[20]。與DPCA、DLPP和DMMP模型相比,所提出的EDSA模型考慮了全局結(jié)構(gòu)、局部結(jié)構(gòu)及其并行權(quán)衡,這意味著集成檢測方法能夠檢測到這三種幾何分布的異常變化,因此所提出的故障檢測方法對故障的敏感性高于任何單一方法。
針對工業(yè)過程中存在的動態(tài)特性,許多研究學(xué)者開始對動態(tài)過程監(jiān)控進(jìn)行研究[21-24]。將處理動態(tài)過程的方法運(yùn)用到過程監(jiān)控中,較好地獲取動態(tài)結(jié)構(gòu)信息,進(jìn)一步改善過程監(jiān)控的性能。但是鑒于大多數(shù)算法都是以無監(jiān)督的方式訓(xùn)練的,提取潛在變量的任何方式都將為提高過程監(jiān)控性能提供有用的信息。因此,為了提高DPCA、DLPP和DMMP三種算法應(yīng)用于過程監(jiān)控的可靠性和適用性,通過集成學(xué)習(xí)的思想,將它們組合成一個集成統(tǒng)計量。在離線建模階段,三種算法分別構(gòu)建不同的監(jiān)測模型,并計算相應(yīng)的監(jiān)測統(tǒng)計量以及控制限。然后通過貝葉斯推理將每個監(jiān)控模型的SPE和T2統(tǒng)計量分別進(jìn)行組合成一個集成統(tǒng)計量。若集成統(tǒng)計量超過控制限則為故障數(shù)據(jù),反之,為正常數(shù)據(jù)。
DPCA將時滯移位方法運(yùn)用到PCA算法中,把原始數(shù)據(jù)集X=[x1,x2,…,xi…xn]T,xi∈m,通過時滯移位方法生成增廣矩陣在此基礎(chǔ)上執(zhí)行PCA算法。若時滯參數(shù)lag=l,通過公式(1)生成的增廣矩陣為n×[m×(l+1)]:
(1)
對增廣矩陣進(jìn)行標(biāo)準(zhǔn)化處理,通過PCA降維尋找一個投影p∈[m×(l+1)]×d,將轉(zhuǎn)化到一個低維數(shù)據(jù)空間yi∈1×d。PCA目標(biāo)函數(shù)為
(2)
為了使得復(fù)雜的問題簡單化,PCA算法將數(shù)據(jù)分解為主元矩陣和殘差矩陣,轉(zhuǎn)化為簡單的求解特征值問題。原始動態(tài)矩陣分解形式如式(3)所示。
(3)
式中:P=[p1,p2,…,pd]∈m×(l+1)×d是由特征向量構(gòu)成的負(fù)載矩陣,矩陣n×d也稱為得分矩陣,E∈n×[m×(l+1)]為殘差矩陣。
LPP算法的目標(biāo)是找到一個投影軸p∈[m×(l+1)]×d,使原始數(shù)據(jù)點(diǎn)能夠投影到新的坐標(biāo)軸上,從而去除冗余數(shù)據(jù),實現(xiàn)降維。在文獻(xiàn)[25]中提出LPP的目標(biāo)函數(shù)為
minpTL′p
(4)
式中:W為鄰接矩陣。
(5)
全局圖最大值目標(biāo)函數(shù)與PCA算法不同,目標(biāo)函數(shù)為
maxpTGp
(6)
(7)
通過優(yōu)化兩個目標(biāo)函數(shù)獲得一個統(tǒng)一的框架如式(8)所示。
(8)
式(8)通過簡化轉(zhuǎn)化為一個求解廣義特征值問題。轉(zhuǎn)化形式為
Gp=λL′p
(9)
假設(shè)p1,p2,…,pd是對應(yīng)于式(9)的d個最大特征值λ1,λ2,…,λd對應(yīng)的特征向量,捕獲全局和局部信息的低維矩陣Y如式(10)所示。
(10)
式中:P=[p1,p2,…,pd]∈[m×(l+1)]×d為負(fù)載矩陣,Y=[y1,y2,…,yn]T∈n×d。
傳統(tǒng)的檢測方法都具有一定的局限性,而本研究提出的集成動態(tài)結(jié)構(gòu)分析是一種將集成學(xué)習(xí)技術(shù)與現(xiàn)有故障檢測算法結(jié)合的方法。每個監(jiān)控模型都通過平方預(yù)測誤差(squared prediction error,SPE)和T2統(tǒng)計量來檢驗?zāi)P偷暮脡?。SPE和T2統(tǒng)計量的計算:
(11)
SPE=EET
(12)
(13)
三個監(jiān)測模型分別通過公式(12)和(13)計算出各模型的統(tǒng)計量。
利用Bayesian推理計算發(fā)生故障的概率[26]。
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
對每個模型的SPE和T2統(tǒng)計量的檢測結(jié)果,利用Bayesian推理計算出故障產(chǎn)生的概率,將結(jié)果進(jìn)行組合得到集成統(tǒng)計量:
(22)
(23)
運(yùn)用集成動態(tài)結(jié)構(gòu)分析算法進(jìn)行故障檢測時通常包括離線建模和在線檢測兩部分。離線建模主要是運(yùn)用訓(xùn)練數(shù)據(jù)建立動態(tài)模型,計算統(tǒng)計量,并確定統(tǒng)計量的控制限;在線檢測主要是運(yùn)用集成統(tǒng)計量對測試數(shù)據(jù)進(jìn)行在線檢測,判斷數(shù)據(jù)是否故障。
離線建模過程:
步驟1采集正常操作條件下的過程數(shù)據(jù)X=[x1,x2,…,xi,…,xn]T∈n×m,通過時滯移位方法生成包含動態(tài)特征的增廣矩陣n×[m×(l+1)],其中并對其進(jìn)行標(biāo)準(zhǔn)化處理;
步驟3選取LPP的近鄰參數(shù),計算鄰接矩陣W,求解局部最小值矩陣L′,求解廣義特征值問題得到投影矩陣P,并計算SPE和T2統(tǒng)計量,建立DLPP模型;
步驟4構(gòu)造MMP的目標(biāo)函數(shù),求解廣義特征值問題得到投影矩陣P,并計算SPE和T2統(tǒng)計量,建立DMMP模型;
步驟5通過核密度估計方法計算每個模型的SPE和T2統(tǒng)計量的控制限。
在線檢測過程:
運(yùn)用文獻(xiàn)[27]中的動態(tài)過程的數(shù)值例子來驗證方法的有效性,具體模型:
(24)
式中:v=[v1v2]T為隨機(jī)噪聲,均值為[0 0]T,方差為[0.120.22]T;u是一個與過程數(shù)據(jù)相關(guān)的輸入且滿足:
(25)
式中:w=[w1w2]T為隨機(jī)噪聲,均值為[0
0]T,
方差為[1 1]T。設(shè)置u(0)=[0 0]T,x(0)=[1 1]T。隨機(jī)生成兩組數(shù)據(jù),分別是500個樣本的訓(xùn)練數(shù)據(jù)和960個樣本的測試數(shù)據(jù),用來驗證EDSA的有效性。從第161個樣本起,w1的均值由0變化到4,并一直持續(xù)到過程結(jié)束。
為了驗證本算法的有效性,將本算法與傳統(tǒng)的DPCA、DLPP、DMMP和DICA算法進(jìn)行對比。各種算法的參數(shù)設(shè)置:在DPCA、DLPP、DMMP、DICA和EDSA算法中,時滯參數(shù)l=2。根據(jù)85%的累計方差貢獻(xiàn)率選擇5種算法的主元或獨(dú)立元個數(shù):在DPCA算法中,選擇3個主元;在DLPP算法中,選擇4個主元;在DMMP算法中,選擇1個主元;在DICA算法中,選擇8個獨(dú)立元;在EDSA算法中,選擇8個主元。為了公平比較,所有方法使用核密度估計確定99%的控制限。因為DMMP算法選取了1個主元,所以無法用圖形呈現(xiàn)樣本的分布情況。DPCA、DLPP和EDSA算法在前3個主元空間上的樣本分布以及DICA在獨(dú)立元空間上的樣本分布如圖1所示。從圖1(a)中能夠明顯看出,訓(xùn)練數(shù)據(jù)和故障數(shù)據(jù)都集中在控制限的內(nèi)部,從而說明DPCA 算法無法在主元空間中檢測故障數(shù)據(jù),因此該算法的SPE和T2兩個統(tǒng)計量的檢測效果都較差。圖1(b)呈現(xiàn)的效果與圖1(a)類似,僅有極少量的故障數(shù)據(jù)在控制限外部,從而證明DLPP算法的檢測率較低。圖1(c)中故障數(shù)據(jù)大多數(shù)集中在控制限的內(nèi)部,有少量故障數(shù)據(jù)分布在控制限以外,說明DICA算法在獨(dú)立元空間中對故障數(shù)據(jù)的檢測效果有所提高,優(yōu)于DPCA和DLPP算法,但是檢測效果仍不理想。從圖1(d)中可以明顯看出,大部分的故障數(shù)據(jù)在控制限外部,說明EDSA算法能夠更好地捕捉數(shù)據(jù)中的動態(tài)變化,從而提高了對故障數(shù)據(jù)的檢測性能,但是少量訓(xùn)練數(shù)據(jù)也出現(xiàn)在控制限外部,說明EDSA算法有較小的誤報率。與其他3種算法相比,EDSA算法的檢測效果最好,驗證了該算法的有效性。
(a) DPCA
DPCA、DLPP、DMMP、DICA和EDSA方法的檢測效果如圖2所示,各種方法的故障檢測率如表1所示。從圖2可以看出,DPCA的SPE統(tǒng)計量無法對具有時間相關(guān)性的過程數(shù)據(jù)獲取異常變化時的有效信息,因此導(dǎo)致極低的故障檢測率,僅為0.13%;然而DPCA的T2統(tǒng)計量可以提取動態(tài)過程異常情況下的部分?jǐn)?shù)據(jù)信息,相比較而言,檢測率有所提高。但DPCA算法的檢測率較低,這是因為殘差空間中的數(shù)據(jù)對比主元空間具有極強(qiáng)的自相關(guān)性,所以DPCA的檢測效果很差。相比DPCA,DLPP算法的兩個統(tǒng)計量都能夠捕捉到動態(tài)特征,但是檢測率仍不理想。這是因為DLPP算法僅提取局部信息,忽略了全局信息。DMMP算法的T2統(tǒng)計量對動態(tài)過程的變化有較好的識別,檢測率高達(dá)61.15%,而SPE統(tǒng)計量的檢測率相比DPCA、DLPP也有提高。
(a) SPE與ESPE
表1 各種算法對數(shù)值例子的故障檢測率
DICA的SPE統(tǒng)計量幾乎無法識別故障,測試數(shù)據(jù)中絕大部分的故障數(shù)據(jù)在控制限以下,檢測效果不理想,I2統(tǒng)計量的檢測效果好于DPCA、DLPP和DMMP算法。這是因為DICA算法在獨(dú)立元空間中可以捕捉到過程數(shù)據(jù)的動態(tài)非高斯特征,從而能夠提高檢測效果。然而EDSA算法的2個監(jiān)控統(tǒng)計量對過程數(shù)據(jù)都具有較好的監(jiān)控能力,檢測效果優(yōu)于其他4種算法,其中T2統(tǒng)計量的故障檢測率高達(dá)100%,檢測效果最好。因為該算法將3種算法集成在一起,考慮了全局結(jié)構(gòu)、局部結(jié)構(gòu)及其并行權(quán)衡,可以有效地提取數(shù)據(jù)的自相關(guān)信息,從而達(dá)到較高的檢測水平。
田納西-伊斯曼(Tennessee-Eastman,TE)過程由于其相對現(xiàn)實和復(fù)雜的特性,如今已經(jīng)成為國際上通用的測試各種過程監(jiān)控方法的標(biāo)準(zhǔn)仿真模型[28-30]。圖3是由Lyman等[31]提出的TE過程工藝流程圖。通過TE過程中常見的階躍、隨機(jī)和未知類型的3類故障進(jìn)行仿真測試,其中選取的6種故障的描述如表2所示。
圖3 TE過程工藝流程圖
表2 TE過程故障類型
DPCA、DLPP、DMMP、DICA以及EDSA算法對故障4的檢測結(jié)果如圖4所示。從圖中可以明顯看出5種算法的各個統(tǒng)計量都具有一定數(shù)量的誤報。對比之下,EDSA算法的誤報率比其他4種算法略低一些。DPCA和DMMP算法的T2統(tǒng)計量對動態(tài)過程十分不敏感,發(fā)生異常變化時無法獲取有效信息,從而導(dǎo)致故障數(shù)據(jù)都分布在控制限之下,檢測率很低。這是因為兩種算法在特征提取時,主元空間中的數(shù)據(jù)具有較強(qiáng)的自相關(guān)性,從而故障檢測效果未能達(dá)到理想狀態(tài)。DICA算法兩種統(tǒng)計量的檢測效果較低,無論在殘差空間還是獨(dú)立元空間都很難捕捉過程數(shù)據(jù)微小的動態(tài)變化,所以在檢測故障4時呈現(xiàn)出較差的檢測效果。在EDSA算法的T2統(tǒng)計量的檢測圖中,大部分故障數(shù)據(jù)都在控制限以上,檢測率高達(dá)90.73%。對比5種算法的SPE統(tǒng)計量的檢測效果,其中DPCA和EDSA具有明顯優(yōu)勢,其檢測率都能夠達(dá)到100%。由此可知,EDSA算法具有較強(qiáng)的綜合檢測性能,其檢測結(jié)果明顯好于其他4種算法。這是因為EDSA將DPCA、DLPP與DMMP算法集成在一起,同時獲取了局部和全局結(jié)構(gòu)的信息以確保數(shù)據(jù)結(jié)構(gòu)的完整性,從而達(dá)到較好的檢測效果。將故障檢測率作為對比指標(biāo)來驗證本文算法的優(yōu)越性,表3是5種算法的故障檢測率對比。從表3可以清楚地看出,EDSA與DPCA、DLPP、DMMP和DICA 4種算法的故障檢測率對比,EDSA算法對大多數(shù)故障都具較高的檢測能力,從而證明了EDSA算法在故障檢測時的優(yōu)勢。
(a) SPE和ESPE
表3 5種算法對TE過程的故障檢測率對比
新提出的基于集成動態(tài)結(jié)構(gòu)分析的故障檢測方案,引入了集成學(xué)習(xí)、貝葉斯推理和DMMP故障檢測算法。集成動態(tài)結(jié)構(gòu)建模考慮了所有可能的特征提取方式,通過DMMP算法將過程數(shù)據(jù)的鄰域結(jié)構(gòu)嵌入到局部和全局結(jié)構(gòu)信息中,再通過集成學(xué)習(xí)方法將DPCA、DLPP和DMMP模型組合在一起。通過數(shù)值例子和TE過程驗證了EDSA算法的有效性和可靠性,提高了動態(tài)過程的監(jiān)測性能。然而,所提出的建模算法仍然是一種線性算法,如果將其應(yīng)用于非線性過程的監(jiān)測,可能無法達(dá)到預(yù)期的效果??紤]到在實際工業(yè)過程中存在許多非線性問題,所提出的檢測算法還需向非線性擴(kuò)展方向做進(jìn)一步的研究。