郭金玉, 李文濤, 李 元
(沈陽化工大學 信息工程學院,沈陽 110142)
在實際工業(yè)生產(chǎn)過程中,倘若某個部件發(fā)生異常,就可能給整個工業(yè)過程帶來難以估量的損害,從而造成巨大的財產(chǎn)損失.工程監(jiān)控系統(tǒng)和故障診斷技術的結合能夠很好地提前對隱藏的風險進行排除,保證系統(tǒng)正常運行.于是,基于數(shù)據(jù)驅(qū)動的故障診斷方法應時而生.該方法僅需要對工業(yè)生產(chǎn)過程中的歷史數(shù)據(jù)進行建模,可以在大量過程數(shù)據(jù)中提取有價值的信息[1-3]并用于故障檢測與診斷中,因此廣受關注.
主元分析(PCA)[4-8]是一種廣泛應用于工業(yè)過程監(jiān)控的多元統(tǒng)計工具.然而,在實際的工業(yè)生產(chǎn)過程中存在復雜的動態(tài)特性,這使其不適用于實際工業(yè)生產(chǎn)過程的故障檢測.Ku 等[9]提出基于動態(tài)主元分析 (DPCA)的故障檢測方法,該方法將變量延遲加入數(shù)據(jù)矩陣中構造時間滯后增廣矩陣,從而達到檢測動態(tài)過程的目的.Li等[10]提出遞歸主元分析(RPCA),該方法通過不斷將新數(shù)據(jù)加入矩陣來更新協(xié)方差矩陣,從而適應動態(tài)過程提高診斷效率.由于該方法運行時間較長,Xiao等[11]提出滑動窗口PCA方法,該方法通過不斷更新滑動窗口中的數(shù)據(jù)達到故障監(jiān)控目的,從而適應動態(tài)工業(yè)過程提高實時檢測的性能.上述方法可以有效地提高動態(tài)過程的檢測效率,但是這些方法對非線性動態(tài)過程的檢測效果并不是很理想.于是,核主元分析(KPCA)[12-13]、核局部保持投影(KLPP)[14-15]、核熵成分分析(KECA)[16-17]等處理非線性的方法相繼出現(xiàn).在這些引入核函數(shù)的方法中,KPCA方法是對PCA方法的非線性擴展,以其容易理解和計算而廣受關注.Sang等[18]在DPCA方法的基礎上,提出動態(tài)核主元分析(DKPCA)方法,解決DPCA方法對非線性動態(tài)過程進行故障監(jiān)控的局限性,能夠很好地提高在動態(tài)的非線性過程中對異常數(shù)據(jù)的檢測能力.謝磊等[19]提出遞歸KPCA 的思想,通過更新KPCA模型達到提升檢測效果的目的,以適應工業(yè)過程中的動態(tài)變化特性,提高檢測效果.但是,每當出現(xiàn)一個新的樣本時,核矩陣就會增加,導致該方法在對規(guī)模較大的工業(yè)系統(tǒng)進行故障檢測時存在較大的計算難度.為了解決這種問題,Liu等[20]提出一種運用滑動窗口KPCA (MWKPCA)的故障檢測方法,該方法通過給滑動窗口添加新的樣本和拋棄舊的樣本達到更新KPCA模型的目的,從而解決由于遞歸方法帶來的核矩陣不斷加大的問題.后來,Chouaib等[21]結合遞歸和滑動窗口的思想,提出基于自適應核主元分析的動態(tài)過程監(jiān)控方法,進一步提高滑動窗口KPCA方法在動態(tài)系統(tǒng)中的檢測性能.然而在滑動窗口方法中,當測試數(shù)據(jù)中包括足夠多的新樣本時,就會存在更新的模型難以檢測出實際樣本的異常,原因是該方法缺乏有效地更新核矩陣特征值和特征向量的方式.為了克服該方法的局限性,F(xiàn)azai等[22]提出可變滑動窗口KPCA (VMWKPCA)方法,運用可變滑動窗口方法來更新KPCA模型.該方法的思想是根據(jù)正常過程的變化改變滑動窗口的大小,能夠有效地提高KPCA在工業(yè)過程中的監(jiān)控性能.上述的改進方法提高了KPCA的工業(yè)過程故障檢測效果,但是,當訓練樣本過大時,這些方法不僅運算時間過長,而且內(nèi)存占用較大.
為了提高KPCA方法在具有動態(tài)特性的工業(yè)過程中的監(jiān)控性能,減少建模過程中冗余的信息量,提高在線故障檢測效率,降低運行內(nèi)存,優(yōu)化檢測時間,本文提出一種在線壓縮KPCA(ORKPCA)的自適應過程監(jiān)控方法.該方法在大量的樣本中選定較小的訓練集作為初始壓縮集進行建模,該壓縮集中的樣本同原始KPCA建模時的主元方差方向一致,樣本個數(shù)等于保留的主元個數(shù),這樣可以有效地剔除原始訓練樣本中的冗余信息,然后對在線實時采集的樣本進行監(jiān)控,判斷新的樣本是否正常;若為正常樣本則根據(jù)一種近似準則確定該樣本與壓縮集樣本之間的相關性,判斷該樣本是否加入壓縮集中,在該樣本加入壓縮集的同時自動更新在線KPCA模型.這樣能夠使監(jiān)控模型更好地適應動態(tài)的系統(tǒng),有效提高KPCA方法在動態(tài)工業(yè)過程中的檢測性能.
KPCA方法用于表示建模數(shù)據(jù)之間的非線性關系,可以有效地將線性不可分的輸入數(shù)據(jù)投影到可以線性分離的高維空間中,然后在特征空間H中執(zhí)行線性PCA.假設樣本集為x1,x2, …,xN∈Rm,其中:N為樣本個數(shù),m為變量個數(shù).這些樣本通過一個非線性映射φ投影到特征空間H中,可表示為
φ:xi∈Rm→φ(xi)∈Rh
(1)
式中:h為特征空間的維數(shù).
在特征空間H中向量φ(xi)與φ(xj)(i,j=1, 2, …,N)的點積為
φ(xi)Tφ(xj)=〈φ(xi),φ(xj)〉=k(xi,xj)
(2)
式中:k為內(nèi)核函數(shù).
高維特征空間H中樣本的協(xié)方差矩陣為
(3)
類似線性PCA,特征空間中的KPCA等效于解決特征值問題.設特征向量為Vk, 特征值為μk, 其特征方程為
(4)
在式(4)中,對于協(xié)方差矩陣Q中的每個特征向量Vk,都可以視為φ(x1),φ(x2), …,φ(xN)的線性組合[23],即
(5)
式中:vk,i為線性相關系數(shù).
結合式(2)和(4),可以得到:
(6)
進一步化簡可得:
λkvk=Kvk
(7)
(8)
(9)
(10)
為了驗證提出方法的有效性,使用統(tǒng)計量T2進行驗證分析.根據(jù)式(10)計算測試數(shù)據(jù)x在主元空間上的投影,即主元為
(11)
k(x)=Xφ(x)=
[φ(x1)φ(x2)…φ(xN)]Tφ(x)=
[φ(x1)Tφ(x)φ(x2)Tφ(x)…φ(xN)Tφ(x)]T=
[k(x1,x)k(x2,x)…k(xN,x)]T
(12)
由此可以得到
k(x)TC′k(x)
(13)
運用F分布得到統(tǒng)計量T2的控制限[24]為
Fα(l,N-l)
(14)
式中:α為置信水平.
在規(guī)模較大的訓練樣本中,若用傳統(tǒng)的KPCA方法進行建模,將在線數(shù)據(jù)向KPCA模型上投影,通過監(jiān)控統(tǒng)計量T2進行過程監(jiān)控會帶來極大的運算量.尤其在動態(tài)的工業(yè)過程中,許多DKPCA方法都不能很好地解決在訓練樣本過大時帶來的計算時間過長和內(nèi)存消耗的問題,而用壓縮數(shù)據(jù)建模的核心目的就是解決檢測過程中計算時間過長和內(nèi)存消耗過大的問題[25-26].
在傳統(tǒng)的KPCA方法中,一般認為選定的主元近似包含訓練數(shù)據(jù)集中的全局信息.于是,本文認為在訓練集{xi}(i=1, 2, …,N)中存在代表主元信息的觀測值,可以用來表示訓練數(shù)據(jù)集的全局信息, 該方法的原理是用一組觀測向量逼近由KPCA方法保留的主元,這些觀測向量與選擇的主元方差方向一致.選取的主元數(shù)根據(jù)累計方差貢獻率(CPV)來確定:
(15)
l=arg(CPV≥0.99)
(16)
根據(jù)特征值降序選擇前l(fā)個特征值與特征向量構造一個信息矩陣,在原始訓練集尋找滿足這個信息矩陣要求的數(shù)據(jù)樣本{xi}(i=1, 2, …,l),此時,可以定義構建壓縮數(shù)據(jù)建模模型中有代表性的觀測值數(shù)等于l.根據(jù)式(9)與(10),信息矩陣可以表示為
h(xi)j=
(17)
(18)
(19)
(20)
式中:η為控制稀疏程度的參數(shù),該判定參數(shù)為預設值;ξq為根據(jù)近似準則原理比較φ(xq)與壓縮集中的l個樣本在主元空間上的相關性;τj為最優(yōu)系數(shù).對式(20)進一步化簡得到:
minτ(τTKlτ-2τTkl(xq)+k(xq,xq))
(21)
式中:Kl∈Rl×l為壓縮集Y的核矩陣,
(22)
τ為式(21)對τ1,τ2, …,τl取偏導數(shù)的最優(yōu)系數(shù)向量.令偏導數(shù)為0,得到:
(23)
kl(xq)=
(24)
式中:kl(xq)為核向量.
將式(23)代入式(21)得到:
ξq=k(xq,xq)-kl(xq)Tτ
(25)
當在線測試的樣本檢測為正常時,此時可以分兩種情況,即根據(jù)該樣本所包含的信息在訓練集中是否存在進行兩種不同方式的處理.當ξq<η時,表明新的樣本包含的信息在壓縮集中存在,即該樣本與壓縮集中樣本相關性較大.為了保證壓縮集投影在特征空間中樣本的線性獨立性,這個新的正常樣本將不添加到壓縮集中,壓縮集的模型不發(fā)生改變.如果ξq≥η,則定義該樣本所包含的信息在壓縮集中并不存在,那么這個新的樣本需要添加到正常的壓縮集中.由于壓縮集發(fā)生了改變,此時需要更新方法的參數(shù),包括核矩陣、其逆矩陣、主元的數(shù)量、T2指標及其控制限.此時需要更新的壓縮集定義為
(26)
在壓縮集Y中第l+1個特征向量可以表示為
(27)
壓縮集得到新的核矩陣Kl+1∈R(l+1)×(l+1),其更新模型如下:
(28)
這種情況下的核向量為
kl(xq)=
(29)
根據(jù)式(13),新壓縮集的統(tǒng)計量為
(30)
(31)
(32)
(33)
式中:τl+1為更新的最優(yōu)系數(shù)向量.
步驟1給定初始的較大訓練集:
X=[x1x2…xN]T∈RN×m
(34)
(1) 對訓練集X進行預處理,計算其核矩陣.
(2) 將核矩陣標準化后,進行特征提取,保留合適的主元.
(3) 根據(jù)式(18)在原始訓練集中選擇與主元的方差方向一致的樣本,樣本的個數(shù)與主元個數(shù)相同.
(4) 運用挑選的樣本構建壓縮集:
(35)
l (5) 選擇合適的核函數(shù),設定合理的參數(shù)η. (6) 計算壓縮集的核矩陣,并對其進行標準化處理. (7) 對標準化后的核矩陣進行特征提取,建立KPCA模型. 步驟2對于一個新的測試樣本xnew: (1) 利用壓縮集建模數(shù)據(jù)的均值和方差對測試樣本xnew進行預處理. (2) 計算該樣本的核矩陣,并對其進行標準化處理. 步驟3自適應更新條件: (2) 如果統(tǒng)計指標小于當前壓縮集的控制限,根據(jù)式(22)~(25),計算判定系數(shù)值ξq,若ξq<η,則返回步驟2. 使用3個指標評估ORKPCA方法的故障檢測性能:誤報率(FAR)、故障檢測率(FDR)和運行時間(ET),并和傳統(tǒng)KPCA、壓縮KPCA、遞歸KPCA[19]、MWKPCA[20]、VMWKPCA[22]方法進行故障檢測比較,證明所提方法的有效性. 為了評估方法的性能,本示例中的數(shù)據(jù)從如下的非線性過程產(chǎn)生[28]: (36) 式中:變量ζ為服從正態(tài)分布N(0, 0.01)的白噪聲;數(shù)據(jù)源t為[0.01, 2]之間的隨機變量.根據(jù)上述的數(shù)值例子隨機產(chǎn)生兩組500個樣本數(shù)據(jù),一組用于建模,而另一組對變量y2從150個采樣時刻時加入0.05(t-150)形式的斜坡干擾作為在線測試數(shù)據(jù). 式(2)中的核函數(shù)選擇為 (37) 本文采用經(jīng)驗法選取δ=5m[29].對于參數(shù)η,若選擇過大,會導致添加到壓縮集中的樣本丟失,達不到自適應更新的目的,從而丟失大量的有用信息,造成檢測結果異常;若選擇過小,會導致過多相似的信息樣本加入到壓縮集中,極大地增加檢測時間和運行內(nèi)存,達不到優(yōu)化檢測時間的效果.因此,為了達到最佳檢測效果,計算壓縮樣本取足夠多狀態(tài)下的ξq值,其中η在滿足小于ξq的情況下,根據(jù)被監(jiān)測系統(tǒng)運行的實際情況,通過不斷調(diào)整以達到比較理想的效果. KPCA、壓縮KPCA、遞歸KPCA、MWKPCA、VMWKPCA 和ORKPCA采用T2統(tǒng)計量分別對該數(shù)值例子進行檢測,檢測效果圖如圖2所示.圖中:T2為單樣本統(tǒng)計量.在KPCA中,根據(jù)式(15)和(16)保留的主元為26個.在壓縮KPCA中,根據(jù)建立KPCA模型中的26個主元結合式(17)建立信息矩陣,根據(jù)式(18)挑選滿足條件的樣本構成壓縮集,并用該壓縮集建立KPCA模型對在線數(shù)據(jù)進行檢測.在遞歸KPCA中,根據(jù)奇異值分解更新核矩陣,從而進行在線檢測.在MWKPCA與VMWKPCA中,初始窗寬為80.根據(jù)文獻[20],MWKPCA的權重參數(shù)λ=0.25.在構建的壓縮集的基礎上,ORKPCA 根據(jù)在線樣本的過程狀態(tài)進行自適應更新KPCA模型,達到在線檢測目的.由圖2可以看出,KPCA與壓縮KPCA的檢測效果極為相似,說明在檢測要求不高的情況下,壓縮KPCA方法可以有效替代傳統(tǒng)KPCA方法,且更具優(yōu)越性;但是可以明顯看出這兩種方法對動態(tài)非線性過程的故障檢測效果較差.遞歸KPCA、MWKPCA、VMWKPCA 和ORKPCA這4種動態(tài)方法均有較好的檢測效果. 為了進一步比較6種方法的故障檢測性能,分別計算KPCA、壓縮KPCA、遞歸KPCA、MWKPCA、VMWKPCA 和ORKPCA方法的FAR、FDR和ET指標,檢測結果如表1所示.從表1中可以得到,對于非線性動態(tài)過程的故障檢測,靜態(tài)KPCA與壓縮KPCA方法的檢測結果相似,而靜態(tài)KPCA方法卻占用更多的檢測時間,因此壓縮KPCA方法相比傳統(tǒng)KPCA方法有著較高的優(yōu)越性.但是,與動態(tài)檢測方法相比,兩種靜態(tài)方法的檢測結果較差,說明靜態(tài)檢測方法在對動態(tài)過程進行故障檢測時存在極大的局限性.對比4種動態(tài)方法的檢測結果,可以看出不僅ORKPCA方法的檢測結果最好,而且誤報率比較低,占用的時間也較少,說明本文提出的方法具有一定的有效性. 表1 6種方法對數(shù)值例子的檢測結果對比Tab.1 Detection results of six methods of numerical examples 田納西-伊斯曼(Tennessee-Eastman,TE)過程是由Eastman公司創(chuàng)建的一種復雜工業(yè)化學過程的基準仿真模型.TE過程考慮到工業(yè)原料反應的整個過程,包括在反應釜中反應物發(fā)生化學反應、在冷凝器中降溫冷卻、分離器分離反應物和汽提塔分離提純并再反應等過程,其工藝流程[30]如圖3所示,具體反應過程如下: A(g)+C(g)+D(g)→G(liq) (38) A(g)+C(g)+E(g)→H(liq) (39) A(g)+ E(g)→F(liq) (40) 3D(g) →2F(liq) (41) 式中:液體和氣體分別由liq,g表示.TE數(shù)據(jù)來源http:∥depts.washington.edu/control/LARRY/TE/download.html. TE過程的各種具體變量如表2所示.TE過程常被用來作為仿真的例子用在過程監(jiān)控和故障診斷中[31-33].TE過程總共有21種不同類型的故障數(shù)據(jù).本文選取TE過程中較為經(jīng)典的故障2與故障20為例進行分析, 詳細描述如表3所示.訓練數(shù)據(jù)包含500個正常樣本,而測試數(shù)據(jù)為960個樣本,從第161個樣本開始加入故障. 表2 TE 過程的測量變量和控制變量Tab.2 Measured variables and manipulated variables in TE process 表3 TE過程故障描述Tab.3 Fault descriptions of TE process KPCA、壓縮KPCA、遞歸KPCA、MWKPCA、VMWKPCA 和ORKPCA方法采用T2統(tǒng)計量進行監(jiān)控,對故障2與故障20的檢測結果分別如圖4和圖5所示.圖4(a)、圖5 (a) 為KPCA方法的故障檢測效果圖.在KPCA方法中建模樣本提取的特征值為35個,因此,在所有的樣本中挑選35個符合條件的樣本構成壓縮集,該壓縮集的樣本滿足與原始建模KPCA的主元方差方向一致.運用該壓縮集建立KPCA模型對在線數(shù)據(jù)進行檢測,其檢測效果如圖4(b)、圖5(b)所示.圖4(c)、圖5(c)為遞歸KPCA方法的故障檢測效果圖;圖4(d)、圖5(d)與圖4(e)、圖5(e)分別為MWKPCA和VMWKPCA方法的故障檢測效果圖,其中MWKPCA和VMWKPCA方法的初始窗寬均為85;圖4(f)、圖5(f)為在壓縮集的基礎上,ORKPCA方法根據(jù)在線樣本的過程狀態(tài)進行自適應更新KPCA模型,達到最優(yōu)的在線檢測效果圖. 由圖4和5可以看出,對故障2與故障20進行檢測時,靜態(tài)方法中KPCA與壓縮KPCA方法的檢測效果區(qū)別并不是太大.壓縮KPCA方法相比KPCA用了較少的建模樣本,而檢測效果的差別較小,說明壓縮KPCA方法比KPCA更具優(yōu)越性.動態(tài)方法中遞歸KPCA、MWKPCA、VMWKPCA 和ORKPCA的檢測效果比靜態(tài)方法均有明顯的優(yōu)勢,具有較高的檢測率和較低的誤報率.說明對具有動態(tài)特性的工業(yè)過程,遞歸KPCA、MWKPCA、VMWKPCA 和ORKPCA方法均能夠適應動態(tài)系統(tǒng),有著優(yōu)越的檢測效果. 為了進一步比較6種方法的故障檢測性能,分別計算各種方法的FAR、FDR和ET指標,檢測結果如表4所示.從表4中可以看出,各種方法對故障2的檢測效果差別不大,但是ORKPCA方法的檢測率最高,誤報率最低.對比各種方法的檢測時間,壓縮KPCA和ORKPCA方法的檢測時間較短.因為兩種方法都運用較少的樣本建模,減少了運行內(nèi)存,優(yōu)化了計算時間.在對故障20進行檢測時(見圖5),KPCA與壓縮KPCA方法的檢測效果較差,而遞歸KPCA、MWKPCA、VMWKPCA 和ORKPCA方法的檢測效果有較大程度的提高,其中ORKPCA方法的檢測率最高.每次有一個新的正常樣本可用時,遞歸KPCA方法的核矩陣都會增大,導致檢測時間最長.MWKPCA方法通過添加一個新的樣本和拋棄一個最老的樣本保持核矩陣大小不變,檢測時間明顯比遞歸KPCA方法少.VMWKPCA方法為了保證滑動窗口最佳大小,改變在線窗寬大小,比MWKPCA方法提高了檢測效果,比遞歸KPCA方法降低了運行時間.與3種動態(tài)故障檢測方法相比,ORKPCA方法依據(jù)在線樣本的相關性,保證壓縮集線性無關.由于滿足這樣條件的在線樣本比較少,導致壓縮集變化不大,使得該方法不僅能夠很好地更新核矩陣的特征值和特征向量適應動態(tài)系統(tǒng),而且有著較高的檢測率和較低的檢測時間.綜上所述,ORKPCA方法在對兩種故障進行檢測時,不僅檢測效果最好,而且誤報率比較低,運行時間也較短.因此,本文提出的方法在檢測大規(guī)模的非線性動態(tài)工業(yè)過程中的故障時極具優(yōu)越性. 表4 6種方法對TE過程的檢測結果對比Tab.4 Detection results of six methods of TE process 針對化工過程復雜非線性的特點, 提出在線壓縮KPCA的自適應方法用于過程監(jiān)控,通過自適應更新模型來處理系統(tǒng)的動態(tài)行為.使用TE過程對KPCA、壓縮KPCA、遞歸KPCA、MWKPCA和VMWKPCA方法進行仿真對比,評估本文提出方法的性能.故障檢測的仿真結果表明,ORKPCA方法不僅極大地優(yōu)化了運算時間,減小了運行內(nèi)存,而且整體上提高了非線性動態(tài)系統(tǒng)故障監(jiān)測的性能.3 仿真研究
3.1 數(shù)值仿真
3.2 TE 過程仿真研究
4 結語