林圣才 李 楠 楊煜普
(上海交通大學(xué)電子信息與電氣工程學(xué)院系統(tǒng)控制與信息處理教育部重點(diǎn)實(shí)驗(yàn)室,上海 200240)
20世紀(jì)90年代以來,現(xiàn)代工業(yè)過程向著大規(guī)模和復(fù)雜化的方向發(fā)展,導(dǎo)致工業(yè)過程越來越難以用精確的物理模型去描述。由此基于多元統(tǒng)計(jì)分析的故障檢測(cè)方法應(yīng)運(yùn)而生,并在工業(yè)過程中獲得了成功的運(yùn)用[1~3]。但是傳統(tǒng)的多元統(tǒng)計(jì)方法也存在著自身的缺陷,如對(duì)微小故障不靈敏及PCA[4]方法要求數(shù)據(jù)服從高斯分布等。隨著工業(yè)過程的長(zhǎng)期運(yùn)行,過程中存在著設(shè)備老化等緩慢變化,這些變化輕則導(dǎo)致產(chǎn)品質(zhì)量下降,重則可能會(huì)導(dǎo)致工業(yè)過程發(fā)生故障進(jìn)而出現(xiàn)事故,因此此類問題亟待解決。
針對(duì)此類微小故障問題,筆者引入多元累積和(Multivariate Cumulative Sum,MCUSUM)控制圖[5]和可預(yù)測(cè)元分析[6](Forecastable Component Analysis,ForeCA),提出了MCUSUM-ForeCA方法。MCUSUM控制圖用于統(tǒng)計(jì)多個(gè)變量的歷史累積信息,而ForeCA是一種全新的用于多變量時(shí)序相關(guān)信號(hào)的降維與特征提取方法,它能從歷史數(shù)據(jù)中捕捉系統(tǒng)的動(dòng)態(tài)特性,并以此來預(yù)測(cè)系統(tǒng)的運(yùn)行變化趨勢(shì)。MCUSUM-ForeCA方法首先使用MCUSUM對(duì)數(shù)據(jù)進(jìn)行處理,獲取累積信息,然后使用ForeCA算法提取過程數(shù)據(jù)中的可預(yù)測(cè)分量,構(gòu)造兩種統(tǒng)計(jì)量對(duì)過程進(jìn)行統(tǒng)計(jì)監(jiān)控。在TE過程上的仿真結(jié)果表明了此方法的可行性和有效性。MCUSUM-ForeCA方法不但克服了傳統(tǒng)多元統(tǒng)計(jì)方法無法反映過程時(shí)序特性的不足,而且在對(duì)微小故障的檢測(cè)上顯示了良好的性能。
(1)
其中Sj表示到第j個(gè)樣本為止的累積和。如果過程均值保持不變,則Sj將會(huì)在0周圍隨機(jī)波動(dòng);如果過程均值產(chǎn)生了較大的變化(上升或下降),則Sj會(huì)跟隨著產(chǎn)生相同方向的變化。
設(shè)矩陣X∈Rn×m,假設(shè)線性變換WT∈Rk×n,使得S=WTX,其中S為從X中提取的可預(yù)測(cè)分量。ForeCA算法的目的就是尋找能夠滿足這個(gè)要求的線性變換WT。
(2)
(3)
(4)
對(duì)式(4)進(jìn)行變換后,可得平穩(wěn)過程的可預(yù)測(cè)度為:
(5)
對(duì)于多變量二階平穩(wěn)過程Xt,考慮線性變換yt=wTXt,其中w是W的列向量,w∈Rn,此時(shí)yt就可以看成是一個(gè)單變量的二階平穩(wěn)過程。Goerg G給出了ForeCA的最優(yōu)化問題[6]:
(6)
s.t.wTΣXw=1
文獻(xiàn)[6]給出了求解式(5)的詳細(xì)算法。通過該算法可以計(jì)算出一組按照可預(yù)測(cè)度由高到低順序排列的可預(yù)測(cè)元(可預(yù)測(cè)元個(gè)數(shù)可以指定,一般不大于平穩(wěn)過程的變量個(gè)數(shù)),可預(yù)測(cè)元之間相互正交,由此即可得到線性變換矩陣WT。
首先選取一段正常工況生成的觀測(cè)數(shù)據(jù)Yn×m,其中n為變量個(gè)數(shù),m為采樣點(diǎn)數(shù)(時(shí)間序列),并假設(shè)Yn×m中的數(shù)據(jù)已經(jīng)經(jīng)過標(biāo)準(zhǔn)化處理。此時(shí)對(duì)Yn×m進(jìn)行MCUSUM處理,定義t時(shí)刻的累積和為:
(7)
其中d表示累積和的步數(shù),yi表示第i個(gè)時(shí)刻的采樣值。經(jīng)過上述處理后產(chǎn)生新的數(shù)據(jù)矩陣Xn×m。對(duì)Xn×m運(yùn)用ForeCA算法,選取可預(yù)測(cè)元的個(gè)數(shù)等于觀測(cè)數(shù)據(jù)中變量的個(gè)數(shù)n,使用算法后得可預(yù)測(cè)元wi∈Rn,i=1,2,…,n,每個(gè)可預(yù)測(cè)元wi對(duì)應(yīng)的可預(yù)測(cè)度為Ωi,進(jìn)而得到線性變換矩陣:
WT=[w1,w2,…,wn]T∈Rn×n
WTW=In∈Rn×n
(8)
(9)
(10)
其中Λ為由前k個(gè)可預(yù)測(cè)元對(duì)應(yīng)的可預(yù)測(cè)度所組成的對(duì)角陣。L2統(tǒng)計(jì)量是通過可預(yù)測(cè)模型內(nèi)部的可預(yù)測(cè)元模的波動(dòng)來反映系統(tǒng)的變化情況,SPE統(tǒng)計(jì)量則表示到可預(yù)測(cè)模型空間的距離,反映了測(cè)量值對(duì)模型的偏離程度。
根據(jù)統(tǒng)計(jì)量的公式計(jì)算過程正常運(yùn)行下各采樣點(diǎn)的L2值和SPE值后,由于它們并不一定嚴(yán)格的服從正態(tài)分布,因此采用核密度估計(jì)法[9]對(duì)其進(jìn)行密度估計(jì),密度函數(shù)可按下式進(jìn)行估計(jì):
(11)
其中m是L2值和SPE值的個(gè)數(shù);K(·)是核函數(shù),這里選擇高斯核函數(shù);h是帶寬,使用固定帶寬算法計(jì)算得到。獲得統(tǒng)計(jì)量的密度函數(shù)后,即可確定L2統(tǒng)計(jì)量和SPE統(tǒng)計(jì)量的控制限。
當(dāng)把上述統(tǒng)計(jì)量用于在線監(jiān)控時(shí),首先使用MCUSUM對(duì)在線數(shù)據(jù)進(jìn)行處理,用于累積過程的歷史信息,然后將經(jīng)過MCUSUM處理后的在線數(shù)據(jù)代入L2統(tǒng)計(jì)量和SPE統(tǒng)計(jì)量的表達(dá)式中,計(jì)算出L2值和SPE值,最后把得到的結(jié)果與控制限進(jìn)行比較,若高于控制限,則說明系統(tǒng)發(fā)生故障;若低于控制限,則表示系統(tǒng)運(yùn)行正常。
TE實(shí)驗(yàn)平臺(tái)[10]由Downs J J和Vogel E F于1993年提出。TE過程(圖1)是一個(gè)仿真實(shí)例,是基于實(shí)際工業(yè)過程的,可以很好地模擬現(xiàn)實(shí)中的復(fù)雜工況,因此被廣泛地應(yīng)用在故障診斷領(lǐng)域。
圖1 TE過程流程
選取正常的樣本數(shù)據(jù)500個(gè),每個(gè)樣本點(diǎn)包含33個(gè)變量,其中33個(gè)變量分別為22個(gè)連續(xù)變量XMEAS(1)~XMEAS(22)和11個(gè)控制變量XMV(1)~XMV(11),變量的具體含義參見文獻(xiàn)[10]。測(cè)試數(shù)據(jù)集包含960個(gè)樣本點(diǎn),每個(gè)樣本點(diǎn)包含33個(gè)變量。前160個(gè)樣本點(diǎn)為正常數(shù)據(jù),后800個(gè)樣本點(diǎn)為故障數(shù)據(jù)。將MCUSUM-ForeCA方法和傳統(tǒng)PCA方法進(jìn)行對(duì)比,在PCA法中,選取T2統(tǒng)計(jì)量與SPE統(tǒng)計(jì)量。由于MCUSUM中的步長(zhǎng)d對(duì)檢測(cè)結(jié)果有很大影響,因此筆者在此分兩步進(jìn)行討論。
首先考慮d為固定值時(shí)的情況,選取d=250。圖2、3為MCUSUM-ForeCA和PCA方法對(duì)TE過程中的故障9和故障15的故障檢測(cè)對(duì)比圖。
a. MCUSUM-ForeCA方法
b. PCA方法
a. MCUSUM-ForeCA方法
b. PCA方法
故障9是由D的進(jìn)料溫度發(fā)生變化導(dǎo)致的,正常工況下和故障狀態(tài)下變量的均值和方差并未發(fā)生明顯的變化,屬于TE過程中的微小故障。由圖2可以看出PCA方法的T2統(tǒng)計(jì)量和SPE統(tǒng)計(jì)量基本上是無法檢測(cè)出故障9的,并且在系統(tǒng)正常運(yùn)行階段還存在一定的誤報(bào)率,分別達(dá)到了5.0%和1.9%,而MCUSUM-ForeCA的L2統(tǒng)計(jì)量和SPE統(tǒng)計(jì)量則在390~520個(gè)采樣點(diǎn)之間持續(xù)成功地檢測(cè)到故障,并且兩者的誤報(bào)率都為0。
故障15是由冷凝器冷卻水閥門粘滯導(dǎo)致的,也屬于TE過程中的微小故障。由圖3中可以看出PCA方法的T2統(tǒng)計(jì)量和SPE統(tǒng)計(jì)量只是在750個(gè)采樣點(diǎn)后偶爾檢測(cè)出故障15,而MCUSUM-ForeCA的L2統(tǒng)計(jì)量和SPE統(tǒng)計(jì)量則在260~330個(gè)采樣點(diǎn)之間和800~960個(gè)采樣點(diǎn)之間持續(xù)地檢測(cè)到故障,并且兩者的誤報(bào)率都為0。
表1列出了兩種方法對(duì)故障9和故障15的檢測(cè)準(zhǔn)確率。從表1中可以看出,PCA方法的T2統(tǒng)計(jì)量和SPE統(tǒng)計(jì)量對(duì)微小故障的檢出率非常低,最高檢出率僅有6.0%。而MCUSUM-ForeCA方法的L2統(tǒng)計(jì)量和SPE統(tǒng)計(jì)量對(duì)微小故障的檢出率達(dá)到了30.0%左右,遠(yuǎn)高于PCA方法。由此可以看出在對(duì)微小故障的檢測(cè)中,MCUSUM-ForeCA方法顯示出了良好的性能。
表1 MCUSUM-ForeCA和PCA的故障 檢測(cè)準(zhǔn)確率比較 %
現(xiàn)在考慮步長(zhǎng)d的變化對(duì)微小故障檢測(cè)效果的影響。圖4顯示了采用MCUSUM-ForeCA方法步長(zhǎng)d對(duì)故障9和故障15檢測(cè)準(zhǔn)確率的影響。
圖4 步長(zhǎng)d對(duì)故障9和故障15的檢測(cè)準(zhǔn)確率的影響
由圖4中可以看出,隨著d的增大,故障檢測(cè)率呈現(xiàn)出波動(dòng)式上升的趨勢(shì)。對(duì)于故障9,L2統(tǒng)計(jì)量在d=260時(shí)獲得最大檢測(cè)率37.5%,SPE統(tǒng)計(jì)量在d=280時(shí)獲得最大檢測(cè)率35.5%;對(duì)于故障15,L2統(tǒng)計(jì)量在d=260時(shí)獲得最大檢測(cè)率25.6%,SPE統(tǒng)計(jì)量在d=250時(shí)獲得最大檢測(cè)率30.3%。當(dāng)d的取值較小時(shí),對(duì)微小故障的檢測(cè)準(zhǔn)確率較低,因?yàn)榇藭r(shí)利用MCUSUM得到的歷史信息不夠豐富,對(duì)系統(tǒng)的微小變化的累積效果不明顯;當(dāng)d的取值過大時(shí),一方面累積的歷史信息趨于飽和,另一方面累積的過程中會(huì)帶入部分噪聲信息,反而會(huì)導(dǎo)致故障的檢測(cè)效果下降。因此從整體看,d的取值在250~280之間效果比較好。目前從總體來看,d值的選取并沒有統(tǒng)一的標(biāo)準(zhǔn),一般更多的是憑借經(jīng)驗(yàn)或者交叉驗(yàn)證的方式來選擇。
筆者針對(duì)傳統(tǒng)多元統(tǒng)計(jì)方法對(duì)過程的微小變化不敏感,無法反映過程時(shí)序特性的缺點(diǎn),將MCUSUM與ForeCA方法相結(jié)合,選取可預(yù)測(cè)主元,構(gòu)造新的統(tǒng)計(jì)量,建立了完整的基于MCUSUM-ForeCA的微小故障檢測(cè)方法。MCUSUM可用于累積過程的微小變化,F(xiàn)oreCA方法可以更加精確地描述系統(tǒng)的動(dòng)態(tài)特性,因而具有較好的對(duì)微小故障的檢測(cè)能力。最后在TE過程上的仿真結(jié)果表明MCUSUM-ForeCA方法的可行性和有效性。但是該方法也存在不足,由于方法中使用了MCUSUM,相應(yīng)地會(huì)在檢測(cè)過程中產(chǎn)生一定的延時(shí),因此對(duì)于某些實(shí)時(shí)性要求較高的場(chǎng)合,應(yīng)當(dāng)考慮將該方法和其他的方法相結(jié)合,保證過程安全穩(wěn)定的運(yùn)行。
[1] Kimura D,Nii M, Yamaguchi T,et al.Fuzzy Nonlinear Regression Analysis Using Fuzzified Neural Networks for Fault Diagnosis of Chemical Plants[J].JACIII,2011,15(3): 336~344.
[2] Zhang Y W,Zhang Y.Fault Detection of Non-Gaussian Processes Based on Modified Independent Component Analysis[J]. Chemical Engineering Science,2010,65(16):4630~4639.
[3] Kano M, Tanaka S, Hasebe S,et al.Monitoring Independent Components for Fault Detection[J]. AIChE Journal, 2003, 49(4): 969~976.
[4] Wise B M, Ricker N L, Veltkamp D F, et al.A Theoretical Basis for the Use of Principal Component Models for Monitoring Multivariate Processes[J]. Process Control and Quality,1990,1(1): 41~51.
[5] Pignatiello J J, Runger G C. Comparisons of Multivariate CUSUM Charts[J].Journal of Quality Technology, 1990, 22(3): 173~186.
[6] Goerg G.Forecastable Component Analysis[C].Proceedings of the 30th International Conference on Machine Learning.Atlanta, USA:ICML,2013: 64~72.
[7] Shannon C E. A Mathematical Theory of Communication[J].ACM SIGMOBILE Mobile Computing and Communications Review,2001,5(1):3~55.
[8] Kohavi R. A Study of Cross-validation and Bootstrap for Accuracy Estimation and Model Selection[C].Proceedings of the 14th International Joint Conference on Artificial Intelligence.San Francisco,USA:Morgan Kaufmann Publishers Inc,1995:1137~1145.
[9] Wand M P, Jones M C. Kernel Smoothing[M]. Boca Raton: Crc Press,1994.
[10] Downs J J,Vogel E F.A Plant-wide Industrial Process Control Problem[J].Computers & Chemical Engineering,1993,17(3):245~255.