馮立偉,郭少鋒,吳弋飛,邢 宇,李 元
(1.沈陽化工大學(xué)理學(xué)院,遼寧沈陽 110142;2.沈陽化工大學(xué)計算機科學(xué)與技術(shù)學(xué)院,遼寧沈陽 110142;3.沈陽化工大學(xué)信息工程學(xué)院,遼寧沈陽 110142)
為滿足人們對系統(tǒng)安全性、可靠性的不斷增長的期望和需求,基于數(shù)據(jù)驅(qū)動的過程控制和故障檢測技術(shù)得到了廣泛的應(yīng)用[1-2]。
過程的多階段、動態(tài)性和非線性特征都是常見的導(dǎo)致故障難以檢測的重要原因[3-4]。具有動態(tài)性的過程變量隨時間變化,靠前時刻的樣本影響靠后時刻的樣本,前后時刻的樣本間存在時序上的相關(guān)性。為此Ku等人提出了動態(tài)主元分析(dynamic principal component analysis,DPCA)[5],RATO等人對時滯參數(shù)的選取進(jìn)行了進(jìn)一步的研究[6]。DPCA利用構(gòu)造時滯矩陣的方式來減弱前后時間點樣本之間的時序關(guān)聯(lián),部分克服了動態(tài)性的影響。但未考慮多階段和非線性問題。針對非線性和多階段特征的影響,He等提出了基于k 近鄰規(guī)則(k nearest neighbor rule,kNN)[7]的故障檢測方法,但該方法無法處理疏密程度不同的多階段問題。Breunig 等提出基于局部離群因子(local outlier factor,LOF)[8]的故障檢測方法克服了此問題。此外,Ma 等人提出了基于局部近鄰標(biāo)準(zhǔn)化和主成分分析(local neighbor standardization and principal component analysis,LNS-PCA)[9]的故障檢測方法。LNS 能夠轉(zhuǎn)化多階段過程數(shù)據(jù)為近似服從標(biāo)準(zhǔn)正態(tài)分布的單一階段的數(shù)據(jù),成功克服多階段和非線性的影響。但上述故障檢測方法又未考慮動態(tài)性的影響。
針對上述問題,提出了基于時空近鄰標(biāo)準(zhǔn)化和主成分分析(time-space nearest neighborhood standardization and principal component analysis,TSNSPCA)的故障檢測方法。通過TSNS 處理使該過程數(shù)據(jù)近似服從單一階段的多元高斯分布,并分離故障樣本,然后再使用PCA對過程進(jìn)行故障檢測。
設(shè)X∈Rm×n,m表示樣本個數(shù),n表示變量個數(shù),對X進(jìn)行Z-score標(biāo)準(zhǔn)化后為X0。PCA可以將X0分解為:
其中T∈Rm×r和P∈Rn×r分別是X0的得分矩陣和負(fù)載矩陣,r是選取的主元個數(shù)。是殘差矩陣。
T2和SPE統(tǒng)計量是用于檢測異常情況的常用過程監(jiān)控指標(biāo)。對于新樣本g∈R1×n,計算其T2和SPE統(tǒng)計值。
采用核密度估計技術(shù)來計算T2和SPE統(tǒng)計量的控制限,并基于測試樣本的統(tǒng)計值是否大于控制限的值來判斷過程是否發(fā)生異常。
TSNS 能夠?qū)⒍嚯A段數(shù)據(jù)高斯化為單一階段的數(shù)據(jù),分離故障樣本,同時去除前后時刻樣本間的時序相關(guān)性[10-11]。
TSNS 的主要步驟以一個樣本u為例進(jìn)行說明。首先,計算u的時間上前N 近鄰集Nt(u),該近鄰集中的樣本按照時序距離大小升序排列。
計算Nt(u)中每個樣本的空間上前K 近鄰集Ns(ut),ut代表u的時間上第t 近鄰樣本,t∈[1,N]。Ns(ut)中的樣本按照空間中歐式距離的大小升序排列。
求出N 個空間近鄰集Ns(ut)的均值m(Ns(ut))和標(biāo)準(zhǔn)差s(Ns(ut))。
使用N 個空間近鄰集的均值和標(biāo)準(zhǔn)差對樣本u進(jìn)行時空近鄰標(biāo)準(zhǔn)化。
通過TSNS將具有動態(tài)性和非線性特征的多階段過程數(shù)據(jù)轉(zhuǎn)化為近似服從單一階段的多元高斯分布的數(shù)據(jù),并剔除過程的動態(tài)性,使故障更容易被檢出。
過程正常運行時采集數(shù)據(jù)作為訓(xùn)練集,過程運行時引入故障獲得測試集。TSNS-PCA 對過程進(jìn)行故障檢測的步驟如下:
離線建模:
①計算每個訓(xùn)練樣本時間和空間上的近鄰信息,并求出空間上近鄰信息的均值和標(biāo)準(zhǔn)差,通過(8)式分別對各階段的訓(xùn)練樣本進(jìn)行標(biāo)準(zhǔn)化。
②使用PCA通過(1)式將TSNS處理后的訓(xùn)練數(shù)據(jù)進(jìn)行分解,求出負(fù)載矩陣和得分矩陣。
③通過(2)和(3)式分別計算出每個訓(xùn)練樣本的T2和SPE統(tǒng)計值,并使用核密度估計確定T2和SPE的控制限。
在線檢測:
①使用相同時刻訓(xùn)練樣本的近鄰信息對測試樣本進(jìn)行時空近鄰標(biāo)準(zhǔn)化。
②使用建模過程中得到的負(fù)載矩陣和得分矩陣通過(2)和(3)式計算每個測試樣本的T2和SPE統(tǒng)計值。
③將測試樣本的統(tǒng)計值與建模時得到的控制限進(jìn)行對比判斷過程是否出現(xiàn)故障。
使用Pensim 仿真平臺[12]模擬青霉素發(fā)酵過程產(chǎn)生實驗數(shù)據(jù),多項研究[13-14]已經(jīng)證明該平臺實用性非常出色。該平臺共給出了18個變量來控制仿真,選取其中12個重要的變量[15]進(jìn)行實驗,變量選取見表1。
表1 青霉素發(fā)酵過程選取變量
設(shè)置仿真時長400h,采樣間隔1h。過程正常狀態(tài)下采集一批數(shù)據(jù)作為訓(xùn)練集。通過在前3 個變量上添加階躍、斜坡兩種擾動設(shè)置6 種故障,起止時間皆為51-400h,故障描述見表2。對應(yīng)生成6個批次的測試集。
使 用PCA、DPCA、kNN、LOF、LNS-PCA 和TSNS-PCA 方法分別對青霉素發(fā)酵過程進(jìn)行故障檢測,置信度都取97%。PCA、DPCA、LNS-PCA和TSNS-PCA 根據(jù)得分貢獻(xiàn)率不低于90%的要求分別選取主元個數(shù)為5、6、8、7。DPCA 設(shè)置時滯參數(shù)l為3。kNN 和LOF 均設(shè)置近鄰數(shù)k 為4。LNSPCA 設(shè)置近鄰數(shù)K 為7。TSNS-PCA 設(shè)置時間近鄰數(shù)N 為4,空間近鄰數(shù)K 為7。測試集的故障檢測率見表3。
表3 測試集的故障檢測率 單位/%
從表3 可以看出所有方法對f1-f3 批次中的故障檢測率均較高,對于f4-f6 批次中的故障,TSNSPCA 具有最高的故障檢測率。
以f4 批次為例分析所用方法故障檢測效果好壞的原因,f4 批次的故障發(fā)生在攪拌功率上。從圖1(a)部分變量的空間散點圖可以看出青霉素發(fā)酵過程是一個具有非線性特征的多階段過程。圖2(a)空氣流量的自相關(guān)系數(shù)圖表明過程前后時刻樣本間存在顯著的時序相關(guān)性。PCA、DPCA 的故障檢測都假設(shè)過程數(shù)據(jù)服從單一階段的多元高斯分布,且要求過程數(shù)據(jù)必須是穩(wěn)態(tài)的,實驗數(shù)據(jù)不符合條件,故檢測率低。kNN 和LOF 分別使用與近鄰樣本的歐式距離平方和以及相對密度作為統(tǒng)計量,都能對具有非線性特征的多階段過程進(jìn)行故障檢測。LOF 考慮了疏密程度因素的影響,所以故障檢測率要高于kNN。但兩者均未考慮時序相關(guān)性的影響問題,故檢測率欠佳。
圖1 TSNS前后部分變量的空間散點圖
圖2 TSNS前后空氣流量的自相關(guān)系數(shù)圖
TSNS 相較于LNS 在標(biāo)準(zhǔn)化時加入了時間信息,能夠幫助分離空間上正常而時間上發(fā)生偏離的故障樣本。故TSNS-PCA 的故障檢測率高于LNS-PCA。圖1(b)為TSNS 后部分變量的空間散點圖,多階段數(shù)據(jù)被轉(zhuǎn)化為了單一階段的數(shù)據(jù),且故障被明顯分離了出來。圖2(b)為TSNS 后空氣流量的自相關(guān)系數(shù)圖,時序相關(guān)性被顯著降低了。TSNS 后底物濃度、溶解氧濃度、菌體濃度的頻率分布見圖3。TSNS 后的數(shù)據(jù)近似服從單一階段的多元高斯分布,滿足了PCA 故障檢測方法對過程數(shù)據(jù)的假設(shè)條件,所以TSNS-PCA 的故障檢測率很高,如圖4。
圖3 TSNS后變量8、9、10的頻率分布圖
圖4 TSNS-PCA對f4批次測試集的故障檢測圖
TSNS 將復(fù)雜多階段過程數(shù)據(jù)轉(zhuǎn)化為近似服從單一階段的多元高斯分布的數(shù)據(jù),并剔除過程的動態(tài)性特征,能夠提升PCA在故障檢測方面的能力。
在實際工業(yè)生產(chǎn)中,生產(chǎn)過程往往變得越來越復(fù)雜,不再具有單一特征。傳統(tǒng)的故障檢測方法往往無法有效監(jiān)控這種復(fù)雜的多階段過程。TSNSPCA 方法采用了TSNS 預(yù)處理技術(shù)來使得過程數(shù)據(jù)更符合PCA 方法的要求,從而顯著提高了故障檢測率。TSNS-PCA 能夠更好地保證過程的安全性和可靠性。