A simple algorithm to search for all minimal cutsets with unreliable nodes

0 downloads 0 Views 41KB Size Report
A minimal cutset is a cut between source node and sink node such that any proper ... unreliable nodes using the MCs in the original network with perfect nodes.
Volume 08 http://www.complexity.org.au/

A simple algorithm to search for all minimal cutsets with unreliable nodes Wei-Chang Yeh Department of Industrial Engineering, Feng Chia University P.O. Box 67-100, Taichung, Taiwan 407, R.O.C. Email: [email protected] Abstract A minimal cutset is a cut between source node and sink node such that any proper subset of such minimal cutset is not a cut. A simple method is proposed to determine all minimal cutsets in a network subject to both arc and node failure. The proposed method exactly determines minimal cutsets for an unreliable network from the minimal cutsets of the associated network with perfect nodes and arcs. This eliminates the further checking required by the best known algorithm for this procedure and hence provides a more efficient approach. The proposed method requires only elementary concepts and is simple to understand and implement. By coping with unreliable nodes and arcs the algorithm provides a valuable tool for analyzing the reliability of an existing network.

1.

Introduction

In recent years, network reliability theory has been applied extensively in many real-world systems (Samad 1987, Yeh 1998, and Aven 1987 & 1988). Reliability evaluation approaches exploit a variety of tools for system modeling and calculation of reliability indices. Among the most popular tools are network-based algorithms founded in terms of either minimal cutsets (MCs) or minimal paths (MPs). Unfortunately, to search for all MCs or MPs are NP-hard problems (Allan, Billinton and De Oliveira 1976, Valiant 1979, Allan, Rondiris & Fryer 1981, Nahman 1982, Xue 1985, Ball 1986, Ahuja, Magnanti and Orlin 1993, Nahman 1997 & 1994). Moreover, most of such works suppose each node is perfectly reliable. However, nodes also have a certain probability of failure, thus, both arc and node failures should be considered in the enumeration of MCs. Nevertheless, for the MC problem in the network with unreliable nodes, the best-known method proposed by Fard and Lee (1999) requires extensive calculation and verification. The need for a more efficient and intuitive method to search for all MCs without an extensive re-enumeration procedure thus arises. The main purpose of this paper is to present an efficient method to search for all of the MCs in a modified network with unreliable nodes using the MCs in the original network with perfect nodes. Received: 15 Jul 2000 Accepted: 01 Nov 2000

–1–

© Copyright 2001 http://www.complexity.org.au/vol08/yeh01/

Complexity International

2.

Volume 08

Notations, Nomenclature, And Assumptions

Notation: G(V, E) : a network with the set of nodes V and the set of arcs E. s, t : s, t∈V are the specified source node and sink node, respectively. XG, Xg : the set of all MCs in the network with perfect nodes and with unreliable nodes, respectively. E(Xg) : {α | α⊆E for all MCs α in Xg}⊆Xg. V(Xg) : {α | α⊆V for all MCs α in Xg}⊆Xg. U(Xg) : {α | α∩V≠∅ and α∩E≠∅ for all MCs α in Xg}⊆Xg. Vx(c, w), Vx(c) : Vx(c, w)={v∈V | euv∈w and there is a path between nodes x and v without passing through any arc in c, where u∈V, x∈{s, t}, w⊆c, and c is a MC}. If w=c, then Vx(c)=Vx(c, w). Ex(c, w), Ex(c) : Ex(c, w)={euv∈E | v∈w, u∉c and there is a path between nodes x and v without passing through any node in c, where u, v∈V, x∈{s, t} w⊆c, and c is a MC}. If w=c, then Ex(c)=Ex(c, w).

Nomenclature: MC/MP:

It is a cutset/path between nodes s and t such that any proper subset of MC/MP is not a MC/MP, i.e. if any arc is removed from the set, then the remaining set is no longer a cutset/path.

Proper subset: If α is a proper subset of Α, then α≠Α and α≠∅. Separated:

If there are no paths or arcs between nodes s and t, then nodes s and t are called separated.

Assumptions: The limited-flow network satisfies the following assumptions (Fard and Lee 1999): 1. The failure of a node inhibits the work of all arcs incident from it. 2. The capacities of different arcs and nodes are statistically independent. 3. Both arcs and nodes are either operational or failed.

yeh01

–2–

© Copyright 2001

Complexity International

3.

Volume 08

Preliminaries

Before introducing the proposed algorithm, some useful properties and results will be described in this section. Consider the modification of the original network by assuming nodes are unreliable. The following theorem is an alternative way to describe MC. Theorem 1 If c is a MC, then each path connected nodes s and t must pass through at least one element in c. The following theorem will show that E(Xg)=XG. Hence, we will focus on solving the problem of the enumeration of all MCs in which elements include nodes of the modified network with unreliable nodes in the rest of this study. Theorem 2 If XG and E(Xg) are the set of all MCs in which all elements are arc sets of the network with perfect nodes and with unreliable nodes, respectively, then E(Xg)=XG. Proof: If c∈XG, then nodes s and t are separated after removing c from the network no matter whether the nodes are perfect or unreliable. Thus, if c∈XG, then c∈E(Xg). If c∈E(Xg), then all of the elements in c are arcs, i.e., c∈XG. Hence, E(Xg)⊆XG. From the above, this theorem is true. Next, the following three observations are all directly from the definition of E(Xg), V(Xg), and/or the functions Es and Vt. Observation 1 If cs={{s}} and ct={{t}}, then cs, ct∈V(Xg), and Es(cs)=Et(ct)=∅. Observation 2 If cE∈E(Xg), then cE=Es(Vt(cE))=Et(Vs(cE)). Observation 3 If cV1∈V(Xg)−{{s}} and cV2∈V(Xg)−{{t}}, then cV1=Vt(Es(cV1)) and cV2= Vs(Et(cV2)). Theorem 3 If cG∈XG, cV∈V(Xg) and cV⊂Vs(cG), then all of the paths between any nodes in Vs(cG)−cV and s must pass through at least one node in cV. Proof: Assume v∈Vs(cG)−cV. If there is a path between nodes s and v without passing through any node in cV, then there is a path from nodes s to t via node v without passing through any node in cV. Hence, this theorem is as follows. When cG∈XG, the results as shown in the following theorem are also true to Vt(cG).

