秦 楠 薛 鵬
(1.92199部隊 青島 266000)(2.91184部隊 青島 266000)
液壓系統(tǒng)是艦船的重要組成部分,其故障主要來源于油污染、泄漏、磨損等,具有多發(fā)性、不確定性和隱蔽性的特點[1~3]。多種類型的故障交叉出現(xiàn),要求維修人員必須具有豐富的專業(yè)知識和維修經(jīng)驗,給某型艦船液壓系統(tǒng)的故障診斷帶來很大難度。專家系統(tǒng)將大量專業(yè)知識與歷史維修案例有機融合,指導(dǎo)維修人員快速處理故障,可以很好地解決這一問題。目前,針對艦船液壓故障診斷問題而開發(fā)的專家系統(tǒng)多采用基于規(guī)則的推理方法,其診斷的智能化水平有了很大的提高,但仍存在著知識獲取困難、專家知識表述規(guī)則化困難、推理過程不易理解、在復(fù)雜系統(tǒng)中可能出現(xiàn)組合爆炸等問題。近年來,隨著人工智能技術(shù)的發(fā)展,出現(xiàn)了基于案例推理(case-based reasoning,CBR)的方法,文獻(xiàn)[4]將其應(yīng)用于裝填車的液壓系統(tǒng)故障診斷,文獻(xiàn)[5]將其應(yīng)用于防空火炮的故障診斷,文獻(xiàn)[6]將其應(yīng)用于飛機電子設(shè)備的故障診斷?,F(xiàn)有研究表明,CBR 方法具有知識獲取簡單、知識積累方便等優(yōu)點,但也依然面臨著求解質(zhì)量受專家主觀經(jīng)驗影響、求解效率有待進(jìn)一步提高等問題。本文在現(xiàn)有方法的基礎(chǔ)上進(jìn)行改進(jìn),將基于案例推理方法引入某型艦船液壓故障診斷系統(tǒng)的設(shè)計中,進(jìn)一步提高故障診斷的準(zhǔn)確性和效率。
某型艦船液壓系統(tǒng)故障診斷機理可以概括為R5:案例表示(Represent)、案例檢索(Retrieve)、案例重用(Reuse)、案例修訂(Revise)和案例保留(Retain),如圖1所示。
圖1 艦船液壓故障診斷系統(tǒng)的案例推理工作流程
在某型艦船液壓故障診斷專家系統(tǒng)中,用戶首先用系統(tǒng)可以識別的語言在人機界面中輸入故障征兆及關(guān)鍵詞等信息,系統(tǒng)根據(jù)用戶描述生成結(jié)構(gòu)化的查詢案例。系統(tǒng)根據(jù)檢索策略計算故障特征屬性和相似度,從案例庫里檢索出與查詢案例相似度最高的案例進(jìn)行匹配,并根據(jù)新案例的屬性進(jìn)行修正,得到適合當(dāng)前故障的處理方法。用戶根據(jù)實際情況,對故障診斷效果進(jìn)行評估,若未能對當(dāng)前問題形成指導(dǎo),則將該故障作為新案例加入案例庫,以實現(xiàn)案例庫的完善。
根據(jù)某型艦船液壓系統(tǒng)故障診斷的特點,將基于案例推理的技術(shù)應(yīng)用于其故障診斷專家系統(tǒng)的設(shè)計中,完成故障案例的表示方法設(shè)計、故障案例的檢索策略設(shè)計、系統(tǒng)結(jié)構(gòu)和工作流程設(shè)計。
故障案例的表示方法是案例屬性、故障特征、領(lǐng)域知識、數(shù)據(jù)處理方法等相關(guān)知識的集合,也是后續(xù)案例檢索、重用等步驟的基礎(chǔ),其結(jié)構(gòu)及內(nèi)容直接影響著案例檢索及故障診斷的效能。針對某型艦船液壓系統(tǒng)的故障特點,本文采用基于屬性的故障案例表示方法,即每個案例可以用兩種屬性表示:故障基本屬性和故障特征屬性。
故障基本屬性可以用一個5D 向量表示:Case={N,I,S,C,M} ,式中N(NO.) 代表編號,N(NO.)={No,Ns,Nc} ,No是案例編號,Ns是子系統(tǒng)案例庫編號,Nc是子系統(tǒng)案例集編號,I(Information) 是故障發(fā)生時間、位置等信息;S(Symptom)是故障征兆;C(Causation)是產(chǎn)生故障模式的原因;M(Measure)是故障的維修措施。
故障特征屬性主要包括故障特征向量和故障特征權(quán)重向量,具體表示為一個2D 向量:Fault={Ti,Wi},其中,Ti是故障特征向量,可以表示為
式中:Ti為第i個案例的故障特征向量;Ti(n)為第i個案例中的第n個指標(biāo)參數(shù)化處理后得到的特征值。Wi是故障特征權(quán)重向量,即采用粗糙集理論進(jìn)行故障特征權(quán)重計算后得到的向量。
將基于案例推理的方法應(yīng)用于艦船液壓系統(tǒng)的故障診斷中,核心問題是如何向用戶提供最具參考價值的歷史案例及其解決方案,為當(dāng)前故障維修提供指導(dǎo),即故障案例的檢索算法設(shè)計。當(dāng)前,在案例檢索中廣泛采用的使用k-NN 最近鄰法計算故障案例的相似度[7~8],在相似度計算中,權(quán)重會對求解質(zhì)量產(chǎn)生較為顯著的影響。在傳統(tǒng)方法中通常由領(lǐng)域?qū)<医o出,考慮到專家經(jīng)驗的主觀性影響,以及專業(yè)領(lǐng)域知識有時獲取困難,本文在原有方法的基礎(chǔ)上進(jìn)行改進(jìn),引入粗糙集理論用于計算特征屬性的權(quán)重[9~10]。
設(shè)有n個源案例,當(dāng)前案例X與第k個源案例Yk(1 ≤k≤n)的相似度S(X,Yk)可以用下式計算:
式中:X={}x1,x2,...,xi,...,xj為當(dāng)前案例;xi(1 ≤i≤j)為第i個特征屬性值;Wi表示第i個特征屬性的權(quán)值;d(xi,yki)為xi、yki在m維特征空間D=(D1,D2,...,Dm)上的距離:
Wi表示第i個特征屬性的權(quán)值,首先做如下定義[11~12]:對于近似空間V=(U,R),且P?R,Q?R:當(dāng)IND(P)?IND(Q),知識Q依賴于知識P。知識Q對知識P的依賴可以用下式表示:
其中,CARD()表示集合的基數(shù)。
設(shè)案例庫C={c1,c2,...,ci,...cn}為一個由n個案例組成的非空有限集合,?ci(0 ≤i≤n),ci∈C??稍O(shè)案例ci=(T,D),其中T為特征屬性,D為決策屬性。特征屬性T=(t1,t2,...,tj...tm)為一個非空有限集合,其中tj(1 ≤j≤m) 為案例ci的一個特征項,對應(yīng)的特征項權(quán)重為wj(1 ≤j≤m)。下式可用于計算tj的權(quán)重:
使用上述方法可以在一定程度上減少專家主觀性影響,提高相似度的求解質(zhì)量,為系統(tǒng)檢索匹配案例提供較好的計算依據(jù)。
某型艦船液壓故障診斷專家系統(tǒng)由人機界面、推理機、解釋機、診斷報告、診斷信息獲取、綜合數(shù)據(jù)庫、數(shù)據(jù)庫管理和案例學(xué)習(xí)8個模塊組成,如圖2所示。
圖2 艦船液壓故障診斷專家系統(tǒng)結(jié)構(gòu)圖
人機界面又稱人機接口,是用戶和專家與系統(tǒng)之間進(jìn)行信息交流的軟件界面,它將用戶輸入的故障征兆等信息轉(zhuǎn)換為系統(tǒng)可以理解的表示形式,再將系統(tǒng)處理后的信息提供給用戶,專家也可通過該界面對案例庫和知識庫的信息進(jìn)行維護(hù)、管理。推理機模塊是艦船液壓故障診斷系統(tǒng)的核心模塊之一,它根據(jù)用戶輸入的數(shù)據(jù),在案例庫中按照設(shè)計好的檢索策略進(jìn)行檢索,并將相似度較高的參考案例提供給用戶。解釋機模塊根據(jù)知識庫中的信息,使用戶能夠掌握系統(tǒng)的推理過程和診斷步驟。診斷信息獲取模塊采用檢測設(shè)備對某型艦船液壓系統(tǒng)的相關(guān)測試節(jié)點進(jìn)行數(shù)據(jù)采集,并將結(jié)果傳送到綜合數(shù)據(jù)庫中。診斷報告模塊,將案例相似度、故障原因、維修對策等結(jié)果信息以報告的形式反饋給用戶。案例學(xué)習(xí)模塊主要通過兩種手段實現(xiàn)案例庫的豐富與更新:一是補充新案例以增大檢索范圍,二是對現(xiàn)有案例進(jìn)行修正,提高推理的準(zhǔn)確度。綜合數(shù)據(jù)庫模塊也是系統(tǒng)的核心模塊之一,主要由案例庫、知識庫和黑板三部分組成。其中案例庫主要存儲某型艦船液壓系統(tǒng)發(fā)生過的歷史故障案例信息,包含案例編號、故障時間地點、故障排除過程及結(jié)果等信息;知識庫主要存儲某型艦船液壓系統(tǒng)中的設(shè)備名稱、結(jié)構(gòu)圖、工作原理、原始數(shù)據(jù)等資料信息;黑板則用來存放系統(tǒng)推理過程中產(chǎn)生的臨時數(shù)據(jù)。數(shù)據(jù)庫管理模塊,是專家對綜合數(shù)據(jù)庫進(jìn)行維護(hù)的子系統(tǒng),可以保證數(shù)據(jù)內(nèi)容的準(zhǔn)確性和完備性。某型艦船液壓故障診斷專家系統(tǒng)的工作流程圖如圖3所示。
圖3 艦船液壓故障診斷系統(tǒng)工作流程圖
某型艦船液壓故障診斷專家系統(tǒng)的案例數(shù)據(jù)主要來源于某型艦船2015 年以來的歷史維修記錄,包括泵、蓄能器、管路、閥件等眾多部件,利用Access 2010 建立了較為完整的某型艦船液壓系統(tǒng)故障案例數(shù)據(jù)庫。在此基礎(chǔ)上,以Visual Basic 為開發(fā)語言,SQL Server 2008 為數(shù)據(jù)庫查詢工具,在Microsoft Visual Studio 2010 平臺中開發(fā)了基于案例推理的某型艦船液壓故障診斷專家系統(tǒng),系統(tǒng)故障案例庫編輯界面如圖4所示。
圖4 艦船液壓故障診斷專家系統(tǒng)案例庫編輯界面
以某型艦船發(fā)生的實際故障為例進(jìn)行案例檢索,具體故障征兆為:某空氣瓶內(nèi)出現(xiàn)大量液壓油。依據(jù)3.3 節(jié)中提到的工作流程,將故障信息輸入人機界面。系統(tǒng)在案例庫中進(jìn)行最近鄰匹配,根據(jù)3.2 節(jié)中提到的算法計算相似度,選取相似度閾值為0.8,將相似度大于0.8 的案例作為備選結(jié)果,如表1所示。
表1 案例檢索相似度分析
在相似度最大的案例中,取匹配次數(shù)最大的案例生成維修指導(dǎo)信息,如表2所示。
表2 系統(tǒng)生成的維修指導(dǎo)信息表
由于本系統(tǒng)是在收集大量艦船液壓系統(tǒng)實際故障的基礎(chǔ)上,進(jìn)行歸納整理,以案例庫和知識庫的形式存儲于數(shù)據(jù)庫中,同時根據(jù)特征屬性的權(quán)重計算相似度,對目標(biāo)案例的匹配更加科學(xué),給出的維修指導(dǎo)信息簡介清晰,有效提高了某型艦船液壓系統(tǒng)故障診斷的準(zhǔn)確性和效率。
將基于案例推理的方法應(yīng)用到某型艦船液壓故障診斷專家系統(tǒng)的開發(fā)設(shè)計中,具體故障案例分析結(jié)果表明:
1)引入粗糙集理論對基于案例推理的方法進(jìn)行改進(jìn),提高了故障案例檢索的效率和準(zhǔn)確率;
2)所開發(fā)的系統(tǒng)具有較好的診斷能力和較高的診斷效率,為某型艦船液壓系統(tǒng)的故障診斷提供了保障。