?

動態內全潛結構投影的空間擴展故障檢測方法

2024-03-07 08:14孔祥玉陳雅琳羅家宇安秋生楊治艷
控制理論與應用 2024年1期
關鍵詞:殘差靜態動態

孔祥玉 陳雅琳 羅家宇 安秋生楊治艷

(1.火箭軍工程大學導彈工程學院,陜西 西安 710025;2.航空工業成都凱天電子股份有限公司,四川 成都 610091;3.山西師范大學數學與計算機科學學院,山西 臨汾 041000;4.工業和信息化部電子第五研究所,廣東 廣州 511370)

1 引言

為保證大型裝備系統或復雜工業過程安全可靠地運行,對裝備或工業過程的狀態進行在線實時故障檢測至關重要[1].由于系統集成化程度高且缺乏具體的機理知識,難以建立精確的機理模型.而數據驅動的多元統計過程監控方法(multivariate statistical process monitoring,MSPM)具有不需機理模型的優點,因此近年來得到廣泛應用.常用MSPM方法有: 獨立成分分析(independent component analysis,ICA)、主成分分析、偏最小二乘分析(潛結構投影)、規范變量分析(canonical variable analysis,CVA)等[2–4].這些方法通過將采集的大量高度相關的測量數據投影到低維潛在空間和殘差子空間,在各子空間構造統計量實現過程數據的異常監測.上述方法能較早地發現故障隱患,且提高了過程數據的利用率使數據更易使用,因此被廣泛應用于復雜系統的故障檢測[5].

不同于ICA,主成分分析(principal component analysis,PCA)和CVA方法對全系統的無監督監測,潛結構投影(projection to latent structures,PLS)通過提取過程數據與質量數據的相關特征實現對質量變量的有監督監測.此外,PLS將海量數據投影到低維潛在空間,對質量相關故障進行線性回歸,并通過選擇較為合適的潛在變量個數,為模型預測方差和偏差提供了一種平衡方法,避免了潛在病態矩陣的直接反演[6],因此受到了廣大學者的關注.但是傳統的PLS方法在處理傳感裝置產生的海量數據時,由于當前時刻的樣本數據受到歷史時刻樣本數據的影響,且數據間存在的相關性[7],會導致故障檢測結果不可靠的問題.基于此,諸多學者提供了解決方法.Ricker[8]利用有限脈沖響應(finite impulse response,FIR)矩陣提出FIRPLS動態模型;Ku等人[9]提出了動態PCA方法;Li等人[10]提出了一個新的目標函數來獲得一個新的動態外部模型,并將其擴展為動態全潛結構投影(total PLS,TPLS)模型,文獻[11–14]均致力于消除歷史時刻樣本對當前時刻樣本的影響.同時,Shang等人[15]也給出了另一種解決動態過程監測問題的思路,即在相鄰的采樣瞬間疊加測量變量來增加輸入向量,并將增廣矩陣思想應用于馬氏距離作為檢測指標,該方法提高了動態過程的故障檢測效果.

更重要的是,由于現代工業過程通常采樣間隔較短,采樣數據間不可避免地存在序列相關性,如何有效地挖掘相關特征成為了實施動態過程監測的關鍵[5].Li等人[10]采用向量自回歸(vector autoregressive model,VAR)模型監測動態過程中的異常情況,并用動態潛在變量(dynamic latent variable,DLV)模型對殘差空間進行分解,去除變量間的共線性,從而構建了動態TPLS模型;然后,Dong和Qin[16]提出的動態內PLS算法和動態內PCA算法[17],在提取動態潛變量后,利用動態潛變量建立多變量自回歸(autoregressive,AR)模型,剔除了動態潛變量間自相關性;Zhou等人[18]將DLV算法與Kalman濾波器相結合,提出了一種自回歸的DLV算法并將其應用于動態過程監測;隨后,Dong和Qin[6]通過對多維時間序列數據進行預測建模的動態潛變量方法進行綜述,進一步揭示了潛變量分析的本質和目標.