yeh01

–3–

© Copyright 2001

Complexity International

Volume 08

Theorem 4 If cG∈XG, then there is one and only one MC cV⊆Vs(cG). Proof: If nodes s and t are not separated after removing Vs(cG), then cG is not a MC. Therefore, there is a MC cV in Vs(cG). If there is another MC cU⊆Vs(cG), then all of the paths between any nodes in cU(⊆Vs(cG)−cV) and s must pass through at least one node in cV, and all of the paths between any nodes in cV(⊆Vs(cG)−cU) and s must pass through at least one node in cU by Theorem 3. Hence, cV=cU and this lemma is proved. The following corollary follows the above theorem directly. Corollary 1 If cG∈XG and no proper subset of Vs(cG) is a MC, then Vs(cG)∈V(Xg). The following important theorem proves that we can find out all of V(Xg) just in term of Vs(cG) without knowing Vt(cG). It is implemented to generate all MCs in V(Xg) from XG in the proposed algorithm. Theorem 5 V(Xg)={Vs(cG), where there is no proper subset of Vs(cG) is MC for all cG∈XG}∪{t}. Proof: Let Vg={Vs(cG), where there is no proper subset of Vs(cG) is MC for all cG∈XG}∪{t}. Then, Vg⊆V(Xg) from Corollary 1. Next, let cV∈V(Xg). If there is a path between nodes s and t without passing through any arc in Et(cV), then this path does not pass through any node in cV. Hence, there is a MC in Et(cV). If Et(cV)∉XG, then there is a MC cE⊂Et(cV) and cE∈XG. From Theorem 4, there is also a MC in Vs(cE)(⊂cV), i.e. Et(cV)∈XG. Moreover, cV=Vs(Et(cV)) by Observation 3, i.e. cV∈Vg. Hence, V(Xg)=Vg. The following theorem states that there is no duplication in making the MC in V(Xg) generating from a MC in XG using Theorem 5. Hence, there is no need to eliminate the identical MCs after using Theorem 5. Theorem 6 If c1, c2∈XG and c1≠c2, then Vs(c1)≠Vs(c2). Proof: Since, if Vs(c1)=Vs(c2), then c1=c2, where for all c1, c2∈XG. Thus, if c1, c2∈XG and c1≠c2, then Vs(c1)≠Vs(c2). The following two corollaries, both directly from Theorem 5, discuss two special situations about the Vs(c). They are also implemented in the proposed algorithm to check quickly and easily if Vs(c) is a MC or not to reduce the running time. Corollary 2 If c∈XG and |Vs(c)|=1, then Vs(c)∈V(Xg). Corollary 3 If c∈XG and {s}⊂Vs(c), then Vs(c)∉V(Xg). yeh01

–4–

© Copyright 2001

Complexity International

Volume 08

The following theorem, similar to Theorem 5, provides a simple way and an efficient way to search for U(Xg) in terms of XG without eliminating the duplications of MC. Theorem 7 U(Xg)={c | c=Vc∪Ec, where Vc⊆Vs(cG), none of proper subset of Vc is a MC in V(Xg), Ec=cG E(cG, Vc), for all cG∈XG}. The following theorem is the criteria implemented in our algorithm for building the associated MCs of the network with unreliable nodes. It is directly from the definition of Xg, V(Xg), E(Xg), and U(Xg). Theorem 8 Xg=V(Xg)∪E(Xg)∪U(Xg), where V(Xg), E(Xg) and U(Xg) are located for by the expressions discussed in Theorems 3-7.

4.

The Proposed Algorithm

All MCs are known in a network in advance, the run time to solve the MC problem in the corresponding network with unreliable nodes can be reduced dramatically in terms of these MCs. Our algorithm is based on the above concept. The following, which is implemented Corollaries 2 and 3 in STEPs 1 and 2, respectively. Theorems 5-6 are implemented in STEPs 3-5, helps to find all MCs in each network with unreliable nodes while all MCs are known in advance in the original network. Algorithm: 0. Let XG={c1, c2, …, cp}, V(Xg)={{t}}, E(Xg)=XG, U(Xg)=∅, and i=1. 1. If |Vs(ci)|=1, then V(Xg)←V(Xg)∪{Vs(ci)} and go to STEP 4. 2. If s∈Vs(ci), then U(Xg)←U(Xg)∪{Vc∪(ci−Es(ci, Vc))} and go to STEP 4, for all proper subset Vc of Vs(ci) and none of proper subset of Vc is a MC. 3. If Vs(ci) is a MC, then V(Xg)←V(Xg)∪{Vs(ci)}, U(Xg)←U(Xg)∪{Vc∪ (ci−Es(ci, Vc))}, and go to STEP 4, for all proper subset Vc of Vs(ci). 4. If i

Suggest Documents