文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2012)11-0136-03
目前,保障部隊(duì)的裝備故障檢測(cè)定位方法主要采用傳統(tǒng)的檢測(cè)方法,即對(duì)所有需要測(cè)試的部件一一進(jìn)行檢測(cè)對(duì)比,以確定故障的位置。但這種故障定位方法主要存在兩個(gè)問題:(1)抓不住重點(diǎn)。傳統(tǒng)的檢測(cè)方法按預(yù)先設(shè)定的順序進(jìn)行檢測(cè),直到檢測(cè)完所有的部件,缺乏靈活性。(2)故障檢測(cè)定位時(shí)間長(zhǎng)。檢測(cè)中,沒有對(duì)正常部件和故障部件加以區(qū)別,造成了在對(duì)正常部件檢測(cè)過程中不必要的時(shí)間浪費(fèi)。為了解決這兩個(gè)問題,本文將故障樹分析法FTA(Fault Tree Analysis)與遺傳算法GA(Genetic
Arithmetic)引入故障的檢測(cè)定位方法中。
對(duì)于大型復(fù)雜系統(tǒng),隨著故障樹的增大,最小割集的數(shù)量也將迅速增多。故障檢測(cè)定位時(shí),如何在較短的時(shí)間內(nèi)得出正確的結(jié)論,提高故障檢測(cè)效率,對(duì)部隊(duì)裝備保障的維修工作具有十分重大的意義。參考文獻(xiàn)[1]中,由于BDD的規(guī)模隨著故障樹的底事件數(shù)目的增加呈指數(shù)增長(zhǎng),過程復(fù)雜、計(jì)算量大;參考文獻(xiàn)[2]雖然避免了在檢測(cè)過程中發(fā)生的重復(fù)性,但其檢索時(shí)間較長(zhǎng);參考文獻(xiàn)[3]在綜合考慮搜索成本、故障概率及影響程度的基礎(chǔ)上對(duì)最小割集的檢測(cè)過程進(jìn)行排序,取得了較好的成果,但所涉及到的矩陣轉(zhuǎn)換等數(shù)學(xué)方法復(fù)雜、內(nèi)在開銷大、容易出錯(cuò)。
本文綜合考慮以上因素,采用均勻初始化的方法將整個(gè)故障樹底事件均勻地分成幾個(gè)等份,再運(yùn)用遺傳算法進(jìn)行搜索并檢測(cè),如果發(fā)現(xiàn)某個(gè)底事件異常,則對(duì)包含該底事件的最小割集進(jìn)行順序檢測(cè),以期盡早定位故障。
1 故障樹分析
故障樹分析是1961年美國(guó)的WATSON H A提出的,主要用于大型復(fù)雜系統(tǒng)可靠性、安全性分析和風(fēng)險(xiǎn)評(píng)價(jià)的一種方法。故障樹是系統(tǒng)的不希望事件(頂事件)與引起它的各部件或子系統(tǒng)的故障事件(底事件)之間的邏輯關(guān)系圖,實(shí)質(zhì)上是實(shí)際系統(tǒng)的故障組合和傳遞的邏輯關(guān)系的正確描述[4]。故障樹分析法以頂事件作為分析目標(biāo),搜索找出所有可能引起頂事件的直接原因(最小割集)。
最小割集是導(dǎo)致頂事件發(fā)生的底事件最小組合,是故障樹進(jìn)行定性分析和定量分析的最主要的手段,也是進(jìn)行其他分析的基礎(chǔ)[5]。一個(gè)最小割集就是導(dǎo)致頂事件發(fā)生的主要途徑,因此,任意一個(gè)最小割集就代表系統(tǒng)的一種故障。所以,對(duì)頂事件的故障定位過程就是逐一對(duì)其最小割集進(jìn)行排查測(cè)試的過程。
底事件是故障樹的最小組成單元,對(duì)應(yīng)著設(shè)備系統(tǒng)的一個(gè)部件單元,是部隊(duì)裝備測(cè)試保障工作的直接對(duì)象。圖1所示為某型導(dǎo)彈的系統(tǒng)故障樹模型,T為頂事件,Gi(i=1,2,3)為中間事件,Bj(j=1,2,…6)為底事件。
基于故障樹的故障檢測(cè)就是對(duì)底事件逐一與其標(biāo)準(zhǔn)范圍進(jìn)行比對(duì),超出正常范圍即說明該底事件異常。但這并不一定會(huì)導(dǎo)致頂事件的發(fā)生,因?yàn)轫斒录l(fā)生的直接原因是由某一個(gè)最小割集故障造成的。用sign(i)表示第i個(gè)底事件的檢測(cè)狀態(tài),如果該底事件尚未檢測(cè)用0表示,否則用1表示;fault_sum表示故障樹底事件檢測(cè)狀態(tài)的和,如式(1)所示:
式中,event為故障樹的底事件總數(shù)。本文的故障檢測(cè)定位的思路是:通過改進(jìn)的遺傳算法使式(1)快速達(dá)到最大值的同時(shí),盡早找出導(dǎo)致頂事件發(fā)生的最小割集。
2 遺傳算法
對(duì)于特定的問題,遺傳算法從可能潛在解的一個(gè)種群開始,而一個(gè)種群由經(jīng)過基因編碼的、一定規(guī)模的個(gè)體組成[6]。每個(gè)個(gè)體實(shí)際上代表一個(gè)問題實(shí)體,也就是一個(gè)可行解。借助自然遺傳學(xué)的遺傳算子進(jìn)行復(fù)制、交叉和變異,以適應(yīng)度函數(shù)最優(yōu)為準(zhǔn)則,逐代進(jìn)化產(chǎn)生代表新的解集的種群。由此反復(fù)進(jìn)化迭代,直到滿足終止條件[7]。
2.1 均勻初始化
采用遺傳算法搜索故障樹底事件的目的是從全部的可能事件中盡快找出頂事件發(fā)生的原因。所以,從全部的底事件群體中均勻地挑出一些個(gè)體作為初始種群是一個(gè)可行而有效的方法,即均勻初始化。設(shè)步長(zhǎng)為正整數(shù)ΔE,將所有底事件作為整個(gè)群體進(jìn)行編碼,從起始位置開始每隔ΔE個(gè)個(gè)體選擇一個(gè)個(gè)體作為進(jìn)化的初始種群。這樣,可將整個(gè)群體分為若干相同大小的小群體,基于遺傳算法的故障檢測(cè)定位就在這些小群體上同時(shí)進(jìn)行。
2.2 遺傳算法的改進(jìn)
2.2.1 需求分析
故障搜索定位過程初期,要求從全局的大范圍跳躍式搜索,迅速定位故障;搜索到后期,如果尚未定位故障,應(yīng)當(dāng)對(duì)剩余的底事件進(jìn)行地毯式搜索,避免遺漏底事件。在進(jìn)行遺傳操作時(shí),初期應(yīng)注重保持種群的多樣性,后期應(yīng)注重種群的收斂性設(shè)計(jì)。所以,在操作過程中需動(dòng)態(tài)地調(diào)整交叉概率Pc、變異概率Pm及選擇概率Pe。
圖2中,隨著種群迭代次數(shù)的增大,交叉、變異能力逐漸減弱,選擇復(fù)制能力逐漸增強(qiáng),使得在種群進(jìn)化的前期,賦予了較大的交叉、變異能力。目的是增強(qiáng)種群的多樣性,有利于克服局部極小,使算法能盡早地從全局范圍內(nèi)搜索定位故障;而在進(jìn)化的后期,順序搜索能力增強(qiáng),同時(shí)有利于提高收斂性。這種自適應(yīng)遺傳操作,不僅在迭代前期有較強(qiáng)的全局捕捉搜索能力,而且在后期有較強(qiáng)的查漏補(bǔ)余能力,具有收斂性好、避免局部極小等特點(diǎn),符合本設(shè)計(jì)的目的需求。
3 故障檢測(cè)定位方法設(shè)計(jì)
故障樹的任意一個(gè)最小割集的發(fā)生,都會(huì)導(dǎo)致頂事件的發(fā)生,而最小割集由一個(gè)或多個(gè)底事件組成,雖然底事件的發(fā)生有著不同的概率,但實(shí)際表明有可能發(fā)生概率小的事件。所以,對(duì)故障樹的所有底事件進(jìn)行快速檢查是一種科學(xué)的方法, 具體的故障檢測(cè)定位流程如圖3所示。
其中,檢測(cè)最小割集就是對(duì)該最小割集中的所有底事件進(jìn)行檢測(cè)。如果本最小割集中的所有底事件均異常,則判斷該最小割集為異常。適應(yīng)度函數(shù)選為已經(jīng)檢測(cè)完的底事件的數(shù)目。
(1)初始化:將故障樹的所有底事件按順序緊密地排列在一起,并分配順序號(hào)作為整個(gè)群體,從中等步長(zhǎng)間隔均勻地選取出一部分個(gè)體作為初始種群。
(2)選擇:依式(4)概率復(fù)制選取父代個(gè)體的下一個(gè)個(gè)體的染色體,加入子代種群。
(3)交叉:依式(2)概率對(duì)父代個(gè)體的部分基因進(jìn)行交換,形成新個(gè)體,加入子代種群。
(4)變異:依式(3)概率對(duì)父代個(gè)體的部分基因進(jìn)行變異,產(chǎn)生新的個(gè)體,加入子代種群。為防止溢出,變異應(yīng)控制在步長(zhǎng)以內(nèi)。
遺傳操作過程中,應(yīng)保持整個(gè)種群的數(shù)目不變。另外,在對(duì)故障樹的底事件進(jìn)行檢測(cè)時(shí),對(duì)已檢測(cè)的底事件進(jìn)行標(biāo)記,以防止在交叉或變異過程中的重復(fù)檢測(cè)帶來的時(shí)間損失;圖3中,同一個(gè)底事件可能存在于不同的最小割集當(dāng)中,如果某個(gè)底事件異常,就要檢測(cè)所有包含該底事件的最小割集,具體方法請(qǐng)參考文獻(xiàn)[2]。
4 仿真分析
某型導(dǎo)彈子系統(tǒng)故障樹的底事件為188個(gè),最小割集為350個(gè),限于篇幅原因,本文未給出故障樹。故障檢測(cè)定位算法中采用實(shí)數(shù)編碼,即正整數(shù)i(i=1,2,3,…,188)表示該故障樹的第i個(gè)底事件。均勻初始化時(shí),取步長(zhǎng)ΔE=21,即初始種群(i=1,22,43,64,85,106,127,148,169),
適應(yīng)度函數(shù)選擇見式(1)。如果底事件在標(biāo)準(zhǔn)范圍之內(nèi)如果為健康(用0表示),否則該底事件異常(用1表示)。出現(xiàn)故障底事件,將檢測(cè)包含該底事件最小割集的其他底事件,以期盡早定位故障原因。
為此,本文以該型導(dǎo)彈的子系統(tǒng)測(cè)試數(shù)據(jù)為依據(jù),在Windows平臺(tái)下進(jìn)行Matlab仿真,初始化Pcbef=0.5, Pmbef=0.9,結(jié)果如圖4、圖5所示。
圖4中縱坐標(biāo)1表示故障(異常),0表示正常。結(jié)果顯示編號(hào)為288的最小割集為導(dǎo)致頂事件發(fā)生的原因,其所含的底事件編號(hào)為:4,24,26,31,158,185。而其他底事件發(fā)生的不正?,F(xiàn)象并未導(dǎo)致頂事件的發(fā)生。仿真結(jié)果與實(shí)際相符。
由圖5得出,在種群進(jìn)化到第3代的時(shí)候已經(jīng)將導(dǎo)致頂事件發(fā)生的最小割集定位;當(dāng)種群進(jìn)化到第4代時(shí),已經(jīng)檢測(cè)完所有的底事件,收斂速度較快。為了能更清楚地說明問題,本文進(jìn)化代數(shù)選為10,正常情況下進(jìn)化到第3代時(shí)就已經(jīng)定位故障,檢測(cè)過程至此結(jié)束。
仿真結(jié)果表明,本文算法進(jìn)化到第3代時(shí)只檢測(cè)了18個(gè)故障樹的底事件,即得出將故障定位為編號(hào)288的最小割集異常的結(jié)論,而傳統(tǒng)的順序檢測(cè)方法需要檢測(cè)185個(gè)底事件才可以定位故障。可見,本文的故障檢測(cè)定位算法能夠大大節(jié)約故障定位時(shí)間。
本文在深入分析了故障樹及故障檢測(cè)特點(diǎn)的基礎(chǔ)上,對(duì)遺傳算法作了一定的改進(jìn),定義了新的自適應(yīng)交叉、變異和選擇概率公式, 并設(shè)計(jì)了用一種均勻初始化
的新型自適應(yīng)遺傳算法的故障定位方法。仿真實(shí)驗(yàn)表明,該方法能夠提高故障定位的效率,尤其在大型復(fù)雜故障系統(tǒng)中體現(xiàn)得更為明顯。
參考文獻(xiàn)
[1] 劉萍,吳宜燦,李亞洲,等.一種基于ZBDD求解大型故障樹的基本事件排序方法[J].核科學(xué)與工程,2007,27(3):282-288.
[2] 王久崇,樊曉光,萬明,等.一種改進(jìn)的故障樹模糊診斷的方法及其應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用, 2012,48(14):226-230.
[3] 姚成玉,陳東寧.基于最小割集綜合排序的液壓系統(tǒng)故障定位方法[J].中國(guó)機(jī)械工程,2010,21(11):1357-1361.
[4] 劉東.基于故障樹分析的航空裝備故障診斷及系統(tǒng)開發(fā)研究[D].西安:空軍工程大學(xué),2009.
[5] 崔煥慶,周傳愛.應(yīng)用Petri網(wǎng)求解事故樹最小割集的方法研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2011,32(2):580-583.
[6] 黃友銳.智能優(yōu)化算法及其應(yīng)用[M].北京:國(guó)防工業(yè)出版社,2008.
[7] HOLLAND J H. Adaption in nature and artificial system[M]. Ann Arbor:The University of Michigan Press,1975.