余 匯 唐大鵬 姚 斌 /
(上海飛機設(shè)計研究院,上海201210)
飛機健康管理是一個動態(tài)過程,也可說是一個隨機過程,重點是要通過各種傳感器的集成來采集數(shù)據(jù)、獲取相關(guān)特征量,結(jié)合算法建立計算模型對飛機的狀態(tài)進(jìn)行監(jiān)控、診斷及健康管理,使維護(hù)和保障模式完成從狀態(tài)監(jiān)控向飛行管理的變更,是飛行測試和維修診斷的創(chuàng)新方案。健康管理與互聯(lián)網(wǎng)技術(shù)的融合使得實時診斷飛機運行時產(chǎn)生的故障成為現(xiàn)實。有效的飛機健康管理,需要對飛機各個系統(tǒng)施以關(guān)注,由于各系統(tǒng)的數(shù)據(jù)形式及結(jié)構(gòu)具有差異,導(dǎo)致了飛機故障診斷與健康管理的信號復(fù)雜多樣且數(shù)量巨大,又由于以往數(shù)據(jù)分析手段不足以及數(shù)據(jù)利用不當(dāng),使得大量數(shù)據(jù)的價值被埋沒。
為了解決上述問題,面向飛機健康診斷的大數(shù)據(jù)技術(shù)應(yīng)運而生,重點開展基于大數(shù)據(jù)健康診斷的機載維護(hù)系統(tǒng)的關(guān)鍵技術(shù)研究,特別是瞄準(zhǔn)下一代民機機載維護(hù)系統(tǒng)的新技術(shù)和新應(yīng)用。旨在通過空地綜合的大數(shù)據(jù)技術(shù)分析和處理飛機的運行數(shù)據(jù),并整合飛機全機系統(tǒng)、結(jié)構(gòu)的運行信息[1-2],以最大限度感知飛機健康狀態(tài),并對異常操作早預(yù)測。
圖1 基于大數(shù)據(jù)的飛機健康管理系統(tǒng)概念圖
基于大數(shù)據(jù)的飛機健康管理系統(tǒng)概念圖,如圖1所示。在飛機運行及維護(hù)過程中,從大量數(shù)據(jù)源和密集傳感器中獲得數(shù)據(jù),同時需要不斷地監(jiān)控內(nèi)部狀態(tài)和外部環(huán)境及時進(jìn)行故障診斷與預(yù)測,保障飛機的可靠性與安全性,確保經(jīng)濟(jì)效益最大化。
為了實時反映當(dāng)前的健康狀況,飛機會時刻產(chǎn)生大量動態(tài)數(shù)據(jù)。在一次航行中會產(chǎn)生幾十甚至上百TB的數(shù)據(jù),如何從飛機大量的歷史健康數(shù)據(jù)中挖掘出有價值的信息,這就涉及到飛機大量歷史數(shù)據(jù)并行聚類這一分析方法。
飛機并行計算模型通常是指并行算法的設(shè)計與分析,抽象出機載維護(hù)系統(tǒng)各并行計算機的基本特征,形成一個針對飛機燃油、電源、發(fā)動機等系統(tǒng)的歷史大數(shù)據(jù)計算抽象模型。目前,所有機載并行數(shù)據(jù)計算機均屬于多數(shù)據(jù)流多指令模式,即飛機上不同處理器可同時對不同類型數(shù)據(jù)執(zhí)行不同的指令。指令流可同步或異步執(zhí)行,如圖2所示。
圖2 多指令多數(shù)據(jù)流并行結(jié)構(gòu)
以飛機燃油系統(tǒng)為例,并行計算技術(shù)同于飛機燃油系統(tǒng)中油溫、油壓等海量數(shù)據(jù)的數(shù)據(jù)挖掘[3],這是飛機大數(shù)據(jù)挖掘技術(shù)逐步走向深入的一個重要層次。不僅可以加快飛機對燃油數(shù)據(jù)的處理速度,而且可以提高燃油系統(tǒng)故障數(shù)據(jù)挖掘的能力,方便飛機駕駛員合理操作。
首先,飛機燃油系統(tǒng)的歷史數(shù)據(jù)集根據(jù)計算節(jié)點的數(shù)量進(jìn)行劃分,形成p個子數(shù)據(jù)集D1,D2,...,Dp(p是節(jié)點數(shù))。然后,在p個節(jié)點運行聚類算法,形成局部數(shù)據(jù)集群{C11,C12,...,C1x}、{C21,C22,...,C2y}…{Cp1,Cp2,...,Cpz}(x,y,z是集群數(shù),p是子數(shù)據(jù)集的數(shù)量)和孤立點的集合O1,O2,...,Op,并且將所有子數(shù)據(jù)集的孤立點進(jìn)行聚類以獲得新的數(shù)據(jù)集群{Co1,Co2,...,Com}(o表示飛機孤立點數(shù)據(jù),m為集群數(shù))和新的孤立點集合{Oo}。最后局部聚類結(jié)果和孤立點聚類結(jié)果的合并便是最終的全局聚類結(jié)果。
根據(jù)上述思路,并行聚類算法一般分為以下三個步驟:
1)根據(jù)飛機歷史數(shù)據(jù)劃分策略,待聚類的數(shù)據(jù)集被均等地或等差地劃分為p個數(shù)據(jù)子集,其中p為當(dāng)前可用節(jié)點的數(shù)量,并且,每個子集的數(shù)據(jù)都被發(fā)送到每個節(jié)點。
2)在每個節(jié)點上對本地航班歷史數(shù)據(jù)集進(jìn)行局部聚類算法,各形成一組集群和一組飛機數(shù)據(jù)孤立點集合。每個集群完成后,將結(jié)果發(fā)送至主節(jié)點。
3)主節(jié)點收到各個其他節(jié)點的聚類結(jié)果后,形成集群集和孤立點集,這個孤立點集就是飛機最終歷史數(shù)據(jù)的孤立點。然后使用聚類合并技術(shù)將每個節(jié)點的聚類結(jié)果和集群的聚類結(jié)果進(jìn)行合并,形成最終的集群集。整體流程如圖3所示。
圖3 大量歷史數(shù)據(jù)并行聚類算法流程圖
將原來飛機的全部相關(guān)參數(shù)都投射到數(shù)值域中,并規(guī)定每架飛機的所有相關(guān)參數(shù)都在數(shù)值域中向外擴(kuò)散,并將所有飛機相關(guān)參數(shù)擴(kuò)散范圍稱為飛機參數(shù)數(shù)據(jù)場。定義飛機相關(guān)參數(shù)之間的影響函數(shù)為場強函數(shù),數(shù)值域中的值可以投射至場域中[4]。
飛機參數(shù)的場域聚類的基本思想:以平滑連續(xù)的曲線將飛機參數(shù)數(shù)值域中所有相關(guān)參數(shù)的等勢點連接起來,構(gòu)成等勢線(等勢面),形成場域;然后從飛機各相關(guān)參數(shù)的場域中,可以找到相關(guān)參數(shù)的局部極值點,作為這些參數(shù)的聚類集群中心;根據(jù)各極值點向外擴(kuò)散的梯度方向,找到這些參數(shù)的等勢線,以此作為每個集群的分界線,從而劃分成為不同的集群。
根據(jù)飛機參數(shù)數(shù)據(jù)場的特征,定義了氣壓高度、飛行速度、馬赫數(shù)、飛行高速等n個飛行參數(shù)組成的飛機參數(shù)數(shù)據(jù)空間X=(x1,x2,...,xn),m個集群,C=(c1,c2,...,cm),Num Data記錄飛行參數(shù)樣本數(shù)量,NumCi記錄第i個集群中飛行參數(shù)樣本的數(shù)量,outlier記錄為離散群點的數(shù)量。對于飛行參數(shù)數(shù)據(jù)空間中任意一個參數(shù)諸如馬赫數(shù)x,通過接收飛行參數(shù)數(shù)據(jù)場中所有數(shù)據(jù)對象,例如氣壓高度、飛行速度、飛行高度的輻射而產(chǎn)生的勢值f(x),其中pi表示第i個數(shù)據(jù)對象在點xi處的場強。
數(shù)據(jù)場聚類算法的具體步驟如下:
輸入n個飛行參數(shù)對象X=(x1,x2,...,xn),令Num Data=n。
1)選擇適當(dāng)?shù)膱鰪姾瘮?shù)并計算數(shù)值域中某一參數(shù)如氣壓高度的勢值f(x);
2)以平滑曲線連接數(shù)值域中勢值相等的點即可構(gòu)成等勢線(等勢面);令i=1;
3)找出第i個集群中心勢值最大的點;
4)從第i個聚類中心展開,找到局部勢能極小的等勢線,然后將等勢線內(nèi)的所有數(shù)據(jù)對象移動到集群Ci中,以此形成第i個集群;
5)更新數(shù)值域中數(shù)據(jù)對象的數(shù)量Num Data=Num Data-NumCi;
6)若算法結(jié)束,outlier=Num Data-NumCi;否則執(zhí)行步驟7);
7)i=i+1,執(zhí)行步驟4)。
在飛機健康診斷領(lǐng)域,需要進(jìn)行復(fù)雜故障原因分析來確定機載健康數(shù)據(jù)的響應(yīng)之間的關(guān)聯(lián)關(guān)系,以飛機燃油系統(tǒng)故障為例,就是要確定該故障是發(fā)生在發(fā)動機供油系統(tǒng)還是在輸油系統(tǒng)或是燃油箱的通氣系統(tǒng)或增壓系統(tǒng)、加油系統(tǒng)、放油系統(tǒng)還是燃油測量系統(tǒng)等。而這種關(guān)系不能表現(xiàn)為線性或非線性函數(shù)關(guān)系,只能在一定約束條件下用相關(guān)關(guān)系來表示。這種相關(guān)關(guān)系在大數(shù)據(jù)中客觀存在,對于大數(shù)據(jù)分析更有意義,以解決飛機復(fù)雜故障的健康診斷問題。
飛機的維護(hù)系統(tǒng)包括兩個主要的方面,分別是最小可信度和最小支持控制算法,如圖4所示。
圖4 復(fù)雜的故障相關(guān)系發(fā)掘流程
關(guān)聯(lián)規(guī)則的挖掘[5]主要有兩步:(1)找出所有的飛機故障頻繁項集;(2)找出第一步中產(chǎn)生的同時滿足量化的最小可信度和最小支持度的相關(guān)關(guān)系。
1)飛機故障的集群效應(yīng)將直接影響區(qū)間劃分的合理性,并且對后面的產(chǎn)生的規(guī)則是有效的甚至是決定性的[6]。飛機發(fā)動機振動數(shù)據(jù)聚類劃分,不僅對一個或一對故障聚類,而且對所有不同種類的故障數(shù)據(jù)進(jìn)行聚類,采用聚類算法,如基于密度的適應(yīng)性密度可達(dá)性的集群算法(Clustering Algorithm Based on Density and Density Reachable,簡稱CADD)和K-means集群算法,根據(jù)獲得的飛機的健康數(shù)據(jù),對所有故障數(shù)據(jù)進(jìn)行聚類,根據(jù)聚類結(jié)果進(jìn)行區(qū)間劃分或形成簇。在所有飛機故障數(shù)據(jù)上聚類,得到故障簇或區(qū)間更能合理反映數(shù)據(jù)之間關(guān)系。
2)對所有故障數(shù)據(jù)采用聚類的方法,得到故障簇,若滿足支持度,就可以減少限定基于距離的關(guān)聯(lián)規(guī)則的條件,使方法更便于應(yīng)用。
3)提出對故障參數(shù)D0(故障最小置信度)取值的限定方法。將新獲得的故障簇的半徑作為D0取值的參考標(biāo)準(zhǔn)。
由于采用故障簇半徑的概念來控制聚類的方法十分便捷,基于故障簇中心的聚類算法,如K-means算法[7-8],能夠取得較好的挖掘效果。
在定義了基于距離的量化相關(guān)關(guān)系的規(guī)則之后,要使得規(guī)則成立,必須要滿足以下三個條件:
1)前一個故障類別與當(dāng)前故障類別的簇間距離不大于預(yù)設(shè)的值;
2)為了保證之前的每個故障簇中的飛機故障能夠同時發(fā)生,必須要保證簇間距離不得超過預(yù)先設(shè)定的參數(shù)的距離;
3)為了保證各種類型的飛機的故障簇中的故障能同時出現(xiàn),各簇間的距離不得超過預(yù)先設(shè)定的參數(shù)。
具體分析:對與飛機故障相關(guān)的所有的相關(guān)數(shù)據(jù)進(jìn)行集群聚類,這樣做的好處是飛機的某一個系統(tǒng)的所有種類的故障數(shù)據(jù)通過聚類,都能得到非常完整的體現(xiàn);另外,聚類得到的簇內(nèi),不同飛機故障類別數(shù)據(jù)必然形成高相似度的故障簇。因為所有的故障類別都會被聚類,所以最終的故障簇內(nèi)將會包含故障數(shù)據(jù)的所有的屬性。換句話說如果在最終的故障簇中的故障樣本的數(shù)量滿足了預(yù)先設(shè)定的最小支持度的話,那么由所有屬性集構(gòu)成的故障集就會成為最大頻率故障集。
飛機的級聯(lián)故障是一種復(fù)雜的故障模式,以飛機發(fā)動機系統(tǒng)為例來直觀解釋,是指當(dāng)其中的某個部分或某個組件發(fā)生故障或者失效(這里假設(shè)發(fā)動機軸承故障),進(jìn)而導(dǎo)致系統(tǒng)內(nèi)外與該部件相關(guān)聯(lián)的部件(如定子)或者區(qū)域的失效,形成連鎖反應(yīng)并擴(kuò)散,最終導(dǎo)致整個發(fā)動機系統(tǒng)失效。由以上描述可以看出飛機的級聯(lián)故障具有以下幾個特點:
1)飛機的級聯(lián)故障的原因一般是由某個特定的源頭引起的;
2)飛機級聯(lián)故障的表現(xiàn)形式是較大范圍的故障、系統(tǒng)級的故障或者多個故障同時發(fā)生;
3)飛機級聯(lián)故障從源頭到結(jié)果應(yīng)該遵循一條因果鏈。
飛機的級聯(lián)故障的可視化數(shù)據(jù)挖掘技術(shù)是隨著數(shù)據(jù)挖掘技術(shù)和計算機可視化技術(shù)的發(fā)展而發(fā)展起來的[9],它能有效地把人類的感知能力和相關(guān)知識應(yīng)用到級聯(lián)故障的信息挖掘中。它以刻畫飛機級聯(lián)故障數(shù)據(jù)的功能性,以及人類視覺的感知能力、傾向和關(guān)系的能力為基礎(chǔ),用可視化技術(shù)來加強數(shù)據(jù)處理。數(shù)據(jù)挖掘是將大量的飛機歷史數(shù)據(jù)中潛在的、有價值的級聯(lián)故障知識抽取出來,而可視化就是把故障數(shù)據(jù)、信息和挖掘出的級聯(lián)故障知識轉(zhuǎn)化成可視的表達(dá)形式的過程。
將數(shù)據(jù)進(jìn)行可視化的具體的特點包括:
1)發(fā)現(xiàn)被監(jiān)測數(shù)據(jù)的變化趨勢,如飛機燃油系統(tǒng)中油壓隨時間的增長、下降等情況;
2)找出數(shù)據(jù)的奇異點,如時間維度下,某時刻壓力傳感器所測量的油壓值相比于相鄰采樣時刻采集的值波動較大,通過可視化技術(shù),就在很長的時間維度下可以看出異常點;
3)識別數(shù)據(jù)的邊界,例如在整個飛行航段過程中油壓的最大值、最小值等的邊界值;
4)對故障數(shù)據(jù)的分類以及集群結(jié)果進(jìn)行顯示,識別出不同數(shù)據(jù)的不同特征;如以圖像的模式向飛機駕駛員顯示級聯(lián)故障數(shù)據(jù)的特征,更易于飛機駕駛員找出正確規(guī)律,快速做出決策;
5)提供豐富的文本信息,通過飛機駕駛員的操作,顯示器將顯示駕駛員所需要的飛機狀況信息,有助于駕駛員能夠迅速找到需要的特定的參數(shù)數(shù)據(jù),同時能夠?qū)崿F(xiàn)數(shù)據(jù)的選取、數(shù)據(jù)濾波、數(shù)據(jù)縮放以及其他功能。
在飛機級聯(lián)故障數(shù)據(jù)挖掘的整個過程中都伴隨著可視化技術(shù)的使用,將數(shù)據(jù)挖掘的整個過程進(jìn)行可視化具有很高的價值和重要性。系統(tǒng)結(jié)構(gòu)如圖5所示。
圖5 對飛機的級聯(lián)故障進(jìn)行可視化的系統(tǒng)結(jié)構(gòu)圖
從圖5可知,該級聯(lián)故障可視化體系結(jié)構(gòu)分為獨立的四層。級聯(lián)故障數(shù)據(jù)層從數(shù)據(jù)源載入數(shù)據(jù)后,可通過數(shù)據(jù)化查看飛機級聯(lián)故障原始數(shù)據(jù),經(jīng)過數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)變換、數(shù)據(jù)規(guī)約處理后,也可依托級聯(lián)故障數(shù)據(jù)可視化查看整理后的數(shù)據(jù),然后選擇級聯(lián)故障的數(shù)據(jù)挖掘算法進(jìn)行數(shù)據(jù)挖掘,最后把挖掘結(jié)果以文件形式保存,并從文件讀取級聯(lián)故障聚類結(jié)果,并將聚類結(jié)果顯示出來,根據(jù)待診斷級聯(lián)故障樣本所處的故障類標(biāo),確定故障原因。便于飛機駕駛員進(jìn)行快速適當(dāng)?shù)夭僮?,了解級?lián)故障機理,從而實現(xiàn)排故。
飛機健康診斷的大數(shù)據(jù)技術(shù)的應(yīng)用可提高飛機安全性、降低維修成本、提高維修性,實現(xiàn)對飛機故障的精確定位與診斷,減少故障檢測及隔離時間,保持我國民機的可持續(xù)發(fā)展能力,是民機航空維護(hù)系統(tǒng)中不可缺少的部分。