王克明 陳維義
(海軍工程大學兵器工程系 武漢 430033)
彈炮結合防空武器系統是將低空近程防空導彈和小口徑火炮通過公用搜索、指揮、控制、通信系統(C3I系統)或火控系統相結合而構成的防空武器。彈炮結合系統綜合了防空導彈射擊精度高、射程較遠和高炮反應快、火力密集、近距離毀傷概率大的優點,能有效打擊低空近程內幾乎所有的目標,是一種高性能防空武器系統,已成為現代防空主要武器[1]。彈炮結合武器結構非常復雜,裝備保障比較困難,戰斗使用時如何快速而有效地對各種故障進行診斷和排除,成為該裝備維修保障工作的難點。
對彈炮結合防空武器這樣復雜的裝備進行故障診斷,如果僅靠維修人員使用傳統的方法進行診斷和排除,是有很大局限性的。為解決這一問題,本文將智能故障診斷技術[2]應用到彈炮結合防空武器故障診斷中,構建一個基于案例推理故障診斷專家系統,來解決彈炮結合防空武器故障診斷問題。
故障診斷專家系統是將專家系統應用到故障診斷之中,可以利用領域知識和專家經驗提高故障診斷的效率[3]。基于案例推理(Case-Based Reasoning,CBR)的工作原理,就是利用過去已有的經驗和知識來解決遇到的新問題。CBR故障診斷專家系統[4]是通過訪問案例庫中過去相似案例的處理經驗而獲得當前問題解決方案的一種新的推理模式。通過將過去已有的大量診斷案例和新發生的故障案例進行對比,提出新問題的解決方案。利用該專家系統進行故障診斷時,只需在案例庫中找到類似的故障案例,就可求解當前問題。同時通過案例庫自學習機制,將新的故障案例不斷地加入案例庫中,使專家系統案例庫更加完善。
根據Aamodt&Plaza和國外其他學者提出的“4R”[5~6]模型,一個典型的案例推理問題求解過程的基本步驟可以歸納為四個主要的過程:案例檢索(Retrieve)、案例重用(Reuse)、案例修正(Revise)和案例學習(Retain)。如圖1所示。

圖1 案例推理的基本原理
2.2.1 案例表示
知識表示(Knowledge Representation,KR)[7]是關于對知識進行表示的理論和方法,以便計算機可以直接使用所表示的知識。具體而言,它是一種用來在專家系統的知識庫中對知識編碼的理論和方法。計算機所使用的知識是一種數據結構與控制結構的統一體,在知識表示時既要考慮知識的存儲,又要考慮知識的使用。知識表示要解決的問題就是如何將所獲得的領域專家知識在計算機中以合理的方法進行描述和存儲,以便系統能夠有效地使用這些知識。
目前常用的知識表示方法[8]有:邏輯表示法、產生式表示法、語義網絡表示法、框架表示法、腳本表示法、概念圖表示法、面向對象表示法、記憶網表示法。不同的知識表示方法各有其特點,本文將采用面向對象表示法對案例進行表示。
面向對象(Object Orientation,OO)[9]的知識表示方法能將多種知識表示方法按照面向對象的程序設計原則組成一種混合知識表示形式,以對象為中心,將對象的屬性、動態行為特征、相關領域知識和數據處理方法等有關知識封裝在表達對象的結構中。
一個故障案例可以定義為對象:

采用面向對象的知識表示方法,一個故障案例可以表示為圖1所示結構的對象:

圖2 故障案例的結構
故障特征信息包括故障特征向量和故障特征權重向量。故障特征向量是指在一個故障案例中所有特征值經參數化處理后,按照一定的順序組成的向量。故障特征權重向量是指故障特征值對應的權重組成的向量。故障特征向量可表示為

其中Ai表示第i個案例的故障特征向量,Ai(k)表示第i個案例中的第k個指標參數化處理后得到的特征值。
2.2.2 案例庫的組織
彈炮結合武器是集雷達光電多種探測、控制以及導彈火炮多種武器發射、毀傷為一體的大型復雜武器系統,系統結構比較復雜,故障案例多種多樣,同時,合理的案例組織結構也是構建故障診斷專家系統的關鍵,案例的組織存儲方式將影響專家系統的診斷效率。本文將對案例庫進行分層組織。首先構建基本框架,將彈炮結合武器按照其結構組成一個樹狀結構,系統總案例庫作為樹根,系統的各個功能模塊組成樹干,各功能模塊的設備組成葉子。案例庫的組織結構如圖3所示。

圖3 彈炮結合武器案例庫結構
2.2.3 案例的匹配
相似度(Similarity)是故障案例之間的相似性的度量。相似度是是案例檢索匹配的依據。
案例間相似度量的基本方法大都是基于距離測度的相似評判方法,常用的距離測度方法有:歐氏距離、曼哈頓距離、無限模距離、海明距離、明考斯基距離、Hausdorff距離、Mahalanobis距離等[10],本文將采用基于海明距離的相似度計算方法。
基于海明距離的相似度計算方法的定義如下:
設兩個案例為X=(x1,x2,…,xn),Y=(y1,y2,…,yn),則它們之間的相似度為

其中DIST(X,Y)為海明距離,wi代表第i個屬性的權重。

