Exact Methods to compute Network Reliability

72 downloads 0 Views 335KB Size Report
and E V V, the set of arcs (or edges) in G. K a subset of vertices of G, K V. ...... graph, D(GK)=(jKj-1) (jVj-2)!. Satyanarayana and Wood have shown that the.
1

Exact Methods to compute Network Reliability Corinne Lucet & Jean-Fran cois Manouvrier

UMR CNRS 6599 Heudiasyc , Universite de Technologie de Compiegne.

Abstract: In this chapter we present and compare some exact methods to

resolve network reliability problems. 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 or may not continue functioning after the failures of some components. The probability that the network will function is its reliability. Networks are modeled by a graph G = (V,E) composed of elements that fail independently one another with known probabilities. The K-terminal reliability problem has been studied extensively. It consists in evaluating the probability that a given subset of vertices, denoted K, is connected. This problem is NP-hard. We propose here to present the main methods, developed since the 1970's. We rst consider the enumeration methods using elementary states, paths or cuts. Then we explain the factoring method performed by reductions. These allow to handle series-parallel graphs to be processed in linear time. Finally, we present the decomposition method implemented as a table-based reduction algorithm allowing to resolve the reliability problem in linear time for graphs with bounded pathwidth.

Keywords and phrases: reliability, network, enumeration, reduction, factor-

ing, decomposition, pathwidth.

1.1 Introduction There are a lot of works in literature devoted to the problem of network reliability. For general networks, the K-terminal reliability problem is NP-hard [4]. Network reliability has been approached and resolved with di erent methods in the literature. The methods that provide an exact reliability are called exact methods, in opposition to simulation methods that provide an approximate 1

2

Corinne Lucet & Jean-Francois Manouvrier

result. The aim of this chapter is to present and compare some exact methods to resolve network reliability problems. The methods of long standing are the enumeration of states and the enumeration of paths or cuts. Their implementations are light but their complexities grow exponentially with the size of the network. Nevertheless, there exist some works about the probability computation improvement [1][16][21][28]. More recent methods such as factoring, reduction and decomposition, take the network topology into consideration. These are generally more ecient than enumeration. For instance, reductions provide a result in linear time for special graph families such as series-parallel graphs. But for general graphs, reduction and factoring must be combined. The complexity of such methods is directly dependent on the graph topology. So research works about reductions tend to de ne new reductions in order to handle larger graph families [13][30][34][36]. The decomposition presented here belongs to a special algorithm class, called table-based reduction algorithms. It is based on the dynamic programming. We have shown that the network reliability problems can be eciently solved by such a method for graphs with bounded pathwidth [10][23]. This chapter is organized as follows. First, in section 1.2, we describe the problems and give some de nitions. Then in section 1.3, we present the enumeration methods which are state enumeration and path or cut enumeration. Next in section 1.4, we explain the factoring method performed by the reduction method, which is linear for series-parallel graphs. Then in section 1.5, we present the decomposition method, that allows to compute reliability in linear time for graphs with bounded pathwidth. Finally, in section 1.6, we compare the eciency of these methods.

1.2 De nitions and notation

Notation

G=(V,E) a graph with V, the set of vertices in G, and EVV, the set of arcs (or edges) in G. K a subset of vertices of G, KV. A vertex that belongs to K is called a K-vertex. pe and qe pe : the reliability of the component e (e2V or e2E). qe=1-pe . xe a boolean variable for the state of the component e2G: e functions (xe =1) or not (xe =0). R(G) reliability of G. Gi a state of G. G(Gi) partial graph of G associated with Gi . E(X) Probability for the boolean expression X to be true. X will be a Bernouilli variable, so E(X)=Pr(X=1).

Exact Methods to compute Network Reliability

3

x,+,. the boolean operators \not", \or" and \and". jKj , jVj , jEj denote the cardinality of the sets K, V, E.

A stochastic graph Our network model is a graph G=(V,E). This graph is directed if E is a set of ordered pairs, i.e. a set of arcs, or undirected if E is a set of unordered pairs, i.e. a set of edges. The graph is said to be stochastic because each element (vertices, arcs or edges) can fail, statistically independently, with known probability. The failure probability of the element e is denoted qe ( qe 2 [0,1] ) and its reliability is pe =1-qe .

Subgraph and partial graph

A subgraph of a given graph G=(V,E) is a graph G0 =(V0 ,E0) such that V0 V and E0 =(V0 V0 )\E. A partial graph of a given graph G=(V,E) is a graph G00=(V,E00) such that E00E.

