孔祥芬,張利寒 ,劉敬赟,王 杰
(中國民航大學航空工程學院,天津 300300)
近年來,隨著航空公司機隊規(guī)模的迅速增加[1],以及民航“一二三三四”的總體發(fā)展思路和“民航高質量發(fā)展”的戰(zhàn)略需求,對航空維修提出了更高質量的精細化深度維修要求[2]。而航空維修數(shù)據(jù)的積累以及數(shù)據(jù)挖掘技術的迅速發(fā)展[3],為飛機深度維修奠定了重要基礎。整體驅動發(fā)電機(Integrated Drive Generator, IDG)作為供電系統(tǒng)的主要電源[4],結構復雜且先驗故障知識難以獲得,維修人員難以通過傳統(tǒng)方法得到精確的維修結論。因此,從數(shù)據(jù)挖掘角度出發(fā),對航空維修數(shù)據(jù)進行關聯(lián)分析,是提升飛機故障分析能力和深度維修能力的重要保障[5]。
目前學者們已在數(shù)據(jù)挖掘分析方面做了大量研究,在故障診斷方面,Thukaram D[6]和Jing C[7]等利用支持向量機、主成分分析和神經網(wǎng)絡等方法提升了工業(yè)過程中的故障分類精度問題;Zhao Y[8]等利用特征提取與貝葉斯網(wǎng)絡相結合的方法提升了鐵路車載設備的故障診斷效率。在可靠性預測方面,胡麗娟等[9]利用主成分分析與并行關聯(lián)規(guī)則挖掘技術有效預測了配電網(wǎng)的運行可靠性;蔡復青等[10]利用數(shù)據(jù)挖掘技術分析航空裝備日常維修數(shù)據(jù),有效預測實戰(zhàn)或訓練環(huán)境下的飛機使用可靠性。在算法挖掘方面,Gunay H B[11]、Buddhakulsomsiri J等[12]利用實際數(shù)據(jù)提出新的文本挖掘和IF-THEN關聯(lián)規(guī)則挖掘算法,能有效確定故障模式及原因;Sene A等[13]利用關聯(lián)規(guī)則方法創(chuàng)建機上遠程醫(yī)療信息體系,能有效解決遠程醫(yī)療資源限制的問題;趙久彬等[14]利用Spark平臺提出一種前后部項約束關聯(lián)規(guī)則并行化FRPFP算法,能有效監(jiān)測滑坡預警。
上述文獻對數(shù)據(jù)挖掘分析具有很好的借鑒意義,但目前大多數(shù)研究還集中在類似于機床、傳感器等可靠性較低、故障頻發(fā)的部件及行業(yè)內,而對于飛機等高可靠性、高安全性航空產品的分析研究仍然較少。因此,本文以高可靠性部件——整體驅動發(fā)電機(IDG)為例,提出一種改進的多值屬性Apriori算法,該方法從連接步和剪枝步兩個方面提升數(shù)據(jù)挖掘精度,能有效提升飛機故障診斷能力和深度維修能力,對航空維修提供新的思路和建議。
為了實現(xiàn)對數(shù)據(jù)的深層次挖掘,首先對故障維修數(shù)據(jù)庫進行聚類,本文采用一種常見且較成熟的K-means聚類算法,該算法是一種無監(jiān)督的機器學習算法,具有簡單易理解、聚類速度快等特點。核心是確定對象的中心點,關鍵是確定k值,選取的k值決定了聚類效果。為獲得理想的k值,用輪廓系數(shù)評估聚類效果,第i個元素輪廓系數(shù)為:
(1)
其中,ni為同簇內第i個元素與其他元素之間的平均距離;簇外選取某一簇m,計算m中所有元素與該元素的平均距離,找出最小值,用mi表示,mi=min{mi1,mi2,…,mij}。
關聯(lián)規(guī)則挖掘是數(shù)據(jù)挖掘中一項重要技術,Agrawal R等[15]首先于1993年提出關聯(lián)規(guī)則概念,即數(shù)據(jù)庫中項集之間的相關關系,同時又給出了相對應的挖掘算法,但性能較差。之后又于1994年提出了著名的Apriori算法[16],是目前關聯(lián)規(guī)則挖掘領域最具影響力的一種算法,也是許多算法改進和發(fā)展的基礎。
Apriori算法的核心思想是通過對數(shù)據(jù)庫中不同事務集之間隱含規(guī)律的識別和分析,找出其中的強關聯(lián)關系。其中,關聯(lián)規(guī)則中有兩個最重要的概念,分別是支持度(support)和置信度(confidence)。其中,支持度用support(X)表示,即某維度下一個屬性值X在數(shù)據(jù)集D中出現(xiàn)的概率,如式(2)所示;置信度用confidence(X→Y)表示,即屬性X和屬性Y同時在數(shù)據(jù)集D中出現(xiàn)的概率,如式(3)所示。如果關聯(lián)規(guī)則結果滿足最小支持度和置信度閾值,則認為該條關聯(lián)規(guī)則的前后項是高度相關的。
(2)
(3)
此外,另一個重要概念是提升度(lift),提升度用lift(X→Y)表示,主要用于描述挖掘出的規(guī)則是否有用,如式(4)所示;其大小可度量此規(guī)則的可用程度,有用規(guī)則的提升度大于1。
(4)
Apriori算法的主要思想是利用逐層搜索的迭代方法,Apriori算法的主要過程可以概括為兩步:①通過掃描、計數(shù)、比較、產生頻繁項集、連接及剪枝等步驟產生候選項集,進而尋找所有頻繁項集,重復上述步驟,直到不能產生更大的頻繁項集為止;②產生關聯(lián)規(guī)則結果,對于每個頻繁項集,計算其置信度,輸出大于最小置信度閾值的關聯(lián)規(guī)則。
Apriori算法利用支持度、置信度及提升度的計算結果作為依據(jù),挖掘和分析各屬性之間潛在的內在關聯(lián)關系。但是也仍存在一些不足,一是生成候選頻繁項集的數(shù)量巨大,需要多次掃描數(shù)據(jù)庫,且非常耗時;二是不適用于多維數(shù)據(jù)的挖掘。因此,基于航空故障維修數(shù)據(jù)維度高的特性,本文提出將基于多值屬性改進的Apriori算法應用于航空故障維修數(shù)據(jù)故障原因關聯(lián)規(guī)則的挖掘過程中,即在連接步的過程中加入多個維度的判斷,并且在剪枝步階段只考慮特定屬性的頻繁項,可以有效減少生成的頻繁項集,更簡潔更高效的發(fā)現(xiàn)我們需要的強關聯(lián)規(guī)則。
基于多值屬性改進的關聯(lián)規(guī)則由Srikant R等[17]在1996年提出的,其關鍵思想是以布爾型關聯(lián)規(guī)則的挖掘算法為基礎,將其轉化為布爾型關聯(lián)規(guī)則之后再通過Apriori算法進行數(shù)據(jù)挖掘。在IDG部件的故障維修數(shù)據(jù)中,每一個故障因素下都包含有多個屬性值,在挖掘過程中,為了避免出現(xiàn)類似“冬季,夏季→油濾堵塞”這樣的無效關聯(lián)規(guī)則結果,所以在Apriori算法的基礎上對其進行改進??紤]到我們的研究是結合天氣、現(xiàn)象、地域等因素,以挖掘故障原因為主要關注點對故障維修數(shù)據(jù)進行挖掘,所以在連接步過程中加入對“故障原因”和“故障現(xiàn)象”這兩個維度頻繁項集的判斷,且在規(guī)則剪枝階段只考慮生成“故障原因”的頻繁項。 改進算法的主要步驟如下:
算法1:改進的多值屬性Apriori算法
輸入:IDG部件故障維修數(shù)據(jù)庫D;最小支持度和置信度閾值;
輸出:數(shù)據(jù)庫D中的頻繁項集L。
(1)C1={candidate,1-itemsets};
(2)L1={c∈C1|c.count≥minsupport};
(3)for{k=2,Lk-1!=Null,k++};
(4)Ck=sc_candidate(Lk-1);
(5)ifCi中的頻繁項的屬性值not in [‘故障原因’]and not in[‘故障現(xiàn)象’];
(6)delete這條頻繁項;
(7)for eachtinD;
(8)C1=subset(Ck,t);
(9)for each候選c∈Ci;
(10)c.count=c.count+1;
(11)Lk={c∈Ck|c.count≥minsupport};
(12)for each item inLk;
(13)if item 的屬性值not in[‘故障原因’];
(14)delete這條頻繁項;
(15)ReturnL.
本文搜集某航空公司50架B737飛機近三年的故障維修數(shù)據(jù),主要由技術記錄本(Technical Log Book, TLB)、保留故障單(Deferred Defect Sheet, DDS)、飛行記錄本(Flight Log Book, FLB)、客艙記錄本(Cabin Log Book, CLB)、飛機維修日志等組成;對包括飛機編號、檢驗員、FLB、故障現(xiàn)象、故障原因、故障位置、故障時間、故障地點、在翼時間、飛行循環(huán)等用自然語言書寫的記錄信息,對此進行數(shù)據(jù)整合,重點分析故障維修數(shù)據(jù)中故障現(xiàn)象與多種故障原因之間的相關性。主要分為以下幾個步驟:
(1)數(shù)據(jù)預處理。數(shù)據(jù)在采集、記錄、存儲過程中由于各種主客觀因素會出現(xiàn)缺失、冗余、記錄形式不統(tǒng)一等情況,為了得到高質量的數(shù)據(jù)作出最精確的決策,需要對原始數(shù)據(jù)進行預處理。主要包括數(shù)據(jù)清洗、信息篩選等。
(2)關聯(lián)規(guī)則挖掘。對預處理后的維修數(shù)據(jù)進行K-means聚類分析以及改進的多值屬性Apriori算法關聯(lián)規(guī)則挖掘,得到強關聯(lián)規(guī)則以獲得故障現(xiàn)象以及各參數(shù)與多種故障原因之間的相關性規(guī)律。
(3)結果分析。結合IDG各組件故障機理,對關聯(lián)規(guī)則結果進行具體分析。
一架B737飛機一年約850條維修及維護記錄,則50架飛機三年則產生約42 500條數(shù)據(jù),其中除掉勤務工作、例行安檢之后約15 000條。首先,以Python平臺為基礎,Pandas函數(shù)讀取搜集到的故障維修數(shù)據(jù),利用Pandas函數(shù)刪除缺失數(shù)據(jù)所在數(shù)據(jù)組;其次,篩選出對故障原因診斷有用的信息,刪除飛機編號、檢驗員等部分無用信息;最后,將剩余數(shù)據(jù)信息進行類別梳理并轉換成便于分析的形式,篩選出與IDG部件相關的故障信息,得到30個故障維修數(shù)據(jù)(記為M1,M2,…,M30),如表1 所示。
表1 預處理后的維修數(shù)據(jù)信息表
2.2.1 K-means聚類分析
針對飛機故障維修數(shù)據(jù)的特征,在數(shù)據(jù)預處理階段對30組故障進行聚類,采用合并層次聚類分析法, K-means聚類將所有故障分為3~6類,通過聚類簇數(shù)k的輪廓系數(shù)Si對聚類結果進行評估。不同聚類簇數(shù)k對應的輪廓系數(shù)如表2所示。
表2 聚類簇數(shù)-輪廓系數(shù)對應關系表
K-means聚類算法是將數(shù)據(jù)集D聚類為k個簇{C1,C2,…Ck}。首先隨機抽取k個聚類質心(μ1,μ2,…,μk),計算每個樣本xi的所屬類別,目標是最小化平方誤差:
(5)
其中,μj是Ci簇的聚類中心,即質心,重新計算類j的質心,其表達式為:
(6)
經反復計算,直到收斂。
由表2可知,故障數(shù)據(jù)分為5類時進行聚類所得效果最好。對30組故障數(shù)據(jù)進行K-means動態(tài)聚類,結合IDG部件實際故障情況,聚類分析結果如表3所示。
表3 故障聚類結果(k=5)
2.2.2 多值屬性Apriori關聯(lián)規(guī)則分析
運用多值屬性Apriori算法對預處理后的IDG部件故障維修數(shù)據(jù)進行關聯(lián)規(guī)則挖掘,為獲得比較理想的關聯(lián)規(guī)則,確定關聯(lián)規(guī)則中的支持度和置信度是至觀重要的,不同支持度S閾值和置信度C閾值下產生的規(guī)則數(shù)不同。通過分析設定支持度閾值為0.6%,置信度閾值為50%,得出規(guī)則前項含故障現(xiàn)象且規(guī)則后項為故障原因的強關聯(lián)規(guī)則共55條,由于篇幅限制,部分結果如表4所示。
表4 IDG部件故障關聯(lián)規(guī)則
續(xù)表
在聚類分析的基礎上,對B737飛機IDG部件故障維修數(shù)據(jù)進行深度挖掘和分析,對多因素之間的潛在規(guī)律進行識別,得出以下結果:
(1)根據(jù)表4中規(guī)則6和規(guī)則7可以得出高支持度的關聯(lián)規(guī)則,說明IDG部件故障的高頻故障原因為壓力電門和泵和馬達組件故障;其中,泵和馬達組件的結構形式為斜盤柱塞泵,長時間工作會導致柱塞缸體等金屬件磨損超標;壓力電門為非密封式結構,經常受到污染,進而導致電門接觸不良,所以應密切關注零部件的清潔及過度使用的問題。
(2)對比規(guī)則5和52,可以得出哈爾濱的冬季更容易造成調速器閥芯抱死進而造成發(fā)電機掉電,說明低溫是造成調速器閥芯抱死的主要原因,所以溫度等外界環(huán)境因素是影響IDG部件部分故障的關鍵因素。
(3)根據(jù)規(guī)則可以得出碳封嚴磨損和油濾堵塞是造成IDG余油口漏油和IDG壓差指示器跳出的唯一原因;其中碳封嚴與輸入軸緊密相連,常常會因為組裝時裝配技術的欠缺,造成碳封嚴磨損,所以應密切關注人為因素在飛機故障中的影響。
(4)分析所有故障原因,其中油濾堵塞、磨損超標、閥芯抱死等多個故障都與滑油系統(tǒng)有關,說明滑油系統(tǒng)是影響ODG部件正常工作最重要的原因。
對比傳統(tǒng)Apriori算法和改進后的多值屬性Apriori算法對IDG部件故障相關因素的關聯(lián)規(guī)則挖掘結果,在不同支持度下,兩種算法的運行時間如圖1所示。
圖1 運行時間和支持度之間的關系曲線
從圖1中可以看出改進后的Apriori算法運行時間減少、效率提升,尤其是支持度較小、頻繁項集較多的情況下,能在更短的時間內輸出更精確的結果。
通過聚類和關聯(lián)規(guī)則分析能更加精確的定位故障發(fā)生的位置及原因。結合IDG部件的工作原理,在日常維護階段對IDG部件提出相關預防建議,以減少故障發(fā)生、提升飛機使用可靠性:
(1)針對泵和馬達組件及壓力電門等高頻故障組件,了解其故障機理與具體原因(磨損、污染等)并根據(jù)各組件的故障間隔時間進行可靠性分析,計算其可靠度、失效率等相關指標,根據(jù)結果及時檢修。
(2)針對碳封嚴等由于人為疏忽、技術欠缺等原因造成的磨損嚴重,應密切關注人為因素在飛機故障中的影響,加強對人的技術及思想培訓。
(3)針對由外界環(huán)境因素(地點、季節(jié)、溫度等)引起故障,應提前做好防護措施,減少故障發(fā)生。
(4)IDG部件屬于高速旋轉的部件,組件之間承受巨大的摩擦力,導致多數(shù)故障都與滑油系統(tǒng)有關,所以應密切關注滑油系統(tǒng)的工作狀態(tài)。結合文獻[18],建議每隔1781 Fh對IDG部件進行滑油系統(tǒng)的狀態(tài)檢修。
基于航空維修業(yè)的發(fā)展需求及航空維修數(shù)據(jù)的逐步積累,本文提出了基于數(shù)據(jù)挖掘的飛機IDG部件故障關聯(lián)性分析模型。通過K-means聚類算法得出IDG部件主要的5類故障現(xiàn)象;通過改進的多值屬性Apriori關聯(lián)規(guī)則算法,以故障原因為關注點,挖掘出導致故障發(fā)生的因素組合,由此總結出高頻故障以及人為因素、外界環(huán)境和滑油關聯(lián)系統(tǒng)等因素對IDG部件故障的影響;與傳統(tǒng)Apriori算法相比其精度更高、用時更短。根據(jù)以上結果及IDG部件的工作機理對預防故障發(fā)生可采取的措施提出了一些可行的預防性維修方案,提升飛機使用可靠性。本文僅對B737飛機供電系統(tǒng)中一個IDG部件進行關聯(lián)規(guī)則挖掘,后續(xù)分析中可以引入更多系統(tǒng)及零部件,建立更全面的故障維修數(shù)據(jù)標準化備案模式以及飛機維修管理信息系統(tǒng)。