針對基于動態內偏最小二乘(dynamic inner partial least aquares,DiPLS)算法由于未按降序提取主要成分,導致殘差空間仍存在較大變異,動態和靜態信息難以有效分離,影響故障檢測性能的問題,本文提出了一種動態內模型的改進算法,即基于動態內全潛結構投影(dynamic inner total PLS,DiTPLS).本文首先將DiPLS算法應用到故障檢測中,提取了輸入輸出間的動態信息和潛在得分間的自相關關系;同時分離了質量Y相關的信息和質量無關的信息;接著利用結構化動態PCA算法改進的DLV方法將含有較大差異的質量無關信息在DiPLS的殘差空間進一步分解,將殘差中的動靜態信息和大小的差異信息進行有效分離,并構造合適的統計指標,建立了完整的過程監測策略.

2 DiPLS算法基礎理論

標準PLS算法從輸入數據中提取潛在變量來解釋輸出數據,并在輸入和輸出數據之間建立線性代數關系.對m個過程變量進行n次不同采樣測量,形成輸入矩陣X.對p個質量變量進行n次不同采樣,形成輸出矩陣Y.假設X的潛在變量為t=Xw,Y的潛在變量為u=Y c,w和c為權重向量,PLS的目標函數是尋求潛變量之間的協方差最大,即

顯然,這個目標只描述了輸入數據中與輸出數據最相關的靜態變化.但是,它不能提取輸入輸出數據之間的動態變化或關系.基于此,Dong和Qin[16]提出了一種用于動態數據建模的動態內PLS建模方法,使外部模型的潛在因素更易于解釋.當前k時刻的輸出潛變量uk與歷史時刻輸入潛變量tk之間動態關系的模型構造如下:

其中:rk為當前時刻殘差;βi為輸入得分t的權重系數,i=0,1,···,s,s為系統模型階數.內部預測模型為

其中:β=[β0β1··· βs]T,β ?w為克羅內克積.由此,DiPLS的目標函數是尋找uk與之間的相關程度(或協方差)最大化,故目標函數可以被表述為

其中N=n-s.

給定訓練集輸入輸出樣本{Xxun,Yxun},采用歸一化的預處理方法消除數據間差異的影響,得到數據{X,Y},xi和yi表示第i個采樣點的數據,則X和Y表示如下:

利用增廣數據矩陣的原理對輸入輸出矩陣進行數據擴充,可以得到

故DiPLS的目標函數可以被重新表述為

該目標通過搜索權重向量w和系數矩陣β來表示過程變量空間主要的質量相關的動態變化.這種動態擴展不增加w的維數,并從原始空間中提取動態相關的顯式潛在變量.采用拉格朗日乘子法優化該目標函數,對β和w求偏導后可以得到q,w和β的具體計算公式.用提取的動態潛在分數對輸入矩陣X進行壓縮,循環迭代直到提取出所有的潛在信息.在附錄1中總結了DiPLS算法的詳細步驟.

由于輸入X的得分矩陣T無法直接從Xxun計算得到,故引入權重矩陣R:R=[r1r2··· rA],rj=wj·()-1,j=1,2,···,A,A為主元個數.

由此,輸入X的空間被DiPLS算法分解為

式中:P=[p1p2··· pA]為自變量X的負載矩陣;,Q=[q1q2··· qA]分別為Ys的得分矩陣和負載矩陣;Ed,Yd分別是數據矩陣X,Ys經過DiPLS處理后的動態殘差.

3 動態內全潛結構投影的故障檢測方法

DiPLS對于動態系統具有很好的預測能力,但是Dong和Qin[16]并沒有將DiPLS算法應用到故障檢測.因此本節首先基于DiPLS提出采用向量自回歸的動態故障檢測方法;此外,針對DiPLS的殘差空間包含較大的變異,且動態靜態信息尚未完全分離,提出了擴展DiTPLS算法,構造更加合理的統計量.

3.1 基于DiPLS算法的故障檢測方法

文獻[17]指出由于采樣間隔較短,采集到的數據可能呈現出自相關或互相關關系,因此有必要將潛在得分變量進行動態擴展,以便使用過去的數據預測當前值.這樣操作有以下優點: 1)當前時刻的得分分量可以作為已知信息從過去的數據中預測出來,因此不確定性只存在于預測誤差上;2)可以構建更加合理的統計量和控制限,使得故障檢測結果更加可靠.