Graph state, associated probability and associated partial graph Each element of the stochastic graph is subject to failure. As there are two states for an element (the element functions or fails), there are 2jV j+jE j possible states for the network. One state Gi of the stochastic graph G=(V,E) is denoted < x1 ; x2; :::::; xjV j+jEj > where the boolean xe stands for the state of element e, i.e. xe = 0 when element e fails and xe = 1 when e functions. The associated probability of Gi is: Pr(Gi) =

Y [x

e2G

e  pe + (1 ? xe )  qe ]

With each state Gi of G=(V,E) is associated a partial graph G(Gi )=(V00,E00), such that: u2V00 , ( u2V and xu =1 ), and (u,v)2E00 , ( (u,v)2E, u2V, v2V, and x(u;v) =xu =xv =1 ). In section 1.5, we will also consider states and partial graphs of some subgraphs H and L of G, a stochastic graph with perfect vertices. Hi =< x01 ; x02; :::::; x0jE 0j > denotes one state of H=(V0 ,E0) and H(Hi ) its associated partial graph.

Reliability The reliability of a network G=(V,E) is the probability that G supports a given operation. We distinguish three kinds of operation and hence three kinds of reliability: 2-terminal reliability (also called terminal-pair reliability), K-terminal reliability and all-terminal reliability. When the operation requires that each pair of vertices is able to communicate via at least one operational path, this is

4

Corinne Lucet & Jean-Francois Manouvrier

all-terminal reliability. When the operation requires only a few vertices, a subset K of V, to communicate each other, this is K-terminal reliability. 2-terminal reliability is the probability that two given vertices, called the source and the sink, can communicate. Note that 2-terminal and all-terminal reliability are particular cases of K-terminal reliability. With a directed stochastic graph, the reliability can consider a single source, and the other vertices of K are the sinks. In the literature, the usual stochastic graphs are undirected, often with perfect vertices, i.e. each vertex has a reliability that is equal to one.

1.3 Enumeration Among the enumeration methods, we distinguish between the enumeration of states and the enumeration of paths or cuts.

1.3.1 State Enumeration

A very basic method to compute reliability consists in enumerating all the possible states of the stochastic graph and keeping those that allow the network to function or to keep all the failure states, if they are less numerous.

R(G) =

X

G(Gi ) functions

Pr(Gi ) = 1 ?

X

G(Gi ) fails

Pr(Gi )

Because of the exponential number of possible states, this formula needs to be improved. Instead of enumerating all the states of the network, a method involves classifying them in a rooted binary tree. The nodes of this binary tree are partial graphs associated with a set of states, the root stands for the graph with every element that functions, and the two branches below a node correspond to a state of a given element: whether it functions or not. So the height of this binary tree is jVj+jEj when vertices and edges (or arcs) can fail, and the leaves of the tree are the states of the graph. With this method we look for the failure states of the graph. If a node stands for a failure network, all the states below this node are failure states, and as we know the probability of this set of failure states, we use it to reduce the number of terms in the sum of the previous given reliability formula. Note that a similar method can be used by looking for the operating states; in that case, the root of the binary tree is the network with all element that fail. So this method looks for the failure states by considering the failure of each element one by one in an arbitrary order. In order to nd these states faster, we can choose an ecient order: for 2-terminal reliability, the classical technique is to nd at each step a path from the source to the sink, and to enumerate the sets of states that prevent this path from functioning [12][14]. (Figure 1.1)

Exact Methods to compute Network Reliability b

a

b

c

c

c

a d

f

b e

a

b f

c

f

e

f a

abc

ab

c

f

c

f

e

bc c

b

a

ed

d

c

f

b

b

1

c

a b

a

bc

d

R(G) =

e

d

a

f

af d

d

b a

d

b

a

b

a

e

af

a

f

c

f

5

f bc

c

e

f

e

fb b

b

a

e

f

b

c e

f

? ( qe qa + qe pa qf qb + qe pa qf pb qc + qe pa pf qd qb + qe pa pf qd pb qc + pe qd qa qf pe qd qa pf qb + pe qd qa pf pb qc + pe qd pa qb + pe qd pa pb qc )

+

Figure 1.1: State factorization with the path method. Search for the invalid state sets. 2-terminal reliability.

