韓 曉,趙昶宇
(1.海軍駐天津八三五七所軍事代表室,天津 300308;2.天津津航計(jì)算技術(shù)研究所,天津 300308)
復(fù)雜電子設(shè)備故障預(yù)測(cè)方法研究
韓 曉1,趙昶宇2
(1.海軍駐天津八三五七所軍事代表室,天津 300308;2.天津津航計(jì)算技術(shù)研究所,天津 300308)
針對(duì)系統(tǒng)檢測(cè)到的傳感器數(shù)據(jù)變化趨勢(shì)的分析,提出一種有效的預(yù)測(cè)復(fù)雜電子設(shè)備故障的方法。利用粗糙集屬性約簡(jiǎn)方法預(yù)處理復(fù)雜電子設(shè)備的故障樣本數(shù)據(jù),并對(duì)輸入樣本進(jìn)行歸一化處理;利用遺傳算法對(duì)BP神經(jīng)網(wǎng)絡(luò)的權(quán)值種群進(jìn)行實(shí)數(shù)編碼,并將預(yù)測(cè)數(shù)據(jù)與期望數(shù)據(jù)之間的誤差作為適應(yīng)度函數(shù);對(duì)權(quán)值種群循環(huán)進(jìn)行選擇、交叉、變異、計(jì)算適應(yīng)度操作,直到達(dá)到進(jìn)化次數(shù),得到最優(yōu)的初始權(quán)值和閾值;使用BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練網(wǎng)絡(luò)的連接強(qiáng)度;對(duì)預(yù)測(cè)的故障樣本數(shù)據(jù)進(jìn)行反歸一化處理,得到復(fù)雜電子設(shè)備的故障預(yù)測(cè)值。
故障預(yù)測(cè);電子設(shè)備;粗糙集;遺傳算法
故障預(yù)測(cè)是故障診斷的重要環(huán)節(jié),它能增強(qiáng)系統(tǒng)的早期故障發(fā)現(xiàn)能力。本文以復(fù)雜電子設(shè)備系統(tǒng)為技術(shù)領(lǐng)域,通過(guò)對(duì)系統(tǒng)檢測(cè)到的傳感器數(shù)據(jù)變化趨勢(shì)的分析,預(yù)測(cè)系統(tǒng)可能出現(xiàn)的故障。故障預(yù)測(cè)技術(shù)的應(yīng)用有利于提高復(fù)雜電子設(shè)備系統(tǒng)運(yùn)行時(shí)的穩(wěn)定性。
目前,最常見(jiàn)的故障預(yù)測(cè)方法有:①趨勢(shì)圖分析法。該方法是通過(guò)趨勢(shì)分析來(lái)掌握復(fù)雜電子設(shè)備的運(yùn)行狀態(tài)。但是,由于影響復(fù)雜電子設(shè)備運(yùn)行狀態(tài)的原因有很多,一旦某部分的統(tǒng)計(jì)規(guī)律發(fā)生變化,該方法無(wú)法預(yù)測(cè)其未來(lái)的運(yùn)行狀態(tài)。②曲線擬合法。該方法只適用于曲線參數(shù)方程比較明確的預(yù)測(cè)工作,對(duì)于一些復(fù)雜電子設(shè)備具有的非線性、時(shí)變性等特點(diǎn),很難建立合適的曲線方程,預(yù)測(cè)效果并不理想。③時(shí)間序列法。該方法對(duì)于線性、平穩(wěn)隨機(jī)時(shí)間序列的預(yù)測(cè)能夠起到較好的預(yù)測(cè)效果,應(yīng)用范圍受到限制。④基于灰色理論的預(yù)測(cè)方法。該方法僅適用于有一定上升或下降趨勢(shì)的弱隨機(jī)性時(shí)間序列的預(yù)測(cè),在對(duì)復(fù)雜電子設(shè)備中隨機(jī)性比較強(qiáng)的系統(tǒng)進(jìn)行預(yù)測(cè)時(shí),還需進(jìn)一步改進(jìn)。⑤人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)方法。人工神經(jīng)網(wǎng)絡(luò)以其獨(dú)特的聯(lián)想、記憶、存儲(chǔ)和學(xué)習(xí)功能以及高度的非線性映射能力在設(shè)備的故障診斷和故障預(yù)測(cè)中被廣泛應(yīng)用。但是,在實(shí)際應(yīng)用中,也存在著收斂速度和收斂性無(wú)法保證,訓(xùn)練容易陷入局部最小的問(wèn)題。
為了改善故障預(yù)測(cè)方法中存在的不足,進(jìn)一步提高故障預(yù)測(cè)率,本文提出了一種復(fù)雜電子設(shè)備故障預(yù)測(cè)的方法。這種方法能夠有效預(yù)測(cè)復(fù)雜電子設(shè)備將會(huì)發(fā)生的故障。
粗糙集理論具有很強(qiáng)的定性分析能力,能在保留關(guān)鍵信息的前提下對(duì)樣本數(shù)據(jù)進(jìn)行約簡(jiǎn),達(dá)到簡(jiǎn)化訓(xùn)練樣本的目的。將采集到的復(fù)雜電子設(shè)備的原始數(shù)據(jù)通過(guò)特征提取獲得每一個(gè)故障對(duì)應(yīng)的所有故障征兆,選取能體現(xiàn)復(fù)雜電子設(shè)備狀況的特征參數(shù)作為條件屬性,發(fā)生故障的類型作為決策屬性,然后為復(fù)雜電子設(shè)備的條件屬性和決策屬性進(jìn)行編碼,建立復(fù)雜電子設(shè)備的決策表。
假設(shè)C是復(fù)雜電子設(shè)備的條件屬性,D是復(fù)雜電子設(shè)備的決策屬性,c(x)記錄x在屬性c(c∈C)上的值,C(i,j)為可辨識(shí)矩陣中第i行第j列的元素,則差別矩陣C可表示為:i,j=1,…,n.差別矩陣形式化如圖1所示。
圖1 差別矩陣示意圖
基于差別矩陣的屬性約簡(jiǎn)算法如下(T為決策表,A為屬性約簡(jiǎn)后的條件屬性集合,C為決策表T的差別矩陣,ak∈{cij},C0為核屬性集合):①將核屬性集合C0中的內(nèi)容復(fù)制到集合R中;②求出所有包含核屬性的條件屬性集合Q;③差別矩陣變?yōu)椋–-Q),將條件屬性集合A中去除集合R后的內(nèi)容復(fù)制到集合B中;④對(duì)于所有的ak∈B,計(jì)算在C中屬性頻率最大的屬性ak,并將其添加到集合R中;⑤重復(fù)上述過(guò)程,直至C為空。經(jīng)過(guò)上述處理后,集合R就是最后的約簡(jiǎn)結(jié)果,即復(fù)雜電子設(shè)備最小故障診斷特征子集。
假設(shè)經(jīng)過(guò)上述預(yù)處理后的樣本為x(1),x(2),…,x(n),則經(jīng)過(guò)歸一化處理后得到的樣本為:
式(1)中:xmax為樣本x(n)中的最大值;xmin為樣本x(n)中的最小值。
將x(1),x(2),…,x(n)分成k組,每組有m+1個(gè)值,前m個(gè)值作為BP神經(jīng)網(wǎng)絡(luò)輸入節(jié)點(diǎn)的輸入值,后一個(gè)作為輸出節(jié)點(diǎn)的期望值。
對(duì)經(jīng)典遺傳算法進(jìn)行改進(jìn),以網(wǎng)絡(luò)誤差最小作為進(jìn)化準(zhǔn)則,經(jīng)過(guò)多次迭代,最后獲得BP神經(jīng)網(wǎng)絡(luò)開始訓(xùn)練的初始權(quán)值和閾值。
將經(jīng)過(guò)粗糙集約簡(jiǎn)后的復(fù)雜電子設(shè)備最小故障診斷特征子集作為輸入層神經(jīng)元。復(fù)雜電子設(shè)備的個(gè)體編碼方式選擇實(shí)數(shù)編碼,每個(gè)個(gè)體均為一個(gè)實(shí)數(shù)串,由BP神經(jīng)網(wǎng)絡(luò)輸入層與隱含層連接權(quán)值、隱含層閾值、隱含層與輸出層連接權(quán)值和輸出層閾值4個(gè)部分組成。
根據(jù)個(gè)體得到BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值,用訓(xùn)練數(shù)據(jù)訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)后,預(yù)測(cè)復(fù)雜電子設(shè)備系統(tǒng)輸出,將預(yù)測(cè)輸出與期望輸出間的誤差絕對(duì)值和作為個(gè)體適應(yīng)度F:
式(2)中:k為系數(shù);n為神經(jīng)網(wǎng)絡(luò)輸出節(jié)點(diǎn)數(shù);di為神經(jīng)網(wǎng)絡(luò)第i個(gè)節(jié)點(diǎn)的期望輸出;oi為第i個(gè)節(jié)點(diǎn)的預(yù)測(cè)輸出。
接下來(lái)判斷是否滿足終止條件。算法終止條件是:如果當(dāng)連續(xù)繁殖很多代的最優(yōu)BP神經(jīng)網(wǎng)絡(luò)權(quán)值的適應(yīng)值沒(méi)有變化時(shí),獲取BP神經(jīng)網(wǎng)絡(luò)初始值,計(jì)算BP神經(jīng)網(wǎng)絡(luò)誤差,否則執(zhí)行下一個(gè)步驟,即文章2.3所示內(nèi)容。
由于操作簡(jiǎn)單,傳統(tǒng)的遺傳算法大多采用“輪盤賭”選擇算子。但是,這種方法一方面,容易導(dǎo)致局部最優(yōu)而無(wú)法進(jìn)化;另一方面,無(wú)法體現(xiàn)個(gè)體優(yōu)劣,造成搜索精度不夠的局面。本文對(duì)傳統(tǒng)遺傳算法的“選擇算子”進(jìn)行改進(jìn),改進(jìn)后的選擇方式可確保適應(yīng)度比平均適應(yīng)度大的一些個(gè)體一定能夠被遺傳到下一代群體中,所以,這種方法的選擇誤差比較小。這種方法的具體操作步驟是:①假設(shè)2.2中得到的BP神經(jīng)網(wǎng)絡(luò)的權(quán)值數(shù)目為N,每個(gè)權(quán)值的適應(yīng)度為Fi(i=1,2,…,N),計(jì)算BP神經(jīng)網(wǎng)絡(luò)的權(quán)值在下一代權(quán)值中的期望生存數(shù)目,即個(gè)對(duì)應(yīng)BP神經(jīng)網(wǎng)絡(luò)的權(quán)值在下一代權(quán)值中的生存數(shù)目。其表示取不大于Ni的最大整數(shù),這樣可以確定下一代權(quán)值中權(quán)值新的適應(yīng)度,用“輪盤賭”選擇算子,隨機(jī)確定下一代權(quán)值中還未確定的
本文使用BP神經(jīng)網(wǎng)絡(luò)權(quán)值的適應(yīng)度值來(lái)衡量遺傳算法的收斂情況。對(duì)于適應(yīng)值高的解,取較低的交叉率Pc和變異率Pm,使得該解進(jìn)入下一代的機(jī)會(huì)增大;對(duì)于適應(yīng)值低的解,應(yīng)取比較高的交叉率Pc和變異率Pm,使該解被淘汰掉。式(3)是交叉率Pc和變異率Pm隨適應(yīng)值的變化而自適應(yīng)改變的計(jì)算方法,即:
式(3)中:kc和km是小于1的常數(shù);fc是要交叉的2個(gè)權(quán)值中適應(yīng)值大的1個(gè);fm是要變異的權(quán)值的適應(yīng)值;fmax和f分別是群體的最大適應(yīng)值和平均適應(yīng)值,fmax-f為群體的收斂程度,該值越小,表明群體已趨向收斂。
算法終止條件是:如果算法執(zhí)行次數(shù)達(dá)到了進(jìn)化次數(shù)的上限時(shí)仍不符合適應(yīng)度函數(shù)優(yōu)化準(zhǔn)則,則算法停止,否則轉(zhuǎn)向步驟2.2.
為了進(jìn)一步縮短訓(xùn)練時(shí)間,對(duì)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn),動(dòng)態(tài)調(diào)整學(xué)習(xí)速率,提高網(wǎng)絡(luò)的收斂速度。對(duì)樣本數(shù)據(jù)進(jìn)行反歸一化處理,得到復(fù)雜電子設(shè)備故障樣本數(shù)據(jù)的預(yù)測(cè)值。
在遺傳算法中,以BP神經(jīng)網(wǎng)絡(luò)誤差最小作為進(jìn)化準(zhǔn)則,經(jīng)過(guò)多次迭代操作,最后獲得一組權(quán)值和閾值。該組值是遺傳算法所能遍歷的值中網(wǎng)絡(luò)誤差最小的,可將其作為BP神經(jīng)網(wǎng)絡(luò)的初始值。
將BP神經(jīng)網(wǎng)絡(luò)中每一個(gè)樣本p的輸入輸出模式的二次型誤差函數(shù)定義為:
系統(tǒng)的平均誤差代價(jià)函數(shù)為:
式(4)(5)中:P為樣本模式對(duì)數(shù);L為BP神經(jīng)網(wǎng)絡(luò)輸出節(jié)點(diǎn)數(shù);dpk為BP神經(jīng)網(wǎng)絡(luò)輸出層節(jié)點(diǎn)的期望輸出;Opk為BP神經(jīng)網(wǎng)絡(luò)輸出層節(jié)點(diǎn)的實(shí)際輸出。
如果BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練初期有較好的學(xué)習(xí)率,對(duì)后來(lái)的訓(xùn)練未必合適,因此,本文對(duì)BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法進(jìn)行改進(jìn),采用動(dòng)態(tài)調(diào)整學(xué)習(xí)速率的方法,使得BP神經(jīng)網(wǎng)絡(luò)的實(shí)際輸出盡可能地接近期望輸出。這樣做,不僅提高了學(xué)習(xí)算法的可靠性,還縮短了BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時(shí)間。
選取BP神經(jīng)網(wǎng)絡(luò)輸出層節(jié)點(diǎn)的實(shí)際輸出和期望輸出的平均絕對(duì)誤差e1及其變化率e2兩個(gè)變量,即:
式(6)(7)中:e1(t)和 e1(t-1)為第 t和 t-1 時(shí)的平均絕對(duì)值誤差。
學(xué)習(xí)速率η的表達(dá)式為:
式(9)(10)中:k1和k2為比例因子,調(diào)整f1和f2的比例;b1和b2為權(quán)重因子,修正f1和f2的權(quán)重。k1,k2和b1,b2的值需根據(jù)實(shí)際需要,經(jīng)過(guò)反復(fù)實(shí)驗(yàn)確定。
設(shè)BP神經(jīng)網(wǎng)絡(luò)有m個(gè)輸入節(jié)點(diǎn),輸出層有l(wèi)個(gè)輸出節(jié)點(diǎn),隱含層有q個(gè)節(jié)點(diǎn),ωij是輸入層與隱含層節(jié)點(diǎn)之間的連接權(quán)值,ωjk是隱含層與輸出層節(jié)點(diǎn)之間的連接權(quán)值。
BP神經(jīng)網(wǎng)絡(luò)輸入層的第i個(gè)節(jié)點(diǎn)的輸入為neti=xi,輸出為Oi=neti;隱含層的第j個(gè)節(jié)點(diǎn)的輸入為輸出為Oj=f(netj);輸出層的第k個(gè)節(jié)點(diǎn)的輸入為netk=,輸出為Ok=f(netk)。其中,i=1, 2,…,m;j=1,2,…,q;k=1,2,…,l.
定義反傳誤差信號(hào)為:
輸出層權(quán)值的調(diào)整公式為:△ωjk=ηδkOj.
隱含層權(quán)值的調(diào)整公式為:△ωij=ηδjOi.
如果達(dá)到了BP神經(jīng)網(wǎng)絡(luò)要求的精度,則執(zhí)行步驟3.5,否則執(zhí)行步驟3.1的內(nèi)容。
如果完成了訓(xùn)練的總次數(shù),則保存已訓(xùn)練的樣本;否則執(zhí)行步驟3.1的內(nèi)容。
對(duì)S2中的歸一化公式進(jìn)行反歸一化運(yùn)算,得到:
式(11)中:x?(n+1)為復(fù)雜電子設(shè)備故障樣本的預(yù)測(cè)值。
為了更好地實(shí)現(xiàn)對(duì)復(fù)雜電子設(shè)備的故障預(yù)測(cè),本文提出了一種復(fù)雜電子設(shè)備故障預(yù)測(cè)的方法。該方法利用粗糙集屬性約簡(jiǎn)方法對(duì)樣本數(shù)據(jù)進(jìn)行預(yù)處理,簡(jiǎn)化了樣本數(shù)據(jù)的數(shù)量;然后根據(jù)改進(jìn)的遺傳算法獲得最佳神經(jīng)元初始權(quán)值和閾值;對(duì)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn),動(dòng)態(tài)調(diào)整學(xué)習(xí)速率,并用改進(jìn)后的訓(xùn)練算法訓(xùn)練網(wǎng)絡(luò)的連接強(qiáng)度;最后,對(duì)預(yù)測(cè)數(shù)據(jù)進(jìn)行反歸一化處理,得到有效的預(yù)測(cè)值,并分析預(yù)測(cè)值與實(shí)際值之間的誤差。
這種方法能夠減少神經(jīng)網(wǎng)絡(luò)輸入層的個(gè)數(shù),簡(jiǎn)化神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),提高神經(jīng)網(wǎng)絡(luò)泛化能力,縮短神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時(shí)間。同時(shí),利用遺傳算法的快速學(xué)習(xí)網(wǎng)絡(luò)權(quán)值的能力,擺脫了神經(jīng)網(wǎng)絡(luò)容易陷入極小點(diǎn)的困擾,加快了其收斂速度。
[1]陶志,許寶棟,汪定偉,等.基于遺傳算法的粗糙集知識(shí)約簡(jiǎn)方法[J].系統(tǒng)工程,2003,21(4):116-122.
[2]王國(guó)胤,姚一豫,于洪.粗糙集理論與應(yīng)用研究綜述[J].計(jì)算機(jī)學(xué)報(bào),2009,32(7):1229-1246.
[3]劉永建,朱劍英,曾捷.改進(jìn)BP神經(jīng)網(wǎng)絡(luò)在發(fā)動(dòng)機(jī)性能趨勢(shì)分析和故障診斷中的應(yīng)用[J].南京理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,34(1):24-29.
[4]張向前,關(guān)小偉,陳力子.BP神經(jīng)網(wǎng)絡(luò)在武器火控系統(tǒng)故障診斷中的應(yīng)用[J].計(jì)算機(jī)測(cè)量與控制,2010,18(11):2576-2578.
TN06
A
10.15913/j.cnki.kjycx.2017.20.042
2095-6835(2017)20-0042-03
韓曉(1987—),男,碩士,工程師,主要從事裝備質(zhì)量監(jiān)督和質(zhì)量管理體系方面的研究。趙昶宇(1982—),男,陜西漢中人,工學(xué)碩士,高級(jí)工程師,主要從事嵌入式系統(tǒng)軟件測(cè)試方面的研究。
〔編輯:白潔〕