何洪雨 林志文 魏國珩 胡 衛
(1.91872部隊 北京 102442)(2.海軍工程大學信息安全系 武漢 430033)
隨著電子設備的技術性、復雜性和密集性程度日益提高,以及各種信息技術、智能技術的廣泛應用,其維修保障難度和要求都越來越高。對于大型復雜電子設備的故障診斷,涉及地理分散的多個子系統、上萬個測試數據采集和上千個模塊故障推理,傳統集中式故障診斷過程涉及數據多、數據傳輸困難,診斷推理計算時間長、效率低,對故障診斷算法和診斷推理系統結構設計的實現提出了很高的要求。而且,由于某些復雜電子設備本身故障征兆交叉混淆、故障因素相互制約、難以進行精確的狀態描述等特點,用于測試的故障檢測設備越來越復雜,但故障虛警率越來越高,嚴重制約了復雜電子設備故障診斷能力的形成和提高[1~4]。
近年來,各種技術紛紛用于大型復雜電子設備故障診斷領域,基于多Agent的分布式診斷技術是其中的研究熱點之一。文獻[5]面向Agent的診斷策略,提出采用神經網絡精確診斷的混合診斷策略。其中初步診斷采用模糊算法求得故障隸屬度最高的故障,再利用神經網絡算法進行精度,確診斷區分故障的嚴重程度,提高了系統的診斷精度。文獻[6]設計的多Agent模型采用CORBA技術實現地理上分布的各個Agent可以方便地根據新的故障解決情況擴充現有綜合知識庫。
分布式Agent技術的核心是采用面向對象的中間件構建分布式的結構模型,并首先由區域A-gent實現對本地測試數據的分析和初步診斷,確定本地臨測的故障情況,之后利用網絡接口提供的通信協議,實現與其它多區域診斷數據的有機融合,最后由中心集中Agent綜合各區域結論推理得到裝備的整體故障情況。正是由于上述分布式A-gent技術區域自治能力強、本地診斷效率高、系統間數據傳輸數量少,裝備系統故障診斷虛警率低等優點,分布式Agent技術在復雜電子設備故障診斷領域得到了廣泛的研究和嘗試,也發揮了重要的、不可缺的作用。
本文提出了一種多Agent的分布式信號流模型故障診斷方法,綜合采用系統故障D矩陣,利用分布式數據采集并實時診斷,結合數據融合和沖突消解算法,最終得出相對合理的診斷結果,較好地解決了復雜電子設備故障診斷難的問題。
針對大型復雜電子設備故障診斷特點,按照基于多區域代理(Agent)的故障診斷系統結構要求構建大型復雜電子設備故障診斷結構模型。
擬采用故障樹模型進行被診斷對象的知識庫建模,由于故障樹模型因果推理的特點,各Agent的動作是根據輸入條件及其計算結果決定的,因此采用如圖1所示的結構。
多區域代理(A-gent)通過信息采集器,從外部環境之中收集有用信息,A-gent通過對消息的綜合之后基于故障D 矩 陣[7~10]計 算 之后,將結果送于執行器執行,作用于外部環境。
基于多Agent的故障診斷系統結構將包含三種類型Agent:子系統故障監測Agent、故障信息交互綜合Agent和全局管理Agent,各Agent的功能描述如下。
·子系統故障監測Agent:對所指定的子系統模塊進行實時采集和有效檢測,查詢本地故障知識庫以確定故障信息,將故障信息生成故障矩陣,通過通信協議和專用的通信信道傳遞給故障信息交互Agent和故障綜合計算Agent;
·故障信息交互綜合Agent:對監測到的各子系統故障監測Agent提交的故障信息矩陣進行匯總,經過綜合計算分析,得出診斷結果,并進行存儲轉發;未得出診斷結果的直接轉發至全局管理A-gent;
· 全局管理Agent:用于管理本系統各Agent的信息,負責系統中新增和刪除Agent,并發布給相關Agent,當多個Agent發生競爭沖突(同一故障現象同時由多個Agent提交)時,向指定Agent發出授權,同時更新故障知識庫的內容,將已定義的由故障信息交互綜合Agent提供的未知故障進行參數格式化后加入到故障知識庫中,并分發給相應的Agent。
由以上三種類型的Agent構成大型復雜電子設備故障診斷層次結構模型,如圖2所示。

圖2 故障診斷層次結構模型
多個子系統故障檢測Agent參與大型復雜電子設備故障檢測,每個Agent根據自己的判斷方法和標準,給出相應的測試結果,并將這些測試結果發送給故障信息交互綜合Agent,綜合信息交互Agent對這些結果采用D矩陣算法進行協同診斷和沖突消解,最終找出復雜電子設備中可能的故障節點,為維修提供參考。
利用多Agent進行故障診斷,必須使集成在同一系統中的各個Agent能夠彼此通信和協作,各Agent之間為了能夠通信,啟動時必須向全局管理Agent發送自己的有關信息進行注冊,并在退出時申請刪除,由全局管理Agent實現各區域代理的實時動態管理。
對于多個Agent之間的協作關系,若故障源單一且被多個Agent感知時,選擇耗費系統資源最少、診斷效果最好的子系統故障監測Agent來完成診斷任務;對于復雜的故障診斷問題,則根據故障知識庫的要求將其分解,并運用多種故障診斷方法協同完成。為了完成共同診斷任務而合作的子系統故障監測Agent和故障信息交互綜合Agent形成一個統一的聯盟,此時,全局管理Agent根據子系統故障監測Agent提交的故障矩陣信息,向具有相應能力的故障信息交互綜合Agent請求進行處理,具體的協同診斷流程如圖3所示。

