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