李國友,張新魁,才士文,賈曜宇,寧澤
(燕山大學智能控制系統與智能裝備教育部工程研究中心,河北 秦皇島 066004)
近年來,化工生產行業爆炸事故引起了各界關注,由于其原料或產物易燃易爆的特性,化工過程一旦發生爆炸事故,便會對環境造成嚴重的污染,而且對人身安全也會產生巨大的隱患。因此為保證化工生產過程的安全高效,構建一個針對化工過程的故障檢測與診斷模型顯得至關重要。隨著工控技術與儀器儀表技術的不斷完善與進步,采集數據設備精確度隨之提高,基于數據驅動的故障診斷技術應運而生。經典的數據驅動故障檢測方法有獨立主元法(independent component analysis,ICA)、主成分分析(principal component analysis, PCA)、支持向量機(support vector machines, SVM)、神經網絡等。但是在實際化工過程中,采集到的數據一般都具有高維度、非線性、故障類別不易區分的特征,單一的PCA、線性判別分析(linear discriminant analysis,LDA)等降維算法針對一些簡單的線性特征能夠很好地區分,但處理復雜的化工數據時并不能很好地提取出判別特征用于診斷模型進行故障診斷,導致故障診斷準確率下降。因此研究多算法相融合的化工過程故障檢測與診斷模型顯得尤為必要。

綜合上述分析,本文提出了一種基于改進核Fisher 判別分析和差分進化算法優化自組織網絡(KFDA-DE-SOM)的故障診斷方法。該方法首先利用歐式距離改進的KFDA算法從復雜的工業數據中提取判別特征矩陣用于后續診斷模型訓練及測試,其次運用DE優化SOM網絡的診斷模型對故障數據集進行訓練分類,將這些高維的數據投影到二維平面,將正常工況與故障點劃分為不同的區域。通過TE過程的實驗數據與PX歧化單元的數據進行診斷測試,結果表明,本研究提出的方法較單一的SOM網絡算法具有較好的分類診斷性能。
KFDA-DE-SOM整體算法框架如圖1所示。

圖1 KFDA-DE-SOM故障診斷框圖
Fisher 判別分析作為一種有監督學習的數據降維和特征提取方法,在模式識別和故障診斷領域應用廣泛。但在實際化工過程中,Fisher判別分析算法針對高維度、非線性的數據分析存在一定局限性,因此引入核函數相關理論進行優化,以解決上述問題。

式中,m為第類數據樣本映射后的均值;為總的數據樣本均值,計算方法分別如式(3)、式(4)所示。

在 特 征 空 間中,Fisher 判 別 準 則 為(),如式(5)。

式中,為任意非零列向量;KFDA 算法利用判別準則函數()求得最優的判別矢量。
根據判別準則()求判別矢量等價于求廣義特征方程,如式(6)所示。

針對可能存在奇異矩陣的問題,可以采用奇異值分解的方法來處理,對奇異值分解如式(7)所示。

依據式(9)求得最優核判別向量。
在實際情況中,由于數據類別間的距離差異過大會導致分類結果不準確,為解決上述問題,采用歐氏距離對類間離散度進行加權,調整權重,優化分類性能。改進后的類間離散度如式(10)。

式中,m和m分別表示類別和類別的均值;d代表類別和類別間的距離;W(d)為權重函數;

步驟1:選定恰當的核函數,將原始故障數據利用核函數映射到高維空間得到新的數據矩陣。

步驟4:根據求解得到特征向量確定的判別矩陣=[,,···,α]。
步驟5:依據核處理后的數據矩陣與判別矩陣求出新的訓練矩陣,計算方法如式(12)。

DE 算法是基于實數編碼的全局優化算法,在尋優計算過程中能夠跳出局部最優值。它的基本原理為種群內的個體經過變異、交叉、選擇操作,迭代更新重組,實現種群的進化,引導搜索結果朝全局最優解靠近。
該算法主要訓練步驟如下。
步驟1:種群初始化
初始化種群規模為個個體,縮放因子和交叉概率因子CR。
步驟2:變異操作
變異是差分進化算法的核心思想,主要是在父代中選定的兩個個體,并對兩個個體采取差分操作,將差分操作形成的差分矢量加權,并求解與其他父代個體的矢量和,公式如式(13)。


步驟3:交叉操作
交叉操作將種群的多樣性增加,選取目標個體與變異個體交叉操作,生成新的個體。新個體的維度分量公式如式(14)。

式中,CR的范圍為[0,1];rnbr() ∈[1,2,…,];rand()隨機生成[0,1]范圍內的實數。
步驟4:選擇操作
該操作主要是根據適應度函數計算個體的適應度值,通過適應度值的比較選定較優的個體作為下一代,計算方法如式(15)所示。