為了方便統計監測[17],將得分矩陣ti=RTxi動態擴展為Ti=[ti ti+1···ti+N].建立Ts與T0,T1,···,Ts-1之間的動態關系為

通過對歷史數據的預測,得分向量的預測誤差為

此時輸入X和輸出Ys被壓縮為

由于Ti在時域內是自相關的,采用T2統計量直接進行監測會導致高誤報率.文獻[11]表明,v幾乎與之前的時刻無關且具有較大的變異性,因此適合用獨立無關的v來反應Ts的變化.

3.2 擴展DiTPLS算法的模型

雖然DiPLS是一個動態模型,但它對X空間進行了靜態分解,因此殘差Ed中仍存在較大差異,如動態、靜態的互相關關系,會導致僅使用Q統計量監測不合理.同時文獻[12]也指出現有的動態建模方法沒有區分動態關系和靜態關系,且許多滯后變量在擴展向量中并不能保持原變量空間的結構.為了在動態模型中保持殘差的空間結構,本文基于結構化動態主層次分析(dynamic principal component analysis,DPCA)算法提出一種改進的動態潛變量模型用于動態殘差的分解,并描述了殘差變量間的動、靜態之間的相互關系,方便建立合適的統計指標進行監測.

對βd和wd求偏導,得到

根據克羅內克積的性質,可以得到

為了方便后續計算,定義下式

結合上述已知信息,式(19)–(20)可化簡為

使式(25)中各項右乘和,結合式(17)中的約束條件和一階偏導的性質,為了使目標函數最大化,可以得到以下結果:結構化DPCA算法空間分解與DiPLS算法十分相似,即

式中Eg,Pd分別為Ed的動態殘差和動態負載矩陣.

同時潛在變量數據中包含的較多的動態特性,也需通過建立動態模型來體現其內部的自相關特性.于是用時間序列模型(或向量自回歸模型,VAR)將當前時刻k的得分向量tdk描述如下:

在提取質量無關的動態因素后,Eg的自協方差很小,這為進一步提取靜態相關的信息提供了條件.因此,有必要通過靜態PCA算法進一步分解Eg,提取質量無關的靜態信息,即Eg=Tg+Es,其中:Tg為靜態得分矩陣,Pg為靜態負載矩陣,Es為靜態殘差矩陣.在表1中總結了基于結構化動態PCA的改進DLV方法的回歸建模流程的詳細步驟.

表1 改進DLV模型的算法步驟Table 1 Algorithm steps of improving DLV model

本文所提擴展DiTPLS算法首先采用DiPLS算法提取質量相關的動態信息,隨后采用改進的DLV模型進行殘差分解.基于DiPLS的擴展算法提取了低維潛在空間和動態殘差空間中的大部分動態變化和較大的靜態變化,顯式地表達了動態、靜態關系;也明確地提取了自相關和互相關信息,并在動態模型中保持可變的空間結構,進而使動態模型具有清晰的數學描述.數據空間最終被分解為

所提算法DiTPLS在輸入空間上進行了傾斜分解,不同的子空間中描述了不同變量之間的動態關系和各變量之間的自相關關系,如式(32)所示.

因此不同空間有不同的含義:SY表示質量相關的動態子空間;SD表示質量無關的動態子空間;SG表示質量無關的靜態子空間;SE表示殘差空間.

3.3 基于DiTPLS算法的過程監測策略

本文所提算法分別對質量相關部分采用DiPLS算法進行建模與監測,質量無關部分采用改進的DLV算法進行建模與監測.當給定一組新的測試樣本{xce,yce},經預處理后得到{xnew,ynew},分別構造如下過程監測指標:

基于DiTPLS模型構建的統計指標總結如表2所示.對于T2統計量,控制限由主元個數A、樣本數n以及置信度α確定,且服從F分布;Λ為得分向量t的協方差矩陣,由訓練樣本進行估計;對于Q統計量,g=S/(2μ),h=(2μ2)/S,μ為樣本均值,S為樣本方差,且服從χ2分布.這些檢測指標對統計過程監控具有顯著的意義.表示動態主潛變量中的統計獨立信息,包含數據中的主要動態變化;表示殘差的動態主潛變量中的統計獨立信息,包含殘差中與質量無關的動態變化;反映靜態主變化,其中包含數據中的靜態變化;Qs反應了正常未激發的或未建模子空間的變化.

表2 DiTPLS模型的統計指標Table 2 Statistical Indicators of DiTPLS model

綜上所述,將所提DiTPLS算法的完整建模過程和過程監測步驟總結如下:

1)將訓練樣本數據經預處理、數據擴充后進行DiPLS動態建模,提取動態潛在變量,捕捉質量相關的動態變化,計算控制限Jth,T2y;

4 實驗驗證

4.1 數值仿真實驗

為說明DiTPLS模型的有效性,用數值仿真案例驗證.輸入輸出均由動態模型生成,如式(33)所示,其中矩陣A1,A1,P,C1,C2,B1,B2的參數參考文獻[10]中的數值仿真案例,其中ek ~N(0,0.12I5),vk ~N(0,0.12I2),tk ~N(0,12I3),(0,12I3).此次數值仿真中生成1000個數據點: 其中訓練集的數據均為未注入故障的正常樣本;而測試集的前200個數據點為正常樣本,后800個數據點為故障樣本,方便形成對比實驗用于對比檢測結果.本文所提DiTPLS模型通過交叉驗證確定的最優參數為A=3,Ad=3,系統模型階數為s=3.并選取動態總PLS(DTPLS)[10].DTPLS有著與本文所提算法DiTPLS相似的空間劃分方式: 質量相關的動態子空間SY、質量無關的動態子空間SD、質量無關的靜態子空間SS以及反應殘差變化的子空間SE,通過交叉驗證選取的主元個數為ADT=3,模型階數sDT=3.

對于故障檢測效果的驗證,可以通過比較質量相關故障樣本中實際檢測到的故障個數與故障樣本總數的比值即故障檢測率(fault detection rate,FDR)來表現;由于質量無關故障對輸出無影響,因此質量無關故障樣本在實際檢測時不應該檢測到故障發生,若檢測到故障發生則表明此時發生了誤報警情況,即用故障誤報率(false alarm rate,FAR)來表現.若前者越接近1,則表明所提算法對質量相關故障檢測效果越好;若后者越接近0,則表明所提算法對質量無關故障的檢測效果越好.

1)當tk=tk-1+[0,4,4]T,k≥200,質量相關子空間受到了明顯影響,質量無關子空間未發生故障,此時表明發生了質量相關故障,如圖1–2所示.經計算DiTPLS和DTPLS在質量相關動態子空間的故障檢測率達到了99%以上,能較好的提取出質量相關的動態信息.在質量無關的動態子空間和質量無關的靜態子空間,DiTPLS誤報警情況出現的次數明顯多于DTPLS.造成這樣的原因可能是在采用改進DLV模型對殘差進行動靜態信息分離時,為保持殘差的空間結構做出的犧牲.

圖1 DTPLS對質量相關故障的檢測結果Fig.1 DTPLS detection results for quality-related faults

圖2 DiTPLS對質量相關故障的檢測結果Fig.2 DiTPLS detection results for quality-related faults

從圖中可以發現前200采樣時刻都有少量統計量超過控制限的現象,但又會立馬會恢復到控制限以下,使整體樣本都保持著相同的趨勢.造成這種現象的原因是T2統計量的控制限由主元個數A、樣本數n以及置信度α決定,而一般選取的置信度α=0.99,故存在的少量噪聲或微小變化會使得少量數據超過控制限.

2)當xk=xk-1+[3.70000]T,k≥200,質量無關空間受到明顯影響,質量相關空間無變化.圖3–4展示了質量無關故障發生時DTPLS和DiTPLS算法各子空間的監測效果,并給出了部分數據的放大圖.經計算對于質量無關的故障,在質量相關的動態子空間DiTPLS發生故障誤報警率為的故障為7.88%,而DTPLS的誤報率為11.78%.在質量無關的靜態子空間中,DiTPLS能檢測到所有的質量無關故障樣本,而DTPLS僅能檢測到30.2%的故障.在質量無關的靜態子空間和殘差子空間,兩種算法都有較好的檢測效果,故障檢測率均在98%以上.

