本發(fā)明涉及一般容錯(cuò)系統(tǒng)的可靠性分析領(lǐng)域,具體來(lái)說(shuō)是一種基于無(wú)關(guān)覆蓋模型的三元決策圖可靠性分析方法
背景技術(shù):
容錯(cuò)系統(tǒng)被廣泛應(yīng)用于可靠性領(lǐng)域,常用于關(guān)鍵領(lǐng)域例如核電站,空間站,航天器和大型數(shù)據(jù)存儲(chǔ)系統(tǒng)等。然而,在傳統(tǒng)的覆蓋模型中,如果某些故障組件沒(méi)有能被檢測(cè)出,那么該系統(tǒng)就無(wú)法針對(duì)該故障進(jìn)行替換,系統(tǒng)也無(wú)法通過(guò)重構(gòu)進(jìn)行自我修復(fù)。除此之外,這些未被檢測(cè)出來(lái)的故障組件可能會(huì)污染(比如軟件病毒感染,缺陷指令)或影響其他正常的組件從而導(dǎo)致整個(gè)系統(tǒng)的故障。
于對(duì)覆蓋模型完整性的考慮,當(dāng)對(duì)容錯(cuò)系統(tǒng)進(jìn)行可靠性分析時(shí)有必要去考慮這種沒(méi)有被檢測(cè)到位的故障組件。因此,不完全錯(cuò)誤覆蓋模型應(yīng)運(yùn)而生。這是一種包含未檢測(cè)出的故障組件的覆蓋模型,它將故障分為兩種:一種為覆蓋的故障(能夠被檢測(cè)的),另一種為未覆蓋的故障(無(wú)法被檢測(cè)的)。在發(fā)生覆蓋的故障時(shí)系統(tǒng)會(huì)自動(dòng)用備件替換進(jìn)行自我修復(fù),除非備件被完全消耗或無(wú)備件替換時(shí)才會(huì)導(dǎo)致整個(gè)系統(tǒng)的故障;一旦未覆蓋的故障發(fā)生則直接導(dǎo)致整個(gè)系統(tǒng)故障。經(jīng)過(guò)多年的發(fā)展,不完全錯(cuò)誤覆蓋(以下稱不完全覆蓋模型)被廣泛的認(rèn)可并應(yīng)用于實(shí)踐。但是,不完全覆蓋模型過(guò)度關(guān)注于系統(tǒng)組件的故障問(wèn)題而忽略了系統(tǒng)中組件之間的關(guān)聯(lián)性問(wèn)題(以下稱為系統(tǒng)關(guān)聯(lián)性)。
系統(tǒng)關(guān)聯(lián)性是指系統(tǒng)中的組件相互關(guān)聯(lián)共同影響系統(tǒng)。但是在大量的實(shí)際應(yīng)用中,很多初始關(guān)聯(lián)的系統(tǒng)在運(yùn)行過(guò)程中由于某些組件的覆蓋故障導(dǎo)致另一些組件與系統(tǒng)失去關(guān)聯(lián),例如對(duì)圖4的故障樹(shù)模型F=(x1+x2)(x3+x4),當(dāng)組件x1發(fā)生覆蓋故障時(shí),組件x2與系統(tǒng)失去關(guān)聯(lián)F(x1=1)=(1+x2)(x3+x4)=x3+x4。如果放任這些無(wú)關(guān)性組件,則會(huì)對(duì)當(dāng)前系統(tǒng)留下一定的隱患。無(wú)關(guān)性組件也有發(fā)生未覆蓋故障的風(fēng)險(xiǎn),而傳統(tǒng)的不完全覆蓋模型并不能規(guī)避這些風(fēng)險(xiǎn)根據(jù)不完全覆蓋模型,任何組件發(fā)生未覆蓋的故障則直接導(dǎo)致系統(tǒng)失效。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于:克服現(xiàn)有不完全覆蓋模型無(wú)法檢測(cè)系統(tǒng)無(wú)關(guān)性組件的缺陷,提出一種通用的三元決策圖在兼顧傳統(tǒng)的不完全覆蓋模型的基礎(chǔ)上適用于無(wú)關(guān)性覆蓋模型,這種方法還能適用于各種條件下的覆蓋模型并能在一定程度上提高系統(tǒng)的可靠性,加快系統(tǒng)可靠性的分析效率。
為實(shí)現(xiàn)上述目的,本發(fā)明所設(shè)計(jì)的基于三元決策圖的容錯(cuò)系統(tǒng)通用分析方法,其特殊之處在于,包括如下步驟:
1)構(gòu)建基于系統(tǒng)的故障樹(shù)布爾表達(dá)式模型f,其中包括n個(gè)系統(tǒng)組件xi,i、n為自然數(shù),且i=1~n;
2)構(gòu)建所述每個(gè)系統(tǒng)組件xi的最小無(wú)關(guān)觸發(fā)布爾表達(dá)式G(xi);
3)構(gòu)建所述最小無(wú)關(guān)觸發(fā)布爾表達(dá)式G(xi)的二元決策圖;
4)根據(jù)所述二元決策圖計(jì)算每個(gè)系統(tǒng)組件xi的無(wú)關(guān)觸發(fā)布爾表達(dá)式的最小蘊(yùn)含式PI(xi);
5)構(gòu)建故障樹(shù)布爾表達(dá)式模型f的最小割集
6)根據(jù)所述系統(tǒng)組件xi的無(wú)關(guān)觸發(fā)布爾表達(dá)式的最小蘊(yùn)含式PI(xi)和最小割集求每個(gè)系統(tǒng)組件xi發(fā)生故障時(shí)導(dǎo)致的無(wú)關(guān)組件為系統(tǒng)組件xi發(fā)生覆蓋故障;
7)將所述步驟6)的結(jié)果代入系統(tǒng)無(wú)關(guān)性覆蓋模型ICM,得到無(wú)關(guān)性覆蓋表達(dá)式ficm;
8)根據(jù)所述無(wú)關(guān)性覆蓋表達(dá)式構(gòu)建三元決策圖,并根據(jù)所述三元決策圖對(duì)系統(tǒng)做定性與定量分析。
優(yōu)選地,所述步驟6)中系統(tǒng)組件xi發(fā)生故障時(shí)導(dǎo)致出現(xiàn)的系統(tǒng)無(wú)關(guān)組件的計(jì)算方法為從所述系統(tǒng)組件xi的無(wú)關(guān)觸發(fā)布爾表達(dá)式的最小蘊(yùn)含式PI(xi)中去除與所述最小割集中相同的元素,并去除含非式子,得到系統(tǒng)組件xi發(fā)生故障時(shí)導(dǎo)致出現(xiàn)的系統(tǒng)無(wú)關(guān)組件
優(yōu)選地,所述系統(tǒng)無(wú)關(guān)性覆蓋模型為其中ficm為系統(tǒng)無(wú)關(guān)性覆蓋表達(dá)式,最小割集為系統(tǒng)組件xi發(fā)生覆蓋的故障,xi為系統(tǒng)組件xi發(fā)生未覆蓋的故障。
優(yōu)選地,所述系統(tǒng)無(wú)關(guān)性覆蓋模型ICM的構(gòu)建方法為:
71)取系統(tǒng)表達(dá)式f的最小割集
72)取由系統(tǒng)組件xi發(fā)生覆蓋故障導(dǎo)致的無(wú)關(guān)性組件
73)對(duì)所述步驟72)的結(jié)果做取非操作得到非無(wú)關(guān)組件
74)取系統(tǒng)組件xi未覆蓋的故障xi和所述步驟73)中非無(wú)關(guān)組件的合取式
75)取整個(gè)系統(tǒng)中所有組件的析取式
76)將所述步驟71)的結(jié)果與步驟75)的結(jié)果析取即為無(wú)關(guān)性覆蓋模型表達(dá)式
優(yōu)選地,所述步驟8)中構(gòu)建三元決策圖的方法如下:
81)確定三元決策圖的三個(gè)邏輯分支依次代表:無(wú)故障的狀態(tài)、發(fā)生覆蓋失效狀態(tài)和發(fā)生未覆蓋的失效狀態(tài);
82)確定三元決策圖有三個(gè)基本事件分別對(duì)應(yīng)無(wú)關(guān)性覆蓋模型表達(dá)式的三種狀態(tài):覆蓋故障,未覆蓋故障和非覆蓋故障;
83)對(duì)三元決策圖的故障樹(shù)做深度優(yōu)先搜索,得到故障樹(shù)結(jié)點(diǎn)的排列順序并從左到右賦索引值0,1,2....n,根據(jù)索引值合并三元決策圖。
優(yōu)選地,所述步驟83)中合并三元決策圖的規(guī)則為普通布爾與或運(yùn)算。
本發(fā)明的主要思想如下:
在對(duì)某個(gè)容錯(cuò)系統(tǒng)進(jìn)行可靠性分析時(shí),既要考慮未覆蓋的故障也需要兼顧整個(gè)系統(tǒng)的關(guān)聯(lián)性(在系統(tǒng)某一狀態(tài)下是否存在無(wú)關(guān)性組件),這樣才能較為完整的分析整個(gè)系統(tǒng)從而提高系統(tǒng)的可靠性。然而無(wú)關(guān)性組件的檢測(cè)與一般的故障(覆蓋故障)檢測(cè)是完全不同的,如果不能用一種有效的通用方法兼顧,則在很大程度上降低系統(tǒng)的可靠性分析的效率。因此,本發(fā)明將其兩者有機(jī)的結(jié)合,提出了一種通用的三元決策圖既可以針對(duì)無(wú)關(guān)性覆蓋模型又可以應(yīng)用于傳統(tǒng)的不完全錯(cuò)誤覆蓋模型。
本發(fā)明與現(xiàn)有技術(shù)相比優(yōu)點(diǎn)在于:
(1)本發(fā)明應(yīng)用于容錯(cuò)系統(tǒng)的可靠性分析,解決了傳統(tǒng)不完全覆蓋模型無(wú)法隔離無(wú)關(guān)性組件的問(wèn)題,并可以處理含非事件,大大降低了系統(tǒng)面臨的風(fēng)險(xiǎn),提高了系統(tǒng)的可靠性。
(2)現(xiàn)有的三元決策圖一般都是基于不完全錯(cuò)誤覆蓋模型,其基本事件(葉子結(jié)點(diǎn))并不能完整的描述無(wú)關(guān)性覆蓋模型,且無(wú)法描述含非事件,例如:無(wú)關(guān)性覆蓋模型表達(dá)式中的非覆蓋故障,本發(fā)明運(yùn)用集合論將含非事件做等價(jià)轉(zhuǎn)化為一系列不含非事件的組件,從而有效的解決了這一實(shí)際問(wèn)題,并能完美的分析無(wú)關(guān)性覆蓋模型。
(3)本發(fā)明具有更好的普適性,其三元決策圖的基本事件可以擴(kuò)充至6種,涵蓋系統(tǒng)組件所有可能的狀態(tài)如圖5所示(正常、覆蓋故障、非覆蓋故障、未覆蓋故障、非未覆蓋故障,故障=覆蓋故障+非覆蓋故障),既可以針對(duì)無(wú)關(guān)性覆蓋模型也可以對(duì)傳統(tǒng)的不完全覆蓋模型也可以做出精準(zhǔn)的分析(當(dāng)系統(tǒng)處于一直關(guān)聯(lián)狀態(tài)即),即是一個(gè)通用的解決方案。
附圖說(shuō)明
圖1為本發(fā)明中三元決策圖,圖中三個(gè)基本事件從左到右依次表示:覆蓋故障基本事件、未覆蓋故障基本事件和非覆蓋故障基本事件。
圖2為本發(fā)明中三元決策圖的中間事件的一般表達(dá)式。
圖3為本發(fā)明中三元決策圖中的運(yùn)算規(guī)則。
圖4為實(shí)施例中系統(tǒng)的故障樹(shù)模型。
圖5為本發(fā)明中三元決策圖能夠擴(kuò)展的6個(gè)基本事件第一排從左到右依次為:覆蓋故障基本事件、未覆蓋故障基本事件和非覆蓋故障基本事件。第二排從左到右依次為:完全故障基本事件(覆蓋+未覆蓋)、非故障基本事件和非未覆蓋故障基本事件。
圖6為實(shí)施例中系統(tǒng)基于無(wú)關(guān)性覆蓋模型的三元決策圖。
圖7為實(shí)施例中基于不完全錯(cuò)誤覆蓋模型的三元決策圖。
具體實(shí)施方式
為了能夠更好的理解本發(fā)明,首先對(duì)本發(fā)明中涉及的概念作簡(jiǎn)單的介紹:
三元決策圖:二元決策圖的一種擴(kuò)展,含有三條互斥的邊,包含中間結(jié)點(diǎn)與葉子結(jié)點(diǎn)并由葉子結(jié)點(diǎn)按照一定的邏輯規(guī)則自底向上構(gòu)造而成。
故障樹(shù):一種表達(dá)系統(tǒng)失效的倒立樹(shù)形模型,通過(guò)對(duì)系統(tǒng)失效原因向下逐層展開(kāi)、直至無(wú)需或無(wú)法繼續(xù)展開(kāi)的基本部件為止而建立的模型。
最小割集:可靠性統(tǒng)計(jì)的基本概念,通常指導(dǎo)致系統(tǒng)整體失效的一組(一個(gè)或多個(gè))故障組件的最小集合。
不完全覆蓋模型:相對(duì)完全覆蓋模型而言,包含了一種未覆蓋的故障,這種故障可以直接導(dǎo)致整個(gè)系統(tǒng)失效。
無(wú)關(guān)性覆蓋模型:相對(duì)不完全覆蓋模型而言,包含了對(duì)無(wú)關(guān)性組件的處理,意味著單純的未覆蓋故障不一定導(dǎo)致整個(gè)系統(tǒng)失效除非當(dāng)前故障組件是一個(gè)相關(guān)組件。
無(wú)關(guān)性組件:當(dāng)前組件是否失效并不影響到其他組件或整個(gè)系統(tǒng)正常運(yùn)作。
最小無(wú)關(guān)觸發(fā)(MIT):Minimal irrelevant trigger,設(shè)f為當(dāng)前系統(tǒng)的布爾表達(dá)式,x為當(dāng)前系統(tǒng)組件,MIT[x,f]表示為由組件x失效(一般為覆蓋故障)導(dǎo)致的無(wú)關(guān)性組件的最小集合(不包含f的最小割集與含非子式)。
無(wú)關(guān)性覆蓋模型是一種考慮無(wú)關(guān)性組件的不完全覆蓋模型。此模型既考慮了未覆蓋的故障也兼顧了系統(tǒng)的關(guān)聯(lián)性。利用最小無(wú)關(guān)觸發(fā)(MIT,minimal irrelevant trigger)公式得出系統(tǒng)的無(wú)關(guān)性組件,依據(jù)無(wú)關(guān)覆蓋模型將整個(gè)系統(tǒng)的失效歸于兩個(gè)部分:1)由覆蓋故障組件組成的系統(tǒng)最小割集。2)非無(wú)關(guān)性組件的未覆蓋故障。
以下結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述。
圖4為某一系統(tǒng)的故障樹(shù)模型,其故障樹(shù)表達(dá)式為f=(x1+x2)(x3+x4),該系統(tǒng)由2個(gè)或門和1個(gè)與門組成。2個(gè)或門下面分別對(duì)應(yīng)四個(gè)組件x1,x2,x3,x4。
步驟1)構(gòu)建基于系統(tǒng)的故障樹(shù)布爾表達(dá)式模型f=(x1+x2)(x3+x4),其中包括n個(gè)系統(tǒng)組件xi,n=4,i=1,2,3,4。
步驟2)構(gòu)建每個(gè)系統(tǒng)組件xi的最小無(wú)關(guān)觸發(fā)布爾表達(dá)式G(xi)。G(x1)最小無(wú)關(guān)觸發(fā)計(jì)算過(guò)程為:同理計(jì)算x2x3,x4的最小無(wú)關(guān)觸發(fā)布爾表達(dá)式G(x2)、G(x3)G(x4)。
步驟3)構(gòu)建最小無(wú)關(guān)觸發(fā)布爾表達(dá)式G(x1)的二元決策圖;
步驟4)計(jì)算系統(tǒng)組件x1的無(wú)關(guān)觸發(fā)布爾表達(dá)式的最小蘊(yùn)含式
步驟5)取故障樹(shù)布爾表達(dá)式模型f的最小割集且該最小割集均由覆蓋的故障組件組成,
步驟6)從系統(tǒng)組件x1的無(wú)關(guān)觸發(fā)布爾表達(dá)式的最小蘊(yùn)含式中去除與最小割集中相同的元素,并去除含非式子,得到系統(tǒng)組件x1發(fā)生故障時(shí)導(dǎo)致出現(xiàn)的系統(tǒng)無(wú)關(guān)組件為系統(tǒng)組件xi發(fā)生覆蓋故障,。
重復(fù)步驟3)~6),計(jì)算系統(tǒng)組件x2、x3、x4發(fā)生故障時(shí)導(dǎo)致出現(xiàn)的系統(tǒng)無(wú)關(guān)組件,其結(jié)果分別為:系統(tǒng)組件x2發(fā)生故障時(shí)導(dǎo)致出現(xiàn)的系統(tǒng)無(wú)關(guān)組件系統(tǒng)組件x3發(fā)生故障時(shí)導(dǎo)致出現(xiàn)的系統(tǒng)無(wú)關(guān)組件系統(tǒng)組件x4發(fā)生故障時(shí)導(dǎo)致出現(xiàn)的系統(tǒng)無(wú)關(guān)組件
步驟7)將上述的計(jì)算結(jié)果代入無(wú)關(guān)性覆蓋模型表達(dá)式中(xi表示組件xi的未覆蓋故障的概率),其結(jié)果為:
上述系統(tǒng)無(wú)關(guān)性覆蓋模型ICM的構(gòu)建方法為:
71)取系統(tǒng)表達(dá)式f的最小割集(基于覆蓋故障)
72)取由系統(tǒng)組件xi發(fā)生覆蓋故障導(dǎo)致的無(wú)關(guān)性組件
73)對(duì)所述步驟72)的結(jié)果做取非操作得到即非無(wú)關(guān)組件;
74)取系統(tǒng)組件xi未覆蓋故障概率xi和所述步驟73)中非無(wú)關(guān)組件的合取式
75)重復(fù)步驟74)取整個(gè)系統(tǒng)中所有組件的析取式
76)將所述步驟71)的結(jié)果與步驟75)的結(jié)果析取即為無(wú)關(guān)性覆蓋模型表達(dá)式
步驟8)針對(duì)無(wú)關(guān)性覆蓋模型表達(dá)式ficm構(gòu)建如上述三元決策圖,如圖6所示。構(gòu)建三元決策圖的具體方法如下:
81)確定三元決策圖的三個(gè)邏輯分支代表:無(wú)故障的狀態(tài),發(fā)生覆蓋失效狀態(tài),發(fā)生未覆蓋的失效狀態(tài)(三種狀態(tài)基于傳統(tǒng)的不完全錯(cuò)誤覆蓋模型)分別稱為“0”邊,“1”邊,“2”邊。
82)確定三元決策圖有三個(gè)基本事件分別對(duì)應(yīng)無(wú)關(guān)性覆蓋模型表達(dá)式的三種狀態(tài):覆蓋故障,未覆蓋故障和非覆蓋故障。這三種基本事件即為當(dāng)前三元決策圖所對(duì)應(yīng)的三種最小子圖,其最小子圖的葉子取0,1兩種值,1表示對(duì)應(yīng)當(dāng)前狀態(tài)發(fā)生,0表示對(duì)應(yīng)當(dāng)前狀態(tài)未發(fā)生,如圖1從左到右依次為:覆蓋故障最小子圖、未覆蓋故障最小子圖、非覆蓋故障最小子圖。
83)確定三元決策圖的一般中間結(jié)點(diǎn)F如圖2所示,表示當(dāng)前系統(tǒng)狀態(tài),其中X表示當(dāng)前三元決策圖所對(duì)應(yīng)的布爾表達(dá)式中某個(gè)變量x,與系統(tǒng)組件xi相對(duì)應(yīng),三條邊從左到右分別表示當(dāng)X未發(fā)生故障,發(fā)生覆蓋故障,發(fā)生未覆蓋故障時(shí)所對(duì)應(yīng)的子圖(布爾子表達(dá)式),即當(dāng)前系統(tǒng)組件xi的三種狀態(tài)F0,F(xiàn)1,F(xiàn)2。
84)對(duì)三元決策圖所對(duì)應(yīng)的故障樹(shù)做深度優(yōu)先搜索,得到一組故障樹(shù)結(jié)點(diǎn)(對(duì)應(yīng)布爾表達(dá)式的變量)的排列順序并從左到右賦索引值0,1,2....n,根據(jù)這個(gè)索引值合并三元決策圖,其規(guī)則為兩個(gè)三元決策圖中索引值較小的結(jié)點(diǎn)即為合并后新三元決策圖的結(jié)點(diǎn),然后結(jié)點(diǎn)索引值較小的三元決策圖的葉子結(jié)點(diǎn)分別與索引值較大的三元決策圖進(jìn)行二次合并,如此反復(fù)直到最后出現(xiàn)最小子圖,與最小子圖的葉子結(jié)點(diǎn)合并規(guī)則為普通布爾與或運(yùn)算如圖3(Y也為變量,與系統(tǒng)組件xi相對(duì)應(yīng),X索引值小于Y)。如果兩邊索引相同,則合并后新的三元決策圖的結(jié)點(diǎn)取原來(lái)任意的三元決策圖結(jié)點(diǎn),兩個(gè)三元決策圖的分支進(jìn)行對(duì)應(yīng)的合并,即左邊三元決策圖“0”分支葉子結(jié)點(diǎn)合并右邊三元決策圖的“0”分支的葉子結(jié)點(diǎn),同理合并“1”分支,合并“2”分支,然后再根據(jù)索引值大小繼續(xù)合并直到最終葉子結(jié)點(diǎn)均為“0”,“1”。
85)其三元決策圖構(gòu)造思想始終基于無(wú)關(guān)覆蓋模型。
步驟9)如果要兼容傳統(tǒng)的不完全覆蓋模型則可以令(i=1,2,3,4),表明系統(tǒng)一直處于關(guān)聯(lián)狀態(tài)任何狀態(tài)下不存在無(wú)關(guān)性組件。則該系統(tǒng)組件xi的不完全覆蓋模型表達(dá)式則變?yōu)椋簶?gòu)建如上述三元決策圖,如圖7所示。
設(shè)組件xi發(fā)生覆蓋故障的概率發(fā)生未覆蓋故障的概率xi=0.01。則上述系統(tǒng)基于無(wú)關(guān)性覆蓋的不可靠性計(jì)算結(jié)果,基于傳統(tǒng)不完全錯(cuò)誤無(wú)蓋的不可靠性計(jì)算結(jié)果(與傳統(tǒng)的SEA方法計(jì)算結(jié)果一致)見(jiàn)表1。
表1基于無(wú)關(guān)性覆蓋與傳統(tǒng)SEA方法計(jì)算不可靠性結(jié)果對(duì)比
該實(shí)例可以拓展到大型容錯(cuò)系統(tǒng)的可靠性分析,并通過(guò)計(jì)算機(jī)軟件,進(jìn)行快速分析,為分析人員提供輔助,提高分析效率。
以上所述,僅為發(fā)明部分具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本領(lǐng)域的人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍內(nèi)。
本說(shuō)明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。