SOM 作為一種無監督學習的競爭神經網絡,有很強的自學習能力和良好的拓撲關系保持性能,并在可視化方面擁有很大的優勢,因此在模式識別分類領域應用廣泛。該網絡結構主要由輸入層和輸出層組成,輸入層接受高維數據,通過競爭學習機制將高維數據變為二維數據可視化輸出。
SOM訓練步驟如下。
步驟1:初始化
設定學習率初值(0)、鄰域半徑初值(0),神經元權值向量w。
步驟2:尋找獲勝神經元
計算輸入向量與輸出神經元的距離d,找出獲勝神經元。

式中,x為選定的向量;w為輸入層的第個神經元與輸出層的第個神經元的權值。距離最小的就是獲勝神經元。該神經元滿足式(17)。

步驟3:鄰域半徑內的獲勝神經元權值更新,權向量的學習調整如式(18)、式(19)。

式中,表示輸出層神經元;為獲勝神經元;r(t)為獲勝鄰域。
步驟4:更新學習率和鄰域半徑

步驟5:判斷訓練次數是否達到預設值,若達到則結束訓練;否則繼續訓練。
SOM網絡算法流程圖如圖2所示。

圖2 SOM算法流程圖
鑒于單一的SOM 神經網絡在,在故障診斷識別領域的效果并不是非常理想,因此提出一種基于差分進化算法改進的SOM 網絡,在很大程度上避免了產生死神經元陷入局部最優的問題,提高分類精度。
具體步驟如下。
步驟1:數據預處理
采集生產工藝原始數據,利用改進后的KFDA算法對原始故障數據進行特征提取,將得到樣本特征矩陣劃分為兩類:測試數據集與訓練數據集。
步驟2:將作為SOM 網絡的輸入進行訓練,獲得初始權值。
步驟3:用DE 算法參數尋優得到最優權值向量,將其作為SOM 網絡的權值向量,搭建DESOM模型
步驟4:運用DE-SOM 網絡模型對訓練數據集進行訓練。
步驟5:輸出訓練數據集故障分類結果。
步驟6:利用測試數據集對DE-SOM 診斷模型進行驗證。
步驟7:算法結束。
DESOM算法流程圖如圖3所示。

圖3 DE-SOM算法流程圖
為了驗證上述基于KFDA 與DE 優化SOM 算法在故障診斷與識別方面的可行性,將該方法應用于TE過程與PX歧化工藝流程。
TE 過程是一個典型的化工過程,主要包括反應器、冷凝器、氣液分離器、汽提塔、循環壓縮機5 個操作單元,流程如圖4 所示。該過程包括53個變量,其中41 個測量變量、12 個操作變量,故障數據集是由21類預設故障和正常工況仿真而得。數據集中的測試樣本集包括正常工況樣本960 個,每類故障點包括160個正常樣本和800個故障樣本。

圖4 TE化工過程工藝流程圖
本案例中選取兩種屬性的故障(表1),故障點1、故障點2 和故障點6 是原材料的供給發生變化,故障點4和故障點5是溫度發生變化,故障點14 屬于閥門位置發生黏滯型故障,每個故障點采取的樣本為[361,960]共600 個,構成3600×52 的故障數據矩陣。

表1 過程故障點
3.1.1 單一SOM算法
將選定的六類故障點數據組成一個3600×52矩陣,利用改進的KFDA 算法對矩陣進行特征提取得到新的特征矩陣,然后將提取到的特征矩陣輸入到DE-SOM 網絡中進行訓練,最后輸出診斷結果如圖5所示。

圖5 基于SOM算法對故障點1、2、4、5、6、14數據的映射
根據圖5(a)可以看出,整塊區域被分割成五部分,其中亮的部分代表不同故障數據的分割線。圖5(b)為映射標簽圖,圖中網格內的符號代表每類故障點在該區域所映射的次數,例如F6(23)表示故障點6 即A 進料損失在該網格中映射的數據數量為23。結合圖5(a)、(b)可以看出,六類故障點被分成五個區域,并不能將六個故障有效地區分開,其中故障點4和故障點5分布的區域重疊,故障點14分布的區域與故障點4、故障點5 分布的區域邊界部分不是特別明顯。圖5(c)為單一SOM 網絡對TE 數據的測試效果圖,由圖中可以看出故障點4和故障點5 的測試數據并不能很好地映射在對應區域內。因此對于單一的SOM 算法在故障診斷中的精度還不能夠滿足化工安全生產需要,還需要對SOM 算法進行改進。
3.1.2 KFDA-DE-SOM組合算法
由于KFDA算法能夠將不同種類數據之間的距離增大,因此用該算法對故障數據集進行特征提取,增大不同類別故障點間的距離,以便獲得更好的分類效果。其次SOM 算法本身的框架在訓練過程中易產生“死神經元”陷入局部最優,利用DE算法對該網絡的權值動態的調整在很大程度上避免了這個問題。
利用改進后的KFDA-DE-SOM 算法對數據集訓練,訓練后的結果如圖6所示,故障點1、故障點2、故障點4、故障點5、故障點6和故障點14 可以很好地區分開。與圖5(a)相比,圖6(a)的矩陣圖邊界線的區分程度大大增加,能夠清晰地分辨出每類故障點所屬的區域。圖6(c)為測試效果圖,測試數據都分布在對應的區域內,同時根據表2算法的診斷精確度驗證了該算法在故障診斷方面的有效性。