圖3 DTPLS對質量無關故障的檢測結果Fig.3 DTPLS detection results for quality-independent faults

圖4 DiTPLS對質量無關故障的檢測結果Fig.4 DiTPLS detection results for quality-independent faults

通過數值仿真的實驗表明: DiTPLS和DTPLS算法都能較好的提取質量相關的動態信息,對質量相關故障保持較好的故障檢測效果;但對于質量無關的故障,本文所提DiTPLS算法具有明顯的優勢.

4.2 TE過程仿真實驗

田納西–伊斯曼(Tennessee-Eastman,TE)過程是一個典型的包含快速和緩慢動態混合特性的復雜過程,被廣泛應用于動態過程的故障檢測與故障診斷實驗驗證,文獻[19–21]也表明該過程確實具有動態特性.因此,本節采用田納西–伊斯曼實驗仿真平臺得到的公開數據集進行實驗驗證.

TE仿真平臺在仿真時,通過對輸入的進料量、濃度等的控制得到41個過程變量和11個操縱變量,共52個的觀測變量,也可以模擬21種故障.獲取的數據樣本大致分為正常數據樣本d00.dat和不同故障類型的樣本d01.dat–d21.dat.正常數據樣本是在25 h運行仿真下獲得,觀測數據總數為500.而對于故障樣本,是在48 h的仿真下獲得,獲取960個樣本,其中包含160個正常樣本和800個故障樣本.文獻[22–23]指出區分質量無關故障與質量相關故障的標準是: 對于選定的質量輸出過程變量或輸出殘差的統計量,如果能被包含故障的輸入變量所影響(即超過控制限),且受影響的樣本數占故障樣本總數超過0.1,那么該輸入變量為質量相關故障,反之則為質量無關故障.關于TE過程的故障描述,故障分類可參看文獻[24–26].

本文選取的輸入變量為過程變量(1–22)與控制變量(1–11),質量輸出變量為過程變量(35).通過交叉驗證選取主元個數:Ad=6,Ad=16,模型階數sDiT=3.DTPLS通過交叉驗證選取的主元個數為ADT=4,模型階數sDT=3;DMPLS[27]將輸入空間分解為質量相關動態空間和殘差空間,選取的主元個數為ADM=1,模型階數sDM=3.

對于質量相關部分,將3種算法的故障檢測率結果總結如表3所示.由表中數據可以發現: 3種算法在提取質量相關的動態信息時,DMPLS對故障5和故障10有非常好的監測效果,檢測率有較大幅度的提高,分別達到了99.38%和67.67%;DTPLS算法能監測到故障14的所有故障;而本文所提DiTPLS算法能更好的監測到故障1–2,7–8,13的發生,特別是對于故障7–8的故障檢測率均提高了將近20%;在提取質量無關的動態信息時,DTPLS和DiTPLS對各個故障的誤報警情況都較為嚴重,如故障1–2,6–8,12–14的誤報率均在90%以上,部分故障的誤報率率高達99%,幾乎不能監測到質量無關的動態信息;在提取質量無關的靜態信息時,DiTPLS算法對故障7的誤報警情況有明顯的降低,而DTPLS算法對故障5,10存在更少的誤報警情況,特別是對于故障10的監測,故障誤報率降低了70%.圖5展示了故障7的質量相關動態子空間監測圖和DMPLS算法部分測試數據的局部放大圖,從圖中可以看到: DMPLS算法僅在故障發生時刻附近能較好的監測到故障的發生;與DiTPLS算法相比,DTPLS算法能監測到部分故障,故障漏報的情況較為嚴重;DiTPLS算法能監測到大部分的故障,但也存在少量故障漏報的現象.

圖5 故障7的質量相關動態子空間監測圖Fig.5 Quality-dependent dynamic subspace monitoring diagram of fault 7

表3 質量相關故障檢測率(%)Table 3 Quality-related fault detection rate(%)

