王 苗 肖明芳 康 凱 張林科
1(火箭軍工程大學 陜西 西安 710025)2(火箭軍裝備研究院 北京 100000)
通信設備作為軍事電子信息系統的神經樞紐,是決定部隊戰斗力的關鍵因素。由于通信設備種類型號繁多、內部結構日益復雜,其故障維修工作專業性不斷增強、難度增大,對部隊形成快速穩定的保障能力提出更高要求。
目前針對通信設備的故障診斷及維修保障,大部分學者均基于規則推理(Rule Based Reasoning,RBR)建立相應的故障診斷模型[1-3]。由于RBR技術通常面臨知識庫開發周期長、知識獲取困難、推理靈活性差等問題,近幾年基于案例推理(Case Based Reasoning,CBR)技術受到廣泛關注。CBR技術以“相似問題具有相似解”為假設前提,是一種基于歷史經驗的推理方法[4]。對于通信設備故障維修這類技術要求高、經驗依賴性強的領域,CBR技術可充分利用故障案例庫的累積效應,發揮歷史案例資料的潛在價值。
案例檢索是CBR系統的核心環節,檢索方法的確定直接影響到檢索速度和準確率。目前,在各個領域有許多基于灰色關聯分析的案例檢索方法的研究,文獻[5-7]將灰色關聯分析法引入到源案例與目標案例之間屬性關聯度的計算中,通過帶權單屬性局部關聯度進一步得到案例整體相似度。這與絕大多數案例檢索算法計算相似度的思路一致[8]。但在故障診斷、維修領域,上述思路忽略了故障現象之間內在的邏輯關聯關系,可能會導致“距離陷阱[9]”等問題,降低了檢索結果的準確率??紤]到通信設備內部結構復雜度高,各單元模塊在結構、功能方面存在潛在的緊密聯系,可將其視為包含大量不確定信息的“灰色系統”。本文將灰色關聯分析法引入到對故障現象關聯度的計算中,提出基于灰色關聯分析和故障邏輯的維修案例檢索方法,在傳統算法計算案例相似度的基礎上,將故障邏輯成分融入案例整體相似度中進行案例檢索。本文方法更符合故障診斷、維修領域的應用實際,提高了故障維修案例檢索的科學性。
案例作為CBR系統的知識來源,其結構化表示是對案例進一步處理的基礎。故障案例是對實際發生的故障現象、解決方案等信息的完整描述,根據具體問題具體分析,有較強“針對性”和“情景性”[10-11],且可能存在因偶然因素而導致的特殊案例,具有特殊參考價值,這也是案例知識較規則類知識的優勢所在。
要實現對案例的共享和重用,故障案例表示時應滿足以下要求:
(1) 準確性。從非結構化的案例記錄中準確提取故障特征屬性,確保對故障現象描述的公認性、無異議性;
(2) 區分性。案例表示時要詳細準確但不冗余,避免同一故障多次錄入案例庫,增加案例庫的負擔。對于案例之間的關鍵性細微差異不容忽視,同時要確保案例之間有較強的區分性;
(3) 詳細性。案例表示后的信息要能詳細地描述整個案例,完整無誤地恢復原始案例的信息。
設故障案例庫中共有l個歷史案例,根據以上要求,從案例記錄中提取故障特征屬性,將每個案例用四元組的形式定義如下:
Case={Base,Phenomenon,Conclusion,Solution}
其中:Base為案例基本信息,如案例編號,用于描述案例的唯一標識;Phenomenon為故障現象特征向量,該部分根據故障排查過程,逐項定位、檢測得到;Conclusion為故障結論,用于定位故障原因;Solution為解決方案,描述根據故障診斷結論進行的維修操作。故障案例的結構表示如圖1所示。

圖1 故障案例表示
案例檢索的關鍵是實現目標案例與源案例故障現象特征向量的相似性度量,從而根據相似度大小進一步分析源案例診斷結論、解決方案等對目標案例的適用程度。對于案例相似度的計算,大部分文獻都是基于最近鄰算法[12-13],以距離作為衡量相似性的尺度,如歐氏距離[14]、高斯距離[15]等,距離越接近則相似程度越高,反之則越低。基于灰色關聯分析的案例檢索方法以灰色距離為橋梁實現了單屬性局部關聯度到案例整體相似度的計算,其算法思想[16]為:將目標案例故障特征向量作為參考序列,案例庫中源案例故障特征向量作為比較序列,利用灰色關聯分析法,計算目標案例與案例庫中各源案例的相似度,最后根據相似度大小篩選得到符合條件的源案例。具體實現方法如下。
論域X為案例庫中m個源案例,各案例故障特征向量中包含n個故障屬性,則第i個案例可表示為xi=(xi(1),xi(2),…,xi(n)),i=1,2,…,m,x0為目標案例,x0=(x0(1),x0(2),…,x0(n)),則X為m×n的案例庫故障特征矩陣:
(1)
n個故障屬性通常為量綱不同的數據指標,計算相似度前需將X和x0中的數據元素xi(k)進行歸一化,最常用的方法為向量歸一化法,即:
(2)
灰色關聯分析案例檢索方法將各案例故障特征向量視為n維空間中的點,結合距離度量相似度的思想,在n維空間里與目標點最接近的案例點,即為與目標案例最相似的案例,則案例檢索問題轉換為在n維空間中求目標點與案例點間的距離問題。
Gs(x0(k),xi(k))=
(3)