圖6 基于KFADA-DE-SOM算法對故障點1、2、4、5、6、14數據的映射

表2 不同算法的故障診斷精確度 單位:%
PX 生產過程中,歧化反應過程屬于高危單元,單元中參與反應的化學物質多為有毒的危險性物質,且在高溫高壓條件下易發生爆炸,因此對PX歧化單元的故障診斷至關重要。圖7為PX生產過程的歧化單元工藝流程圖,該工藝主要是以來自抽提裝置和吸附分離裝置的甲苯和芳烴分餾裝置的C芳烴以及壓縮機升壓后的氫氣為原料,混合后經換熱器、加熱爐等裝置反應后,最后進入歧化反應器反應。反應產品部分返回到原循環系統,部分進入下一階段反應單元。

圖7 PX歧化單元
PX 歧化單元工藝常見的故障為歧化反應進料變化、汽提塔氣體流速過快、氫氣補充量不足、歧化反應壓力變化以及加熱爐溫度過高五種,如表3所示。

表3 過程故障點
3.2.1 單一SOM算法
將PX 歧化單元中選定的5 個故障點數據組成一個矩陣,利用單一的SOM 網絡對其進行訓練,訓練映射效果如圖8 所示。根據圖8(a)、(b)可以看出整個區域被分割為4部分,其中故障點4和故障點5分布的區域有重合的部分,在圖中不能夠清晰地辨別兩故障。圖8(c)為PX 測試集的映射效果圖,從圖中可以看出故障點4和故障點5并不能很好地區分開。因此單一的SOM 網絡分類效果并不是很理想。

圖8 基于SOM算法對故障點1、2、3、4、5數據的映射
3.2.2 KFDA-DE-SOM組合算法
首先將PX 歧化單元選定的五種故障數據組成的矩陣經改進后的KFDA 算法進行特征提取,得到新的數據矩陣,其次將數據矩陣輸入到DE-SOM網絡進行訓練。
訓練映射結果如圖9 所示,從圖9(a)可以看出整個區域被邊界線分割成5 部分,與圖8(a)相比,改進后算法映射的矩陣圖故障點4 和故障點5 之間的邊界線清晰度較高,通過圖9(b)可以清晰地看出歧化反應進料F(1)、汽提塔氣體流速過快F(2)、氫氣補充量不足F(3)、歧化反應器壓力變化F(4)以及加熱爐溫度過高F(5)五類故障所屬的區域,驗證了該算法對于PX歧化單元故障分類診斷的有效性。圖9(c)為測試效果圖,5 類故障點測試數據分布在對應的區域,表4為不同算法的診斷精度,與以往算法相比,精確度提高,說明診斷模型的有效性。

圖9 基于KFDA-DE-SOM算法對故障點1、2、3、4、5數據的映射

表4 不同算法的故障診斷精確度 單位:%
本文所提出的KFDA-DE-SOM 故障診斷方法有效結合了KFDA對高維非線性數據特征提取的能力,DE算法的優化局部極值的能力以及SOM網絡聚類可視化的能力。首先利用歐氏距離對KFDA算法的類間距進行改進,改善數據投影重疊的問題,然后利用DE算法全局尋優的能力對SOM網絡的權值進行動態調整優化,最后基于優化的DE-SOM網絡對故障數據進行分類。運用TE過程與PX歧化反應過程的數據進行了驗證,實驗結果表明,本研究提出的KFDA-DE-SOM 算法相比于傳統SOM 故障診斷方法,診斷精度明顯提高,能夠明顯診斷出故障類型。
對于一些復雜的故障,本文所提出的算法診斷精度仍相對較低,在今后的研究中可以考慮與其他的故障診斷算法相融合以提高診斷精度。