對于質量無關的部分,將3種算法的故障檢測率結果總結如表4所示.由表中數據可以發現: 對于質量相關的動態子空間,DMPLS的故障誤報率較大,對故障4,11的誤報率達到了將近30%;DTPLS算法對故障4誤報率較低;而DiTPLS算法對故障3,9,15的誤報率較低,僅有不到3%;但是3種算法對故障11都有較高的誤報率;對于質量無關的動態子空間,DTPLS和DiTPLS算法的故障檢測情況基本相似,對故障4,11檢測率情況較好,對微小故障3,9,15檢測率情況較低,但兩者中DiTPLS算法具有更好的故障檢測效果;對于質量無關的靜態子空間,DTPLS和DiTPLS算法對故障3,9,15的檢測結果基本類似,檢測率不到5%;對于故障4,11,DiTPLS的檢測率較低,漏報警的情況較為嚴重.總的來說,在質量相關的動態子空間,DiTPLS算法具有更少的誤報警;在質量無關的動態子空間,DiTPLS算法具有更好的故障檢測效果;但在質量無關的靜態子空間里,DTPLS算法有更好的故障檢測效果.

表4 質量無關故障誤報率(%)Table 4 False alarm rate of quality-independent faults(%)

在圖6中展示了故障15在質量相關動態子空間的監測結果圖,橫坐標為采樣時刻,縱坐標為計算的統計量值,從圖中可以明顯看出DiTPLS算法有更少的故障誤報情況.在圖7中展示了故障15在質量無關子空間的監測結果圖,2種算法的故障檢測情況相差不大,比較明顯的是2種算法對動態部分的檢測效果都比靜態部分的檢測效果要好,說明2種算法都能更好地提取質量無關的動態信息.

圖6 故障15的質量相關動態空間監測圖Fig.6 Quality-dependent dynamic space monitoring diagram of fault 15

圖7 故障15的質量無關空間監測圖Fig.7 Quality-independent space monitoring diagram of fault 15

實驗結果表明: 1)該模型是DiPLS模型的動態擴展,可有效地檢測與質量相關的異常情況;2)DiTPLS模型沒有改變對輸出Y的預測能力,但它分解了輸入X的殘差空間;3)該算法捕獲了質量數據塊和測量數據塊之間的動態關系以及殘差中的相關性信息,并將測量數據塊分解成4個子空間分別構造各自的統計量,建立了一套完整的故障監測策略,提高了故障檢測性能.

綜上所述,DiTPLS算法能更好的監測到質量相關故障的發生,能較好的提取動態信息;對質量無關故障有更少的誤報警.但是對于質量無關的靜態信息,DTPLS 算法對于質量相關的故障有更少的誤報警情況,對于質量無關的故障有更好的檢測效果.

5 結論

本文提出了一種基于DiPLS的擴展方法,該算法采用DiPLS算法提取主要的動態變化,并基于結構化動態PCA算法構建的潛在變量模型提取殘差空間的動態特征.所提取的動態信息和殘差中的協方差信息使模型有清晰的數學描述,提高了質量相關空間的過程監測性能,也提高了一些微小故障的檢測靈敏度.與DTPLS和DMPLS方法相比,DiTPLS提高了質量相關故障的檢測效果,又能很好地提取質量無關空間的動態信息.并通過數值仿真和TE過程的數據,驗證了所提算法的有效性.

本文所提算法在質量無關靜態子空間對質量相關故障的誤報率漏報率輕微上升,對質量無關故障的檢測率有較大下降,因此如何更好的提取質量無關的靜態信息和基于該方法的故障診斷方法是在以后的研究中急需要解決的問題.

附錄1 DiPLS算法的詳細步驟

建立外部模型:

猜你喜歡
殘差靜態動態
國內動態
國內動態
基于雙向GRU與殘差擬合的車輛跟馳建模
國內動態
最新進展!中老鐵路開始靜態驗收
基于殘差學習的自適應無人機目標跟蹤算法
動態
基于遞歸殘差網絡的圖像超分辨率重建
猜猜他是誰
平穩自相關過程的殘差累積和控制圖
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合