經式(3)計算得到灰色關聯度矩陣為:
(4)
由相似度和距離之間的轉換公式[19],目標案例x0與案例xi在屬性k上的灰色距離為:
(5)
在n維空間中,根據歐式距離公式及轉換公式,可得目標案例x0與xi的復合灰色關聯度為:
(6)
通過式(6)計算可得到目標案例與案例庫中各案例的灰色關聯度。實際應用時,視具體情況設定閾值,篩選出關聯度大于閾值的源案例并根據相似度大小排序,最后可通過專家評價等人為方式進一步確定更符合目標案例實際的源案例,進行案例重用或案例修正,從而得到維修方案。
對于復雜多屬性的案例,現有文獻在研究案例檢索算法時,都是通過求單屬性相似度加權平均的方法得到案例整體相似度。傳統灰色關聯分析案例檢索方法也采用類似思路。然而,對于各型電臺、交換機、光端機等通信設備,由于其內部構成大多以串行系統為主,使得各單元模塊在結構、功能之間存在緊密聯系,一個單元故障極有可能導致其他單元異常,使得部分故障現象之間存在一定程度的“連帶關系”,如果仍采用傳統的案例檢索思路,忽略故障現象之間的關聯關系,一方面可能會導致“距離陷阱”問題,即計算出的案例整體相似度較高,但實際上并一定是與目標案例“更相似”的案例;另一方面脫離了對設備結構關系、故障間相互影響等故障邏輯、故障性質方面的考慮。可見,僅從屬性相似度的角度計算案例相似度,過于“機械化”,易造成誤判,降低檢索結果準確率。
基于以上分析,本文提出基于灰色關聯分析和故障邏輯的案例檢索方法。本文并非直接將灰色關聯分析法用于案例與案例間關聯度的計算,而是應用于故障現象與故障現象之間關聯度的計算?;疑P聯分析的幾何意義[20]為:通過統計序列的幾何關系判斷關聯程度,序列曲線的幾何形狀越接近,表示兩者的關聯度越大。則對于兩故障現象,故障特征序列幾何形狀越接近,兩故障現象“步調一致”的程度越高,即同時發生的可能性越大,兩故障現象在結構、邏輯上關聯程度也越大。在長期的設備維修過程中積累了大量故障維修案例,引入灰色關聯分析法計算故障現象之間關聯度,通過分析案例庫中大量歷史案例記錄,挖掘出故障現象間隱含的故障邏輯關系,并將其作為案例相似度的一部分,可以進一步提高案例檢索的科學性。
本文算法思路為:利用傳統算法思路計算源案例與目標案例的相似度;利用灰色關聯分析法得到故障現象關聯度矩陣,并計算源案例與目標案例故障現象平均關聯度;根據專家經驗給定二者的相對重要度,兩部分加權求和即得到引入了故障邏輯成分的案例相似度。
對于各個環節涉及到的故障屬性權重,本文采用粗糙集(Rough Set,RS)理論進行計算得到。RS是用于處理不確定問題的數學理論,其僅根據數據本身進行分析,克服了層次法等主觀賦權法的不足,得到的權重值更符合客觀實際。對于具有多故障現象的故障案例,由于故障現象之間的關聯程度以及系統內部存在的不確定因素,出現某些故障現象時,通常并不能直接定位故障單元和故障類型,該實際情況與RS理論的“不確定性分類”思想一致,因此本文采用粗糙集計算屬性權重。本文算法流程如圖2所示。

