高運廣,蔡艷平,盛 安
(1 湖南三一工業(yè)職業(yè)技術(shù)學(xué)院 工程機械學(xué)院,長沙 410129;2 火箭軍工程大學(xué) 作戰(zhàn)保障學(xué)院,西安 710025)
隨著導(dǎo)航技術(shù)的發(fā)展和普及,微慣性測量單元(Micro Inertial Measurement Unit,MIMU)在導(dǎo)航領(lǐng)域中得到了廣泛應(yīng)用,MIMU 主要通過角速度和加速度傳感器將測量信息傳遞給上位計算機,以此作為載體導(dǎo)航定位解算的基礎(chǔ)數(shù)據(jù)[1]。受限于制造成本,一些中低端MIMU 傳感器工作的可靠性不容易保障,因此有必要在應(yīng)用時對MIMU 傳感器的輸出進行故障監(jiān)測與診斷,以便及時發(fā)現(xiàn)故障并做出處理,從而為導(dǎo)航定位解算提供有效數(shù)據(jù)或發(fā)出警示。
目前,傳感器的故障診斷主要有基于模型和基于數(shù)據(jù)驅(qū)動的方法。兩者相比,數(shù)據(jù)驅(qū)動方法通常不需要建立精確的數(shù)學(xué)或物理模型,對專家知識依賴程度低,因此更適合工程應(yīng)用。在基于數(shù)據(jù)驅(qū)動的方法中,主元分析(Principle Component Analysis,PCA)方法在傳感器故障診斷中得到了廣泛應(yīng)用[2-5],但是PCA畢竟是一種線性處理方法,在處理非線性問題方面存在一定局限,而實際的系統(tǒng)通常又是非線性的。為了提高PCA 的適用性,有學(xué)者將非線性的核主元分析(Kernel Principal Component Analysis,KPCA)應(yīng)用于傳感器的故障診斷[6,7]。KPCA 中核函數(shù)參數(shù)的選擇對模型性能有著重要影響,常規(guī)的選擇方法大都根據(jù)經(jīng)驗人工選定,通常需要對參數(shù)反復(fù)調(diào)整,不僅操作繁瑣,而且也難以保證得到最優(yōu)值。
鑒于此,本文研究了一種應(yīng)用于MIMU 傳感器故障診斷的KPCA 方法,KPCA 核函數(shù)參數(shù)通過模糊自適應(yīng)遺傳算法(Adaptive Genetic Algorithm,AGA)進行自動優(yōu)選,克服了常規(guī)選擇方法中人為主觀性強和操作繁瑣的問題,提高了KPCA 的應(yīng)用性能。
KPCA 通過非線性映射先把輸入空間映射到一個特征空間,然后在特征空間中計算主元成分,這一非線性映射通過核函數(shù)來實現(xiàn)[8]。KPCA 對任一數(shù)據(jù)樣本集x構(gòu)造一個線性變換φ(xi),由此將x映射到高維空間,此時的協(xié)方差陣CF為:
式中,xi為數(shù)據(jù)樣本,N為樣本個數(shù)。
通過求解特征方程:
得到特征值λ和特征向量v。
式(2)中C Fv可用下式表示:
式(2)可等價于:
且存在系數(shù)a j(j=1,2…N),使
整理式(3)(4)(5)可得:
定義一個對稱的核矩陣K,令矩陣元素K ij=φ(xi)Tφ(xj),1≤i≤N,1≤j≤N。于是式(6)可化簡為:
式中,α為K的特征向量。由此可求得CF的特征向量v,進而可得到原始向量的主元成分:
遺傳算法是一種模仿生物進化機制的自適應(yīng)搜索算法,具有強大的尋優(yōu)能力[9-13]。將遺傳算法應(yīng)用于KPCA 核函數(shù)參數(shù)的自動優(yōu)選,不僅可以提高參數(shù)選擇的科學(xué)性,而且可以容易獲得最優(yōu)值。在標(biāo)準(zhǔn)遺傳算法中,由于交叉概率pc和變異概率pm是固定的,由此可能導(dǎo)致算法不能收斂到全局最優(yōu)。為此,不少學(xué)者對pc和pm自適應(yīng)選取的問題進行了研究[14,15],這些方法大都利用平均適應(yīng)度作為選擇依據(jù),但是平均適應(yīng)度并不能真實反映個體適應(yīng)度的一致程度,由此影響算法發(fā)揮最佳的性能。
為進一步提升遺傳算法的性能,結(jié)合模糊理論能夠模擬人類模糊邏輯思維和融合專家經(jīng)驗的優(yōu)勢[16],這里引入模糊推理對pc和pm進行選取。其設(shè)計思想為:將能反映一致程度的個體適應(yīng)度標(biāo)準(zhǔn)差作為模糊推理系統(tǒng)輸入;將pc和pm自適應(yīng)計算中的調(diào)整參數(shù)作為系統(tǒng)輸出。模糊推理系統(tǒng)設(shè)計如下:
(1)系統(tǒng)輸入
系統(tǒng)輸入變量為個體適應(yīng)度的標(biāo)準(zhǔn)差,計算公式為:
式中,s為適應(yīng)度標(biāo)準(zhǔn)差,fi為個體適應(yīng)度,fa為群體平均適應(yīng)度,N為種群規(guī)模。s的論域分為5 部分,分別為NB(負大)、NS(負?。?、ZE(零)、PS(正?。?、PB(正大),論域區(qū)間為[0,50]。
(2)系統(tǒng)輸出
此處,pc和pm的計算公式如下:
式中,fm為最大適應(yīng)度,fa為平均適應(yīng)度,f′為交叉?zhèn)€體中的較大適應(yīng)度,p1f和p2f為pc的最大和最小值,p3f和p4f為pm的最大和最小值。p1f、p2f、p3f和p4f作為模糊推理系統(tǒng)的輸出變量,其論域同樣劃分為5 部分,即NB、NS、ZE、PS和PB,論域區(qū)間根據(jù)pc和pm的取值范圍選取,分別為[0.7,0.9]、[0.5,0.6]、[0.1,0.2]和[0.005,0.06]。
(3)推理規(guī)則設(shè)計
根據(jù)AGA 中交叉和變異概率的變化規(guī)律,模糊推理規(guī)則設(shè)計如下:
式中,pif為第i個輸出變量,i=1,2 … 4。
(4)隸屬度函數(shù)設(shè)計
系統(tǒng)隸屬度函數(shù)采用三角形函數(shù)。對于輸入變量s,隸屬度函數(shù)設(shè)計如圖1 所示。對于輸出變量pif,根據(jù)不同的論域取值范圍進行設(shè)計,以p1f為例,其隸屬度函數(shù)設(shè)計如圖2 所示。
圖1 輸入隸屬度函數(shù)Fig.1 Input membership function
圖2 輸出隸屬度函數(shù)Fig.2 Output membership function
應(yīng)用KPCA對MIMU傳感器進行故障診斷的過程主要包括KPCA 建模、故障監(jiān)測、故障定位和故障識別,故障診斷流程如圖3 所示。
圖3 故障診斷流程Fig.3 Flow of fault diagnosis
首先選取某型MIMU 的7 個傳感器變量構(gòu)建KPCA 模型,所取變量分別為3 個方向的角速度輸出、3 個方向的加速度輸出和1 個溫度輸出。取輸出的200組數(shù)據(jù)作為學(xué)習(xí)樣本,維數(shù)為7。在這些樣本中,100組為MIMU 實測的正常數(shù)據(jù),余下的100 組為故障仿真數(shù)據(jù),包括傳感器常見的偏差、漂移、精度等級下降和完全失效四種故障。KPCA 模型中的核函數(shù)參數(shù)通過模糊AGA 自動優(yōu)選。
通過KPCA 模型在特征空間計算Q統(tǒng)計量,即平方預(yù)測誤差(Square Predicted Error,SPE),表示每次采樣在變化趨勢上與統(tǒng)計模型之間的誤差,可度量外部數(shù)據(jù)的變化。此處將SPE 作為故障監(jiān)測量:
式中,DSPE為SPE 計算值,φ(x)為非零特征值對應(yīng)的主元和特征向量乘積之和,φ p(x)為前p個主元和特征向量乘積之和,化簡后可得:
式中,t j為第j個主元;n為非零特征值的個數(shù);p為主元數(shù),可通過式(16)求出:
式中,λk為非零特征值。
SPE的監(jiān)測限可根據(jù)其分布估計得出:
式中,Thα為監(jiān)測限值,α為顯著水平,g為SPE的權(quán)重參數(shù),h為χ2分布的自由度。假設(shè)a和b是SPE的估計均值和方差,則g和h可由式(18)求出:
為了提高故障監(jiān)測的可靠性,在計算SPE 前先對傳感器數(shù)據(jù)進行平滑處理,計算公式如下:
式中,x k+i為傳感器變量的測量數(shù)據(jù);ω i為權(quán)重系數(shù),且;q、r和M分別為設(shè)定的整數(shù),S為數(shù)據(jù)個數(shù),且q+r+1=M,k=q+1,q+2…S-r。此處,q取10,r取9,ωi取0.05。
監(jiān)測出故障后,需進一步定位故障。在PCA 方法中,發(fā)生故障的傳感器變量和監(jiān)測量之間存在一定的線性關(guān)系,但在KPCA 的非線性變換中并沒有使用顯式的非線性變換函數(shù),而且核函數(shù)無法提供傳感器變量和監(jiān)測量之間的對應(yīng)關(guān)系,因此PCA 的貢獻圖法不能直接用于KPCA 模型中故障傳感器變量的識別?;谟脗鞲衅髯兞控暙I量來識別故障的思想,為了完成KPCA 中傳感器變量對故障的貢獻量求解,此處定義第j個傳感器的變量貢獻量Conj,i為:
變量貢獻量所占百分比PertT,j為:
變量貢獻量變化ΔPertT,j為:
式中,ti和xj分別為第i個主元和第j個傳感器變量;λi為第i個特征值;T表示時間,TF和T0分別為傳感器發(fā)生和未發(fā)生故障的時刻;N為傳感器個數(shù)。當(dāng)監(jiān)測出故障后,分析故障發(fā)生前后的ΔPertT,j,則可識別出故障傳感器。如果某個ΔPertT,j最大,則可認定與此對應(yīng)的傳感器發(fā)生了故障,從而實現(xiàn)故障定位。
通過故障定位可以找到發(fā)生故障的傳感器,要進一步識別故障的類型,可通過如下故障模型進行判斷:
(1)偏差故障
其中,es為系統(tǒng)測量誤差,co為常數(shù)。
(2)漂移故障
其中,k為常數(shù),Δtf為故障持續(xù)時間。
(3)精度等級下降故障
(4)完全失效故障
其中,cf為常數(shù),xm為變量真實值,er為測量隨機誤差。
首先應(yīng)用模糊AGA 對KPCA 的核函數(shù)寬度σ進行自動優(yōu)選,求解步驟如下:
(1)編碼
編碼采用實數(shù)編碼方式,取值范圍為[0.01,10]。
(2)遺傳操作
選擇算子采用適應(yīng)度比例方法,并采用最佳保留策略以提高算法執(zhí)行效率。交叉算子采用算術(shù)交叉,變異算子采用非均勻一致變異,交叉和變異概率通過式(11)(12)自適應(yīng)確定。
(3)適應(yīng)度評價
KPCA 提取特征的主要目的是增強類的可分性,因此將類的可分性作為遺傳算法適應(yīng)度的評價準(zhǔn)則。類的可分性通過類間散度矩陣Sb和類內(nèi)散度矩陣Sw來衡量:Sb越大說明類間的差別越大,分類效果越好;Sw越小說明類內(nèi)間的差別越小,類內(nèi)聚類效果越好。根據(jù)這一準(zhǔn)則,此處的適應(yīng)度函數(shù)Fg為:
式中,
式中,L為類別數(shù),Ci(i=1,2...L)為每類的幾何中心,C0為所有類別的中心,X為數(shù)據(jù)向量。
(4)其它設(shè)定
初始群體采取隨機方式生成,種群規(guī)模為60,遺傳解算在執(zhí)行到500 代時終止。
遺傳解算過程中適應(yīng)度的變化如圖4 所示,求得σ=0.2837,根據(jù)式(16)得到主元數(shù)p=4。
圖4 適應(yīng)度變化過程Fig.4 Process of fitness change for resolving
得到KPCA 優(yōu)化模型后,取400 組MIMU 數(shù)據(jù)輸入模型進行分析,其中前200 組數(shù)據(jù)為傳感器正常數(shù)據(jù),后200 組數(shù)據(jù)通過仿真對第一個傳感器的數(shù)據(jù)引入偏差、漂移、精度等級下降和完全失效四種故障。
為了說明本文方法的優(yōu)勢,此處與人工選擇核參數(shù)的常規(guī)KPCA 方法(參數(shù)σ取1)進行對比,兩種方法的故障監(jiān)測結(jié)果如圖5 所示,監(jiān)測限顯著水平α取0.01。由圖5 可見,本文方法均能很好地監(jiān)測出四種故障;常規(guī)方法對故障的敏感程度不僅降低,而且存在一定程度的漏檢。兩種方法的故障監(jiān)測結(jié)果對比如表1 所示,表1 中的準(zhǔn)確率為準(zhǔn)確識別正常(無誤檢)和檢出故障個數(shù)之和與監(jiān)測數(shù)據(jù)點總個數(shù)的比值。由表1 可得本文方法對四種故障監(jiān)測的平均準(zhǔn)確率比常規(guī)方法高出18.44%。
圖5 故障監(jiān)測結(jié)果Fig.5 Diagram of fault detection results
表1 兩種方法故障監(jiān)測結(jié)果對比Tab.1 Fault detection results of two methods
根據(jù)式(22)計算故障發(fā)生前后各傳感器變量貢獻的百分比變化,結(jié)果如圖6 所示。由圖6 可見,故障發(fā)生后第一個傳感器變量貢獻百分比變化最大,說明故障的部位均為第一個傳感器,與實際完全相符,由此也說明了本文方法的有效性。
圖6 故障量貢獻百分比變化Fig.6 Diagram of contribution percentage change of faults
作為一種數(shù)據(jù)驅(qū)動方法,PCA 在傳感器故障診斷中得到了廣泛應(yīng)用,但它是一種線性模型,為了更好地適用于實際的非線性系統(tǒng),本文提出了一種基于模糊AGA 的KPCA 非線性模型并應(yīng)用于MIMU 傳感器故障診斷。一方面,模型將SPE 作為故障監(jiān)測量,利用傳感器變量貢獻百分比變化來定位故障;另一方面,為了提高KPCA 中核函數(shù)參數(shù)選擇的科學(xué)性和減少建模工作量,采用模糊AGA 對核函數(shù)參數(shù)進行了自動優(yōu)選。仿真試驗結(jié)果表明,模糊AGA-KPCA 方法不僅可以有效地監(jiān)測和識別MIMU 傳感器故障,而且相比于常規(guī)的KPCA 方法更具有顯著優(yōu)勢。