1.3.2 Path enumeration - Cut enumeration These methods are composed of two steps. First the enumeration of the paths or the enumeration of the cuts provide a boolean expression, required for the second step, which is the computation of this boolean expression probability. There are two ways to do this second step: the inclusion-exclusion method and the technique of the sum of disjoint products.

Path enumeration Another method to compute the network reliability is the enumeration of the minimal paths that provide a working network. The reliability is the probability for the network to have at least a functioning minimal path. These minimal paths are di erent for each reliability problem. For 2-terminal reliability, a minimal path is a path from the source to the sink that does not contain another such path. For K-terminal reliability, the minimal paths are Steiner trees and, for all-terminal reliability, they are spanning trees. For 2-terminal reliability, there are several ways to obtain the minimal paths between two vertices [31]. We present here those which use the connection matrix of size jVj  jVj (or adjacency matrix), denoted A, with the element aij = xij if (i,j)2E, where xij is a boolean variable standing for the arc (or edge) (i,j), else aij = 0. The matrix B=Ak is composed of elements bij . bij is a boolean expression whose terms represent all the paths from vertex i to vertex j composed of k arcs (or edges). So we can compute all the matrices Ak with kjVj to obtain all minimal paths [25]. A more ecient method is in [27].

6

Corinne Lucet & Jean-Francois Manouvrier The four paths are {a,b,c}, {a,f,d}, {e,d} and {e,f,b,c}.

b

a

c

f e

d

Φ (G ) =

x a x b x c + x a x f x d + x e x d + x e x f xb x c

The six cuts are {a,e}, {a,d,f}, {b,e,f}, {b,d}, {c,d} and {c,e,f}.

Φ c (G ) =

x a x e + x a x d x f + xb x e x f + x b x d + x c x d + x c x e x f

Figure 1.2: Path (and cut) enumeration. 2-terminal reliability. For K-terminal reliability with jKj>2, we cite [16][26] for the search of Steiner trees. After the enumeration step, a sum is obtained, that is a boolean expression denoted (G), whose terms are all minimal paths, and each term is the product of the boolean variable associated with the elements that composed the path: P Q (G) = i Pi with Pi = k xik . An example of (G) is on Figure 1.2. This boolean expression will be used to compute the reliability in the two nal sections of 1.3.2: R(G) = E((G)).

Cut enumeration A cut is a set of edges whose failures produce network failure. A minimal cut is a cut that does not include another cut. Another boolean expression can be obtained with the enumeration of the minimal cuts. This boolean expression, c (G), is the complement of (G). So, in the boolean algebra, c (G) = (G). An example is on Figure 1.2. This inversion principle is discussed in [20]. Once c (G) is known, the reliability is computed by: R(G) = 1 - E(c (G)). Cut enumeration is essentially used for 2-terminal reliability. A modi ed connection matrix can be used as in the previous section [24][32]. Other means of enumerating all minimal cuts are in [15][17][35][37].

Inclusion-exclusion formula

One method of transforming a boolean expression such as (G) or c (G) into a probability expression is to use Poincare's theorem, also called the inclusionexclusion method [8][9][21]. Let us consider an example with two minimal paths: (G) = P1 + P2 so E((G)) = E(P1 + P2 ) = E(P1 ) + E(P2 ) ? E(P1  P2 ). The inclusion-exclusion is a generalization of this principle. Here is Poincare's formula for m minimal paths: X E(P ) ? X E(P  P ) + ::::: E((G)) = i i i 1

im 1i1 an articulation point: jFj=1 b> a general boundary set: jFj=3 Figure 1.3: Decomposition principle. As it is not possible to reduce all graphs totally with the reduction method, it is often combined with the factoring method [30][33][36]. The factoring formula divides the reliability problem into two sub-problems:

R(G) = pe  R(G = edge e functions) + (1 ? pe )  R(G = edge e fails) The factoring formula must be applied if and only if no reduction on the graph is possible. Then, some reductions could be applied to the induced sub-problems. Let us now consider stochastic graphs with imperfect vertices. All reductions can be adapted in case of imperfect vertices [19]. The factoring formula is still valid if we consider that e is composed of an edge and its two incident vertices, but the failure probabilities of these vertices are modi ed for the two graphs of the sub-problems [34].

1.5 Decomposition The decomposition method can solve the reliability problem for some classes of stochastic undirected graphs in linear time [10]. First we will consider allterminal reliability problem with perfect vertices in sections 1.5.1, 1.5.2 and 1.5.3. The other problems will be studied in section 1.5.4.

