a decomposition algorithm for network reliability evaluation

16
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

Upload: jacques-carlier

Post on 21-Jun-2016

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: A decomposition algorithm for network reliability evaluation

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

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

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

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

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

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

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

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

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

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

.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

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

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

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

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

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.