羅冰洋,黃麗婷,周廷美,莫易敏,陳 璟,魏 貝
(武漢理工大學(xué) 自動(dòng)化學(xué)院,湖北 武漢430070)
隨著我國國民經(jīng)濟(jì)的快速發(fā)展,鐵路的客、貨運(yùn)輸量也在逐步增加。有效地檢測和排除機(jī)車故障,確保機(jī)車安全運(yùn)行已成為鐵路部門的當(dāng)務(wù)之急。傳統(tǒng)的基于信號處理的故障診斷方法雖然避開了對象的數(shù)學(xué)模型,但其只是單獨(dú)的提取故障信息,很難單獨(dú)完成復(fù)雜的機(jī)車故障診斷任務(wù)。筆者基于案例推理的機(jī)車故障診斷系統(tǒng),仿照人類認(rèn)知的過程,通過不斷的學(xué)習(xí)修改來完善系統(tǒng)知識(shí)庫為故障診斷提供參考依據(jù)。以案例為基礎(chǔ),大大簡化了對知識(shí)的獲取;通過對過去案例的結(jié)果進(jìn)行復(fù)用,提高了求解新問題的效率,改善了求解的質(zhì)量;通過對既有案例的修正及新案例的學(xué)習(xí)不斷完善案例庫,從而可以不通過專家的干預(yù)更新案例庫,方便用戶自行維護(hù)[1-2]。因此,在機(jī)車故障的診斷系統(tǒng)中,基于案例推理技術(shù)能發(fā)揮很好的作用。
案例推理是人工智能領(lǐng)域中較新崛起的一種重要的基于知識(shí)的問題求解和學(xué)習(xí)方法,利用過去經(jīng)驗(yàn)中的特定知識(shí)來解決新問題,其工作過程如圖1 所示。
當(dāng)出現(xiàn)了一個(gè)需要解決的問題時(shí),首先將其表示成某種特定的形式,然后在歷史的案例庫中進(jìn)行檢索找到相似的案例建議。如果該建議無法解決當(dāng)前問題,可使用專業(yè)知識(shí)對案例進(jìn)行修正后繼續(xù)檢索直至產(chǎn)生一個(gè)合適的解決方案,再對該解決方案進(jìn)行評價(jià),學(xué)習(xí)并保存在案例庫中,從而使案例庫不斷地完善,為以后輸出精確的解決方案提供經(jīng)驗(yàn)。
圖1 案例推理工作過程
在機(jī)車故障專家系統(tǒng)中,每個(gè)案例包括很多種屬性,各個(gè)屬性之間不同的組合方式會(huì)得到不同的故障診斷結(jié)果。在眾多的屬性中,有些屬性對診斷結(jié)果的影響幾乎可以忽略,如果仍將這些冗余屬性帶入診斷過程中必然會(huì)影響診斷的效率和診斷結(jié)果的準(zhǔn)確性。因此有必要剔除這些冗余屬性,在保證診斷結(jié)果準(zhǔn)確性的前提下,盡可能多地減少參與診斷的屬性個(gè)數(shù)。
粗糙集理論的數(shù)學(xué)基礎(chǔ)成熟,不需要先驗(yàn)知識(shí),是一種處理不精確、不一致、不完整等各種不完備信息的有效工具。其基本思路就是將決策表劃分為若干個(gè)子決策表,然后根據(jù)各子表的約簡構(gòu)造原始決策表的最小約簡,從而去除包含關(guān)系,提高計(jì)算性能,有效提高系統(tǒng)效率。
變壓器是電力機(jī)車中重要的組成部件,鐵芯是變壓器的磁路,其質(zhì)量直接影響到變壓器功能的好壞。筆者以主變壓器鐵芯故障為例來說明屬性約簡的方法。圖2 為機(jī)車主變壓器鐵芯故障的故障樹[3]。
圖2 機(jī)車主變壓器鐵芯故障的故障樹
在鐵芯故障中,故障信息包括條件屬性集和故障集,如果用集合表示屬性集C={C1,C2,…,C10},如表1 所示,故障集D={D1,D2,…,D7},如表2 所示。根據(jù)決策系統(tǒng)的定義,可以很清晰地將鐵芯的屬性與故障診斷結(jié)果用二維表格的形式相對應(yīng),這種數(shù)據(jù)表被稱為知識(shí)表達(dá)系統(tǒng)KRS[4],如表3 所示。通過KRS 表,可以很容易地對其屬性約簡,消除冗余屬性。
接下來按照圖3 粗糙集屬性約簡流程對KRS表進(jìn)行約簡[5]。
表1 鐵芯故障屬性集
表2 鐵芯故障故障集
表3 鐵芯故障屬性與故障間的KRS 表
(1)選取A1來計(jì)算任意一個(gè)等價(jià)類
將原KRS 表分為兩個(gè)子KRS 表,初等范疇S1的KRS 表如表4 所示,初等范疇S2的KRS 表如表5 所示。
表4 初等范疇S1 的KRS 表
表5 初等范疇S2 的KRS 表
(2)計(jì)算等價(jià)類的所有約簡。
(3)取上述簡約集中基數(shù)最小的集合。
(4)對簡約集Gm進(jìn)行驗(yàn)證。
計(jì)算故障集D的正域:
計(jì)算簡約集Gm的正域;
因?yàn)镻OSC(D)=POSGm(D)={{X1},{X2},{X3},{X4},{X5},{X6},{X7}},所以簡約集Gm={C2,C3,C4,C6,C7,C8,C9,C10}為原KRS 表的最小屬性簡約集,約簡后的KRS 表如表6 所示。
表6 約簡后的KRS 表
約簡后的KRS 表清楚地顯示出了每個(gè)故障的必要屬性。原來需要用10 個(gè)屬性才能對故障進(jìn)行判斷,而利用粗糙集方法對屬性進(jìn)行約簡后只需其中8 個(gè)屬性,Gm={C2,C3,C4,C6,C7,C8,C9,C10},即可對鐵芯的7 種故障進(jìn)行診斷。然而在剩余的屬性中,并不是每一個(gè)屬性都對結(jié)果有決策作用,還存在一些冗余的屬性可進(jìn)行進(jìn)一步約簡[6-8],其流程如圖4 所示。
圖4 一般值約簡算法
一般值約簡算法的核心思想是在獲得最小約簡屬性的基礎(chǔ)上,假設(shè)刪除某屬性值后,觀察決策的效果是否發(fā)生變化。如果沒有發(fā)生變化,說明該屬性值是冗余的,可以被刪除。反之則說明這部分屬性值對決策有影響,不能被刪除。然而,按照不同的條件屬性處理順序和決策規(guī)則順序,會(huì)得到很多不同的最小決策表,可列出其中一種最小決策表,如表7 所示[9-10]。
表7 鐵芯故障診斷的一種最小決策表
案例表示決定著一個(gè)案例推理系統(tǒng)是否能較好地工作,只有對目標(biāo)問題通過恰當(dāng)?shù)陌咐M(jìn)行描述,才能獲得正確的診斷結(jié)果。目前,產(chǎn)生式表示法已成為人工智能中應(yīng)用最多的一種知識(shí)表示模式,許多成功的專家系統(tǒng)都是采用產(chǎn)生式知識(shí)表示方法。產(chǎn)生式的基本形式為P→Q(IFPTHENQ),其中P是產(chǎn)生Q的先決條件,即如果P成立,則可得到Q的結(jié)論[11-12]。
按照鐵芯故障診斷的最小決策表在專家系統(tǒng)中的案例表示如下:
(1)IF 磁通量飽和THEN 磁飽和;
(2)IF 散熱通風(fēng)通道堵塞THEN 散熱不良;
(3)IF 多點(diǎn)接地且不存在異物THEN 芯碰殼或夾件;
(4)IF 迭片間短路THEN 迭片老化或振動(dòng);
(5)IF 在某個(gè)電壓范圍內(nèi)放電THEN 接地不良;
(6)IF 多點(diǎn)接地且存在異物THEN 存在導(dǎo)電異物;
(7)IF 接地片熔斷THEN 接地片熔斷。
該系統(tǒng)在. Net 4. 0 開發(fā)平臺(tái)上,利用Microsoft Visual Studio 2010 軟件以CJHJ 作為編程語言進(jìn)行開發(fā)。系統(tǒng)服務(wù)器采用C/S(Client/Server)模式并使用SQL Server 2005 作為數(shù)據(jù)存儲(chǔ)工具。
該系統(tǒng)包括人員管理、知識(shí)庫管理、故障查詢、故障診斷和故障預(yù)測5 個(gè)大模塊,其功能如圖5 所示。
圖5 機(jī)車故障診斷系統(tǒng)功能
運(yùn)用該系統(tǒng)對主變壓器鐵芯故障進(jìn)行模擬診斷,其運(yùn)行過程如下:
首先運(yùn)行程序,進(jìn)入登錄頁面,如圖6 所示,輸入用戶名、密碼跳轉(zhuǎn)至系統(tǒng)主頁面;在主頁面選擇故障診斷模塊則會(huì)跳轉(zhuǎn)至故障診斷頁面,如圖7 所示。
圖6 系統(tǒng)登錄界面
圖7 故障診斷界面
在故障診斷頁面填寫基本的故障現(xiàn)象之后,故障屬性區(qū)域會(huì)顯示相對性的故障屬性。如需添加新的屬性,點(diǎn)擊添加屬性按鈕后,可以直接在屬性列表后的新增空白行內(nèi)輸入新屬性內(nèi)容。勾選符合的屬性后,單擊故障查詢按鈕即可開始對故障進(jìn)行診斷,彈出的診斷結(jié)果頁面如圖8 所示。
根據(jù)在診斷頁面勾選的故障屬性,運(yùn)用上述方法求得約簡后的屬性,并在歷史知識(shí)庫中尋找類似的案例,按照符合度進(jìn)行排序,將結(jié)果顯示在列表中。右鍵單擊案例行,會(huì)彈出菜單,可以在案例詳情頁面,查看案例詳情,如圖9 所示。
案例詳情頁面顯示了該案例的詳細(xì)信息,包括故障屬性、處理方法、故障圖像和故障視頻等信息。操作者可以對信息進(jìn)行編輯、修改和完善,使之更加符合實(shí)際情況,為今后的案例診斷提供更加完整的信息。
圖8 故障診斷結(jié)果界面
圖9 案例詳情界面
機(jī)車診斷中存在大量隨外界因素干擾而變化的經(jīng)驗(yàn)知識(shí),很難用某個(gè)特定的模型來準(zhǔn)確地表示出來?;诎咐评淼臋C(jī)車診斷系統(tǒng),通過對歷史案例的檢索來找到與當(dāng)前案例相似的案例,不需要構(gòu)建詳細(xì)的模型就能進(jìn)行故障診斷。其較高的靈活性和可操作性可以使機(jī)車診斷系統(tǒng)更加高效、準(zhǔn)確,為機(jī)車的安全提供保障。
[1]王亞南. 專家系統(tǒng)中推理機(jī)制的研究與應(yīng)用[D].武漢:武漢理工大學(xué)圖書館,2006.
[2]龔錦紅. 案例推理技術(shù)的研究與應(yīng)用[J]. 科技廣場,2007(3):61 -63.
[3]汪子皓.基于二叉樹的機(jī)車故障模糊診斷專家系統(tǒng)[D].武漢:武漢理工大學(xué)圖書館,2008.
[4]曹長修,孫穎楷,曹龍漢,等.基于粗糙集理論的內(nèi)燃機(jī)故障診斷專家系統(tǒng)[J].重慶大學(xué)學(xué)報(bào):自然科學(xué)版,2010(6):45 -47.
[5]焦青青. 基于案例推理的機(jī)車故障診斷系統(tǒng)[D].武漢:武漢理工大學(xué)圖書館,2013.
[6]陳海濱. 電力機(jī)車故障診斷專家系統(tǒng)的研究[D].成都:西南交通大學(xué)圖書館,2008.
[7]周偉祝,宦婧.新的面向?qū)ο笾R(shí)表示方法[J]. 計(jì)算機(jī)應(yīng)用,2012(7):16 -18.
[8]郭楓.基于規(guī)則和案例推理的配電網(wǎng)故障診斷研究[D].長沙:中南大學(xué)圖書館,2011.
[9]鄭佩.基于案例推理的故障診斷技術(shù)研究[D]. 武漢:華中科技大學(xué)圖書館,2008.
[10]馬超,陳西宏,徐宇亮.基于支持向量機(jī)屬性約簡集成的模擬電路故障診斷[J]. 儀器儀表學(xué)報(bào),2011(3):660 -666.
[11]CHATTOPADHYAY S. A case-based reasoning system for complex medical diagnosis[J]. Expert Systems,2013(1):12-20.
[12]YING Y L. Application of principal component regression analysis in power load forecasting for medium and long term[J]. Engineering Village,2010(10):201 -203.