圖2 基于灰關聯分析和故障邏輯的案例檢索算法流程
Step1將灰色關聯分析法應用于故障現象之間關聯度的計算中,得到故障現象關聯度矩陣。
論域X為案例庫中m個源案例,則由第2節可知,X可表示為m×n的源案例故障特征矩陣,如式(1)所示。
由于在對通信設備故障定位的過程中,大部分故障通過直接觀察法或簡單操作即能對每一項屬性指標進行排查,如判斷某單元模塊工作正常與否,或某故障現象有無等,因此,定義式(1)中xi(k)為:
i=1,2,…,m,k=1,2,…,n
(7)
第j個故障現象和第k個故障現象之間的灰色關聯度計算公式為:
(8)
由上式可得到故障現象關聯度矩陣,由于GA為對稱矩陣,取GA的上三角部分表示如式(9)所示。其中,當j=k時,由式(8)可得GA(j,k)=1,與實際情況相符。
(9)
Step2利用傳統算法思路計算目標案例與各源案例之間的相似度sim(xi,x0),設定閾值μ可初步篩選出一批案例。
單個屬性相似度利用離散型特征屬性相似度公式進行計算:
(10)
則案例整體相似度為:
(11)
式中:wk為故障現象k的權重。假設閾值μ,則以sim(xi,x0)≥μ為篩選條件,可初選得到一批符合條件的案例。
Step3計算目標案例與各源案例的故障現象關聯度,具體計算過程如下:
輸入:案例庫中某歷史案例故障特征向量xi;目標案例故障特征向量x0;故障現象關聯度矩陣GA;組合屬性權值矩陣Wjk。
輸出:案例xi與目標案例x0的故障現象平均關聯度Phgrey(xi,x0)。
① 將目標案例x0與歷史案例xi的故障現象特征屬性“兩兩匹配”,逐對進行比較,若x0(j)=xi(j)且x0(k)=xi(k)(j=1,2,…,n,k=1,2,…,n且j≠k),則認為目標案例x0與案例xi中故障現象j與故障現象k為一個關聯對。
② 若一個關聯對中,有x0(j)=x0(k),說明故障現象j和故障現象k同時發生或同時不發生,則兩案例中故障現象j與故障現象k的關聯度為Gjk=GA(j,k),否則關聯度為Gjk=1-GA(j,k)。
③ 重復步驟①、②,直到所有故障特征屬性完成兩兩匹配對比,并記錄下匹配的關聯對數目num。
④ 計算案例xi與目標案例x0故障現象之間的平均關聯度:
(12)
式中:wjk為權重值,表示將兩故障屬性j、k綁定并視為一個整體時的重要程度。
Step4通過專家經驗確定兩者:sim(xi,x0)和Phgrey(xi,x0)的相對重要程度,給定權重α、β(α+β=1),并計算案例xi與目標案例x0的整體相似度GLsim(xi,x0):
GLsim(xi,x0)=αsim(xi,x0)+βPhgrey(xi,x0)
(13)
式(13)得到的即為融入了故障邏輯成分的案例整體相似度。
首先將粗糙集理論中的相關定義介紹如下。

定義2[22]對任一屬性子集B?A,不可分辨關系IND(B)為:
IND(B)={(x,y)|(x,y)∈U2,?a∈B,f(x,a)=
f(y,a)}
U/IND(B)是論域U基于不可分辨關系IND(B)的一個劃分,即為一個等價類。
通常對象x基于不可分辨關系IND(B)的等價類可表示為:
[x]IND(B)={y∈U|(x,y)∈IND(B)}
粗糙集中,等價類即構成了論域中的知識顆粒,RS理論基于屬性的知識分類能力計算屬性權重[23],算法思想[24]為:從決策信息系統中刪除部分屬性,對比屬性刪除前后知識分類情況:若屬性刪除后對知識分類的影響程度大,說明屬性的重要程度高;反之說明屬性的重要性低。
根據定義3,對單個屬性ak的權重計算公式為:
(14)

本文根據定義3及式(14)計算單個屬性權重的方法,提出針對兩兩組合屬性子集{aj,ak}(j≠k)的組合權重計算方法,具體計算過程如下:
Step1計算決策屬性D對屬性子集{aj,ak}的依賴度:
(15)
Step2計算屬性子集{aj,ak}的重要度:
Sig({aj,ak})=γC(D)-γC-{aj,ak}(D)=
(16)
Step3分別計算n個屬性在兩兩不同組合時屬性子集{aj,ak}的權重:
(17)
式中:H={(au,av)|au,av∈C,u≠v且{u,v}∩{j,k}=?,且∪({u,v})∪{j,k}=C}。

(18)

以某型電臺故障維修案例為例,現有一組源案例xi和目標案例x0,其故障現象特征向量如表1。其中論域U={x1,x2,…,x15},A={a1,a2,…,a6,D}為屬性集合,條件屬性集C={a1,a2,…,a6}為六種故障現象,決策屬性D為故障定位,D={1,2,3,4,5}分別表示主控微機單元故障、面板控制單元故障、電源單元故障、頻率合成器故障、邏輯電平轉換故障。與式(1)對應,論域U中案例故障特征向量構成15×6的故障特征矩陣X,其中,(xi,ak)=1表示案例xi存在故障現象ak,(xi,ak)=0表示案例xi不存在故障現象ak。

