陳潔
摘 要:該文研究了基于案例推理的專家診斷模型中的關鍵技術——故障案例庫的建立、故障案例檢索、故障案例的重用,研究探討了案例檢索機制中字符串相似度的計算方法,建立了故障檢索機制的模型。結合實際工作的需要,設計實現了一個基于案例推理(CBR)的流動式起重機故障診斷系統,系統以基于案例推理的診斷技術為基礎,采用關系型數據庫存儲數據,實現了流動式起重機械的故障診斷。
關鍵詞:案例推理 流動式起重機 故障診斷
中圖分類號:TP277 文獻標識碼:A 文章編號:1672-3791(2016)11(b)-0054-03
流動式起重機是臂架類起重機械中無軌運行的起重設備。隨著國家經濟建設的高速發展以及投資主體多元化、設備租賃市場的迅速發展,流動式起重機數量激增。流動式起重機械所產生故障的原因很多并且原因間相互交織、影響,因此對流動式起重機進行故障診斷較為困難。
基于案例推理是人工智能領域的一個重要的基于知識的問題求解和學習方法,利用已有的經驗和案例去解決新問題,大大簡化知識獲取;在新問題與歷史案例之間不完全匹配時可以給出相似解。因此,在流動式起重機械故障診斷中采用案例推理技術成為較好的解決方案。該文采用基于案例推理技術,對流動式起重機械進行故障診斷,建立基于案例推理的故障診斷系統,解決了流動式起重機故障診斷存在的種種問題。
1 基于案例推理的故障診斷系統設計
1.1 系統功能
將流動式起重機作為研究對象,采用基于案例推理的故障診斷方法,將以往維修和檢驗中流動式起重機所存在和處理過的故障,描述成由故障的特征集和解決方案組成的故障案例,存儲在所建立故障案例庫中;然后在故障案例庫中搜索與新故障最相似的案例,把系統的建議解應用于新故障,如果建議解不能解決故障時則必須對建議解進行修正,得到新故障的解決方案,并充實到故障案例庫中,實現案例推理的自學習過程。通過基于案例推理技術,實現了流動式起重機械故障診斷的便捷性和實用性。程序功能框圖如圖1所示。
1.2 系統功能模塊
該系統按照程序的功能,劃分為起重機故障案例管理模塊、案例推理模塊和參數配置模塊,如圖2所示。在起重機故障案例管理模塊中,通過Access數據庫,采用SQL語言,實現案例庫的讀取、顯示、修改、添加和刪除功能。案例推理模塊同樣從案例庫中讀取案例,然后采用加權編輯距離方法,實現案例推理;然后根據案例重用的策略,決定是否將新匹配的案例添加到案例庫(見圖3)。在參數配置模塊中,可以設置案例匹配的權值,以及案例配置的相似度值,并管理案例庫的位置以及案例庫的關鍵詞及項目。
2 基于案例推理的故障診斷系統關鍵技術
2.1 故障案例庫的設計
案例的結構和內容對案例推理起至關重要的作用。案例的表達要遵循一定的規則,形成規范的結構,以便于以后的檢索和匹配。一個案例可以由多個屬性構成,用集合表示為以表示案例內容的特征集合,其中屬性又可以根據需要進一步細分為。按照這種屬性結構,一個案例由多個層次的屬性構成,整個案例庫則由不同屬性層次上的案例關聯構成。
案例的表達通常包括案例描述和解決方案等。流動式起重機故障案例表示的主要目標是通過案例表示使檢驗和維護人員得到相應的故障信息(包括故障現象、發生位置、原因等)。因此流動式起重機故障案例應包括:(1)故障的基本特征信息,如,故障現象、發生狀態、發生位置等。(2)解決方案信息,主要包括故障說明、解決故障方法。案例庫由所收集的案例組成,具有良好的組織方式和索引方法,是有效推理的關鍵。關系數據庫在案例表示中廣泛應用,是通過案例的主要屬性進行數據存儲。流動式起重機故障案例結構為:案例編號,序列號,故障環境信息,故障信息描述。其中,故障環境信息是指流動式起重機故障出現的狀態、部位等信息,如,流動式起重機在回轉時,回轉不到位。故障信息描述是指流動式起重機故障發生后,所觀察到的故障信息及解決故障的方法。利用關系數據庫結合上述分析來建立案例庫,具體見表1和表2。
2.2 故障案例的檢索技術
案例的檢索就是從案例庫中按照相應的檢索機制檢索出與實際案例相似的案例。兩級相似匹配是目前應用較為廣泛的相似性檢索策略,該文的案例檢索就是采用該策略。兩級相似匹配方法:第一,對流動式起重機械的故障特征進行相似匹配;第二,對案例的整體進行相似匹配;第三,生成相似匹配的案例集,對將新生成的案例存儲到案例庫中,實現案例的重用。經過兩級相似匹配得出的相似案例在數量上得到相應的減少,但在相似案例診斷結果的正確性上有很大的提高。案例的匹配執行流程見圖4。
2.2.1 案例匹配輸入參數
案例匹配有3個關鍵輸入參數:故障類型、故障位置和故障描述。其中,故障類型是選擇項目,一共有機械系統、液壓系統和電氣系統3種。在流動式起重機發生故障時,故障的類型容易定位和分類,只要按照故障的形式選擇相應的類型即可。另外兩個參數(故障位置和故障描述),可根據故障發生的位置及故障的具體內容輸入關鍵現象的描述即可。
以流動式起重機吊鉤產生裂紋為例說明案例匹配的過程。首先,吊鉤屬于機械系統,先在故障類型中選擇“機械系統”,然后在故障位置編輯框中輸入“吊鉤”,接著在故障描述編輯框中輸入“裂紋”。在進行案例匹配時,系統自動導入案例庫,啟動案例匹配引擎,進行案例匹配計算。
2.2.2 案例匹配計算
案例匹配計算的核心算法是Levenshtein距離匹配算法。Levenshtein距離匹配算法是計算兩個字符串之間的最小編輯距離的算法,所謂的最小編輯距離就是把字符串A通過添加、刪除、替換字符的方式轉變成B所需要的最少步驟。這種Levenshtein距離匹配算法在實際應用中有個問題,就是當兩個字符串長度相差較大的時候,得出來的結果會比較長,且兩個字符串的相似度會較低。以故障描述字符串“裂紋”為例,系統將逐個讀取系統案例庫中所有的案例,并提取案例的故障描述字符段,以讀取到案例中含有“表面有裂紋”為例,如果直接按照Levenshtein距離匹配算法,其相似度計算結果為0.4,顯然在實際匹配的過程中,“裂紋”的字符串應該是被包含在“表面有裂紋”的字符串中,顯然這樣的匹配并不準確。算法改進如下:
式中:SL為Levenshtein距離匹配算法得到的相似度;為字符串長度最大值。這樣新計算出來的相似度為0.92,改進后的算法能夠顯著改善字符串包含情況下的匹配的準確度。
一個故障包含了多個關鍵字段,多個字段與案例庫中的案例進行逐一匹配,每個字段都得到相應的相似度值,在進行最終的案例匹配時,需要對多個字符串的相似度進行綜合。為了提高計算精度,降低計算的復雜性,相似度綜合采用了加權平均算法。算法如下:
式中:為故障位置與案例庫中的某個案例的相似度值;為故障描述與該案例的相似度值;、分別為故障位置和故障描述的權重。軟件中主要匹配兩個字符串:故障位置和故障描述。首先對匹配進行歸一化處理,再乘上相應的權重和(其中,由用戶進行設置,默認情況下,兩個權重均為0.5);然后將實際案例與案例庫中的某個案例的相似度與相似度的閾值(用戶設置,默認值為0.6)進行比較,如果相似度大于閾值,則認為匹配成功,反之,則表明案例庫中的該案例與實際輸入的案例不匹配。
3 結語
該文研究了流動式起重機械故障案例庫的建立、故障案例檢索、故障案例的重用等基于案例推理的故障診斷關鍵技術,研究探討了案例檢索機制中字符串相似度的計算方法,建立了流動式起重機械故障檢索機制的模型。結合實際工作的需要,設計實現了一個基于案例推理(CBR)的流動式起重機故障診斷系統,系統以基于案例推理的診斷技術為基礎,采用關系型數據庫存儲數據,實現了流動式起重機械的故障診斷。
參考文獻
[1]王麗,婁建安,趙維霞.基于案例的智能維修訓練系統[J].測試技術,2006,25(2):73-74.
[2]何慶飛,王漢功,陳小虎.故障樹分析法在汽車起重機液壓系統故障診斷中的應用[J].機床與液壓,2008,36(2):196-198.
[3]羅天洪,楊彩霞,孫冬梅.基于故障樹的汽車起重機液壓故障診斷專家系統[J].機械科學與技術,2013(4):538-544.