亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        結(jié)合故障邏輯關(guān)系的極小沖突集求解方法

        2020-07-18 03:30:22歐陽(yáng)丹彤徐旖旎張立明
        關(guān)鍵詞:枚舉剪枝調(diào)用

        歐陽(yáng)丹彤 高 菡 徐旖旎 張立明

        1(吉林大學(xué)軟件學(xué)院 長(zhǎng)春 130012)2(吉林大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 長(zhǎng)春 130012)3(符號(hào)計(jì)算與知識(shí)工程教育部重點(diǎn)實(shí)驗(yàn)室(吉林大學(xué)) 長(zhǎng)春 130012)

        極小沖突集問(wèn)題是基于模型診斷(model-based diagnosis, MBD)[1]中的重要組成部分,基于模型診斷一直是人工智能領(lǐng)域中一個(gè)熱門(mén)的研究問(wèn)題.Reiter[2]于1987年首次提出了模型診斷方法,首先生成所有極小沖突識(shí)別,然后生成候選極小碰集,最終得到所有診斷解;Genesereth[3]提出DART(device-independent diagnostic program)方法來(lái)進(jìn)行沖突識(shí)別,并使用獨(dú)立于設(shè)備的語(yǔ)言來(lái)描述設(shè)備;2002年Haenni[4]提出使用歸結(jié)的方法生成沖突集,用于在基于邏輯的論證或誘導(dǎo)推理的背景下計(jì)算論證或解釋;欒尚敏等人[5]提出極小沖突集問(wèn)題可以根據(jù)系統(tǒng)結(jié)構(gòu)特征進(jìn)行求解,進(jìn)而由極小沖突求得診斷解;方敏[6]結(jié)合工業(yè)控制系統(tǒng),提出先離線(xiàn)識(shí)別極小沖突候選,后根據(jù)測(cè)量和約束,在線(xiàn)確定極小沖突的方法;張立明等人[7]利用ATMS(assumption-based truth maintenance system)將所有極小沖突集導(dǎo)出,并將其分為2類(lèi)極小沖突.經(jīng)過(guò)對(duì)沖突集問(wèn)題的深入研究,國(guó)內(nèi)外學(xué)者發(fā)現(xiàn)通過(guò)集合枚舉樹(shù)(set enumeration tree, SE-Tree)求解極小沖突集是一種很高效的方法,將元件集合映射為樹(shù)節(jié)點(diǎn),進(jìn)而遍歷整棵枚舉樹(shù)進(jìn)行沖突判別;Hou[8]在1994年提出的CS-Tree(conflict set tree),是最早利用枚舉樹(shù)求解極小沖突集的方法,,但其剪枝策略不能保證算法的完備性.

        隨著SAT(propositional satisfiability problem)求解器應(yīng)用研究的擴(kuò)展,部分學(xué)者發(fā)現(xiàn)可以把求解沖突集問(wèn)題轉(zhuǎn)化為命題可滿(mǎn)足問(wèn)題.沖突元件集從命題可滿(mǎn)足問(wèn)題角度可以解釋為:在該集合內(nèi)所有元件均假設(shè)為正常行為的模式下,不能找到一組賦值使得系統(tǒng)是一致可滿(mǎn)足的.于是可以調(diào)用SAT求解器判斷該集合中元件均正常的邏輯表示公式是否與系統(tǒng)是可滿(mǎn)足的.首次使用SAT求解器求解沖突集問(wèn)題的是趙相福等人提出的HSSE-Tree(hitting set on set enumeration tree)[10],CSSE-Tree(conflict set on set enumeration tree)[10],CSISE-Tree(conflict set on inverse set enumeration tree)[11]方法;陳榮等人[12]在求解診斷問(wèn)題時(shí),先調(diào)用SAT求解器識(shí)別沖突后,由所有沖突集的極小碰集得到診斷解;劉伯文等人[13]提出反向深度遍歷SE-Tree,并用SAT求解器判別沖突集的方法CSRDSE;徐旖旎等人[14]在對(duì)比正常輸出與實(shí)際輸出情況后,結(jié)合故障輸出特征提出MCS -SFFO(minimal conflict set-structural feature of fault output)方法,將故障無(wú)關(guān)元件集及其子集剪枝,求解效率提高.

        本文在對(duì)MCS -SFFO方法分析的基礎(chǔ)上,提出結(jié)合故障邏輯關(guān)系的有解剪枝以及無(wú)解剪枝方法MCS -FLR(fault logic relationship).提出單元件非沖突集定理以及非極小沖突定理:?jiǎn)卧隙际欠菦_突的、故障輸出相關(guān)元件集的真超集都是沖突集,且都不是極小沖突集.因此,對(duì)故障輸出相關(guān)元件集的嚴(yán)格超集都不需要進(jìn)行沖突判定,可以直接將其加入沖突集集合中.MCS -FLR方法在MCS -SFFO方法的基礎(chǔ)上進(jìn)一步對(duì)SE-Tree進(jìn)行單元件無(wú)解空間以及故障輸出相關(guān)元件真超集有解空間的剪枝,提高了沖突集求解效率、節(jié)省求解時(shí)間.

        1 預(yù)備知識(shí)

        本節(jié)首先介紹診斷的相關(guān)定義,然后介紹命題可滿(mǎn)足問(wèn)題的基本概念,并將診斷相關(guān)問(wèn)題轉(zhuǎn)化為命題可滿(mǎn)足問(wèn)題.

        定義1.診斷系統(tǒng)[15].一個(gè)系統(tǒng)可以形式地定義為一個(gè)三元組(SD,COMPS,OBS),其中:SD(system description)代表系統(tǒng)描述,是一階謂詞公式的集合;COMPS(system components)代表系統(tǒng)中元件的集合,是一個(gè)有限常量集合;而OBS(system observation)代表一觀測(cè)集合,是一階謂詞公式構(gòu)成的有限集合.在下面我們使用一元謂詞AB(·)表示“Abnormal”,AB(c)為真當(dāng)且僅當(dāng)c反常,其中c∈COMPS.

        定義2.基于一致性診斷[15].設(shè)一元件集合Δ?COMPS,稱(chēng)Δ為關(guān)于(SD,COMPS,OBS)的一個(gè)基于一致性診斷,如果SD∪OBS∪{AB(c)|c∈Δ}∪{AB(c)|c∈COMPS-Δ}是一致的.

        定義3.沖突集[13].系統(tǒng)(SD,COMPS,OBS)的沖突集CS是1個(gè)元件集合{c1,c2,…,ck}?COMPS,使得SD∪OBS∪{AB(c1),AB(c2),…,AB(ck)}不一致.

        一個(gè)元件集如果是極小沖突集,則其任意真子集都不是沖突集[10].

        推論1.當(dāng)元件集C是沖突集時(shí),C除自身以外的任意超集都不是極小的沖突集[10].

        推論2.當(dāng)元件集C不是沖突集時(shí),C的任意真子集與C具有同樣的沖突性質(zhì),也都不是沖突集[13].

        SE-Tree是求解極小沖突集的基本邏輯存儲(chǔ)結(jié)構(gòu).利用SE-Tree求解極小沖突集的問(wèn)題與元件個(gè)數(shù)呈指數(shù)級(jí)相關(guān),所以對(duì)樹(shù)中每一個(gè)節(jié)點(diǎn)都調(diào)用SAT求解器判別沖突顯然是效率低下的,為了縮減搜索空間進(jìn)一步減少求解次數(shù),結(jié)合上述沖突集的概念以及推論可知,對(duì)沖突集的所有真超集以及非沖突集的所有真子集,可不必再對(duì)其進(jìn)行沖突判定.

        在命題可滿(mǎn)足問(wèn)題中,用xi(i=1,2,…,n)表示布爾變量.xi及xi稱(chēng)作稱(chēng)作變量xi的正文字及負(fù)文字.X={x1,x2,…,xn}表示變量的集合.Ci(i=1,2,…,m)表示子句,每一個(gè)子句是由一組文字組成的析取式.Φ代表CNF公式,CNF公式是由子句Ci的合取構(gòu)成,即合取范式CNF:Φ=C1∧C2∧…∧Cr,而命題可滿(mǎn)足問(wèn)題就是尋找是否存在一組X的賦值,使其滿(mǎn)足CNF.命題可滿(mǎn)足問(wèn)題又稱(chēng)作SAT問(wèn)題,即判斷一個(gè)命題公式Φ是不是可以被滿(mǎn)足的.

        定義4.命題可滿(mǎn)足問(wèn)題(propositional satis-fiability problem, SAT)[15].針對(duì)給定的一個(gè)命題公式Φ,X={x1,x2,…,xm}是該公式的變量集合,SAT問(wèn)題可以描述為是否存在1組X的賦值使得給定的命題公式Φ的取值為真.如果能找到至少一組這樣的賦值,那么我們則稱(chēng)命題公式Φ是可滿(mǎn)足的,若不存在這樣的賦值,則該命題公式是不可滿(mǎn)足的.

        那么,要判斷一個(gè)元件集合S是否是某系統(tǒng)的一個(gè)沖突集,只需要假設(shè)S中的元件都為正常行為模式,將S中每一個(gè)元件正常狀態(tài)的行為描述、與該元件相關(guān)的系統(tǒng)描述以及觀測(cè)描述一起編寫(xiě)成一個(gè)CNF文件,之后調(diào)用SAT求解器對(duì)當(dāng)前CNF文件進(jìn)行沖突判定.如果SAT求解器得到不可滿(mǎn)足,那么S是系統(tǒng)的一個(gè)沖突解,反之S為非沖突解.

        2 MCS -SFFO方法

        本節(jié)主要介紹當(dāng)前求解極小沖突集問(wèn)題效率較高的MCS -SFFO方法,并給出算法的一些相關(guān)概念與基本實(shí)現(xiàn)思想.

        定義5.集合枚舉樹(shù)[16].S為一個(gè)集合,將S中各個(gè)元素不重復(fù)的所有組合映射為樹(shù)中的節(jié)點(diǎn),并以樹(shù)的形式按一定順序枚舉排列出來(lái),稱(chēng)這樣的樹(shù)為集合枚舉樹(shù).

        定義6.故障輸出元件[14].對(duì)于一個(gè)電路的診斷系統(tǒng){SD,COMPS,OBS},若存在元件c∈COMPS,c沒(méi)有后繼元件,且c的輸出是系統(tǒng)的輸出且是故障輸出,即該輸出與系統(tǒng)不一致,c為該系統(tǒng)的故障輸出元件.

        定義7.故障輸出相關(guān)元件集[14].稱(chēng)Rel為系統(tǒng)的一個(gè)故障輸出相關(guān)元件集,當(dāng)且僅當(dāng)Rel中每一個(gè)元件的輸出都會(huì)傳播到故障輸出(包含故障輸出元件c).

        定義8.故障輸出無(wú)關(guān)元件集[14].Rel為系統(tǒng)的一個(gè)故障輸出相關(guān)元件集,稱(chēng)集合COMPS-Rel為系統(tǒng)的故障輸出無(wú)關(guān)元件集.

        MCS -SFFO方法提出與診斷系統(tǒng)故障輸出無(wú)關(guān)的元件集合的所有子集都不是沖突集,所以對(duì)SE-Tree中與故障輸出無(wú)關(guān)的電路元件的所有組合進(jìn)行剪枝,縮小了SAT求解問(wèn)題的規(guī)模.下面給出一些求解極小沖突集的相關(guān)概念及SE-Tree遍歷節(jié)點(diǎn)的剪枝規(guī)則.

        設(shè)Node為SE-Tree中當(dāng)前正在遍歷的節(jié)點(diǎn),以下為剪枝規(guī)則及標(biāo)識(shí)規(guī)則.

        剪枝規(guī)則1[13].若Node是沖突集且Node是其父節(jié)點(diǎn)的最左孩子節(jié)點(diǎn),則向上回溯判斷其父節(jié)點(diǎn);否則,跳轉(zhuǎn)判斷Node的下一個(gè)兄弟節(jié)點(diǎn)的最左孩子節(jié)點(diǎn);若Node沒(méi)有下一個(gè)兄弟節(jié)點(diǎn),則跳轉(zhuǎn)判斷下一個(gè)葉節(jié)點(diǎn).

        剪枝規(guī)則2[14].若Node不是沖突集,且Node是由其子孫節(jié)點(diǎn)回溯的節(jié)點(diǎn),(此時(shí)Node的最左孩子節(jié)點(diǎn)為極小沖突集)則跳轉(zhuǎn)判斷Node的左側(cè)下一個(gè)孩子節(jié)點(diǎn)的最左孩子節(jié)點(diǎn);否則,跳轉(zhuǎn)判斷Node的下一個(gè)兄弟節(jié)點(diǎn);若Node沒(méi)有下一個(gè)兄弟節(jié)點(diǎn)則跳轉(zhuǎn)至以同層非同根節(jié)點(diǎn)的最左孩子節(jié)點(diǎn).

        剪枝規(guī)則3[13].在對(duì)Node判斷其是否沖突之前,先判斷Node是否為非沖突集合簇中集合的子集.若是,則其一定是非沖突的,直接調(diào)用剪枝規(guī)則2跳轉(zhuǎn)判斷即可;否則,對(duì)Node調(diào)用SAT求解器.

        標(biāo)示規(guī)則[13].當(dāng)Node是沖突集時(shí),將Node加入到?jīng)_突集合簇中,將其標(biāo)示“0”,并將沖突集合簇中Node的超集標(biāo)示“1”.

        下面給出MCS -SFFO方法的偽代碼.

        算法1.MCS -SFFO.

        輸入:SD.cnf、OBS.cnf、故障輸出相關(guān)元件集onABCompS、故障輸出無(wú)關(guān)元件集unOnABCompS;

        輸出:極小沖突集合MCSRes.

        ① 初始化SE-Tree,CSRes=?,UCSRes=?,Node=?;

        ②Node=SE-Tree的最左節(jié)點(diǎn);

        ③ While (Node≠?)

        ④ If (Node?unOnABCompS)

        ⑤ Break;

        ⑥ Else

        ⑦ If (Node是UCSRes元素的子集)

        ⑧ 剪枝規(guī)則3;

        ⑨ Else

        ⑩ If (Node是沖突集)

        3 MCS -FLR方法

        MCS -SFFO方法通過(guò)對(duì)故障輸出無(wú)關(guān)元件組合的所有子集進(jìn)行剪枝減少了調(diào)用SAT求解器次數(shù),使問(wèn)題規(guī)模變小.結(jié)合實(shí)際問(wèn)題進(jìn)一步分析,與故障輸出端相關(guān)的電路元件集的超集都是沖突集,不必對(duì)其進(jìn)行可滿(mǎn)足性判斷,且故障輸出相關(guān)元件真超集一定不是極小沖突集,故可以將故障輸出相關(guān)元件真超集剪枝,進(jìn)一步減少SAT求解器調(diào)用次數(shù).因此,提出結(jié)合故障邏輯關(guān)系的MCS -FLR方法對(duì)MCS -SFFO方法改進(jìn).

        定理1.單元件非沖突集定理:在多元件電路中,任何單元件集合都不是沖突集.

        證明.ci為診斷多元件電路中的任一單元件,ci∈COMPS.首先,根據(jù)沖突集的定義,判斷ci是否為沖突集,即判斷系統(tǒng)中SD∪OBS∪{AB(ci)}是否一致.然后將ci在系統(tǒng)中的觀測(cè)描述、ci元件正常行為的子句描述構(gòu)成CNF文件,最后調(diào)用SAT求解器進(jìn)行求解.已知在保證ci為正常行為的情況下,多元件電路中其他元件可以是故障模式,即存在一組賦值使CNF公式取值為真,SAT返回可滿(mǎn)足,進(jìn)而可知SD∪OBS∪{AB(ci)}是一致的,元件集非沖突.得證單元件集合都不是沖突集.

        證畢.

        定理2.非極小沖突集定理:系統(tǒng)的故障輸出相關(guān)元件集的任意超集(包含自身)都是沖突集.

        證明. 反證法.Rel為系統(tǒng)的一個(gè)故障相關(guān)元件集,ARel是Rel的任意一個(gè)嚴(yán)格超集.假設(shè)ARel不是沖突集,則根據(jù)推論2可以得出Rel也不是沖突集.已知Rel是故障相關(guān)的,即Rel是在所有元件正常情況下,與系統(tǒng)觀測(cè)及系統(tǒng)描述的輸出不一致的元件集合.由沖突集定義可知,Rel一定是沖突集.由此推出矛盾,假設(shè)不成立.得出ARel為沖突集,即故障相關(guān)元件集Rel的任意超集(包括自身)都是沖突集.進(jìn)而可推出,Rel的任意真超集都不是極小沖突集.

        證畢.

        求解故障輸出無(wú)關(guān)元件集方法是通過(guò)給定的CNF文件,先調(diào)用SAT求解器求得預(yù)計(jì)的正常輸出,然后根據(jù)輸入將實(shí)際輸出與正常輸出中的元素一一比較,與正常輸出不一致的輸出即為故障輸出端,進(jìn)而可以從故障輸出的輸入推出與之相聯(lián)系的元件集合.

        Fig. 1 C17 circuit圖1 C17電路

        例1.在圖1所示的C17電路中,輸出端口12異常,端口13正常,如圖1所示,與13端相聯(lián)系的元件集合為{c2,c3,c5,c6},因?yàn)樗鼈兊妮敵龆紩?huì)傳播到13端.其中c2,c3的輸出既傳播到12端又傳播到13端,故無(wú)法確定是否為故障輸出無(wú)關(guān),而c5與c6元件的輸出僅傳播到13端,則可以明確判斷{c5,c6}為故障輸出無(wú)關(guān)元件集.故根據(jù)定義9可知{c1,c2,c3,c4}為故障輸出相關(guān)集合.由此我們可以得到,{c5,c6}是非沖突的,且它的任意子集都是非沖突集,{c1,c2,c3,c4}是沖突的,根據(jù)定理2可知,它的任意超集也是沖突集.對(duì)于已經(jīng)明確該集合是否沖突時(shí),不必再調(diào)用SAT求解器對(duì)其求解.

        在同一實(shí)例上分別執(zhí)行MCS -SFFO方法及MCS -FLR方法,將通過(guò)這2種方法剪枝后的待遍歷節(jié)點(diǎn)數(shù)進(jìn)行對(duì)比來(lái)說(shuō)明MCS -FLR方法求解效率的提高.已知在當(dāng)前系統(tǒng)中,有元件集{c1,c2,c3,c4,c5},根據(jù)故障輸出可以得到,其中{c2,c4}為故障輸出相關(guān)元件集,{c1,c3,c5}為故障輸出無(wú)關(guān)元件集.

        圖2為完整的SE-Tree,非空節(jié)點(diǎn)31個(gè).圖3為MCS -SFFO方法將故障輸出無(wú)關(guān)集合{c1,c3,c5}及其子集剪枝后的枚舉樹(shù),非空節(jié)點(diǎn)23個(gè).圖4為MCS -FLR方法在MCS -SFFO方法基礎(chǔ)上將單元件集合{c2}及{c4}、故障輸出相關(guān)集合{c2,c4}真超集剪枝后的枚舉樹(shù),非空節(jié)點(diǎn)15個(gè).圖2及圖3是未執(zhí)行剪枝規(guī)則前初始化的枚舉樹(shù).由此可以看出,MCS -FLR方法在MCS -SFFO方法的基礎(chǔ)上減少了近12的待遍歷節(jié)點(diǎn),進(jìn)而減少大量求解次數(shù),使得求解效率更高.下面給出MCS -FLR方法的偽代碼.

        Fig. 2 SE-Tree圖2 集合枚舉樹(shù)

        Fig. 3 SE-Tree after pruning by MCS -SFFO method圖3 MCS -SFFO方法剪枝后的SE-Tree

        Fig. 4 SE-Tree after pruning by MCS -FLR method圖4 MCS -FLR方法剪枝后的SE-Tree

        算法2.MCS -FLR.

        輸入:系統(tǒng)觀測(cè)文件circuit.cnf、故障相關(guān)元件集合Rel、故障輸出無(wú)關(guān)元件集合UnRel;

        輸出:極小沖突集合MCSes.

        ① 初始化沖突集CS=?,非沖突集UCS=?,當(dāng)前遍歷節(jié)點(diǎn)Node=?;

        ② 生成集合{Rel[0],…,Rel[N1-1],UnRel[0],…,UnRel[N2-1]}的集合枚舉樹(shù)CSTree.其中,NUM1是故障輸出相關(guān)的元素個(gè)數(shù),NUM2是故障輸出無(wú)關(guān)的元素個(gè)數(shù);

        ③Node賦值為CSTree的最左節(jié)點(diǎn);

        ④ While (Node≠?)

        ⑤ If (Node是故障輸出無(wú)關(guān)集合的子集‖Node為單元件集合)

        ⑥ 將Node及其子集加入到UCS中;

        ⑦ Break;

        ⑧ EndIf

        ⑨ If (Node是故障輸出相關(guān)集合的超集)

        ⑩ 將Node及其超集加入到CS中;

        算法2是以輸入的circuit.cnf,Rel,UnRel構(gòu)造集合枚舉樹(shù),并用CS存放沖突集,UCS存放非沖突集(行①),Node為當(dāng)前遍歷的枚舉樹(shù)中的最左節(jié)點(diǎn)(行③).當(dāng)枚舉樹(shù)中仍有節(jié)點(diǎn)沒(méi)有被遍歷時(shí),對(duì)當(dāng)前Node節(jié)點(diǎn)進(jìn)行判斷,分為4種情況:1)若為故障輸出無(wú)關(guān)元件集子集或單元件集合,則其可滿(mǎn)足性已知,不必再判斷(行⑤~⑧);2)若為故障輸出相關(guān)集合的超集,則直接將其加入沖突集合CS,調(diào)用剪枝規(guī)則1(行⑨~);3)若為非沖突集的子集,則不進(jìn)行判斷,直接將其加入U(xiǎn)CS,按照剪枝規(guī)則3對(duì)其賦值(行);4)若以上3種情況都不滿(mǎn)足,則利用SAT求解器判斷,若其是沖突集,按照剪枝規(guī)則1對(duì)其賦值(行~),否則若其是非沖突集,按照剪枝規(guī)則2對(duì)其賦值(行~).SE-Tree遍歷完成后,將CS中所有標(biāo)示為“0”的節(jié)點(diǎn)加入MCSes,得到所有極小沖突集(行~).

        根據(jù)算法2的描述可知,MCS -FLR方法為完備算法,除了被剪枝掉的節(jié)點(diǎn),其余節(jié)點(diǎn)均被遍歷到,且在整棵SE-Tree遍歷完成之后會(huì)得到所有的極小沖突集.

        MCS -FLR方法與MCS -SFFO算法的主要區(qū)別在于MCS -SFFO方法是結(jié)合故障輸出無(wú)關(guān)集合特征的無(wú)解剪枝,MCS -FLR方法是在MCS -SFFO方法的基礎(chǔ)上,又結(jié)合故障輸出相關(guān)集合邏輯關(guān)系新增有解及無(wú)解剪枝.MCS -FLR方法提出了非極小沖突集定理以及單元件非沖突定理,將大量單元件集合和故障輸出相關(guān)元件真超集剪枝,不必對(duì)故障輸出相關(guān)元件的真超集及單元件集合調(diào)用SAT求解器,使得調(diào)用SAT求解器次數(shù)大大減少,求解效率明顯提高.

        4 實(shí)驗(yàn)結(jié)果

        本節(jié)將對(duì)MCS -FLR方法與MCS -SFFO方法進(jìn)行比較,并給出2種方法在同樣測(cè)試用例下的實(shí)驗(yàn)結(jié)果.實(shí)驗(yàn)平臺(tái)為64 b Ubantu 16.04.3 LTS系統(tǒng),Intel?CoreTMi5-3337U CPU@1.80 GHz×4.MCS -FLR方法與MCS -SFFO方法同時(shí)調(diào)用的求解器均為Picosat[17].

        本次測(cè)試的用例[10-11]包括c17,FullAdd_1,FullAdd_2,Polybox_5,Polybox_9,FullAdd_3,FullAdd_4,FullAdd_8.實(shí)驗(yàn)對(duì)每一個(gè)電路設(shè)置多觀測(cè)進(jìn)行測(cè)試,同時(shí)每組測(cè)試都存在沖突.在使用MCS -FLR方法及MCS -SFFO方法求解時(shí),首先根據(jù)CNF文件獲取系統(tǒng)描述和系統(tǒng)觀測(cè),求出故障輸出相關(guān)元件集Rel與故障輸出無(wú)關(guān)元件集UnRel,然后將其作為輸入構(gòu)造SE-Tree,作為實(shí)現(xiàn)MCS -FLR方法以及MCS -SFFO方法求解極小沖突集的預(yù)處理.

        表1中列1為實(shí)例名稱(chēng),列2,3分別是MCS -SFFO方法與MCS -FLR方法在求解用例時(shí)平均調(diào)用SAT求解器的次數(shù)(多個(gè)不同故障電路測(cè)試用例調(diào)用求解器的總次數(shù)故障電路個(gè)數(shù)),其中每個(gè)輸出端口都會(huì)被設(shè)定為故障輸出,分別求得一個(gè)故障電路.列4是MCS -SFFO方法與MCS -FLR方法調(diào)用求解器次數(shù)之差,差值越大說(shuō)明節(jié)省的求解器調(diào)用次數(shù)越多,效率提高越多.列5是MCS -FLR方法較MCS -SFFO方法減少的求解次數(shù)百分比,即Difference Ratio=(列2-列3)列2×100%.以C17電路為例說(shuō)明,MCS -FLR方法節(jié)省了MCS -SFFO方法22.884 4%的求解器次數(shù).可以看出,在所有測(cè)試用例中MCS -FLR方法都較MCS -SFFO方法有提高,求解器次數(shù)有或多或少的減少,甚至在實(shí)驗(yàn)效果較好的用例中(如FullAdd_1,Polybox_5)中,MCS -FLR方法節(jié)省了MCS -SFFO方法13的求解器調(diào)用次數(shù),求解效率大大提高.不同的電路結(jié)構(gòu)以及同一電路中設(shè)置故障輸出端口的不同都是影響MCS -FLR方法優(yōu)化程度的因素.例如在FullAdd_5電路中,故障輸出端口的相關(guān)元件個(gè)數(shù)較多,可剪枝的故障輸出相關(guān)元件真超集的個(gè)數(shù)較少,故效率提高不明顯.在FullAdd_1電路中,由于故障輸出端口的相關(guān)元件個(gè)數(shù)較少,所以剪枝掉的故障輸出相關(guān)元件真超集的個(gè)數(shù)較多,求解效率提高明顯.

        Table 1 Average Number of Calls to SAT Solver and its Difference Ratio 表1 平均調(diào)用SAT求解器次數(shù)及其加速比

        表2是MCS -SFFO方法與MCS -FLR方法求解極小沖突集的時(shí)間對(duì)比結(jié)果.列1為實(shí)例名稱(chēng);列2為測(cè)試的組數(shù),即賦值的次數(shù),例如對(duì)于C17電路來(lái)說(shuō),共有5個(gè)輸入端口,則有25,共計(jì)32組賦值.為了保證測(cè)試的時(shí)限,將測(cè)試次數(shù)作為輸入?yún)?shù)來(lái)控制算法的執(zhí)行,例如FullAdd_5電路中,輸入端口共有10個(gè),即應(yīng)有210,共計(jì)1 024組賦值,程序運(yùn)行時(shí)間過(guò)長(zhǎng),可以截取一部分結(jié)果作為比較的衡量,故設(shè)置測(cè)試次數(shù)為50;列3,4分別為MCS -SFFO方法及MCS -FLR方法的求解時(shí)間,本文所有數(shù)據(jù)均保留4位小數(shù);列5為MCS -SFFO方法與MCS -FLR方法的加速比,是列3求解時(shí)間與列4求解時(shí)間的比值.加速比越大說(shuō)明時(shí)間效率提高越多;列6為差值加速比,即使用MCS -FLR方法減少了MCS -SFFO方法的時(shí)間占MCS -SFFO方法總時(shí)間的比,例如在FullAdd_2用例中,MCS -FLR方法減少了MCS -SFFO方法41.666 7%的時(shí)間使用.顯然,節(jié)省求解器次數(shù)越多的用例兩項(xiàng)加速比也越高,MCS -FLR方法求解極小沖突集的效率也越高.但也存在特殊情況,比如在Polybox_9用例中,節(jié)省的求解器次數(shù)百分比為9.881 8%,但節(jié)省時(shí)間百分比卻高達(dá)54.545 5%,這是因?yàn)镾AT求解器對(duì)元素個(gè)數(shù)較多的子集判斷其是否滿(mǎn)足時(shí)會(huì)更加耗時(shí).

        Table 2 Running Time and its Difference Ratio表2 求解時(shí)間及其差值加速比

        5 結(jié)束語(yǔ)

        極小沖突集問(wèn)題是模型診斷問(wèn)題中的重要分支.MCS -SFFO方法是目前求解極小沖突集效率較好的方法.本文在深入研究分析MCS -SFFO方法無(wú)解剪枝方法的基礎(chǔ)上,結(jié)合故障的邏輯關(guān)系,在SE-Tree上做進(jìn)一步的無(wú)解空間以及大量有解空間的剪枝.提出針對(duì)單元件進(jìn)行無(wú)解剪枝以及對(duì)故障輸出相關(guān)元件集的真超集進(jìn)行有解剪枝的MCS -FLR方法.該方法首先提出了單元件非沖突集定理,推證出單元件構(gòu)成的集合節(jié)點(diǎn)一定是非沖突的,故不進(jìn)行可滿(mǎn)足性判斷.之后,提出非極小沖突定理,即系統(tǒng)故障輸出相關(guān)元件集的超集都是沖突集,且其真超集都非極小沖突,根據(jù)此定理將故障輸出相關(guān)元件集的真超集剪枝,直接加入沖突集中,減少大量求解器調(diào)用次數(shù),降低了算法的時(shí)間消耗.實(shí)驗(yàn)結(jié)果表明:在故障輸出相關(guān)元件占元件總數(shù)較大時(shí),剪枝次數(shù)較少,效果一般,但調(diào)用SAT求解器次數(shù)已明顯減少.若故障輸出相關(guān)元件占元件總數(shù)比例較小時(shí),其超集個(gè)數(shù)較多,有解空間剪枝次數(shù)較多,求解器效率對(duì)比與MCS -SFFO方法提升近13,算法效率提高明顯.并且,在大規(guī)模電路中,有解剪枝的節(jié)點(diǎn)個(gè)數(shù)大幅增加,MCS -FLR方法有更好的剪枝效果.

        猜你喜歡
        枚舉剪枝調(diào)用
        人到晚年宜“剪枝”
        基于理解性教學(xué)的信息技術(shù)教學(xué)案例研究
        速讀·上旬(2022年2期)2022-04-10 16:42:14
        一種高效的概率圖上Top-K極大團(tuán)枚舉算法
        基于YOLOv4-Tiny模型剪枝算法
        核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        剪枝
        基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
        基于太陽(yáng)影子定位枚舉法模型的研究
        一種面向不平衡數(shù)據(jù)分類(lèi)的組合剪枝方法
        热の国产AV| 国际无码精品| 精品视频一区二区三区在线观看| 激情另类小说区图片区视频区| 国产精品久久婷婷免费观看| 中文字幕乱码亚洲无线精品一区| 色综合久久久久综合99| 亚洲一区二区三区熟妇| 国产福利97精品一区二区| 全免费a级毛片| 男人和女人做爽爽免费视频| 亚洲精品中文字幕一二三四| 亚洲中文字幕无码不卡电影| 久久99精品久久久久久| 亚洲av日韩综合一区二区三区| 我的极品小姨在线观看| 亚洲欧美日韩中文v在线| 最新亚洲精品国偷自产在线| 国产一区二区三区四区三区| 五月婷婷开心六月激情| 一区二区三区午夜视频在线观看 | 欧美精品无码一区二区三区| 亚洲一区二区三区厕所偷拍| 久久精品综合国产二区| 亚洲av第一页国产精品| 超碰日韩AV在线| 亚洲中文字幕在线综合| 中文字幕人妻被公喝醉在线| 国产一级片内射在线视频| 狠狠丁香激情久久综合| 欧美国产亚洲日韩在线二区| 爱情岛论坛亚洲品质自拍hd | 加勒比在线一区二区三区| 国产又爽又黄的激情精品视频| 97无码免费人妻超级碰碰夜夜| 日本高清一道本一区二区| 在线观看免费不卡网站| 中文字幕色婷婷在线视频| 日本一区不卡高清在线观看| 亚洲欧美日韩在线精品2021| 亚洲 无码 制服 丝袜 自拍 |