表1 源案例庫和目標案例故障現象特征向量
根據式(14)計算可得單個故障屬性ak的權重向量為:
利用式(15)-式(18)計算屬性子集{aj,ak}的組合權重,結合單屬性權重向量wak可得到屬性權值矩陣Wjk,由于Wjk為對稱矩陣,取Wjk的上三角部分為:
Wjk(m,n)(m≠n)表示屬性子集{am,an}的組合權重,對角線元素表示單個屬性ak的權重。
根據式(7)計算故障屬性間的關聯度,取分辨系數ξ=0.5,可得到故障屬性關聯度矩陣GA,由于GA為對稱矩陣,取GA的上三角部分為:

GA(j,k)表示故障現象aj和故障現象ak之間的灰色關聯度。
利用式(10)-式(11)計算案例相似度,可得源案例xi與目標案例x0的相似度sim(xi,x0);根據檢索算法中的Step 3計算可得到案例間故障現象平均關聯度Phgrey(xi,x0);設α=0.4,β=0.6,由式(13)計算可得案例整體相似度GLsim(xi,x0);分別將sim(xi,x0)、Phgrey(xi,x0)和GLsim(xi,x0),i=1,2,…,15,按相似度大小降序排列,設μ=0.6,以sim(xi,x0)≥0.6為篩選條件得到檢索結果如表2所示。表2中,第一欄為本文算法得到的檢索結果,第二欄、第三欄分別為最近鄰算法(基于歐氏距離)、傳統灰關聯分析案例檢索算法得到的檢索結果,每一列檢索結果均按照相似度大小降序排列。

表2 三種算法案例檢索結果對比
分析表2的檢索結果可得:
① 在不考慮案例間故障現象關聯度時,基于離散型特征屬性計算相似度、基于最近鄰算法(歐氏距離)和基于傳統灰色關聯分析法三種方法得到的案例相似度為sim(xi,x0)、Esim(xi,x0)和Gsim(xi,x0),雖然在數值上略有不同,但實質上的檢索結果完全一致。這三種算法均以傳統檢索算法思路為基礎,即“以單屬性相似度加權平均作為案例整體相似度”,實驗證明,這類算法得到的檢索結果基本一致,對算法性能的評價僅僅依據分辨度上的不同。
② 考慮案例故障現象關聯度Phgrey(xi,x0)之后得到案例相似度為GLsim(xi,x0),由表2可知,依據GLsim(xi,x0)得到的案例檢索結果較之前有所變化,如:與目標案例x0相似度最高的前三個案例依次由x7、x4、x1變化為x1、x7、x4,即:根據原來的檢索結果,應首先考慮將目標案例x0故障定位為D=2,即“面板控制單元故障”;而考慮故障現象關聯度后,應首先考慮將目標案例x0故障定位為D=1,即“主控微機單元故障”。也就是說,“主控微機單元故障”更有可能引發目標案例x0的那一組故障現象。而經實踐驗證,目標案例x0故障的根本原因確為主控微機單元故障。
另一方面,從故障屬性關聯度矩陣GA的計算結果可以看出:兩兩故障現象之間的關聯度大致在0.6~0.8之間,個別關聯度高的甚至達到0.8以上,由此分析,設備各個單元模塊在物理結構、邏輯功能方面的緊密聯系很大程度上會產生故障現象之間的“連帶”影響,即故障現象之間存在著隱含的故障邏輯關系,該部分因素主要由設備物理層次結構、故障性質等硬件條件決定,在進行故障案例檢索時不應被忽略。
經上述分析可知,檢索結果在考慮案例故障現象關聯度前后發生了“質”的變化:前者僅僅依靠“定量”檢索,由單屬性數據接近程度計算得到的案例相似度決定檢索結果;而后者間接地考慮了由設備層次結構以及故障性質等因素導致的故障現象之間的關聯關系,融入了故障邏輯等“定性”層面的因素,能避免“距離陷阱”等僅依靠數據接近程度判斷相似性而出現的問題;同時,對案例的檢索更體現“配套性”和全局性,更能接近一組故障現象的本質,可以更快速準確地鎖定與目標案例從根本上最相似的源案例。
本文將灰色關聯分析法引入到對故障現象關聯度GA(j,k)的計算中,并以此提出了基于灰色關聯分析和故障邏輯的維修案例檢索方法。與傳統檢索方法的最大區別在于,本文從通信設備結構功能的實際出發,關注到設備各單元模塊之間內在的故障邏輯及相互影響,將故障現象平均關聯度Phgrey(xi,x0)融入到最終的案例相似度中,并以此為依據進行案例檢索。對于故障屬性權重的獲取,本文采用粗糙集理論對案例庫故障數據進行處理,權重的來源更加客觀可靠。實驗證明,本文提出的檢索算法更注重于故障案例的全局性,有效地克服了“距離陷阱”等單純依靠“定量”檢索出現的問題,能更好地適應故障維修領域的實際應用,提高了故障維修案例檢索的科學性和準確率。