羅云林,尉建東
(中國民航大學(xué)航空自動化學(xué)院,天津 300300)
內(nèi)窺檢測是檢查航空發(fā)動機(jī)內(nèi)部表面結(jié)構(gòu)損傷最有效的手段之一,在航空發(fā)動機(jī)維護(hù)中得到了廣泛應(yīng)用。目前,航空公司主要依靠工作人員的經(jīng)驗和人工查閱發(fā)動機(jī)維護(hù)手冊對發(fā)動機(jī)內(nèi)窺損傷進(jìn)行診斷,本文研究了一種基于案例和規(guī)則的航空發(fā)動機(jī)內(nèi)窺故障智能診斷專家系統(tǒng),可以快速、準(zhǔn)確地對損傷進(jìn)行智能診斷。
傳統(tǒng)的人工檢測方式存在主觀性強(qiáng)、耗時長的缺點,難以滿足維修現(xiàn)場的需要,本文研究的智能診斷專家系統(tǒng),降低了對檢測人員的技術(shù)要求,提高了診斷的精度和效率,能夠快速準(zhǔn)確地給出診斷結(jié)果,滿足日益增長的民航維修需要。
目前,基于規(guī)則的專家系統(tǒng)使用最為廣泛,但是缺乏靈活性,在航空發(fā)動機(jī)內(nèi)窺檢測中,一旦損傷參數(shù)的數(shù)值接近規(guī)則的臨界值或者沒有匹配規(guī)則時,專家系統(tǒng)不能做出診斷;基于案例的專家系統(tǒng)則是把過去解決問題的經(jīng)驗知識表示成案例,把需要解決的目標(biāo)問題與案例進(jìn)行相似度計算,若匹配成功,則用案例解決問題的辦法來解決當(dāng)前的目標(biāo)問題?;诎咐膶<蚁到y(tǒng)需要大量的經(jīng)驗知識,并且隨著案例的逐漸增加,案例的檢索速度也變得越來越慢,直接影響到專家系統(tǒng)的工作效率,因此在本文中,設(shè)計了基于案例和基于規(guī)則的混合專家系統(tǒng),綜合了兩種系統(tǒng)的優(yōu)點,做到揚(yáng)長避短。
本文設(shè)計的航空發(fā)動機(jī)內(nèi)窺檢測智能診斷系統(tǒng)邏輯結(jié)構(gòu)框圖如下。
圖1 系統(tǒng)邏輯結(jié)構(gòu)框圖Fig.1 Logical structure diagram of system
在本系統(tǒng)中,用戶、領(lǐng)域?qū)<彝ㄟ^人機(jī)界面和系統(tǒng)進(jìn)行信息交換,領(lǐng)域?qū)<彝ㄟ^人機(jī)接口進(jìn)行知識庫的更新與維護(hù),用戶通過人機(jī)界面輸入的內(nèi)窺圖像存儲在動態(tài)數(shù)據(jù)庫中,主控模塊讀取動態(tài)數(shù)據(jù)庫中的信息并進(jìn)行數(shù)字圖像處理后傳遞給規(guī)則推理機(jī),規(guī)則推理機(jī)進(jìn)行故障的初級診斷,如果規(guī)則推理機(jī)沒有找到相應(yīng)的規(guī)則,或損傷參數(shù)信息接近規(guī)則的臨界參數(shù),則診斷失敗,進(jìn)而由案例推理機(jī)調(diào)用知識庫中的案例進(jìn)行邏輯推理;如果案例推理機(jī)也無法從案例庫中找到最佳解決方案,知識獲取子系統(tǒng)將對進(jìn)行案例記錄保存,以供領(lǐng)域?qū)<疫M(jìn)行分析,并添加到案例知識庫。主控模塊記錄各中間環(huán)節(jié)的處理過程并經(jīng)由解釋子系統(tǒng)反饋給用戶。
1.2.1 規(guī)則的表示和規(guī)則庫的建立
規(guī)則常用于表示具有因果關(guān)系的知識,其具體形式是:
其中:P代表一組前提或狀態(tài);Q代表若干結(jié)論或動作,其含義是如果前提P得到滿足,則可得出結(jié)論Q或Q所規(guī)定的動作。
由波音公司的CFM56-7型發(fā)動機(jī)的維修手冊[2]和多年來在航空發(fā)動機(jī)內(nèi)窺檢測積累的經(jīng)驗中提取知識規(guī)則,得到的部分規(guī)則如下:
規(guī)則一:
If(發(fā)動機(jī)部位=HPC)and(子部位=前端定子)and(伸長度<0.20)and(形狀復(fù)雜度>6)
Then(損傷類型=裂紋)
規(guī)則二:
If(發(fā)動機(jī)部位=HPC)and(子部位=前端定子)and(部位明細(xì)=中緣)and(損傷類型=裂紋)and(尺寸長度<4.3 mm)
Then(損傷評估=未超標(biāo),維修決策=續(xù)航10周期或25 h后更換發(fā)動機(jī))
規(guī)則三:
If(發(fā)動機(jī)部位=HPC)and(子部位=前端定子)and(部位明細(xì)=前緣)and(損傷類型=裂紋)and(尺寸長度<4.3 mm)
Then(損傷評估=超標(biāo),維修決策=立即更換發(fā)動機(jī))
將得到的規(guī)則儲存在靜態(tài)數(shù)據(jù)庫中,就建立起規(guī)則庫,如前面得到的規(guī)則二可以用對象-屬性-值的三元組的形式存于知識庫中,如表1所示。
表1 對象-屬性-值三元組形式規(guī)則Tab.1 Object-attribute-value tripe rule
1.2.2 規(guī)則推理機(jī)
規(guī)則推理可以分為三個方向[4]:正向推理、反向推理及正反向混合推理。通過對民航發(fā)動機(jī)內(nèi)窺評估和維修情況的研究,規(guī)則條件的事實容易獲取,所以這里選用正向推理策略。
系統(tǒng)的規(guī)則推理過程是:系統(tǒng)將圖像的輸入信息和圖像經(jīng)過處理后提取的特征參數(shù)一同與規(guī)則庫中的規(guī)則前提條件進(jìn)行匹配,若匹配成功,則將該規(guī)則的結(jié)論部分作為中間結(jié)果,存儲在動態(tài)數(shù)據(jù)庫中,若沒有找到任何匹配規(guī)則,則推理失敗,轉(zhuǎn)入案例推理部分。推理得到的中間結(jié)果繼續(xù)與知識庫中的規(guī)則進(jìn)行下次匹配,直到?jīng)]有匹配規(guī)則為止,最后匹配規(guī)則的結(jié)論將作為結(jié)果輸出,推理流程圖如圖2所示。
1.2.3 規(guī)則庫的更新與維護(hù)
圖2 系統(tǒng)規(guī)則推理流程圖Fig.2 Process with rule-based reasoning
在民航發(fā)動機(jī)內(nèi)窺檢查中,維修手冊只是發(fā)動機(jī)制造商給各維修單位提供的一種維修標(biāo)準(zhǔn),而維修手冊總是在不斷的根據(jù)新情況更新,這時領(lǐng)域?qū)<乙惨獙σ?guī)則庫進(jìn)行更新,以保證民航的飛行安全。
1.3.1 案例的表示與案例庫的建立
系統(tǒng)中的案例都是領(lǐng)域?qū)<以陂L期的內(nèi)窺檢測中遇到的真實問題,并通過經(jīng)驗給予解決,然后將這些案例整理成標(biāo)準(zhǔn)樣本案例。一個標(biāo)準(zhǔn)樣本案例[6]包括以下幾個部分:案例編號:每個案例具有唯一辨識符;發(fā)動機(jī)型號;發(fā)動機(jī)部位:損傷所在的發(fā)動機(jī)大部位;損傷部位:損傷所在的細(xì)部位;部位明細(xì):損傷在細(xì)部位的具體位置;損傷參數(shù)及尺寸:包括伸長度,面積,深度等;損傷判斷及維修策略:針對發(fā)動機(jī)的不同部位、不同的損傷尺寸,做出損傷判斷,給出相應(yīng)的維修策略。表2是標(biāo)準(zhǔn)案例示例表。
表2 標(biāo)準(zhǔn)案例表Tab.2 Standard cases
在Access2003數(shù)據(jù)庫設(shè)計為表PICs,其中字段名CaseNo為案例編號,CasePic為內(nèi)窺圖像文件,Engine-Type為發(fā)動機(jī)型號,EnginePart為發(fā)動機(jī)部位,F(xiàn)rondosePart為具體部位,PartDetail為部位明細(xì),DamageType為損傷類型,Diagnose為維修決策,SizeType為內(nèi)窺測量的損傷尺寸類型,Measure01為長度,Measure02為深度,Measure03為面積等。
案例以表格的形式存儲于關(guān)系型數(shù)據(jù)庫中,由于本系統(tǒng)的案例庫規(guī)模不是很大,所以采用單級索引即可滿足快速查找的要求,在本系統(tǒng)中,對發(fā)動機(jī)型號進(jìn)行一級索引。
1.3.2 案例推理機(jī)
案例推理的過程實際就是案例檢索的過程[1],案例推理的結(jié)果是一個最佳案例;如果匹配度過低,則系統(tǒng)將提示查找失敗。本系統(tǒng)才用的案例檢索策略是最近鄰策略,與其他推理策略相比,最近鄰策略簡單易行,其最大的問題是當(dāng)案例庫中案例數(shù)量較多時,檢索速度會變慢。但在本系統(tǒng)中,由于案例相對較少,所以可以采用最近鄰策略進(jìn)行推理。
首先通過人機(jī)界面,用戶把發(fā)動機(jī)型號、損傷部位等要素輸入到系統(tǒng),系統(tǒng)再對內(nèi)窺圖像進(jìn)行處理,提取圖像的特征信息,當(dāng)輸入信息和提取信息不滿足規(guī)則推理部分的要求,轉(zhuǎn)入案例推理,案例庫依照輸入信息進(jìn)行檢索,查詢出滿足特定發(fā)動機(jī)型號的一級案例。接下來對所查詢到的一級案例,計算它與樣本案例之間的匹配度,特征參數(shù)即為損傷尺寸,匹配度可用式(1)計算
其中:Ds表示為案例c與c*的匹配度;Wi為各特征參數(shù)的權(quán)值因子;n表示所有征兆數(shù);Xi和Yi分別表示案例c與c*的初始特征或結(jié)論的可信度。當(dāng)Ds=1時,表明兩個案例最相似,即完全匹配;當(dāng)Ds=0時,表明兩個案例完全不相同。在本系統(tǒng)中,當(dāng)匹配度大于0.8時,就可以認(rèn)為是相似案例,就可以使用檢索到的相似案例所提供的損傷判斷和維修建議來解決新問題。當(dāng)匹配度不滿足要求時,案例推理失敗,整個系統(tǒng)將無法對損傷做出判斷,這時知識獲取子系統(tǒng)會記錄新問題,等待領(lǐng)域?qū)<医o出人工診斷方案,并輸入到案例庫做為新案例以備下次使用。
1.3.3 案例庫的更新與維護(hù)
損傷的判斷標(biāo)準(zhǔn)和維修策略會隨著新問題的出現(xiàn)而改變,因此案例也要做出全部或部分參數(shù)的更改[5]。而且案例也會隨著時間推移不斷增加,這會導(dǎo)致系統(tǒng)檢索變慢,因此,要對案例庫進(jìn)行定時維護(hù),清除那些因為技術(shù)進(jìn)步而淘汰的無用案例,保證案例檢索的高效、準(zhǔn)確。
本文所設(shè)計的航空發(fā)動機(jī)內(nèi)窺檢測智能診斷專家系統(tǒng)選用面向?qū)ο蟮目梢暬_發(fā)工具[2]VB6.0,以實現(xiàn)系統(tǒng)中不同功能模塊。本系統(tǒng)的知識庫,采用微軟公司的Access2003數(shù)據(jù)庫管理系統(tǒng)進(jìn)行構(gòu)造。診斷系統(tǒng)通過ODBC接口對Access數(shù)據(jù)庫進(jìn)行數(shù)據(jù)讀取,這種方式操作簡單,具有很強(qiáng)的通用性。智能故障診斷專家系統(tǒng)的操作界面如圖3所示。
圖3中,專家系統(tǒng)讀取內(nèi)窺檢測所獲取的圖像COM01.jpg,并輸入的圖像相關(guān)信息(如發(fā)動機(jī)的型號、具體部位等),當(dāng)診斷開始后,專家系統(tǒng)對全部信息匯總,進(jìn)行推理和計算,最終在結(jié)果欄中給出診斷結(jié)果和維修建議。
在圖3的試驗中,系統(tǒng)給出的診斷結(jié)果與領(lǐng)域?qū)<业脑\斷結(jié)果一致,證明了專家系統(tǒng)診斷的準(zhǔn)確性,此外,由于系統(tǒng)數(shù)據(jù)規(guī)模較小,診斷所需時間也令人滿意。
本文研究了基于規(guī)則和案例的混合專家系統(tǒng),并應(yīng)用于航空發(fā)動機(jī)內(nèi)窺圖像智能檢測方面。從系統(tǒng)的實驗結(jié)果可以看出該系統(tǒng)可以準(zhǔn)確的對內(nèi)窺損傷做出判斷,并給出相應(yīng)的維修策略。目前該系統(tǒng)還處于開發(fā)實驗階段,案例庫和規(guī)則庫的規(guī)模相對較小,在未來的研究中,隨著案例庫和規(guī)則庫的規(guī)模逐漸增大,如何提高知識庫的檢索效率以及如何做到知識庫的自動更新,將是該系統(tǒng)下一步解決的主要問題。
[1]李 光,寇英展,楊 妝,等.基于案例推理的知識庫系統(tǒng)設(shè)計[J].科學(xué)技術(shù)與工程,2006,6(8):1085-1086.
[2]徐龍喜,陳 果,湯 洋.基于CBR的遠(yuǎn)程發(fā)動機(jī)孔探評估專家系統(tǒng)[J].南昌航空大學(xué)學(xué)報,2007,21(3):58-61.
[3]奚文俊,吳 剛.基于案例推理的電梯故障診斷系統(tǒng)的設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2009,5(3):1603-1604.
[4]蔡自興,約翰·德爾金,龔 濤.高級專家系統(tǒng):原理、設(shè)計及應(yīng)用[M].北京:科學(xué)出版社,2005:39-43.
[5]劉 健.基于案例推理的知識系統(tǒng)的設(shè)計與實現(xiàn)[D].南京:南京航空航天大學(xué),2004.
[6]湯 洋.基于Internet的民航發(fā)動機(jī)內(nèi)部損傷評估與維修決策研究[D].南京:南京航空航天大學(xué),2007.