a decomposition algorithm for network reliability evaluation
TRANSCRIPT
![Page 1: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/1.jpg)
DISCRETE APPLIED
ELSEVIER Discrete Applied Mathematics 65 (19961 141~ 156 MATHEMATICS
A decomposition algorithm for network reliability evaluation”
Received 9 December 1992: revised 2 July 1993
Abstract
This paper presents an algorithm for computing the K-terminal reliability of undirected networks, i.e. the probability that a given set of vertices in the network are connected. when edges and nodes fail independently with known probabilities. This algorithm is based on a decomposition method introduced by Rosenthal. It consists in numbering the vertices of the graph so that the successive boundary sets are as small as possible and in evaluating the probabilities of appropriate classes of boundary sets. We show that for the all terminal reliability problem these classes are the partitions of the boundary sets and we describe them for the general problem. Our computational results are so conclusive that networks much largeI- than those presented before can now be treated.
k’q~u~o&: Network reliability; Factoring: Reductions: Network decomposition: Boundary set: Algorithm; Computer program
1. Introduction
The study of network reliability problems started in the 1970s. These problems
concern all kinds of networks, such as computer, communication or power networks.
When components of the network are subject to random failures, the network may OI
may not continue functioning after the failures of some components. The probabilit)
that the network will function is its reliability. Reliability is an important parameter in
both the design and operation of networks [1,4-6, lo]. We consider here undirected
networks, like communication ones. Such a network is traditionally modelled by an
undirected graph, whose vertices and edges are subject to statistically independent
failures: their components either function or fail with known probabilities. A subsc~
This work was supported by “le Conseil RCgonal de Picardie“ (Bourse EPR 2934D. Pble mod&lisatlon. pro.jet paralltlisme).
*Corresponding author.
0166-21 Xx:96:$1 5.00 (: 1996-Elsevier Science B.V. All rights rehervcd
SSDI 0166-218X(95)00032-1
![Page 2: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/2.jpg)
142 J. Carlier, C. Lucet / Discrete Applied Mathematics 65 (1996) 141-156
K of vertices that must remain connected is specified. The problem is to compute the
probability of such events.
This problem is NP-hard, so enumerative methods are used frequently. Factoring is
one such method: it consists in fixing successively the state of particular edges, until
the state of the network can be determined. This procedure corresponds to the
construction of a binary tree. Factoring is an exponential method, but it becomes very
effective by performing reductions. These reductions decrease the size of the network
in polynomial time while preserving its reliability. The development of such methods
stemmed from the works of Satyanarayana and Wood [6].
Better performances can be achieved by our decomposition method. It consists in
numbering the vertices of the graph and in building the corresponding subgraphs and
their boundary sets. The boundary vertices can be connected in various ways,
according to the states of the subgraph elements.
This connectivity can be summarized by appropriate classes which are, for instance,
the partitions of the boundary sets for the all terminal reliability problem. Evaluating
the class probabilities makes it possible to compute the network reliability. This can
be done more efficiently if the successive boundary sets are the smallest possible. This
is confirmed by our numerical experiments which show the superiority of the method
over classical ones.
This paper is organized as follows. Section 2 presents basic definitions and notation.
Section 3 is a short survey of factoring and reductions methods. In Section 4 we
describe the decomposition method for the all terminal reliability problem. The
necessary elements for the generalization of the decomposition method are given in
Section 5. Section 6 describes briefly an implementation in C.
2. Definitions and notation
Notation
G
V N
E
PC?
q, K H F [...][...]...[...I [XL’ . ]
[xy . lK
R(GK)
(V, E) an undirected graph
the entire set of vertices in G
the number of vertices of V
the entire set of edges in G
the reliability of vertex or edge e
1 -Pe a subset of vertices of V a subgraph of G
the boundary set of H (see Fig. 2)
a partition of F
a block, that is a subset of F a block containing at least a vertex of K
K-terminal reliability of G: Probability that all
K-vertices are connected
![Page 3: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/3.jpg)
J. Curlier. C. Lucet i Discrete Applied Mathrmcrtics 65 (1996) IJI-156 II?
The network is modelled by a graph G = (I/, E) and a subset of V : K. The problem is
to compute the K-terminal reliability of the graph G, whose vertices and edges fail
independently with known probabilities. K can be every subset of V such that
2 < /K 1 < 1 I/ 1. If K = V, it is the all terminal reliability problem.
3. Factoring and reductions
Factoring is an enumerative method [10,3]. Given an undirected graph with
perfect vertices. i.e. with vertices which cannot fail, factoring consists in picking an
edge and decomposing the original problem with respect to the two possible states of
the edge. The network reliability can be written:
R(GK) = p,,.R(G;,e) + (1 - pe).R(GK -- e).
where Gz.e is G with edge e = (u, I>) contracted and K appropriately modified (if II E K
or 11 E K. then the new vertex M’ = ~luc will be a K-vertex), and GK - P is G with
c’ deleted. The reliability of the original network can be computed iteratively. by
successive applications of the above formula to the induced graphs, until it is possible
to compute directly the reliability of final graphs. This procedure corresponds to the
construction of a binary computational tree whose nodes are some graphs; its leaves
are graphs with known reliabilities. For certain graphs like series-parallel ones,
reliability can be easily and polynomially computed: leaves belong to this category.
Factoring is an exponential method but it becomes efficient by performing reductions.
Reductions decrease the size (I V( + (El) of a graph while preserving its reliability.
Their application to a graph GK results in a reduced graph G;,. such that
R(Gk) = fiR(Gk,), where 0 is a multiplicative factor dependent on the reductions. In
particular, there are simple reductions (parallel, series and of degree-2) and polygon-
to-chain reductions introduced by Satyanarayana 161. Using the simple and poly-
gon-to-chain reductions, series-parallel graphs can be reduced to a simple edge in
linear time; their reliability can thus be computed in linear time.
Decomposing a graph into its biconnected (resp. triconnected) components is called
biconnected (resp. triconnected) decomposition. Biconnected and triconnected com-
ponents are computed in linear time using the relevant algorithm of Tarjan [7].
Biconnected decomposition, integrated into factoring and reductions has been imple-
mented by Theologou [S, 9, 21 using an efficient data structure. The author also
explains how to treat node failures. The corresponding program makes it possible to
compute the reliability of graph with 30 nodes and 50 edges.
4. The decomposition method for the all terminal reliability problem
In this section, we state and explain the decomposition method for the all terminal
reliability problem. For this problem, all vertices are perfect and terminal. The edges
![Page 4: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/4.jpg)
144 J. Carlier. C. Lucet 1 Discrete Applied Mathematics 65 (1996) 141-156
al an articulation vertex
Fig. I. An articulation vertex.
a boundary set
Fig. 2. A boundary set
are the only elements which can fail. The reliability is the probability that the network
is connected. In Section 5, all necessary elements for the general problem are given.
4.1. S.&network and boundary set
A subnetwork of G = (V, E), is a network H = (I/‘, E’) such that I/ 2 I/‘, and
E’ = E n(V x V’). Let H be any subnetwork of G, and L = (V”, E”) the complement
graph of H in G, i.e. V’u V” = I/; E’uE” = E and E’nE” = 8. Then, the set of
vertices F = V’n I/“, is called the boundary set of H. In Fig. 1, F is reduced to only one
vertex, when in Fig. 2, IF 1 3 2.
4.2. Decomposition principle
If G has an articulation vertex, then G can be decomposed into two graphs H and
L such that R(G) = R(H) x R(L) (Fig. 1). This decomposition technique was generaliz-
ed by Rosenthal [4]. He considered a subgraph H and its complement L such that H
and L are separated by the boundary set F. The author proposes to associate with
H and L some classes depending on the cardinality of F. For instance, for the all
terminal reliability problem, these classes are the partitions of F. Then the reliability is
computed by associating the classes of H with the classes of L.
4.3. Elementary et’ents
The vector 6 of the element states is an elementary event. Its probability is:
Pr(6) = n pe’ nqez where e are up edges, i.e. edges which function, and e’ are down
edges, i.e. edges which fail. An elementary event 8 of G is called a working event if its
![Page 5: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/5.jpg)
up elements induce the working of the network, i.e. if the vertices of K remain in the
same connected component. Otherwise. it is a failure event. The network reliability
can be written R(GK) = E Pr(B,), where the sum is taken over all the working events
6,.
4.4. Events and petitions
The vector $I of the element states of the subnetwork N is an event. Let us consider
the connected components 01, Oz. . . . 0, of the partial graph ‘M composed of up
elements of H. If one of these connected components does not meet F, 8 is a failure
event because all the elementary events which it contains. are failure events. Other-
wise, we associate to 3j the partition of F into r blocks: B, = O1 nF. B2
= O2 n F, . . . , B, = O,n F. We define an equivalency between the events of F-f: two
events are equivalent if their associated partitions are the same. Hence, the classes are
the partitions of F.
In Fig. 3, F = [u, t’, \v) and W is reduced to the up elements of an event 9~. The
vertices u and 2: are connected via W and 1~ is isolated from the others. So II and r are in
the same block whenever w is in its proper block: the corresponding class will be
denoted [zt z:][\c]. Here F = {u, z‘, N), so there are five classes: [zt I‘ ,v]; [zf IY][~.];
[~)[r \Y]; [U r:][~r]; [~]~~~~~~I. The probability of a class is the sum of the pl-obabilit-
ies of the events belonging to it. For the initial graph there is only one class and its
associated probability is the network reliability.
Vertices are numbered from 1 to N ( / V / = TV) The function L’CTI~.Y : [ 1 . . N] 4 b’
gives the vertex associated with each number. We denote G,, the subnetwork induced
by vertices z:cafrs( 1). . . . , t:ertex(k). There are N subnetworks G1, G2, . , C;% and
N correspondent boundary sets F,, F,. . . . , FN. Let us denote Ck.s the sth class of Gn,
To subnetwork G,Y corresponds only one class denoted C.v.,. whose associated
Fig. 3. The event 5 fixes the states of the twelve edges of H. W is a partial graph of H reduced to the up
cd~esofthettvent~~((1,0.0.1,I,1,0,1,1.1.0.0).
![Page 6: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/6.jpg)
146 J. Carlier, C. Lucet i Discrete Applied Mathematics 65 (1996) 141-156
probability is the network reliability. The method consists in computing iteratively the probabilities of the classes of G2, . . . , GN. Hence, Pr(CN. r) is reached in N - 1 iterations.
At the lith iteration, the vertex(k) and its incident edges are added to Gk_ I in order to build Gk and Fk. Let us call k-links the edges incident to vertex(k) and to some vertices of Fk ._ 1 (a and b are examples of k-/inks in Fig. 4). The classes of Gk and their associated probabilities are computed from those of Gk_ 1 and of the k-links. One class of Gk_ , induces several classes of Gk depending on the states of the k-links. These states induce the connection or the disconnection of vertex(k) to the different blocks of the class. A block is either connected or not to vertex(k). Thus, for a class withj blocks, the maximum number of connection states to enumerate is 2j. This maximum number is reached when all blocks of the class have some vertices connected with vertex(k).
General algorithm
Init: Number the vertices of the graph F1 = {uevtex(l)}; Pr(C,,r) = 1;
Begin for k = 2 to N
Add vertex(k) to G,_ i Compute Fk T( IFk_, I) = number of classes of Gk_ 1
for s = 1 to T(lFkW1l) Generate the class Ck_ l,S of Gk_ 1 and compute j, its numberofblocks~C~_~,s~~~,~~ 3++.Y Bj) for YYZ = 1 to 2j
{m describes the connection with vertex(k) for each block Bi, Bz$ ... ,Bj) Associate to B,, B2, . . . , Bj and m a class of Gk. Compute its number and its probability
endfor-m
endfor-s
endfor-k
end R(G) = Pr(CN. 11
Example.
In Fig. 4, Fkml = (u, v> and Fk = {u, v, w> such that w = vertex(k). a and b are the k-links. The different classes of Gk _ r are: - Ck__lJ = [UV] which induces [u UW] if a and b are not both down, and [uv][w] otherwise. The block [uu] is connected to w, then there are 2l states to enumerate.
- Ck-1.2 = [u][v] which induces [u u w] if a and b are up, [U w] [u] if a is up and b is down, [u][v w] if a is down and b is up, and [u][v][w] if a and b are both down. The
![Page 7: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/7.jpg)
J Carlier, C. Lucet i Discrete Applied Mathematics 65 (1996) 14/k156 117
Fk-l=(U,V} Fk={U,V,W}
Fig. 4. Partitions of F, and their associated probahihties are computed from partitions of FL I and the
k-links.
blocks [u] and [u] are connected to w with the two k-links, u and h. then there are
2’ states to enumerate.
The probability of Ck,r = [u 1: w] is given by the formula:
WCk,l) = Pr(Ck-,.,).(l - Li;qb) + Pr(Ck-1.2).pll.ph
4.7. Classes numbering
A very important problem in this decomposition method is the classes numbering.
All information about a class must be easily and directly accessible. The classes are
ordered as follows: at first the classes with a same number j of blocks are collected in
a set A(i,j), where i is the number of vertices of the boundary set Fk. Next, these sets
are ordered in an ascending order ofj. Finally, each A( i, j) is ordered depending on the
order of A(i -- t.j) and A(i - l,j - 1) ([A(i,j)( = j.(A(i - l.,j)\ I- (A(i - l,j ~ 1)1).
Below we explain this technique using an example. This method makes it possible to
have a total order for the classes numbered from 1 to xi,= ,1A(i,,j)l.
Example.
For Fk = ‘ul the class is L J’
A(1.1)
For Fk = (u, v), the ordering of the classes is
A(Z. 1)
1 [UC] L-m
2’ has been added to the 1st block of [.u]
A(2.2)
2 / [u] [c] / the block [c] has been added to [u]
For F, = (u, u. wl, the ordering of the classes is
A(3.1)
1 j [u 1’ w] 1 w has been added to the 1st block of [UV]
![Page 8: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/8.jpg)
148 J. Curlier, C. Lucet 1 Discrete Applied Mathematics 65 (1996) 141- I56
2 cu WI [El !--! w has been added to the 1st block of [u] [a]
3 Cul cu WI M’ has been added to the 2nd block of [u] [ZI]
4 [U 01 Cwl the block [HI] has been added to [u V] A(3.31
5’ [u] [v] [u] the block [w] has been added to [u] [r]
We present the following iterative algorithms in 0( 1 FJ) to find the class correspond-
ing to a number (see Algorithm 1) and to find the number corresponding to a class (see
Algorithm 2). These algorithms are used for enumerating the classes, and for storing
the associated probabilities when a new class of F, is generated from a class of F,_ 1.
Therefore, it is essential to have efficient algorithms.
The vertices of Fk are numbered from 1 to 1 F,I. A class is represented by an array
PART[ 1. PART[x] is the block number of the xth vertex of Fk. For instance, if
Fk = {u, u, \v), then the class [u w] [v] is represented by
1 2 3 4
PART 1 1 1 2 1 I
The first vertex u of F, is in block 1, the second vertex u is in block 2 and the third
vertex w is in block 1.
In the following algorithm, let us denote by NUMBER the number of a class, j
the number of blocks of the class NUMBER, and Num the number of the class
among the classes with j blocks. Therefore Num would be defined by the following
relation:
j-l
NUMBER = Num + c IA(IF,I, h)l. h=l
Algorithm 1
class from number in O() Fk() Data: IFkl
NUMBER the class number
Result: PART[ 1, the class
Begin
i:= (Fkl
j:= the number of blocks of the class NUMBER
Num:= the number of the class NUMBER among
the classes ofj blocks.
while i < > 1 do
if Num < (A(i - 1, j)l .,j then
PART[i]:= Num - Int((Num - 1)/j) .,j
Num:= Int((Num - 1)/j) + 1
![Page 9: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/9.jpg)
else
Num:= Num - (A(i - l.j)l.,j
PART[i] := j
,j:=,j - 1 i:= j- 1
endwhile
PART[ l]:= I
End
Algorithm 2
number from class in 0( ( Fk I)
Dafa: PART[ 1, a class of Fk Result: NUMBER the class number
Begin
Num:= 1;
j:= 1
for i:= 2 to lFkl do
if PART[i] =j + 1 then
,j:=,j + 1
Num:= Num + lA(i - l.,j)l .j
else
endfor
Num:= (Num - l).,j + PART[i]
(,j is the number of blocks of the given class
PART[ ] and Num the number of the class
among the classes withj blocks.)
NUMBER:= Num + ~IAI(IF,I,h)l II:= 1 to j -
End
4.8. C’omplexiQ
For the all trrrninnl reliability problem, the classes of Gk correspond to the partitions
of Fk, Thereby. their number increases exponentially with the size of the boundary set
FL. The space conzple.uity depends on the maximum number of classes enumerated
during one iteration. It depends also on the maximum size F,,,, of the boundary sets
FL. To a set with i elements correspond T(i) partitions:
T(i)= i IA(i,,j)l, j= I
where \A(i,,j)( is the Stirling number of second kind. given by the recursive formula:
IA(i, 1)l = 1 and for 2 <,j < i, IA(i,j)/ =j.IA(i - l.,j)i + IA(i ~ l.,j - l)(
![Page 10: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/10.jpg)
150 J. Cat&r, C. Lucet / Discrete Applied Mathematics 65 (1996) 141-156
IFI 1 2 3 4 5 6 7 8 9 IO 11 12
number 01 panitlwls 1 2 5 15 52 203 877 4.140 21.147 115.975 658.586 4.0546~~
Fig. 5(a) The total number of partitions according to the size of IFJ.
Numberofblocks
12 3 4 5 6 7 6 9 IO 11 12
‘1
562 1
Fig. 5(b) The number of partitions according to the size of the set F, and the number of blocks.
These numbers correspond to the cardinalities of the sets A(i,j) (see Fig. 5(b)). As
a consequence, the space complexity would be O(T(F,,,)).
We use OIC(k), to denote the complexity in running time of the kth iteration. OIC(k)
depends on the number of classes and on the number of connection states (cf.
Section 4.6) to enumerate. Then, in the worst case the complexity of the kth iteration is
OIC(4 = IFA 1 IA(lFkI,j)l.2j. j= 1
For a graph with N vertices, there are N - 1 iterations for computing its reliability.
The complexity in running time for the all terminal reliability problem with this
![Page 11: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/11.jpg)
.I Curlier, C. Lucet 1 Discrete Applied Mathenutics 6.5 11996) I41 156 lil
decomposition method is
4.0. Vertices numbering
In order to reduce the number of classes to enumerate, the size of the boundary sets
must be the smallest possible [ 11. Let F,,, denote the size of the largest boundary set
of the graph. F,,, depends on the vertices numbering. Our objective is to obtain an
optimal numbering.
We have tried some heuristics and we have concluded that the following one is the
best. This heuristic uses a graph exploring method called the breadth-first search. The
vertices are numbered from N down to 1, in the order in which they are reached
during the search.
The numbering algorithm
lnit
iter the number of iterations
~ the initial numbering
N the number of vertices
the initial F,,,
Begin
for ,j:= 1 to iter do
Let x be an uniform random number in [1 N]. Let ui and c2 be two adjacent vertices of ccrteu(s).
Modify vertex( ) by exchanging I:~ and u2.
Apply BREADTH-FIRST SEARCH beginning from c~‘~res( N).
Compute the A F,,,
If AF,,, < 0 then
end
The new numbering is accepted.
endfor-j
An optimal numbering for networks taken in the literature can be obtained by
hand. Similarly, for physical reasons, the numbering of planar networks can also be
easily done. This makes it possible to evaluate the efficiency of this algorithm. Our
heuristic is tested in some graphs, like street networks, given in this paper. As a result.
an optimal numbering is taken. Moreover, the computational time does not increase
too much with the number of vertices, so the procedure can be used for large
networks, but apparently its convergence is very slow. The number of iterations (itcr),
which was necessary for achieving an optimal numbering, was between 100 (for street
![Page 12: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/12.jpg)
152 J. Curlier, C. Lucet J Discrete Applied Mathematics 65 (1996) 141-156
networks 3 x 8) and 5000 (for graphs with 30 vertices and 50 edges). Anyway, the
interest of our numbering algorithm is essentially to provide a completely automatic
method.
5. Generalization
5.1. The K-terminal problem with perfect vertices
For the K-terminal reliability problem with perfect vertices, the disconnection of
non-terminal vertices does not induce a failed network. In fact, one component of
Gk contains K-vertices or not. As a component is represented by a block, each block of
a partition must have information about this K-connection.
Example. If F, = {u, v}, there are 6 classes
[uv] u and v are connected via Gk, and are not connected with any K-vertex,
[uz.lK u and c are connected via Gk, and connected with some K-vertices,
[u] [v] u and v are not connected via G,, and are not connected with any K-vertex,
[u]” [v] u and v are not connected via Gk, u is connected with some K-vertices and not v,
[u] [vlK u and v are not connected via Gk, v is connected with some K-vertices and not U,
[ulK [t;lK u and r are not connected via Gk, u and L’ are connected with some K-vertices.
To each j-blocks partition of the boundary set, correspond 2’ classes of G,. The
number of classes, for a boundary set Fk, is: x)2’, [A( 1 F,I, j)( ‘2j. As a result, the
complexity in running time of the kth iteration, for the K-terminal with perfect vertices
reliability problem, is: OIC(I<) = lFkl .Ci”‘, JA(IF,I, j)l.2* ‘j.
5.2. The K-terminal problem with failed vertices
In the general K-terminal problem with failed vertices, classes have to describe the
state of boundary vertices (for each vertex, two states are possible: up or down), the
connecting state of the up boundary vertices and the K-connection of blocks.
Example. If Fk = {u, v}, there are 10 classes. These classes are:
[u] u is up and not connected with any K-vertex, u is down,
[ulK u is up and connected with some K-vertices, v is down,
[u] L’ is up and not connected with any K-vertex, u is down,
[olK v is up and connected with some K-vertices, v is down,
[u zj] u and v are up, connected via Gk, and not connected with any K-vertex,
[uvIK u and v are up, connected via Gk, and connected with some K-vertices,
[u][u] u and v are up, not connected via Gk and not connected with any K-vertex,
[u]“[c] u is up and connected with some K-vertices, v is up and not connected with
any K-vertex. u and v are not connected via Gk,
[u][v]” u is up and not connected with any K-vertex, v is up and connected with some
K-vertices. u and v are not connected via Gk,
![Page 13: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/13.jpg)
J Curlier, C. Lucet 111 Discrete Applied Mathemuticx 6.i tIYY6) 141 136
/ r- I
IF I All term
1
2
5
15
52
203
a77
4.140
21.147
1 f 5,975
K-term perfect v
2
a
22
94
454
2.430
14.214
89.918
610.182
4.412.958 L
K-term failed v
2
10
46
226
7.214 7.106
44.958
305.090
2.206.398
16.914.146 1
Fig. 6. The number of partitions to enumerate grows eqxxxx~tdly with the we of f‘.
[~~]~[c]~ u is up and connected with some K-vertices, I: is up and connected with some
K-vertices. u and 1‘ are not connected via Gk.
We consider a set Fk.x composed with the up vertices of F,. According to the states
of boundary vertices, there are 2 “,’ - I different sets Fk,.\ and exactly C,r&’ sets FL..,
such that IFh,J = p(C$“’ is the binomial number). To each set Fk,s correspond
I$ ;I IA(IFA,sl, ,j)/ ‘2” classes of Gk. The total number of classes to enumerate is cFIU1 C-&l J-r! _]=, /A(p,j)/-2’. As a result, the complexity in running time of the &h
iteration, for the K-terminal reliability problem with failed vertices. is: OlC(k) = / F, /
5.3. Size qf’the treated networks
The limit of this decomposition method is essentially due to the quantity of data to
store----mainly the classes probabilities of a boundary set -- and not to the running
time. For the all terminal reliability problem, all the networks with F,,, < 12 can be
treated. However, for the K-terminal reliability problem with imperfect vertices, all
the networks with F,,, d 10 can be treated.
6. Computational results
At first, the decomposition method (or the boundary method) was implemented for
the all terminal reliabifity problem. The program was written in PASCAL and run on
a PC-486 We tested it on some networks chosen in the literature. Smaller running
times were obtained, particularly for the greatest networks, as shown in Table 1. by
applying the decomposition method than the factoring with reductions method. Then.
![Page 14: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/14.jpg)
154 J. Carlier, C. Lucet / Discrete Applied Mathematics 65 (1996) 141-156
Table 1
All terminal problem, all examples are extracted from [2]
Examples Vertices Edges Reliability FmaK Tl (s) T2(s)
Arpanet 21 32 0.97062 4 6.51 1.82
SODETl 24 38 0.96177 5 40 7.36
SODETZ 26 43 0.96907 5 108.71 4.5
T3 x 10 30 47 0.92405 4 26.6 1.70
T4x7 28 45 0.93706 3 ~ 4.50
EDF2 30 52 0.97533 6 1315 12.80
GENl2 140 220 0.91375 12 -- 1932
Note: GENl2 is a randomly generated network. Tl is the running
time achieved with factoring and reductions on a VAX 8530. T2 is the
running time achieved with the boundary method on a PC 486. Vertices
and edges have reliability = 0.9.
Table 2 K-terminal problem, with failed vertices, all examples are extracted
from [2]
Examples Vertices Edges Reliability F,ax Tl(s) T2(s)
T3x4 12 17 0.708488 3 0.10 0.20
T3 x 5 15 22 0.691933 3 0.47 0.28
T3 x 6 18 27 0.674832 3 2.10 0.33
T3 x 7 21 32 0.657948 3 10.33 0.40
T3x8 24 37 0.641439 3 50.14 0.49
CUBE8 16 24 0.76978 4 4.47 0.30
FRA732 11 21 0.79684 4 12.11 0.80
Note: Tl is the running time achieved with factoring and reductions
on a VAX 8530. T2 is the running time achieved with the boundary
method on a SPARC station. Vertices and edges have reliability = 0.9.
the decomposition method was implemented for the general problem (K-terminal
with imperfect vertices) in C, on a SPARC 2 (30 Mips) and a Tek-Xpress workstation
(Table 2). For the street networks, the difference in performance between the de-
composition method and the factoring with reductions method is shown in Fig. 7. For
graphs with a same fixed F,,,, the running time exponentially grows with the size
IV1 + 1 El of the graphs when factoring with reductions method is used. On the
contrary, for such graphs, the running time linearly grows with the size I VI + IEI, when
the decomposition method is used. In order to estimate the efficiency of the decompo-
sition method, we tested the program on some generated networks with a fixed F,,,. We give in Table 3 the running times for networks with increasing F,,,. These results
show how the time exponentially grows with the size of the boundary sets. As a final
remark, we note that factoring and reductions can solve only networks with
![Page 15: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/15.jpg)
J. Carlieu. C. Lucet / Discrete Applied Mathematics 65 (1996) 141-156 IS
Arpanet Street Network 4x8
I runnmg times
26 I~ondsl ; I I
I I
I I
I f I
I I
Fig. 7. All terminal reliability problem. Street networks 3 x n; (---) runmng times wtth the factoring
reduction method: (--) running times with the decomposition method.
Table 3
Running time for the K-terminal problem with im-
perfect vertices on a SPARC station (All edges and
vertices have reliability = 0.9)
Vertices Edges F “U’l Running
time (s)
80
90
100
140
1 .o
2.0
2.3
2.7
80
90
100
140
108 5 124 5 155 5 255 5
123 6 1’6 6 134 6 204 6
60 112 7 II 70 137 7 21 80 149 7 30
100 196 7 41
80 150 8 86
90 180 9 182
100 196 10 763
![Page 16: A decomposition algorithm for network reliability evaluation](https://reader030.vdocuments.mx/reader030/viewer/2022020402/575008301a28ab1148b42b4a/html5/thumbnails/16.jpg)
156 J. Curlier, C. Lucet / Discrete Applied Mathematics 6.5 (19%) 141-156
IF,,,1 6 6, when the decomposition method makes it possible to solve the general
problem for networks with IF,,,1 6 10. These results prove the extreme efficiency of
this method and the considerable overall improvement in performance on this class of
networks problems.
References
[I] S. Arnborg, Efficient algorithms for combinatorial problems on graphs with bounded decompos-
ability-A survey, BIT 25 (1985) 2-23.
[Z] J.G. Carlier and O.R. Theologou, An efficient program for computing undirected network reliability,
in: R. Avenhaus, H. Karkar and M. Rudnianski, eds., Defense Decision Making (Springer, Berlin,
1991) 3313.
[3] L. Page and J. Perry, A practical implementation of the factoring theorem for network reliability,
IEEE Trans. Reliability 37 (1988) 2599267.
[4] A. Rosenthal, Computing the reliability of complex networks, SIAM J. Appl. Math 32 (1977) 384-393.
[S] A Satyanarayana and M. Chang, Network reliability and the factoring theorem, Networks, 1 (1983)
107-120.
[6] A. Satyanarayana and R.K. Wood, A linear-time algorithm for computing K-terminal reliability in
series parallel networks, SIAM J. Comput. 14 (1985) 818-832.
[7] R. Tarjan, Dividing a graph into triconnected components, SIAM J. Comput. 2 (1973) 1355158.
[S] O.R. Theologou, Contribution to network reliability evaluation. Ph. D Thesis, Department of
Computer Science, Universite de Technologie de Compitgne (1990) (in French).
[9] O.R. Theologou and J.G. Carlier, Factoring and reductions for networks with imperfect vertices,
IEEE Trans. Reliability 40 (1991) 210-217.
[IO] R.K. Wood, Triconnected decomposition for computing K-terminal network reliability, Networks 19
(1989) 2033220.