1.5.1 The principle

The decomposition principle for reliability problems was introduced by Rosenthal in 1977 [29]. It generalizes the basic decomposition principle of a graph G into two subgraphs H and L separated by an articulation vertex (Figure 1.3.a), which allows the all-terminal reliability to be computed by the formula: R(G) = R(H )  R(L).

10

Corinne Lucet & Jean-Francois Manouvrier H(Hi )

H(Hk )

L u

L u

v

v

w

w

F

F

Hi and Hk are two operating states that belong to the same class: [uv][w] Figure 1.4: Equivalent states for all-terminal reliability. The decomposition method consists in considering two subgraphs H and L, separated by F, the vertex boundary set, that is a separator, i.e. its removal leaves G disconnected (Figure 1.3.b). Both subgraphs, H and L, have their set of states, respectively fHi g and fLj g, so that the reliability can be written as the formula:

R(G) =

X

Hi ;Lj = H (Hi )[L(Lj ) is connected

Pr(Hi )  Pr(Lj )

To use this formula, it is necessary to combine two by two all the states of H and L. To reduce the corresponding number of combinations, rst we can eliminate the failure states Hi , i.e. the states such that there exists a vertex in H(Hi ) disconnected from the boundary set F, so G cannot be connected. Secondly, we remark that the functioning of G depends only on how the boundary vertices are connected, via H and via L, so we gather together all equivalent operating states in a same class: two states are equivalent if they provide the same boundary vertex connection (Figure 1.4). We denote CH;k the kth class of H. For allterminal reliability, these classes are the partitions of the boundary set F, where blocks stand for the connected components. For instance, the di erent classes of H for a boundary set of three vertices u, v and w are the following:  CH;1 = [u v w] : u, v and w are connected together via H.  CH;2 = [u v] [w] : u and v are both connected via H, and w is isolated from the other two.  CH;3 = [u w] [v] : u and w are both connected via H, and v is isolated from the other two.  CH;4 = [u] [v w] : v and w are both connected via H, and u is isolated from the other two.  CH;5 = [u] [v] [w] : u, v and w are disconnected via H.

Exact Methods to compute Network Reliability Pr(CH;k ) =

11

X Hi = Hi belongs to CH;x

Pr(Hi )

As each class has an associated probability, the previous reliability formula is factored:

R(G) =

X

CH;x ; CL;y = CH;x and CL;y are compatible

Pr(CH;x)  Pr(CL;y )

Two classes CH;x and CL;y are compatible if the connectivity of the boundary set given by CH;x and the connectivity of the boundary set given by CL;y provides the connectivity of the whole graph G. The number of classes is function of jFj, as is the eciency of this method.

1.5.2 Algorithm implementation

We have seen above the decomposition principle which consists in considering two subgraphs H and L of G, and in combining their classes to compute the reliability. Nevertheless, the subgraphs H and L must be solved, i.e. all their class probabilities must be known. Another approach consists in considering only the subgraph H, such that it grows to encompass G. With this end in view, we will describe in this section an algorithm [23], belonging to the table-based reduction algorithm family [2]. At each step of the algorithm, we consider a resolved subgraph whose classes are known and associated probabilities stored in a table, and we enlarge this resolved subgraph by vertex insertions until we have resolved the whole graph. Vertices are numbered from 1 to jVj by the bijection  : f1; 2; :::; jV jg ! V . We denote H(k) the subgraph induced by the subset f (1);  (2); :::; (k)g. There are jVj subgraphs H(1) , H(2), ..., H(jV j) and jVj corresponding boundary sets F(1), F(2), ..., F(jV j) . For each iteration k, there will be classes and associated probabilities to compute. At the kth iteration, the vertex  (k) and its incident edges are added to H(k?1) in order to build H(k) and F(k). To the subgraph H(jV j), there corresponds only one class denoted CH jV j );1 , whose associated probablity is the network reliability. The method consists in computing iteratively the class probabilities of H(1) , H(2), ..., H(jV j) . Hence, R(G) = Pr(CH jV j );1) is reached in jVj-1 iterations. (

)

(

Algorithm: Number the vertices of V. H(1) (f (1)g,fg). F(1)  (1). Pr(CH ;1) 1. (1)

)

12

Corinne Lucet & Jean-Francois Manouvrier

2 to jVj, do Add  (k) and the edges ( (k), (h)) to H(k?1) such that h

Suggest Documents