基于流量和可靠性的不確定圖關(guān)鍵邊評估方法
【專利摘要】本發(fā)明公開了一種基于流量和可靠性的不確定圖關(guān)鍵邊評估方法,該方法針對不確定圖中邊移除后對流量和可靠性產(chǎn)生的相對損失這一角度,將流量作為衡量關(guān)鍵邊的最關(guān)鍵因素,當流量一致時,將邊分為三類,分別計算將邊移除后剩余不確定圖的滿足最大流的子圖集合,再根據(jù)子圖集合計算分布可靠性和容量可靠性,最后依據(jù)分布可靠性和容量可靠性判斷邊的關(guān)鍵度。本發(fā)明綜合考慮流量、分布可靠性和容量可靠性來評估邊的關(guān)鍵度,時間復(fù)雜度更低,效率更高。
【專利說明】
基于流量和可靠性的不確定圖關(guān)鍵邊評估方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及不確定圖關(guān)鍵邊評估方法,尤其涉及一種基于流量和可靠性的不確定 圖關(guān)鍵邊評估方法。
【背景技術(shù)】
[0002] 現(xiàn)實世界中,網(wǎng)絡(luò)形式的系統(tǒng)隨處可見,例如,因特網(wǎng)、智能電網(wǎng)、科研合作網(wǎng)絡(luò)、 客戶關(guān)系網(wǎng)絡(luò)等。如何在復(fù)雜網(wǎng)絡(luò)環(huán)境下,保證網(wǎng)絡(luò)的可靠性與抗毀性,以及網(wǎng)絡(luò)中邊的重 要性評估是研究網(wǎng)絡(luò)的重要內(nèi)容。由節(jié)點重要度評估找出那些重要的關(guān)鍵節(jié)點,可以通過 重點保護這些關(guān)鍵節(jié)點提高整個網(wǎng)絡(luò)的可靠性。因此,對于網(wǎng)絡(luò)中節(jié)點的重要度進行評估 是一項有意義的工作。
[0003] 評估網(wǎng)絡(luò)中節(jié)點重要性的方法很多,最簡單的方法是以節(jié)點的連接度(節(jié)點連接 的邊數(shù))作為節(jié)點重要度的衡量標準,認為與節(jié)點相連的邊越多則該節(jié)點越重要。這種評估 方法具有片面性,有些重要的"關(guān)鍵節(jié)點"并不一定具有較大的連接度,比如只有兩條邊相 連的"橋節(jié)點"。2002年Girvan和Newman在介數(shù)中心度的基礎(chǔ)上,提出了邊介數(shù)(edge-betweenness) 概念, 通過計算網(wǎng)絡(luò) 中邊介數(shù)的大小來反映邊對網(wǎng)絡(luò)資源的傳輸能力和控制 能力的強弱,邊介數(shù)越大,表明網(wǎng)絡(luò)中任意節(jié)點對經(jīng)過該條邊的次數(shù)就越多,對網(wǎng)絡(luò)資源的 傳輸能力和控制能力就越強,在網(wǎng)絡(luò)中所起到的作用也就越大,因此,邊介數(shù)在一定程度上 反映了邊的重要程度;文獻《A method for finding the most vital node in communication networks》提出了一種基于生成樹數(shù)目的節(jié)點刪除法,定義最重要的節(jié)點 為去掉該節(jié)點使得生成樹數(shù)目最小的節(jié)點。節(jié)點刪除法的問題是如果多個節(jié)點的刪除都使 得網(wǎng)絡(luò)不連通,那么這些節(jié)點的重要度將是一致的,從而使得評估結(jié)果不精確。針對已有復(fù) 雜網(wǎng)絡(luò)節(jié)點重要性評估方法中片面強調(diào)節(jié)點的度而忽略了邊對與之相連節(jié)點的支撐作用 的缺陷,熊金石等人提出了節(jié)點度和邊介數(shù)共同作用下的評估數(shù)學模型,以體現(xiàn)邊對其端 節(jié)點的支撐作用。
【發(fā)明內(nèi)容】
[0004] 發(fā)明目的:本發(fā)明針對現(xiàn)有技術(shù)存在的問題,提供一種基于流量和可靠性的不確 定圖關(guān)鍵邊評估方法,該方法根據(jù)流量、分布可靠性和容量可靠性綜合評價邊的關(guān)鍵度,時 間復(fù)雜度更低,效率更高。
[0005] 技術(shù)方案:本發(fā)明所述的基于流量和可靠性的不確定圖關(guān)鍵邊評估方法,包括: [0006] (1)通過狀態(tài)劃分規(guī)則,獲取不確定圖的滿足最大流的所有子圖區(qū)間;
[0007] (2)計算將該不確定圖的各邊移除后,得到的各剩余不確定圖的最大流{f(ek)|k =1,…,m};其中,m為邊的總數(shù),a表示第k條邊,f(ek)表示將邊改移除后得到的剩余不確定 圖的最大流;
[0008] (3)根據(jù)計算得到的各剩余不確定圖的最大流,從小到大對相應(yīng)的邊進行排序;其 中,排序越靠前的邊關(guān)鍵度越高;
[0009] (4)若存在邊ei和邊ej對應(yīng)的剩余不確定圖的最大流f( ei)和f(ej)相等,則分別計 算邊ei和邊幻所在的子圖區(qū)間的總數(shù)3 1和&;
[0010] (5)若Si = T或Sj = L則采用STPA_CUT算法,計算將邊ei或ej移除后,剩余不確定圖 的滿足最大流的子圖集合setiSset j;其中,τ為滿足最大流的子圖區(qū)間的個數(shù);
[0011] (6)若0〈Si〈T或0〈Sj〈T,則采用B-CESA算法,計算將邊 ei或ej移除后,剩余不確定圖 的滿足最大流的子圖集合seti或set j;
[0012] (7)若51 = 0或& = 0,則將該不確定圖的滿足最大流的子圖區(qū)間作為子圖集合8^1 或setj;
[0013] (8)采用子圖集合seti和set j,分別計算移除邊ei和邊ej后,剩余不確定圖的分布 可靠性和容量可靠性;
[0014] (9)比較計算得到的分布可靠性和容量可靠性值,并將更小的分布可靠性值所對 應(yīng)的邊排序在前;當分布可靠性值一致時,將更小的容量可靠性所對應(yīng)的邊排序在前;從而 得到按照關(guān)鍵度從高到低排序的邊序列。
[0015]進一步的,步驟(4)具體包括:
[0016] (41)若存在邊ei和邊ej對應(yīng)的剩余不確定圖的最大流f( ei)和f(ej)相等,則分別 計算不確定圖的邊ei和邊ej在子圖區(qū)間u的存在狀況SiU和SjU;其中,
[0018]式中,u=l,…,t,u為子圖區(qū)間的序號,ei = l表示在子圖區(qū)間u中的所有子圖都包 含邊ei,ei = 0表示在子圖區(qū)間u中的所有子圖都不包含邊ei,ei = x表示子圖區(qū)間u中的子圖 有包含和不包含兩種情況,ej同理;
[0019] (42)根據(jù)存在狀況S1L^PSjU,計算得到邊出和邊幻所在的子圖區(qū)間的總數(shù)SdPSjA 中,
[0021 ]進一步的,所述STPA_CUT算法具體包括:
[0022] (51)獲取移除當前邊后剩余不確定圖的最大子圖MSG(G),并根據(jù)MSG(G)采用最大 流算法獲取對應(yīng)的割集CUT;
[0023] (52)根據(jù)割集CUT縮減初始狀態(tài)劃分區(qū)間;
[0024] (53)使用狀態(tài)劃分規(guī)則對于縮減后的初始劃分區(qū)間進行劃分,獲取不確定國移除 該邊之后依然滿足最大流的子圖集合。
[0025]進一步的,所述B-CESA算法具體包括:
[0026] (61)對于步驟(1)獲取的滿足最大流的每一個子圖區(qū)間C,判斷當前邊在C中的位 置狀態(tài);
[0027] (62)若子圖區(qū)間C中的所有子圖都不包含該邊,則將子圖區(qū)間C加入到不確定國移 除該邊之后依然滿足最大流的子圖集合中;
[0028] (63)若子圖區(qū)間C中的所有子圖都包含該邊,則移除子圖區(qū)間C;
[0029] (64)若子圖區(qū)間C中的部分子圖包含該邊,則將子圖區(qū)間C分解為,包含該邊的子 圖區(qū)間C1和不包含該邊的子圖區(qū)間C2,并對于子圖區(qū)間C1和C2分別采用步驟(62)(63)繼續(xù) 判斷;最后獲取不確定國移除該邊之后依然滿足最大流的子圖集合。
[0030]進一步的,步驟(8)具體包括:
[0031] (81)采用子圖集合set計算移除邊^(qū)后,剩余不確定圖的容量可靠性為:
,式中,Pi(g)為子圖g的概率,
P(ei)表示邊ei存在的概率;
[0032] (82)采用子圖集合set」計算移除邊q后,剩余不確定圖的容量可靠性為:
'式中,Pj(g)為子圖g的概率: P(幻)表示邊幻存在的概率;
[0033] (83)采用子圖集合set,計算移除邊&后,剩余不確定圖的分布式可靠性為:
[0034]
,p(ei)表不邊ei存在的概 率;
[0035] (84)采用子圖集合set」計算移除邊&后,剩余不確定圖的分布式可靠性為:
[0036]
表不邊ej存在的 概率。
[0037] 有益效果:本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點是:本發(fā)明構(gòu)建了基于流量和可靠 性指標的不確定圖關(guān)鍵邊評估的數(shù)學模型。該模型針對不確定圖中邊移除(故障)后對流量 和可靠性產(chǎn)生的相對損失這一角度,對邊的關(guān)鍵度進行綜合評估。該模型認為流量作為衡 量關(guān)鍵邊的最關(guān)鍵因素,當流量一致時,比較移除邊之后的最大流分布可靠性,為了增加區(qū) 分度,同時考慮容量可靠性。本發(fā)明時間復(fù)雜度更低,效率更高。
【附圖說明】
[0038]圖1是本發(fā)明的流程不意圖;
[0039]圖2是不確定圖的不例圖;
[0040] 圖3是圖2中不確定圖的一個子圖的示例圖;
[0041] 圖4是圖2中不確定圖的另一子圖的不例圖;
[0042] 圖5是圖2中不確定圖移除邊E4之后的剩余不確定圖;
[0043] 圖6是圖2中不確定圖的剪枝流程示意圖;
[0044] 圖7是不同圖規(guī)模情況下BASE和本發(fā)明的時間和內(nèi)存消耗對比圖;
[0045]圖8是不同圖稠密度下對BASE和本發(fā)明的時間和內(nèi)存消耗對比圖。
【具體實施方式】
[0046] 如圖1所示,本實施例的基于流量和可靠性的不確定圖關(guān)鍵邊評估方法,包括以下 步驟:
[0047] S101、通過狀態(tài)劃分規(guī)則,獲取不確定圖的滿足最大流的所有子圖區(qū)間。
[0048] 其中,不確定圖是一個五元組6=(¥4,84,((:,?)),其中,¥是有向圖6中頂點的集 合,E是G中邊的集合,s和t分別為G的源點和匯點,(C,P)是一個二元組且C:E->N是邊上容量 函數(shù),P: E-> (0,1 ]是邊上的概率函數(shù),表明該邊能通過的最大容量為C時的概率為P,當邊不 存在,即邊上能通過的容量為0時對應(yīng)的概率為1-P。不確定圖G中,在每條邊都存在時,能夠 從源點s到匯點t傳輸?shù)淖畲罅髦礷max為不確定圖G的最大流。例如,圖2所示為一個不確定 圖G,該不確定圖的源點為s,匯點為t,除此之外還包含其他的頂點vl和v2,邊集為{E1,E2, E3,E4,E5},以邊E4為例,邊上的容量c(E4) = l,概率p(E4)=0.8,也就是說E4邊能夠達到流 量為1的概率為0.8,而容量是0的概率為1 -p (E4) = 0.2。圖2所示的不確定圖G能夠達到的最 大流為2。
[0049] 不確定圖6=(¥4,84,((:,?))的子圖8(¥'4',84,(:')是一個確定圖,其中¥' = V,E'eE,C'是容量的集合,且C'滿足Vc;ecι,C'(c)==C(c;)。如果E'=E,則稱g為不確定圖 G的最大子圖,記作MSG(G)。如圖3和圖4所示,gl和g2是圖2中不確定圖G的兩個子圖,根據(jù)定 義子圖g2為不確定圖G的最大子圖,MSG(G)。
[0050] S102、計算將該不確定圖的各邊移除后,得到的各剩余不確定圖的最大流{f(ek) k=l,…,m} 〇
[0051] 其中,m為邊的總數(shù),ek表示第k條邊,f(ek)表示將邊ek移除后得到的剩余不確定圖 的最大流。其中,剩余不確定圖是指:對于一個不確定圖G,如果有一條邊e'被移除,剩下的 不確定圖被稱為原不確定圖G移除邊e'之后的剩余不確定圖G',貝ijG'可以表示為6' = (>4-e',S,t,(C,P)-e'(C,p)),其中剩余不確定圖的頂點和原不確定一致,且同時刪除被移除邊 上的容量和概率的對應(yīng)關(guān)系。例如,圖5為圖2中不確定圖G移除邊E4之后的剩余不確定圖 G',G'中的頂點與原不確定圖一致,同時E4上的流量概率對應(yīng)被移除。
[0052 ] S10 3、根據(jù)計算得到的各剩余不確定圖的最大流,從小到大對相應(yīng)的邊進行排序。 [0053]其中,排序越靠前的邊關(guān)鍵度越高。如汽^穴汽的八則的的關(guān)鍵程度大于的的關(guān)鍵 程度。
[0054] S104、若存在邊ei和邊ej對應(yīng)的剩余不確定圖的最大流f(ei)和f( ej)相等,則分別 計算邊ei和邊幻所在的子圖區(qū)間的總數(shù)31和&。
[0055]該步驟具體包括:S1041、若存在邊ei和邊ej對應(yīng)的剩余不確定圖的最大流f( ei)和 f(ej相等,則分別計算不確定圖的邊ei和邊^(qū)在子圖區(qū)間u的存在狀況S1U和SjU;其中,
i式中,u = l,…,t,u為子圖區(qū)間的序號,ei = l表示在 子圖區(qū)間u中的所有子圖都包含$ei,ei = 0表示在子圖區(qū)間u中的所有子圖都不包含邊ei, ei = x表示子圖區(qū)間u中的子圖有包含和不包含兩種情況,幻同理;S1042、根據(jù)存在狀況S1U 和^,計算得到邊ei和邊&所在的子圖區(qū)間的總數(shù)&和心其中
[0056] S105、若Si = i或Sj = h則采用STPA_CUT算法,計算將邊ei或ej移除后,剩余不確定 圖的滿足最大流的子圖集合seti或set j。
[0057]其中,滿足S = τ的邊定義為A類邊,τ為滿足最大流的子圖區(qū)間的個數(shù)。STPA_CTT (State Tree Pruning Algorithm Based on Cut Set)主要是利用了割集中的邊必定在最 大流子圖這一性質(zhì),通過割集中的邊對于子圖狀態(tài)樹進行剪枝,以達到減少搜索的目的,因 為割集中的邊一般在子圖樹的第二層就能達到剪枝的效果,所以該方法能夠有效的減少搜 索效果。STPA_CUT具體包括步驟:S1051、獲取移除當前邊后剩余不確定圖的最大子圖MSG (G),并根據(jù)MSG(G)采用最大流算法獲取對應(yīng)的割集CUT;S1052、對于初始狀態(tài)劃分區(qū)間(0, 0,~0,0,0)-(1,1,一1,1,1),根據(jù)割集^1'縮減初始狀態(tài)劃分區(qū)間;例如對于割集中邊&, 縮減后的初始劃分區(qū)間為(〇,〇…ei-1,1,ei+i, ···0)_ (1,1…ei-1,1,θ?+ι,···1);即對于所有子 節(jié)點,通過割集中的邊進行剪枝,因為滿足最大流的子圖必定包含割集中的邊,所以不包含 割集中邊的中間節(jié)點和葉子節(jié)點都必須舍去;S1053、使用狀態(tài)劃分規(guī)則對于縮減后的初始 劃分區(qū)間進行劃分,獲取不確定國移除該邊之后依然滿足最大流的子圖集合,具體為:(1) 當區(qū)間的下界子圖滿足最大流,則整個區(qū)間滿足最大流,保留;(2)當區(qū)間上界不滿足最大 流,則整個區(qū)間不滿足最大流,舍棄;(3)當區(qū)間下界不滿足最大流,上界滿足最大流,則二 次劃分。如圖6所示,是經(jīng)過割集剪枝之后的子圖樹,其中有背景的圓部分及其子樹都被剪 枝掉。
[0058] S106、若0〈Si〈T或〇〈Sj〈T,則采用B-CESA算法,計算將邊ei或ej移除后,剩余不確定 圖的滿足最大流的子圖集合seti或set j。
[0059] 其中,滿足0〈S〈t的邊定義為B類邊。B-CESA算法具體包括:S1061、對于步驟S101獲 取的滿足最大流的每一個子圖區(qū)間C,判斷當前邊在C中的位置狀態(tài);S1062、若子圖區(qū)間C中 的所有子圖都不包含該邊,則將子圖區(qū)間C加入到不確定國移除該邊之后依然滿足最大流 的子圖集合中;S1063、若子圖區(qū)間C中的所有子圖都包含該邊,則移除子圖區(qū)間C;S1064、若 子圖區(qū)間C中的部分子圖包含該邊,則將子圖區(qū)間C分解為,包含該邊的子圖區(qū)間C1和不包 含該邊的子圖區(qū)間C2,并對于子圖區(qū)間C1和C2分別采用步驟S1062和S1063繼續(xù)判斷;最后 獲取不確定國移除該邊之后依然滿足最大流的子圖集合。
[0060] 例如,圖2中的不確定圖G,經(jīng)過狀態(tài)劃分獲取滿足最大流的子圖區(qū)間有兩個,分別 是11x11和11101,e3是一個B邊,根據(jù)以上規(guī)則,11x11區(qū)間在e3位置上的狀態(tài)是X,可以分為 11111和11011兩個區(qū)間,因為11111和11101兩個區(qū)間在e3位置上的狀態(tài)是1,所以舍去,而 只保留區(qū)間11011。所以最終移除e3之后,依然滿足最大流的子圖區(qū)間是11011。
[0061] S107、若Si = 0或Sj = 0,則將該不確定圖的滿足最大流的子圖區(qū)間作為子圖集合 seti或setj 〇
[0062] 其中,將滿足S = 0的邊定義為C類邊。對于C類邊的計算,其斷掉不會影響連通性, 也不會影響可靠性,也就是說C類邊斷掉不會對不確定圖的狀態(tài)照成任何的影響。因此C類 邊移除之后不需要計算,直接使用原有的最大流,分布可靠性和容量可靠性。
[0063] S108、采用子圖集合seti和setj,分別計算移除邊ei和邊ej后,剩余不確定圖的分 布可靠性和容量可靠性。
[0064]具體的,該步驟包括:
[0065] S1081、采用子圖集合seU計算移除邊^(qū)后,剩余不確定圖的容量可靠性為:
,式中,Pi(g)為子圖g的概率,
P(ei)表示邊ei存在的概率;
[0066] S1082、采用子圖集合set」計算移除邊幻后,剩余不確定圖的容量可靠性為:
'式中,Pj(g)為子圖g的概率
P(w)表示邊w存在的概率;
[0067] S1083、采用子圖集合seU計算移除邊^(qū)后,剩余不確定圖的分布式可靠性為:
表示邊ei存在的概率;
[0068] S1084、采用子圖集合set」計算移除邊^(qū)后,剩余不確定圖的分布式可靠性為:
表示邊W存在的概率。
[0069] S109、比較計算得到的分布可靠性和容量可靠性值,并將更小的分布可靠性值所 對應(yīng)的邊排序在前;當分布可靠性值一致時,將更小的容量可靠性所對應(yīng)的邊排序在前。最 終得到一個按照關(guān)鍵度從高到低排序的邊序列,排序在前的邊關(guān)鍵度更高。
[0070] 下面對本實施例所提出的方法進行驗證和分析。為了驗證本實施例所提出方法, 將本實施例與基于重復(fù)計算的基礎(chǔ)算法(BASE algorithm)進行對比,BASE的思想是,首先 計算不確定圖每一條邊移除之后能夠滿足的最大流,然后通過比較不確定圖在移除邊之后 能夠達到的最大流,只有當流量相同的情況下,才計算比較分布可靠性和容量可靠性。BASE 算法的運行效率與重復(fù)計算的次數(shù)緊密相連,在算法的首先需要計算所有邊發(fā)生故障之后 的最大流,使用計算最大流的算法是Dinic算法,運行Dinic算法所需的處理時間為0( | V |21 E I ),因此在處理這部分是復(fù)雜度是0( I V121E 12);然后當移除邊之后流量相同的情況下,需 要重復(fù)計算,使用的重復(fù)計算方式為基于狀態(tài)劃分的算法,具體為名稱為"Algorithms of the most reliable maximum flow on uncertain graph"的文南犬提至的算法,其復(fù)雜度為 〇(k I V121 E I ),其中k為劃分過程中需要運行Dinic算法的次數(shù)。因此整個BASE算法的復(fù)雜度 為0(km|V|2|E|)+0(|V| 2|E|2),其中m為需要重復(fù)計算的次數(shù),一般m的范圍是0<m彡|E|。 [00 71] 本實施例提出的是一種基于狀態(tài)區(qū)間緩存算法SCA(State Caching Algorithm), 該算法首先獲取所有邊發(fā)生故障之后能夠滿足的最大流,然后對計算的流量進行排序,當 前后兩條邊斷掉之后獲得的流量不相等時,根據(jù)模型定義,直接就可以比較出兩條邊的關(guān) 鍵程度,只有當兩條邊移除之后最大流一致的情況下,會使用狀態(tài)劃分樹的增量算法計算, 該部分的計算最大流的算法是Dinic算法,運行Dinic算法所需的處理時間為0( |V|2 |E | ), 因此在處理這部分是復(fù)雜度是〇( IV121E 12)。然后將不確定圖的邊分為A、B、C三類邊,然后根 據(jù)三類邊的不同性質(zhì)對于不同性質(zhì)的邊選擇不同的算法,從而簡化計算過程。首先對于A類 邊,考慮最壞的情況,就是重復(fù)完全計算,該算法運算復(fù)雜度主要體現(xiàn)在K次運行Dinic算 法,因此對于A邊的復(fù)雜度為0(ak| V|2 |E|),其中a為不確定圖G中a邊的個數(shù),對于B類邊,需 要遍歷滿足最大流的所有區(qū)間,其復(fù)雜度為0(bT),其中b為不確定圖B邊的個數(shù),τ為滿足最 大流區(qū)間的個數(shù),對于C邊來說,因為不需要計算,所以復(fù)雜度為0(c),其中c為不確定圖C類 邊的個數(shù)。綜上所述,基于狀態(tài)劃分樹的增量算法的整體復(fù)雜度是〇( I V |21Ε 12)+0(ak | V12|Ε )+0(bi)+0(c),其中a+b+c=|E|。由公式可見,本實施例的方法在最壞的情況下,復(fù)雜度和 BASE算法的復(fù)雜度一致。
[0072]為了分析本實施例的運行效率及分析影響算法性能各種因素,進行了一系列的實 驗,實驗平臺為一臺Intel Core的PC機(CPU i7-3770,3.40GHz,內(nèi)存8GB,64位windows 7操 作系統(tǒng)),算法采用C++在VS2010上實現(xiàn)。本實施例采用了與文獻"Algorithms of the most reliable maximum flow on uncertain graph"相同的數(shù)據(jù)集,使用NETGEN生成器產(chǎn)生 V6E10、VsEw、VioE18、V12E 22、VME26共5組不同圖規(guī)模的二態(tài)有向圖集合(實驗數(shù)據(jù)集合大小為 5),其中VnEm表示有η個頂點、m條邊組成的圖,圖中邊的容量與對應(yīng)概率滿足均勻分布。通 過在不同圖規(guī)模的情況下,比較算法BASE和本實施例在運行時間及內(nèi)存消耗放方面的差 異。實驗中的BASE_ALL算法指代的是完全重復(fù)計算的方式。
[0073]實驗1.不同圖規(guī)模對于算法性能的影響。根據(jù)圖7所示,算法BASE_ALL算法是完全 重復(fù)計算的方式,BASE算法是在當流量一致的情況下才計算分布可靠性和容量可靠性。如 圖7(a)所示,BASE算法相對于BASE_ALL算法在運行時間上有一定的減少,但是依然不適應(yīng) 大規(guī)模圖,而SCA(本實施例提出的方法)在運行時間上有了很大的減少,適應(yīng)性更好。如圖7 (b)所示,SCA算法相對于BASE算法在空間復(fù)雜度上有了一定程度的增加,但是隨著圖規(guī)模 的增加,內(nèi)存的使用并沒有增加太多,依然在可以接受的范圍內(nèi)。
[0074]實驗2.不同圖稠密度對于算法性能的影響。為更好的反映 BASE算法和SCA算法的 性能差異,使用NETGEN生成器生成V15E21,V15E32,V 15E42,V15E53四種不同稠密度的圖,通過在 不同圖稠密度的情況下,比較算法BASE和SCA算法在運行時間及內(nèi)存消耗放方面的差異。實 驗中的BASE_ALL算法指代的是完全重復(fù)計算的方式。試驗結(jié)果如圖8所示,相對于不同稠密 度的圖,SCA算法相對于BASE算法在時間復(fù)雜度上有較大的優(yōu)勢。
【主權(quán)項】
1. 一種基于流量和可靠性的不確定圖關(guān)鍵邊評估方法,其特征在于該方法包括: (1) 通過狀態(tài)劃分規(guī)則,獲取不確定圖滿足最大流的所有子圖區(qū)間; (2) 計算將該不確定圖的各邊移除后,得到的各剩余不確定圖的最大流{f(ek)|k = 1,…,m};其中,m為邊的總數(shù),ek表示第k條邊,f(ek)表示將邊ek移除后得到的剩余不確定圖 的最大流; (3) 根據(jù)計算得到的各剩余不確定圖的最大流,從小到大對相應(yīng)的邊進行排序;其中, 排序越靠前的邊關(guān)鍵度越高; (4) 若存在邊ei和邊e苗f應(yīng)的剩余不確定圖的最大流f(ei)和f(ej)相等,則分別計算邊 ei和邊ej所在的子圖區(qū)間的總數(shù)Si和Sj; (5) 若51 = 1或& = 1,則采用STPA_CUT算法,計算將邊ei或ej移除后,剩余不確定圖的滿 足最大流的子圖集合seti或set"其中,τ為滿足最大流的子圖區(qū)間的個數(shù); (6) 若0<Si<τ或0<Sj<τ,則采用B-CESA算法,計算將邊ei或ej移除后,剩余不確定圖的滿 足最大流的子圖集合seti或setj; (7) 若Si = 0或& = 0,則將該不確定圖的滿足最大流的子圖區(qū)間作為子圖集合seti或 setj ; (8) 采用子圖集合seti和setj,分別計算移除邊ei和邊ej后,剩余不確定圖的分布可靠性 和容量可靠性; (9) 比較計算得到的分布可靠性和容量可靠性值,并將更小的分布可靠性值所對應(yīng)的 邊排序在前;當分布可靠性值一致時,將更小的容量可靠性所對應(yīng)的邊排序在前;從而得到 按照關(guān)鍵度從高到低排序的邊序列。2. 根據(jù)權(quán)利要求1所述的基于流量和可靠性的不確定圖關(guān)鍵邊評估方法,其特征在于, 步驟(4)具體包括: (41) 若存在邊ei和邊e苗f應(yīng)的剩余不確定圖的最大流f(ei)和f(ej)相等,則分別計算不 確定圖的邊ei和邊ej在子圖區(qū)間U的存在狀況Siu和Sju;其中,式中,11=1,…,T,u為子圖區(qū)間的序號,ei = l表示在子圖區(qū)間U中的所有子圖都包含邊 ei,ei = 0表示在子圖區(qū)間U中的所有子圖都不包含邊ei,ei = x表示子圖區(qū)間U中的子圖有包 含和不包含兩種情況,ej同理; (42) 根據(jù)存在狀況Siu和&U,計算得到邊ei和邊e挪在的子圖區(qū)間的總數(shù)&和&;其中,3. 根據(jù)權(quán)利要求1所述的基于流量和可靠性的不確定圖關(guān)鍵邊評估方法,其特征在于, 所述STPA_CUT算法具體包括: (51)獲取移除當前邊后剩余不確定圖的最大子圖MSG(G),并根據(jù)MSG(G)采用最大流算 法獲取對應(yīng)的割集CUT; 巧2)根據(jù)割集CUT對初始狀態(tài)劃分區(qū)間進行縮減; (53)使用狀態(tài)劃分規(guī)則對于縮減后的初始劃分區(qū)間進行劃分,獲取不確定國移除該邊 之后依然滿足最大流的子圖集合。4. 根據(jù)權(quán)利要求1所述的基于流量和可靠性的不確定圖關(guān)鍵邊評估方法,其特征在于, 所述B-CESA算法具體包括: (61) 對于步驟(1)獲取的滿足最大流的每一個子圖區(qū)間C,判斷當前邊在C中的位置狀 態(tài); (62) 若子圖區(qū)間C中的所有子圖都不包含該邊,則將子圖區(qū)間C加入到不確定國移除該 邊之后依然滿足最大流的子圖集合中; (63) 若子圖區(qū)間C中的所有子圖都包含該邊,則移除子圖區(qū)間C; (64) 若子圖區(qū)間C中的部分子圖包含該邊,則將子圖區(qū)間C分解為,包含該邊的子圖區(qū) 間C1和不包含該邊的子圖區(qū)間C2,并對于子圖區(qū)間C1和C2分別采用步驟(62)(63)繼續(xù)判 斷,最終獲取不確定國移除該邊之后依然滿足最大流的子圖集合。5. 根據(jù)權(quán)利要求1所述的基于流量和可靠性的不確定圖關(guān)鍵邊評估方法,其特征在于, 步驟(8)具體包括: (81) 采用子圖集合seti計算移除邊ei后,剩余不確定圖的容量可靠性為: 式中,Pi(g)為子圖g的概率,丑衰示邊 ei存在的概率; (82) 采用子圖集合set六十算移除邊ej后,剩余不確定圖的容量可靠性為:式中,Pj(g)為子圖g的概率,且良示邊 ej存在的概率; (83) 采用子圖集合seti計算移除邊ei后,剩余不確定圖的分布式可靠性為:式中表示邊ei存在的概率; (84) 采用子圖集合set六十算移除邊ej后,剩余不確定圖的分布式可靠性為:式4I示邊ej存在的概率。
【文檔編號】G06F17/50GK106096117SQ201610394902
【公開日】2016年11月9日
【申請日】2016年6月6日 公開號201610394902.7, CN 106096117 A, CN 106096117A, CN 201610394902, CN-A-106096117, CN106096117 A, CN106096117A, CN201610394902, CN201610394902.7
【發(fā)明人】張柏禮, 李富豪
【申請人】東南大學