張運(yùn)鋒,陽春華,周飛躍,黃科科,桂衛(wèi)華
(1.中南大學(xué) 自動化學(xué)院,湖南 長沙 410083;2.楚天科技股份有限公司,湖南 長沙 410600)
近年來,工業(yè)系統(tǒng)朝著大型化、集成化和自動化方向發(fā)展[1-2]。這種趨勢使得工業(yè)系統(tǒng)變得越來越復(fù)雜,各子系統(tǒng)之間相互耦合,各變量之間相互影響[3-4],如果系統(tǒng)中發(fā)生了故障,該故障通常會由源頭變量傳播至多個相關(guān)變量,從而導(dǎo)致系統(tǒng)多項指標(biāo)超出設(shè)計范圍,造成多個報警,一連串的報警會給操作員帶來很大的壓力,而且操作員并不能根據(jù)多個報警準(zhǔn)確地判斷故障原因,也就不能有相應(yīng)地恢復(fù)操作。故障源頭定位和傳播路徑識別可以找到最先受故障影響的變量,識別早期故障傳播路徑,從而可以為操作員提供準(zhǔn)確的故障信息。
現(xiàn)有的故障定位方法主要包括基于貢獻(xiàn)直方圖的方法和基于因果分析的方法。其中,基于貢獻(xiàn)直方圖的故障診斷方法的原理是在檢測到故障發(fā)生后,系統(tǒng)運(yùn)行狀態(tài)會偏離正常運(yùn)行范圍,識別各個變量對這種變化的影響程度,認(rèn)為影響程度較大的變量應(yīng)該在故障傳播的源頭位置。LI等[5]提出了基于貢獻(xiàn)直方圖的全潛結(jié)構(gòu)投影(Total Projection to Latent Structure, T-PLS)監(jiān)測方法,并通過計算各個變量對于監(jiān)測指標(biāo)的貢獻(xiàn)度來進(jìn)行故障定位。CHAO等[6]提出了稀疏貢獻(xiàn)直方圖的故障診斷方法并應(yīng)用到多工況化工過程。HUANG等[7]提出一種分布式字典學(xué)習(xí)方法,并利用稀疏貢獻(xiàn)圖來定位故障源變量,為了監(jiān)測非線性過程,又提出一種基于核的非線性字典學(xué)習(xí)方法,并應(yīng)用基于迭代重構(gòu)的方法來進(jìn)行故障定位[8]。雖然基于貢獻(xiàn)直方圖的方法能夠給出變量對于故障的貢獻(xiàn)程度,診斷出故障,并且被廣泛地應(yīng)用到實際過程,但是這類方法還存在一些問題:①會出現(xiàn)故障定位不準(zhǔn)的問題,故障源頭變量可能不是貢獻(xiàn)度最高的變量,相反受故障影響的變量的貢獻(xiàn)度最高,這會導(dǎo)致誤診斷;②多個變量貢獻(xiàn)度超出閾值,受故障影響的變量較多,都會偏離正常的運(yùn)行范圍,導(dǎo)致多個變量超出閾值范圍而被判定為故障變量,這就不能準(zhǔn)確地判斷故障源頭。如圖1所示,故障源頭均為變量1,即故障最先在變量1發(fā)生,然后傳播至其他變量,第一組實驗以傳播鏈形式傳播,第二組實驗以級聯(lián)的形式傳播,變量5和6不在傳播鏈上。在傳播鏈實驗中,實際的故障的源頭是變量1,但是根據(jù)基于T2指標(biāo)的貢獻(xiàn)直方圖分析,變量1對于故障的貢獻(xiàn)度遠(yuǎn)小于變量2的貢獻(xiàn)度,因此變量2更有可能是故障源頭,這就表明傳統(tǒng)的基于貢獻(xiàn)直方圖的故障診斷方法存在故障定位不準(zhǔn)的問題。在對第二組故障數(shù)據(jù)進(jìn)行貢獻(xiàn)直方圖方法分析過程中,參考文獻(xiàn)[9]閾值設(shè)置方式,將閾值設(shè)置為0.167,發(fā)現(xiàn)多個變量的基于T2指標(biāo)貢獻(xiàn)度都超出閾值,這樣的結(jié)果就不能提供準(zhǔn)確的故障源頭信息。
為了解決上述問題,基于因果分析的方法受到了廣泛的關(guān)注,其基本原理是分析變量間的因果關(guān)系,利用因果關(guān)系構(gòu)建信息傳播網(wǎng)絡(luò),通過傳播網(wǎng)絡(luò)定位故障源變量,從而解決故障定位不準(zhǔn)的問題。代表性方法包括格蘭杰因果分析[10-11]、貝葉斯網(wǎng)絡(luò)[12-13]和傳遞熵[14-15]。PYUN等[16]應(yīng)用多變量格蘭杰因果分析方法對變量進(jìn)行因果分析,從而實現(xiàn)故障定位。LEE等[17]提出一種傳遞熵方法和圖形lasso方法結(jié)合來對工業(yè)過程進(jìn)行故障診斷和定位[17]。為了更加清晰地了解故障變量影響關(guān)系,識別故障信息傳播路徑,進(jìn)而實現(xiàn)故障源頭定位,越來越多的研究在因果分析的基礎(chǔ)上將因果圖的構(gòu)建引入進(jìn)來。SU等[18]提出一種基于傳遞熵和修正條件互信息的方法并且利用傳遞熵方法構(gòu)建因果圖來實現(xiàn)故障定位。DONG等[19]提出一種基于先驗知識的因果網(wǎng)絡(luò)構(gòu)建方法和基于偏相關(guān)系數(shù)的故障診斷方法。MA等[20]提出一種新型分段的貝葉斯網(wǎng)絡(luò)框架來對質(zhì)量相關(guān)的故障構(gòu)建因果影響網(wǎng)絡(luò),從而實現(xiàn)故障信息傳播路徑的識別。雖然基于因果圖的故障診斷方法已經(jīng)有了廣泛地應(yīng)用,而且表現(xiàn)出很好的效果,但是這類方法還存在以下3個問題:①在構(gòu)建因果圖時通常需要分析所有變量的因果關(guān)系,這個過程計算量大而且所構(gòu)建出的因果網(wǎng)絡(luò)較為復(fù)雜;②在構(gòu)建因果圖時通常需要先驗知識,這些知識在實際過程中很難得到;③傳統(tǒng)的因果圖構(gòu)建時通常只關(guān)注變量的相互影響情況,而沒有對影響關(guān)系的時滯進(jìn)行研究。
為解決傳統(tǒng)基于因果圖的故障診斷方法所構(gòu)建的因果網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜、過程計算量大、依賴先驗知識和沒有考慮因果影響時滯的問題,本文提出了基于變量因果圖的故障定位和傳播路徑識別方法(Causality Diagram oriented Propagation Path Identification and Fault Isolation, CDPPIFI),該方法能夠在沒有先驗知識的條件下識別故障傳播網(wǎng)絡(luò)和網(wǎng)絡(luò)中變量的影響關(guān)系,從而定位故障源變量并準(zhǔn)確地檢測故障發(fā)生時間。該方法步驟具體包括: ①故障預(yù)診斷,對故障進(jìn)行預(yù)檢測,檢測到故障發(fā)生后,利用貢獻(xiàn)直方圖的方法對數(shù)據(jù)進(jìn)行分析,將故障貢獻(xiàn)度最高的變量定為潛在故障變量;②構(gòu)建因果圖模型,在訓(xùn)練階段分析真實因果關(guān)系和非真實因果關(guān)系特點,構(gòu)建因果關(guān)系閾值,以潛在故障變量為起點,分析變量間因果關(guān)系,并利用因果關(guān)系閾值對真實因果進(jìn)行篩選,根據(jù)真實因果關(guān)系分析結(jié)果,構(gòu)建故障變量因果圖模型,并對因果圖模型進(jìn)行溯源定位到故障源變量;③故障重檢測,對定位到的故障源變量構(gòu)建監(jiān)測指標(biāo),進(jìn)行重檢測,找到準(zhǔn)確的故障發(fā)生時間。據(jù)筆者所知,目前尚未有基于因果圖來進(jìn)行故障定位和傳播路徑識別的方法,因此,本文的主要貢獻(xiàn)包括:
(1)提出CDPPIFI方法,該方法能夠分析故障發(fā)生后變量間的因果關(guān)系,從而識別故障傳播路徑。
(2)CDPPIFI方法能夠?qū)收蟼鞑ヂ窂竭M(jìn)行溯源,并準(zhǔn)確定位故障源,同時能夠辨識故障傳播的時滯。
(3)通過控制系統(tǒng)數(shù)值實驗和CSTR基準(zhǔn)實驗,驗證了CDPPIFI方法的有效性。
本文所提出的基于變量因果圖的故障定位和傳播路徑識別方法如圖2所示。該方法主要包括故障預(yù)診斷、因果圖模型構(gòu)建、故障重檢測3個步驟,能夠識別出故障傳播路徑并定位故障源頭,通過對故障源頭變量重檢測,提升故障檢測效果,接下來對算法步驟進(jìn)行詳細(xì)描述。
故障預(yù)診斷能夠確定潛在的故障變量,為后續(xù)的故障變量相關(guān)的因果圖模型構(gòu)建提供參考,降低傳播網(wǎng)絡(luò)的復(fù)雜度,主要包括離線建模、故障預(yù)檢測和貢獻(xiàn)度分析3個步驟。
2.1.1 離線建模
對基于變量因果圖的故障定位和傳播路徑識別算法輸入所監(jiān)測系統(tǒng)正常工況下的運(yùn)行數(shù)據(jù)X0=[x1,…,xn]∈Rm×n,其中m表示數(shù)據(jù)長度,n表示變量維度,按式(1)對數(shù)據(jù)X0進(jìn)行標(biāo)準(zhǔn)化,得到數(shù)據(jù)矩陣X∈Rm×n
(1)
(2)
然后對S進(jìn)行奇異值分解:
S=PΛPΤ。
(3)
(4)
(5)
(6)
當(dāng)CPV的值超過一個確定百分比時,所對應(yīng)的l即為所保留的維度,按照T2統(tǒng)計指標(biāo)確定正常工況的閾值:
(7)
式中Fα(l,m-l)為Fisher-Snedecor分布在自由度為l和m-l時的取值,α為置信度。
2.1.2 故障預(yù)檢測
(8)
ifT2(i)>Tα,i=1,…,m′。
(9)
若上面的不等式成立,則系統(tǒng)處于故障狀態(tài),否則系統(tǒng)處于正常狀態(tài)。
2.1.3 故障貢獻(xiàn)直方圖分析
(10)
然后確定失控狀態(tài)的r(r≤l)個得分,具體確定不等式如下:
(11)
若對于第i個標(biāo)準(zhǔn)化得分滿足上面的不等式,則r的值加1,否則r的值不變,r的初始值為0。然后計算每個變量xj(j=1,…,n)對于第i個失控狀態(tài)得分ti(i=1,…,r)的貢獻(xiàn)率cont(i,j):
(12)
式中:pi,j是矩陣P的第(i,j)個元素,μj是第j個過程變量均值。對于cont(i,j)為負(fù)值的情況,直接將其定為0。然后計算第j個過程變量xj(j=1,…,n)對于每一個失控得分ti(i=1,…,r)總的貢獻(xiàn)率contj:
(13)
得到每個變量對于故障的貢獻(xiàn)度后,找到貢獻(xiàn)度最大的變量:
conth=max(cont)。
(14)
其中cont∈R1×r,則xh就是潛在的故障變量[2],認(rèn)為xh在故障影響的傳播路徑中,注意xh并不一定是故障源頭變量。
基于廣度優(yōu)先的因果圖模型構(gòu)建包括3個步驟:因果關(guān)系閾值構(gòu)建、因果關(guān)系分析和傳播路徑識別與故障定位。首先,分析過程數(shù)據(jù)的特點,構(gòu)建出能夠區(qū)分真實因果關(guān)系的閾值,排除因噪聲影響所引起的因果關(guān)系;然后,以潛在故障變量為起點,分析變量間的因果關(guān)系,并與因果關(guān)系閾值進(jìn)行比較,篩選出存在真實因果的節(jié)點,得到相關(guān)節(jié)點的節(jié)點集和有向邊集信息;最后,根據(jù)節(jié)點集和有向邊集構(gòu)建出故障信息傳遞網(wǎng)絡(luò),并對因果圖模型進(jìn)行故障溯源。
2.2.1 因果閾值構(gòu)建
在因果分析過程中,數(shù)據(jù)中的噪聲會對分析結(jié)果造成干擾,這些噪聲可能是相互傳播的,這種傳播關(guān)系代表了變量之間因果影響的關(guān)系,但是也可能這些噪聲并不相關(guān),因此因果關(guān)系的閾值構(gòu)建就非常重要,若閾值太小,則會將不相關(guān)的噪聲也識別為一種因果關(guān)系,導(dǎo)致因果網(wǎng)絡(luò)構(gòu)建不準(zhǔn)確;若閾值設(shè)置太大,則會將弱到中的因果關(guān)系排除,使構(gòu)建的因果網(wǎng)絡(luò)不全面。
考慮如圖3所示的系統(tǒng)框圖,其中輸入S0是服從(-0.1,0.1)均勻分布的隨機(jī)序列,用來模擬正常工況下的數(shù)據(jù),Si(i=1,…,4)是非線性子系統(tǒng),子系統(tǒng)方程如式(15)所示,
(15)
其中:Ai和Bi分別取0.2和0.8;q-2和q-4分別表示2時刻和4時刻的延時,設(shè)置了兩條不同的傳播路徑,為了區(qū)分兩條不同的傳播路徑,在兩條傳播路徑中分別加入了高斯白噪聲ε1和ε2,白噪聲的均值為0,方差逐漸遞增,研究噪聲對因果關(guān)系的影響。
在上述系統(tǒng)中S1-S2、S2-S3和S1-S4存在真實的因果,而S2-S4和S3-S4之間不存在真實因果,但是S2和S4都會受到S1的影響,因此從S2和S4數(shù)值輸出的角度,它們會有一定的相關(guān)性。如圖4所示,隨著噪聲的增大,變量之間的相關(guān)性都會有一定降低,但是存在真實因果變量的相關(guān)性顯著高于非真實因果變量間的因果關(guān)系,因此,本文采用相關(guān)性系數(shù)作為衡量因果關(guān)系的指標(biāo)。
2.2.2 因果關(guān)系分析
首先,生成空的節(jié)點集V(G)和有向邊集E(G),將潛在故障節(jié)點xh的節(jié)點信息存入節(jié)點集V(G){…,h,…}中,對于輸入數(shù)據(jù)X=[x1,…,xn]∈Rm×n,以xh為原因變量,以其他變量xj(j=1,…,n)為結(jié)果變量,分析它們之間的因果關(guān)系,然后顛倒其位置順序,以xh為結(jié)果變量,以其他變量xj(j=1,…,n)為原因變量,分析它們之間的因果關(guān)系,其中h≠j。本文采用拓展收斂交叉映射算法[21]計算因果關(guān)系。為了使描述不失一般性,下面的計算過程中用參數(shù)i代替h。
首先構(gòu)建變量xj的流形空間:
Mxj(t)=xj(t-τ),xj(t-2τ),…,
xj(t-(E-1)τ)。
(16)
其中1+(E-1)τ≤t≤m,然后尋找Mxj的E+1個臨近點,并將這些點與Mxj(t)間的歐氏距離從小到大排列{d1,d2,…,dE+1},記錄這些點所對應(yīng)的時間{t1,t2,…,tE+1}。然后計算這些點對于重構(gòu)數(shù)據(jù)的貢獻(xiàn)度:
(17)
(18)
(19)
(20)
(21)
(22)
若滿足上式,則表明i到j(luò)存在真實的正向因果,將節(jié)點i和j保存進(jìn)節(jié)點集V(G)中,V(G)中節(jié)點是n個節(jié)點其中之一且不重復(fù),ei→j的影響關(guān)系保存在有向邊集E(G)中,其中有向邊的權(quán)值滿足:
|ei→j|=Li→j。
(23)
前一個潛在故障變量的相關(guān)節(jié)點分析完成后,再依次以V(G)中新加入節(jié)點為潛在故障變量,分析與其他節(jié)點之間的因果關(guān)系,重復(fù)上述步驟,整個過程滿足廣度優(yōu)先的搜索算法,直到V(G)中所有節(jié)點的因果關(guān)系都分析完成且沒有新的節(jié)點產(chǎn)生時,算法終止。
2.2.3 傳播路徑識別與故障定位
首先根據(jù)節(jié)點集V(G):{i,j,…,i′,j′}標(biāo)記出所有存在因果關(guān)系的節(jié)點,然后根據(jù)有向邊集E(G):{ei→j,…,ei′→j′}對因果關(guān)系節(jié)點進(jìn)行連接,構(gòu)建與故障相關(guān)的因果關(guān)系網(wǎng)絡(luò),注意可能存在節(jié)點i和節(jié)點j、k都有正向因果關(guān)系,同時j存在和k的正向因果關(guān)系,則節(jié)點i、j和k的連接關(guān)系為i→j→k。
再根據(jù)有向邊集E(G):{ei→j,…,ei′→j′}的權(quán)值標(biāo)記故障傳播關(guān)系的時滯,得到如圖5所示的因果圖模型。
在得到故障的因果圖模型后,對故障的因果圖模型進(jìn)行故障溯源,定位到故障源頭,分析故障源頭節(jié)點的特征和非源頭節(jié)點的特征。對于源頭節(jié)點,只存在由源頭節(jié)點指向其他節(jié)點的有向邊,而不存在被指向的有向邊,而對于非源頭節(jié)點,既存在被指向的有向邊,又可能存在指向其他節(jié)點的有向邊,注意在實際過程中可能會出現(xiàn)因果圖模型中不存在源變量或者出現(xiàn)多個源變量的情況,在本文中僅考慮一個故障源的情況。綜上所述,基于廣度優(yōu)先的因果圖模型構(gòu)建算法步驟如算法1所示。
算法1基于廣度優(yōu)先的因果圖模型構(gòu)建。
Input:數(shù)據(jù)集X=[x1,…,xn],數(shù)據(jù)集列數(shù)n,因果關(guān)系閾值COVthreshold,潛在故障變量xh;
Initialization:V(G)_all={1,2,…,n},V(G)={},V′(G)={index},V″(G)={},E(G)={}
While k≤length(V′(G)) do
i=V′(G)[k],V(G)_all=V(G)_all-V′(G);
While m≤length(V(G)_all) do
i=V(G)_all[m];
步驟1:構(gòu)建xi和xj的流形空間MxiMxj;
If Li→j≤0
步驟7:將節(jié)點i和j存入節(jié)點集V″(G),V″(G)中節(jié)點不重復(fù);
步驟8:|ei→j|=Li→j,將ei→j的影響關(guān)系存入有向邊集E(G);
end If
end If
If Lj→i≤0
步驟9:將節(jié)點i和j存入節(jié)點集V″(G),V″(G)中節(jié)點不重復(fù);
步驟10:|ej→i|=Lj→i,將ej→i的影響關(guān)系存入有向邊集E(G);
end If
end If
end While
V(G)=V(G)+V′(G),V′(G)=V″(G),V″(G)={};
end While
步驟11:根據(jù)節(jié)點集V(G):{i,j,…,i′,j′}標(biāo)記出所有存在因果關(guān)系的節(jié)點。
步驟12:根據(jù)有向邊集E(G):{ei→j,…,ei′→j′},對故障相關(guān)的節(jié)點進(jìn)行連接。
步驟13:根據(jù)有向邊集E(G):{ei→j,…,ei′→j′}中有向邊的權(quán)值|ei→j|,標(biāo)記故障傳播關(guān)系的時滯,得到故障因果圖模型。
步驟14:故障變量溯源,找到?jīng)]有被指向的因果節(jié)點,即為故障源節(jié)點。
Output:故障因果圖模型、故障源變量。
(24)
對Sorigin進(jìn)行奇異值分解:
(25)
(26)
(27)
在得到測試工況每一個采樣時刻的統(tǒng)計量后,將其與閾值進(jìn)行比較,判斷故障源變量進(jìn)入故障狀態(tài)的時間,具體比較公式如下:
(28)
若上式滿足,則源變量進(jìn)入故障狀態(tài),否則源變量處于正常狀態(tài),依此可以確定故障準(zhǔn)確的發(fā)生時間。
為了驗證CDPPIFI進(jìn)行傳播路徑識別和故障定位的能力,設(shè)計了控制系統(tǒng)數(shù)值仿真和CSTR基準(zhǔn)實驗。
3.1.1 實驗設(shè)置
如圖6和圖7所示,包括大滯后級聯(lián)實驗和傳播鏈實驗。在大滯后級聯(lián)實驗中,有兩條不同的傳播路徑,用來模擬信息不同的傳遞方式,其中S01在前1 000時刻為服從(-0.1,0.1)均勻分布的隨機(jī)序列,用來模擬正常工況下的數(shù)據(jù),在1 000~3 000時刻為(0.1,0.3)均勻分布的隨機(jī)序列,用來模擬故障工況下數(shù)據(jù),而S02在3 000時刻內(nèi)均為(-0.1,0.1)的均勻分布,即S02這條傳播路徑上均處于正常工況??紤]6個非線性子系統(tǒng)Si(i=1~6),子系統(tǒng)方程如式(19),其中Ai和Bi分別取0.2和0.8,q-2和q-4分別代表2時刻和4時刻的延時,為了模擬故障在經(jīng)過長時間的傳播后才影響子系統(tǒng),在S1和S2之間加入200時刻延時。在傳播鏈實驗中,同樣是設(shè)置了兩條支路,并且在第一條支路中設(shè)置了兩條不同的傳播路徑,為了區(qū)分兩條不同的傳播路徑,在兩條傳播路徑中分別加入了高斯白噪聲ε1和ε2,白噪聲的均值為0,方差為0.005,輸入信號S01、S02、子系統(tǒng)S1-S6和子系統(tǒng)間的延時設(shè)置均參照大滯后級聯(lián)系統(tǒng)。
3.1.2 大滯后級聯(lián)實驗
應(yīng)用CDPPIFI算法對大滯后級聯(lián)系統(tǒng)數(shù)據(jù)進(jìn)行分析,首先是主成分分析(Principal Component Analysis, PCA)預(yù)診斷,利用過程正常工況數(shù)據(jù)構(gòu)建閾值,然后對測試數(shù)據(jù)進(jìn)行故障預(yù)檢測,得到如圖8a所示的故障檢測效果圖,故障的檢測率為95.9%,誤報率為3.7%。在預(yù)檢測發(fā)現(xiàn)故障發(fā)生后,對故障發(fā)生時刻的數(shù)據(jù)進(jìn)行貢獻(xiàn)度分析,得到如圖8b所示的貢獻(xiàn)度分析圖。貢獻(xiàn)直方圖顯示變量S1、S3和S6對故障都有明顯的貢獻(xiàn)度,無法定位到具體的故障源頭變量,可以確定S1是潛在的故障變量。
然后進(jìn)行因果圖模型構(gòu)建,分析系統(tǒng)真實因果和非真實因果關(guān)系,設(shè)置因果關(guān)系的閾值為0.9。結(jié)合潛在故障變量為S1,對節(jié)點間的因果分析,并將分析的結(jié)果與閾值比較,篩選出存在真實因果的節(jié)點,可以得到節(jié)點集V(G):{S1,S2,S3,S4}和有向邊集E(G):{eS1→S2,eS1→S3,eS1→S4,eS2→S3,eS2→S4,eS3→S4},其中|eS1→S2|=200,|eS1→S3|=202,|eS1→S4|=204,|eS2→S3|=2,|eS2→S4|=5,|eS3→S4|=3。根據(jù)有向邊集和節(jié)點集可以構(gòu)建如圖9a所示的故障信息傳播網(wǎng)絡(luò)G,可以發(fā)現(xiàn)利用CDPPIFI識別出來的因果網(wǎng)絡(luò)并沒有包含S5和S6節(jié)點,這是因為S5和S6之間的影響是噪聲導(dǎo)致而非故障導(dǎo)致,這說明CDPPIFI算法可以準(zhǔn)確識別故障所引起的因果影響關(guān)系;同時各節(jié)點間的影響時滯和實驗設(shè)置的延時基本吻合,這樣的結(jié)果說明CDPPIFI算法可以較為準(zhǔn)確地識別因果關(guān)系影響的時滯。對故障傳播網(wǎng)絡(luò)進(jìn)行溯源,可以定位到故障的源頭是S1,而實驗設(shè)置時,故障信號S01首先會影響到S1,即在所有被監(jiān)測節(jié)點中,S1最先受到影響,實驗結(jié)果和實驗設(shè)置情況一致,這樣的結(jié)果表明CDPPIFI算法可以準(zhǔn)確地定位到故障的源頭。然后以格蘭杰因果分析方法對系統(tǒng)數(shù)據(jù)進(jìn)行分析作為對比實驗,格蘭杰因果方法以假設(shè)檢驗的方式來判斷兩節(jié)點之間是否存在因果關(guān)系,在本文中采用F檢驗、卡方檢驗、似然比檢驗和參數(shù)F檢驗4種假設(shè)檢驗方法,時間尺度取為10,若出現(xiàn)假設(shè)檢驗的概率小于5%的情況,認(rèn)為兩序列之間存在格蘭杰因果關(guān)系,否則不存在因果,根據(jù)格蘭杰因果分析結(jié)果可以得到如圖9b所示的故障信息傳播網(wǎng)絡(luò)。可以發(fā)現(xiàn),格蘭杰因果構(gòu)建的故障信息傳遞網(wǎng)絡(luò)并不符合實際情況,沒有反映故障信息的傳遞情況,根據(jù)故障信息傳遞網(wǎng)絡(luò)無法定位到故障源頭,不能檢測出故障信息影響的時滯。
最后,對故障源變量S1進(jìn)行重檢測,可以得到如圖10所示的故障重檢測效果圖,故障重檢測的檢測率為99.9%,誤報率為0%。在大滯后級聯(lián)實驗設(shè)置中,故障在1 000時刻被引入系統(tǒng),并且在節(jié)點S1和S2之間存在200時刻延時,故障信息在200時刻之后才傳播至整個系統(tǒng)。和PCA預(yù)檢測相比,本文方法可以更早地檢測到故障,而PCA方法因為故障傳播時滯的存在,在1 000~1 200時刻有較高的誤報。
3.1.3 傳播鏈實驗
應(yīng)用CDPPIFI算法對傳播鏈系統(tǒng)實驗數(shù)據(jù)進(jìn)行分析,首先進(jìn)行PCA預(yù)診斷,得到如圖11a所示的故障檢測效果圖,故障檢測率為93.6%,誤報率為0.2%。在預(yù)檢測發(fā)現(xiàn)故障發(fā)生后,進(jìn)行貢獻(xiàn)度分析,得到如圖11b所示的貢獻(xiàn)度分析圖,定位到貢獻(xiàn)度最大的變量,即為潛在故障變量。從貢獻(xiàn)度圖中可以定位到潛在的故障變量為S2,雖然它不是源頭變量但是它在故障的傳播路徑中。
然后構(gòu)建因果圖模型,分析系統(tǒng)真實因果和非真實因果關(guān)系,設(shè)置傳播鏈實驗的因果閾值為0.4;以潛在故障變量S2為起點,對系統(tǒng)節(jié)點間因果關(guān)系進(jìn)行分析,篩選出存在真實因果的節(jié)點,可以得到節(jié)點集V(G):{S1,S2,S3,S4}和有向邊集E(G):{eS1→S2,eS1→S3,eS1→S4,eS2→S3},其中|eS1→S2|=2,|eS1→S3|=4,|eS1→S4|=5,|eS2→S3|=2。根據(jù)有向邊集和節(jié)點集可以構(gòu)建如圖12a所示的故障因果網(wǎng)絡(luò)。網(wǎng)絡(luò)的連接關(guān)系和傳播鏈實驗故障支路的設(shè)置情況一致,同時,關(guān)于節(jié)點間因果關(guān)系影響的時滯和實驗設(shè)置的情況基本一致,除了S1到S4之間的時滯存在1時刻的偏差,分析原因是因為系統(tǒng)噪聲的影響,這樣的結(jié)果說明CDPPIFI算法可以識別出傳遞鏈實驗中因果影響關(guān)系以及影響的時滯。對傳播網(wǎng)絡(luò)進(jìn)行溯源,可以得到故障源變量為S1,和實驗設(shè)置情況吻合,這個結(jié)果說明CDPPIFI算法可以準(zhǔn)確地定位到故障源頭。以格蘭杰因果方法對系統(tǒng)數(shù)據(jù)進(jìn)行分析作為對比實驗,根據(jù)格蘭杰因果分析結(jié)果可以得到如圖12b所示的故障信息傳播網(wǎng)絡(luò)??梢园l(fā)現(xiàn),格蘭杰因果構(gòu)建的故障信息傳遞網(wǎng)絡(luò)無法識別單向的故障信息傳遞關(guān)系,從識別的故障信息傳播網(wǎng)絡(luò)無法定位到故障源頭,不能識別出故障信息影響的時滯。
最后,對源頭變量S1進(jìn)行重檢測,可以得到如圖13所示的故障檢測效果圖,檢測率為99.3%,誤報率為0.0%。本文提出的方法和PCA預(yù)檢測方法相比,有更高的檢測率和更低的誤報率。
3.2.1 CSTR基準(zhǔn)過程描述
反應(yīng)釜的輸入為進(jìn)料濃度Cin和反應(yīng)溫度θf1,Cin=1 mol·L-1并加入N(0,0.1)的高斯白噪聲,θf1=350K并加入N(0,3)的高斯白噪聲,反應(yīng)的主要生成物為A,但是會有副反應(yīng)使一部分A轉(zhuǎn)換為B,再有少部分B轉(zhuǎn)換為C,反應(yīng)滿足式(33)~式(35),CA(t)、CB(t)和CC(t)分別表示在采樣時刻t,物料A、B和C的濃度,與反應(yīng)相關(guān)的參數(shù)如表1所示。為了能夠更好地反映物料反應(yīng)的時間,在每個參數(shù)影響效果上都加入了2時刻的延時。采集正常工況下運(yùn)行的1 000時刻數(shù)據(jù)作為訓(xùn)練集;對CA、CB和CC節(jié)點在1 000時刻分別注入服從(-5,5)均勻分布的故障信號,模擬故障的發(fā)生,故障運(yùn)行至3 000時刻,以總共3 000時刻的數(shù)據(jù)作為測試數(shù)據(jù)集。
表1 CSTR基準(zhǔn)模型參數(shù)表
(33)
(34)
(35)
3.2.2 CA故障
首先,進(jìn)行PCA故障預(yù)檢測,得到如圖14a所示的故障檢測效果圖,故障的檢測率為85.95%,誤報率為2.00%。再進(jìn)行故障貢獻(xiàn)度分析,得到如圖14b所示的貢獻(xiàn)度分析圖,定位到潛在的故障變量為3號變量,即CA變量為潛在故障源頭。
然后,進(jìn)行因果網(wǎng)絡(luò)構(gòu)建,設(shè)置因果關(guān)系的閾值為2.5,以潛在的故障變量CA為起點,對節(jié)點間的因果關(guān)系進(jìn)行分析,可以得到節(jié)點集V(G):{CA,CB,CC}和有向邊集E(G):{eCA→CB,eCA→CC,eCB→CC},其中|eCA→CB|=4,|eCA→CC|=7,|eCB→CC|=4。根據(jù)節(jié)點集和有向邊集可以構(gòu)建如圖15a所示的因果圖網(wǎng)絡(luò)。對故障因果圖模型進(jìn)行溯源,可以將故障源頭定位于CA,和故障的實際設(shè)置情況一致,表明CDPPIFI算法可以準(zhǔn)確定位到CA故障源頭。以格蘭杰因果方法對系統(tǒng)數(shù)據(jù)進(jìn)行分析作為對比實驗,根據(jù)格蘭杰因果分析結(jié)果,可以得到如圖15b所示的因果圖網(wǎng)絡(luò)??梢园l(fā)現(xiàn),相較于本文提出的方法,格蘭杰因果構(gòu)建的故障信息傳遞網(wǎng)絡(luò)無法識別單向的故障信息傳遞關(guān)系,無法定位到故障源頭。
最后,對故障源頭變量CA進(jìn)行故障重檢測,檢測率為89.9%,誤報率為1.9%,具體的故障重檢測效果圖如圖16所示。相比于PCA預(yù)檢測,本文提出的方法對CA故障有更高的檢測率和更低的誤報率。
3.2.3 CB故障
首先,進(jìn)行PCA故障預(yù)診斷,得到如圖17a所示的故障檢測效果圖,故障的檢測率為68.50%,誤報率為0.80%。再進(jìn)行故障貢獻(xiàn)度分析,得到如圖17b所示的貢獻(xiàn)度分析圖,定位到潛在的故障變量為4號變量,即CB變量為潛在故障源頭。
然后,進(jìn)行因果圖模型構(gòu)建,將因果關(guān)系閾值設(shè)置為2.5,以CB變量為起點,對節(jié)點間的因果關(guān)系進(jìn)行分析,可以得到節(jié)點集V(G):{CB,CC}和有向邊集E(G):{eCB→CC},其中|eCB→CC|=5。根據(jù)節(jié)點集和有向邊集可以構(gòu)建如圖18a所示的因果網(wǎng)絡(luò),對因果圖網(wǎng)絡(luò)進(jìn)行溯源,可以將故障定位于CB,和故障實際設(shè)置情況一致,表明CDPPIFI算法可以準(zhǔn)確定位到CB故障源頭。以格蘭杰因果方法對系統(tǒng)數(shù)據(jù)進(jìn)行分析作為對比實驗,根據(jù)格蘭杰因果分析結(jié)果可以得到如圖18b所示的因果網(wǎng)絡(luò),可以發(fā)現(xiàn)相較于本文提出的方法,格蘭杰因果構(gòu)建的故障信息傳播網(wǎng)絡(luò)無法識別單向的故障信息傳遞關(guān)系,無法定位到故障源頭。
最后,對故障源頭變量CB進(jìn)行故障重檢測,檢測率為87.1%,誤報率為1.4%,具體的檢測效果圖如圖19所示。相比于PCA預(yù)檢測,本文提出的方法,對CB故障有更高的檢測率和更低的誤報率。
3.2.4 CC故障
首先,進(jìn)行PCA故障預(yù)檢測,得到如圖20a所示的故障檢測效果圖,故障的檢測率為91.9%,誤報率為1.5%。再進(jìn)行故障貢獻(xiàn)度分析,得到如圖20b所示的貢獻(xiàn)度分析圖,定位到潛在的故障變量為5號變量,即CC變量為潛在故障源頭。
然后,進(jìn)行因果圖模型構(gòu)建,將因果關(guān)系閾值設(shè)置為2.5,以CC為起點,對故障工況下節(jié)點間的因果關(guān)系進(jìn)行分析,可以得到如圖21a所示的因果網(wǎng)絡(luò),分析結(jié)果顯示,CC節(jié)點和其他節(jié)點不存在因果關(guān)系,這表明CC節(jié)點是故障源頭,且不會影響其他節(jié)點,結(jié)合CSTR基準(zhǔn)過程分析,CC節(jié)點在流程的底端,只會被影響,不存在影響其他節(jié)點的情況,與CC故障設(shè)置情況一致,這樣的結(jié)果表明CDPPIFI算法可以準(zhǔn)確定位到CC故障源頭。以格蘭杰因果方法對系統(tǒng)數(shù)據(jù)進(jìn)行分析作為對比實驗,根據(jù)格蘭杰因果分析結(jié)果可以得到如圖21b所示的因果網(wǎng)絡(luò)??梢园l(fā)現(xiàn),格蘭杰因果構(gòu)建的故障信息傳遞網(wǎng)絡(luò)無法識別單向的故障信息傳遞關(guān)系,無法定位到故障源頭。
最后,對故障源頭變量CC進(jìn)行故障重檢測,檢測率為98.5%,誤報率為0.0%,具體的檢測效果圖如圖22所示。相比于PCA預(yù)檢測,本文提出的方法對CC故障有更高的檢測率和更低的誤報率。
本文提出了CDPPIFI算法框架,設(shè)計了級聯(lián)和傳播鏈系統(tǒng),并將故障植入到系統(tǒng)中,應(yīng)用算法診斷框架對系統(tǒng)數(shù)據(jù)進(jìn)行分析,驗證了所提出算法框架能夠定位故障源、檢測故障傳播時滯和構(gòu)建故障因果圖模型,同時可以在故障傳播早期準(zhǔn)確檢測故障發(fā)生時間。將算法框架應(yīng)用到CSTR進(jìn)行故障診斷,驗證算法能夠定位工業(yè)過程仿真系統(tǒng)故障源。但是本文的研究對象都是開環(huán)系統(tǒng),關(guān)于閉環(huán)系統(tǒng)的故障診斷情況是下一步要研究的內(nèi)容。