江志農(nóng),徐文明
(北京化工大學(xué)機電工程學(xué)院,北京 100029)
目前,在旋轉(zhuǎn)機械故障診斷方面,應(yīng)用專家系統(tǒng)進行故障診斷已經(jīng)成為一個重要發(fā)展方向。近年來,美國ENTEK、CSI公司相繼推出了故障診斷專家系統(tǒng),Bently公司研制了故障診斷工程師幫助系統(tǒng),并已在我國推廣應(yīng)用。除此之外,我國的一些高等院校和單位,如華中理工大學(xué)、哈爾濱工業(yè)大學(xué)等也開展了這方面的工作,取得了一定的成效,但仍然不能不能滿足需要。
本文根據(jù)旋轉(zhuǎn)機械故障的特點和成因,探討了案例的表示方法,并選擇分階段的近鄰檢索匹配策略作為推理算法。整個系統(tǒng)采用VC++編程環(huán)境開發(fā),并可嵌入到其他監(jiān)測系統(tǒng)中,實驗證明,該系統(tǒng)具有診斷準確度高,推理速度快,易維護等特點,能夠滿足實際需求。
基于案例的推理(Case-based reasoning,CBR)是一種新興的機器學(xué)習(xí)和推理方法,其核心思想是重用過去人們解決問題的經(jīng)驗解決新問題[1]。采用該技術(shù)可以簡化問題推理過程、提高推理效率和搜索效果,縮短系統(tǒng)的設(shè)計周期,具有十分重要的研究價值。
相對于案例推理,基于規(guī)則的推理(Rule-based reasoning,RBR)最大的問題是推理鏈過于復(fù)雜并且在規(guī)則很多時,極易引起組合爆炸。同時,由于各規(guī)則間耦合度很高,知識的整體形象難以把握,導(dǎo)致推理時,系統(tǒng)處理效率很低且缺乏靈活性。而這些問題,在基于案例的專家系統(tǒng)中一般都不會存在[2]。
根據(jù)旋轉(zhuǎn)機械的故障特點和實際情況,在專家系統(tǒng)的設(shè)計過程中,一是要將故障樹分析法和專家系統(tǒng)相結(jié)合進行深層推理,將系統(tǒng)的結(jié)構(gòu),推理機制以及專家知識都放入故障樹中,構(gòu)成故障樹模型;二是將CBR技術(shù)和專家系統(tǒng)方法相結(jié)合實現(xiàn)基于案例的專家系統(tǒng)的淺推理。
專家系統(tǒng)一般由知識庫、推理機、解釋模塊,知識獲取模塊和人機交互模塊五部分組成。
知識庫模塊用于存放設(shè)備運行過程中的專門知識,知識庫是推理機工作的重要對象,其中知識表示的好壞直接影響了整個系統(tǒng)的工作效率
推理機是專家系統(tǒng)的組織控制機構(gòu),包括推理方法和控制策略兩部分。它根據(jù)當前的輸入數(shù)據(jù),運用知識庫中的知識,按一定的策略進行推理,從而達到要求的目標。因此,推理機在故障診斷系統(tǒng)中占有重要地位。
解釋器負責(zé)回答用戶提出的各種問題,包括結(jié)論得出的過程和系統(tǒng)自身問題,這是專家系統(tǒng)區(qū)別于一般程序的重要特征之一,即專家系統(tǒng)具有自解釋功能。
知識獲取模塊主用系統(tǒng)獲取專業(yè)領(lǐng)域內(nèi)的事實性知識和領(lǐng)域?qū)<宜赜械慕?jīng)驗性知識,在本系統(tǒng)中,主要以案例的形式的保存。同時,該模塊還負責(zé)知識庫中的知識的修改、刪除和更新,并對知識的完整性和一致性進行維護。
人機接口是系統(tǒng)與用戶對話的主窗口,用戶通過人機接口界面向系統(tǒng)提出問題,輸入必要參數(shù),從而獲得所需的診斷結(jié)果。
CBR診斷方法的核心在于:能準確地存儲設(shè)備過去曾經(jīng)發(fā)生的故障,相關(guān)參數(shù)以及診斷過程。在進行診斷時,運行過去的診斷經(jīng)驗、過程和方法,通過類比和聯(lián)想完成當前的診斷任務(wù)。
CBR故障診斷基本過程如圖1所示。
圖1 CBR故障診斷流程圖
該模塊采用MS Access數(shù)據(jù)庫作為知識庫存儲容器。針對旋轉(zhuǎn)機械的特點,故障案例采用結(jié)構(gòu)化設(shè)計,將故障信息存放在多個數(shù)據(jù)表中,以方便案例的檢索。這主要包括案例信息表、設(shè)備信息表、征兆信息表、故障信息表、案例解釋和附件表。
案例信息表:包括案例名稱和ID。
設(shè)備信息表:機組類型、部件類型(連接、驅(qū)動、軸承形式等)、工況參數(shù)(轉(zhuǎn)速信息)。
征兆信息表:案例診斷提取的幾個特征值,如主導(dǎo)頻率、常伴頻率、軸心軌跡形狀、進動方向等及其權(quán)重度。
故障信息表:診斷出的故障名稱、類別。
案例解釋:相關(guān)的故障原因、解決措施,維修建議等。
附件表:用于上傳案例相關(guān)的圖片、日志、數(shù)據(jù)表等并儲存在數(shù)據(jù)庫中。
案例庫的檢索與匹配是實現(xiàn)案例推理的關(guān)鍵,也是基于CBR專家系統(tǒng)的技術(shù)核心。而專家系統(tǒng)的主要目的是根據(jù)已有的故障知識包括征兆、數(shù)據(jù)等從案例庫中檢索出最佳案例作為新問題的解決依據(jù)[3]。案例知識的檢索要達到以下兩個目標:檢索出來的案例應(yīng)盡可能的少;檢索出來的案例應(yīng)盡可能與當前案例相關(guān)或相似。目前在專家系統(tǒng)案例檢索策略中,比較常用的策略主要有最近相鄰策略、歸納推理策略、知識引導(dǎo)策略、模板檢索策略等[4]。
對于案例庫規(guī)模不是很大的系統(tǒng),通常采用的近鄰檢索策略較為簡單有效。但是當案例庫規(guī)模增長到一定水平后,采用該策略的時間復(fù)雜度會隨著案例個數(shù)的增多而線性增長,因此不適用于案例庫較大的情況。因此本系統(tǒng)采用的是“分階段的近鄰檢索匹配策略”,該策略是對原有的近鄰檢索策略的改進和優(yōu)化[5]。
分階段近鄰檢索策略將案例匹配過程分為兩次檢索,一次檢索以設(shè)備信息為主線,采用最近相鄰法在總案例庫找到最相近的相關(guān)案例集。二次檢索根據(jù)上次一次檢索得到的相關(guān)案例集,利用征兆信息中的特征值再次進行匹配,從而得到匹配度最大的案例,即為目標案例。
近鄰檢索匹配策略是一種基于相似性的關(guān)聯(lián)檢索方法,它通過計算案例參數(shù)和輸入現(xiàn)場設(shè)備參數(shù)的相匹配的特征權(quán)重之和來評估兩者之間的相似性,并從案例庫中選出最相似的案例作為決策案例。
每個案例包含m個特征量,故障案例Ci(i=1,2,…,n)可用一個維向量來表示[3]:
aij(j=1,2,…,m)是故障案例 Ci的第 j個特征量的取值。
案例間的相似度定義為:
對于第一次檢索,特征量Ci={機組類型,連接形式,軸承形式,驅(qū)動類型,轉(zhuǎn)速類型},每個特征量所包含的屬性值選項如表1所示。
表1 第一檢索特征向量屬性值
其中各設(shè)備信息值所具有的權(quán)重值設(shè)定為如表2所示。
表2 設(shè)備信息權(quán)重值
設(shè)備信息匹配特征值的計算以機組和驅(qū)動類型兩種參數(shù)為主,由公式計算出的相似度以0.7為閾值,超過該值即將該案例放入到二次檢索過程。
對于二次檢索,征兆特征向量C={主導(dǎo)頻率,進動方向,常伴頻率,軸心軌跡形狀},其權(quán)值為表3所示。
表3 二次檢索特征向量權(quán)重值
征兆信息匹配特征值的計算以主導(dǎo)頻率、常伴頻率和軸心軌跡三個參數(shù)為主,由公式計算出的相似度以0.9為閾值,超過該閾值即認為找到匹配案例。
系統(tǒng)推理的整個過程如圖2所示。
圖2 CBR專家系統(tǒng)推理流程圖
為了對案例庫中的案例知識進行有效管理和維護,設(shè)計功能豐富的知識庫掛歷系統(tǒng)是非常有必要的[6]。一般情況下,對案例庫的管理要完成下列基本操作:
(1)定義索引案例結(jié)構(gòu),方便案例的查詢和篩選。
(2)按定義的結(jié)構(gòu)存儲用戶輸入的案例信息。
(3)顯示已存在的案例記錄并能夠進行編輯。
(4)刪除案例信息。
針對以上要求,案例庫管理系統(tǒng)應(yīng)具備設(shè)計、查詢、增加、檢查和刪除等功能。在本文中,案例庫管理模塊采用人機交互對話框方式實現(xiàn)。其操作界面如圖3所示。
圖3 案例庫維護界面
隨著案例的增加,案例庫的規(guī)模會不斷增大,為限制案例庫的規(guī)模,增加案例庫時,案例管理模塊會對所輸入的案例進行檢查,以確保新添加案例沒有和原有案例重復(fù)和沖突[7]。
本文中,所采取的檢查方法是案例輸入完成后,點擊確定按鈕,在保存案例之前,系統(tǒng)會自動調(diào)用推理機模塊,將新添案例作為事實進行推理,如果能找到相似度閾值超過0.95的案例,則認為該案例重復(fù),從而取消添加,并提示用戶案例重復(fù),否則添加成功。
某客戶汽輪機組在連續(xù)運行時,發(fā)生油膜渦動故障,經(jīng)過檢查發(fā)現(xiàn),該機組的發(fā)生故障時主導(dǎo)頻率大約在通頻附近,而軸向振動正常。打開系統(tǒng)基于案例診斷界面,并選擇合適故障案例征兆如圖4所示。
圖4 案例庫征兆信息錄入界面
然后通過重要度確定頁面,設(shè)置兩個征兆的重要度,重要度確定頁面如圖5所示。
圖5 征兆重要度確定頁面
點擊開始診斷按鈕,系統(tǒng)開始執(zhí)行診斷算法,并顯示符合條件的案例,診斷結(jié)束后主頁面如圖6所示。
雙擊列表框中第一個案例,顯示案例信息如圖7所示。
如圖7所示,診斷結(jié)果案例顯示故障原因是由于徑向軸承間隙過大導(dǎo)致。在設(shè)備停機檢修時,調(diào)整徑向軸承間隙,并開機試運行,設(shè)備運行狀態(tài)恢復(fù)正常,表明診斷結(jié)果和實際相符,從而證明該系統(tǒng)的設(shè)計符合實際需要,具有切實可行性。
圖6 診斷結(jié)束頁面
圖7 診斷信息預(yù)覽頁面
[1]馬波,高金吉,江志農(nóng),等.旋轉(zhuǎn)機械故障診斷專家系統(tǒng)[J].機電工程技術(shù),2005,34(12):30 -32.
[2]杜元虎.基于案例的推理技術(shù)在故障診斷中的應(yīng)用[J].中南民族大學(xué)學(xué)報,2005,24(2):53 -56.
[3]王悅,范君暉,田書格,等.基于案例推理專家系統(tǒng)中的案例表示方法[J].上海工程技術(shù)大學(xué)學(xué)報,2005,19(1):43-46.
[4]楊健,趙秦怡,等.基于案例的推理技術(shù)研究進展及應(yīng)用[J].計算機工程與設(shè)計,2008,29(3):710 -721.
[5]王華,劉煥敏,等.基于案例推理方法在慣性導(dǎo)航故障診斷專家系統(tǒng)的應(yīng)用[J].中國慣性技術(shù)學(xué)報,2009,17(5):614-617.
[6]陳培彬,陳治平,等.基于CBR的雷達故障診斷專家系統(tǒng)研究[J].工程與應(yīng)用,2008,2(1):87 -96.
[7]朱煥勤,馬曉宇,等.航空發(fā)動機油液故障診斷專家系統(tǒng)研究[J].微計算機信息,2008,24(12):150 -152.