maxi和mini分別表示案例的第i個屬性的最大值和最小值。
案例類之間的相似度,定義為兩類案例中的最相似的兩個案例間的相似度:

其中Gx,Gy是兩個案例類,SIM(xi,yi)是案例xi和yi間的相似度。
基于案例推理的彈炮結合武器故障診斷專家系統,在進行故障診斷時,先從故障案例庫中尋找與當前案例匹配的故障案例,若能找到與之匹配的故障案例,則將其輸出作當前問題解決方案。若沒有找到與之匹配的故障案例,則返回診斷初始界面,修改故障案例,調整故障特征向量,再次檢索匹配,若能找到與之匹配的故障案例,則將其輸出作當前問題解決方案。如果經過多次案例修改仍得不到匹配的故障案例,則將該案例作為一個新問題提交給專家,由專家解決后反饋給用戶,并經過案例學習后加入專家系統案例庫。
基于案例推理的彈炮結合武器故障診斷專家系統結構模型如圖4所示。

圖4 故障診斷專家系統結構
·人機接口:專家系統和用戶的接口,用戶可以分為普通用戶、專家用戶和管理員用戶。普通用戶利用專家系統進行故障診斷,專家用戶解決故障診斷過程中遇到新故障和疑難問題,管理員用戶定期對專家系統進行維護數據備份。系統通過人機接口區分不同的用戶,以及對各類用戶的授權。
·案例庫管理:管理員用戶通過案例庫管理模塊進行維護管理,案例庫備份、數據恢復等。
·診斷報告:將故障描述的文本信息轉化為計算機能識別的編碼,同時在專家系統故障診斷結束時將診斷結果轉化為文本提交給用戶。
·推理機:是專家系統的核心部分,實現案例檢索、案例匹配。
·自學習:將新增的案例特征提取后進行編碼,然后加入到案例庫中,案例庫通過自學習機制不斷得到完善。
·故障案例庫:采用分層結構存放歷史所有的故障案例,是專家系統進行故障診斷的主要信息來源。
·系統知識庫:存放裝備功能的邏輯結構功能,以及相互影響,當某一模塊故障后會影響其他的哪些模塊和功能。
·解釋模塊:將知識庫中存放的信息轉化為計算機能識別的編碼并提供給推理機使用。

圖5 診斷流程圖
用戶登錄系統后,進入故障診斷界面,輸入故障描述信息,系統根據輸入的信息,選擇需要檢索的子案例庫,在子案例庫中尋找與當前案例匹配的故障案例,若能找到與之匹配的故障案例,則將其輸出作當前問題解決方案。若沒有找到與之匹配的故障案例,則返回,用戶調整故障特征向量,再次檢索匹配,若能找到與之匹配的故障案例,則將其輸出作當前問題解決方案。如果經過多次調整仍得不到匹配的故障案例,則將該案例作為一個新問題提交給專家。專家用戶登錄系統后,對新故障進行分析解決,問題解決后及時反饋給用戶。專家系統通過案例自學習后,將新案例加入系統案例庫。診斷流程如圖5所示。
故障描述:彈炮結合武器在使用中,防空火炮射擊模式為連續射擊時,射擊不連續。檢查火炮射控系統工作正常。
專家系統診斷得到相似案例為

表1 相似案例
本文基于案例推理的方法構建了彈炮結合武器故障診斷專家系統框架,將智能故障診斷技術應用到復雜裝備的故障診斷領域中,為高技術復雜裝備的保障問題提供了新的方法。并用實例驗證了該方法在解決復雜故障診斷問題時是有效的。
[1]朱傳偉,穆松,閔華僑.彈炮結合防空武器系統探討[J].戰術導彈技術,2007(5):58-61.
[2]何勇,李增芳.智能化故障診斷技術的研究與應用[J].浙江大學學報(農業與生命科學版),2003,29(2):119-124.
[3]吳明強,李霽紅,曹愛東,等.故障診斷專家系統綜合智能推理技術研究[J].計算機測量與控制,2004,12(10):932-934.
[4]江志農,徐文明.基于CBR的旋轉機械故障診斷專家系統的設計[J].組合機床與自動化加工技術,2011(8):43-46.
[5]A.Aamodt,E.Plaza,Case-based reasoning:foundational issues,methodological variations,and system approaches,Artificial Intelligence Communications,1994:39-59.
[6]D.B.Leake,Case-Based Reasoning:Experien-ces,Lessons and FutureDirection,AAAI Press/MIT Press,Menlo Park,CA,1996.
[7]M.Tim Jones,Artificial Intelligence:A System Approach[M].北京:電子工業出版社,2009:108.
[8]朱福喜,朱三元,伍春香.人工智能基礎教程[M].北京:清華大學出版社,2006:74-96.
[9]Michael Blaha,William Premerlani.宋今,趙豐年(譯).面向對象的建模與設計在數據庫中的應用[M].北京:北京理工大學出版社,2007:11-15.
[10]楊健,楊曉光,劉曉彬,等.一種基于k-NN的案例相似度權重調整算法[J].計算機工程與應用,2007(23):43.
[11]郭敏.多源信息融合在故障診斷技術中的應用研究[J].計算機與數字工程,2011,(3).
[12]夏博.基于LabVIEW的旋轉機械故障診斷模塊的開發[J].計算機與數字工程,2012,(1).