圖3 復雜故障多Agent協同診斷流程
多Agent診斷的核心在于如何協調和組織多個Agent通過競爭和合作求解問題。競爭和合作是多Agent系統模擬人類及人類社會的基本行為。各子系統故障監測Agent分別獨立對問題求解,故障信息交互綜合Agent負責尋求最佳求解方案,當結果出現沖突時,相互之間協調實現沖突消解。
Agent可以認為是具有感知能力、問題求解能力和與外界通信能力的智能實體,通過一種松耦合的方式進行分步并行求解。如圖4所示,全局管理Agent實現任務的分解、分配和診斷Agent任務執行進程的控制,掌握所有子系統故障監測Agent的外部特征,負責協調不同層之間的協作及控制問題的求解。

圖4 多Agent協同診斷機制
子系統故障監測Agent負責完成全局管理A-gent分配的診斷任務,同一層次不同的監測Agent可以包含不同的知識表達方式和推理機制,可對相同的診斷任務進行并行求解。當多個監測Agent對同一類型的故障進行并行求解時,由于各監測Agent的所擁有的知識和使用的推理機制不同,所得到的結果難免會有所差異,甚至相互沖突。決策Agent負責從不同的診斷結論中找出最優,并對相互沖突的結果進行相關回溯,實現沖突消解。
每一個子系統故障監測Agent都產生一個故障矩陣Ui(i=1,…,n),構成故障結論集,同時設定M 個標準衡量各個故障診斷結論,{C1,C2,…,CM},采用動態模糊綜合評判方法求解在不同的衡量標準下的綜合評判值,從而確定最終的故障點。
每一個子系統故障監測Agent都產生一個故障矩陣,構成故障結論集,運用不同的測試方法對故障進行檢測,并采用動態模糊綜合評判方法求解在不同的衡量標準下的綜合評判值,從而確定最終的故障點。Ti代表第i各故障檢測Agent,Mj代表第j各節點可能就是故障點,dij代表第i各故障測試Agent對Mj是故障點的判斷,如果dij=1,則代表該點可能為故障點,如果dij=0,則該故障測試則認為該節點無故障,故障D矩陣如圖5所示。

圖5 測試判斷D矩陣
確定故障節點步驟如下:

第二步,如果剩余Ti測試中,滿足?dij=1,j∈{a,b,c},則刪除Ti測試點。
第三步,從剩下的測試點中任選兩個,稱為Tx和Ty,判斷?j∈[1,m],dxj=dyj,記錄相等的j的值,假設有且唯一j值d,則Md也為故障點。重復該過程,直至所有兩個測試點都進行判斷過,同理此方案也可能找出其他符合上述條件的點,可能測出點記錄為Me、Mf。
第四步,如果剩余Ti測試方案中,滿足?dij=1,j∈{a,b,c,d,e,f},則刪除Ti測試點。
第五步,依此類推,在方案中任選k個點(k≤n-z,z為已經刪除的測試點的數目),記錄相等的j的值,假設存在有且唯一j值g,則Mg也為可能故障點。重復該過程直至所有任k個點之間進行過相互比較。
第六步,得出結論,上述所有查出的故障點即為損壞節點。將判斷信息發送給故障信息交互綜合Agent。
針對大型復雜電子設備故障診斷問題,在敘述常用智能故障診斷方法手段基礎上,利用Agent技術,提出了多Agent的分布式信號流模型故障診斷方法,每個Agent結合D矩陣判斷方法,判斷出損壞的節點,故障信息交互綜合Agent根據每個判斷結果進行整合處理,得出最后結論,在下一步的研究之中,將會對于D矩陣判斷進一步改進,提高判斷效率,對于多Agent判斷方案進一步優化,使得判斷的結果更加準確。
[1]李紅衛,楊東升,孫一蘭,等.智能故障診斷技術研究綜述與展望[J].計算機工程與設計,2013,34(2):632-636.
[2]Wooldridge M,J.N.R.Intelligent Agents:Theory and Practices[J].The Knowledge Engineering Review,2005(2):115-152.
[3]Yang Kun,L.D.y.Agents:properties and classifications[J].Computer Science,2009(9):30-34.
[4]Tu F,Pattipati K R.Rollout strategies for sequential fault diagnosis[J].IEEE Transactions on System Man and Cybernetics Part a:System and Humans,2003(1):86-99.
[5]魏萍,杜麗霞.基于Agent的精確診斷策略的研究[J].自動化與儀器儀表,2011(6):12-13.
[6]李彬彬.基于多Agent的遠程故障診斷系統[J].科技信息,2012,35:93-94.
[7]林志文.基于D矩陣的艦船電子裝備綜合診斷方法[J].海軍工程大學學報,2009,21(4):87-90.
[8]趙宇,王宇宏,黃敏.復雜電子設備研制階段數據的可靠性綜合評估[J].系統工程與電子技術,2002,24(1).
[9]林志文,賀喆,劉松風.基于多信號模型的系統測試性分析與評估[J].計算機測量與控制,2006,(14):222-224.
[10]BIAN Mengmeng,SHI Jian,WANG Shaoping.FTA-based fault diagnosse expert system for hydraulic equiment[C]//Beijing:Fluid Power and Mechatronics(FPM),2011:959-963.