Mathematical Problems in Engineering

Volume 2016, Article ID 6908120, 13 pages

http://dx.doi.org/10.1155/2016/6908120

## Decision Diagram Based Symbolic Algorithm for Evaluating the Reliability of a Multistate Flow Network

Guangxi Key Laboratory of Trusted Software, School of Computer Science and Engineering, Guilin University of Electronic Technology, Guilin 541004, China

Received 11 July 2016; Revised 6 November 2016; Accepted 16 November 2016

Academic Editor: J.-C. Cortés

Copyright © 2016 Rongsheng Dong et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

Evaluating the reliability of Multistate Flow Network (MFN) is an NP-hard problem. Ordered binary decision diagram (OBDD) or variants thereof, such as multivalued decision diagram (MDD), are compact and efficient data structures suitable for dealing with large-scale problems. Two symbolic algorithms for evaluating the reliability of MFN, MFN_OBDD and MFN_MDD, are proposed in this paper. In the algorithms, several operating functions are defined to prune the generated decision diagrams. Thereby the state space of capacity combinations is further compressed and the operational complexity of the decision diagrams is further reduced. Meanwhile, the related theoretical proofs and complexity analysis are carried out. Experimental results show the following: (1) compared to the existing decomposition algorithm, the proposed algorithms take less memory space and fewer loops. (2) The number of nodes and the number of variables of MDD generated in MFN_MDD algorithm are much smaller than those of OBDD built in the MFN_OBDD algorithm. (3) In two cases with the same number of arcs, the proposed algorithms are more suitable for calculating the reliability of sparse networks.

#### 1. Introduction

With the development of science and technology, network models have been applied to many systems in various fields, such as computer networking, communication, transportation, gas and oil production, power transmission, and logistics [1–3]. In the real world, many systems/networks have been abstracted as multistate systems (MSSs) [4–6], multistate networks (MSNs) [7–9], or stochastic flow networks (SFNs) [10–12]. The components (transmission lines or nodes) of the MSN have several states (failure, working perfectly, and demotion work), so each state of the components is usually modeled to a certain capacity with a probability. The MSNs that satisfy the conservation law are denoted multistate flow networks (MFNs), which are more adaptive to real-word network models [3, 13–16].

Network failures can be disastrous and losses great, so network reliability evaluation has become a major prerequisite to ensure proper functioning of a network [3, 9]. Network reliability is defined as the probability that a required amount of flow (such as data, power, etc.) is transmitted successfully from source node to sink node* t* [3]. The reliability evaluation of a network is NP-hard problem [9]. A lot of algorithms have been provided based on some assumptions, including inclusion and exclusion method [10–12], and sum of disjoint products method [13]. These algorithms can provide an exact value of reliability, but they are limited to the enumeration of the variable combinations. Some approximation algorithms, like the upper and lower bound method [2], Monte Carlo simulation [17], and so forth possess relatively high efficiency but cannot get an exact value. Decision diagrams (DDs) have the advantages of high compactness and operability and of being able to express variable combinations implicitly and are thus one of the more feasible strategies to alleviate the problem of combinatorial explosion. Moreover, DDs can obtain an exact result with Shannon expansion or the extended form. Therefore, the decision diagram has been frequently used to evaluate network reliability because of the aforementioned advantages [18–24]. These algorithms are mainly for evaluating the reliability of the networks with two-state component [18] or a single path transmission [19–23].

For a multistate flow network, most existing reliability evaluation algorithms are based on the set of minimal cuts/paths [24, 25], and generating the set of minimal cuts/paths is another NP-hard problem [1, 26]. Jane and Laih have studied the reliability computation of two-terminal MFNs using a decomposition algorithm, which is better than the exhaustive enumeration method with a lower space complexity, with the prior requirement that the state vectors (*d*_flows) satisfy the demand without minimal cuts/paths [1, 7]. For the case of maximum flow and minimum cost, Terruggia and Bobbio presented a multivalued decision diagram (MDD) based method, which takes full advantage of the operation technology of multivalued decision diagrams so that the reliability evaluation of a MFN is simple and efficient, with a set of minimal cuts [24].

Thus, for calculating the reliability of a MFN, we attempt to propose an exact algorithm that simultaneously solves the following problems: (1) avoid searching for all minimal cuts/paths, and (2) alleviate enumerating the state space as far as possible. In view of this, first, we extend the formal definition of the MFN model to implement symbolic algorithms in this paper, and next two decision diagram based exact algorithms, MFN_OBDD and MFN_MDD, are proposed. A state vector (flow(*d*)) that satisfies the flow requirement is obtained by using the maximum flow algorithm in a constructed virtual network in the proposed algorithms, without locating all minimal cuts/paths. In MFN_OBDD, the ordered binary decision diagram (OBDD) structure and its operation technology are introduced, a capacity/state of each arc is represented by a Boolean variable, and four operating functions are defined. The reliability of a MFN is then described and solved accurately. The MDD structure with multibranch and operation technology is introduced; each arc is denoted by a multivalue variable, and three operating functions are defined in MFN_MDD. The correctness and efficiency of the algorithm are verified by experiments. Compared to the spatial decomposition algorithm of Jane and Laih [1], the proposed algorithms, which lower the computational complexity, do not require enumerating and decomposing the state space of the components.

The remainder of this article is organized as follows. In Section 2, an extended formal MFN model and a definition of MFN reliability are provided. In Section 3, elementary knowledge of OBDD and MDD is reviewed. In Section 4, the OBDD-based algorithm, MFN_OBDD, and the MDD-based algorithm, MFN_MDD, are proposed, and both their computational and storage complexity are analyzed. In Section 5, computational experiments are presented, and comparisons between the proposed algorithms and the decomposition algorithm of Jane and Laih are made. Conclusions are finally drawn in Section 6.

#### 2. Multistate Flow Network Model and Reliability

In this section, a two-terminal (one source and one sink) MFN is modeled. Let be a MFN where is the source,* t* is the sink, with is the set of vertexes, with is the set of arcs, with is the set of ’s capacities, is the set of capacity numbers, with is the set of ’s capacity probabilities, , is the set of the output flows from to , obviously, is the maximum flow of the network, is the demand transmitted from to , and . In addition, the following mapping relationship was established:

An important property of MFN is that each node satisfies the flow conservation law. For a node, the total amount of traffic input is equal to the total output flow. Thus, the flow from the source into the network is equal to the output from the sink.

In this paper, network must satisfy the following assumptions:(1)Each vertex is perfectly reliable. For the unreliable vertex case, vertexes and arcs can be treated as components of the same type.(2)The capacity of each arc is stochastic with a given probability distribution.(3)The capacities of different arcs are stochastically independent.

The vector of capacities denotes the state vector of the network where is the state of . denotes the maximum flow from to . Vector is satisfiable for a specified demand if ; otherwise it is unsatisfiable. A satisfiable flow(*d*) can be obtained by Lemma 1.

Lemma 1 (see [1]). *Given a MFN, , and a satisfiable state vector flow( d) can be obtained at least when is satisfiable, where with consists of flows through each arc , and with is the vector of the maximum capacities of arcs.*

*Proof. *Construct a new network based on the network with a fictitious vertex and a fictitious arc that has a fixed capacity from to . Obviously, is a minimal cut set of network . According to the maximum-flow minimum-cut theorem, the maximum flow from to is . Each arc of , , , has a flow recorded as when obtains the maximum flow. These flows constitute a state vector as ; that is, there is a feasible flow recorded as to satisfy the demand . Therefore, the lemma is proved.

For a MFN, we deduce the conclusion from the above. If is satisfiable for demand with , , and , then with and . According to Corollary of [1], a flow(*d*) may be obtained in time.

In this paper, we study the reliability evolution of a MFN with a demand . Then the MFN’s reliability is defined as follows.

*Definition 2. *For a MFN with demand from source to sink , the probability of the state space corresponding to the satisfiable vectors of the network with is the reliability of the MFN. That is, the reliability of is

#### 3. Ordered Binary Decision Diagram and Multivalued Decision Diagram

In this section, we review the concept of ordered binary decision diagrams (OBDD) and Multivalued Decision Diagram (MDD). An OBDD is a directed acyclic tree for Shannon decomposition and provides a compact, canonical, and efficiently manipulative representation for Boolean functions. A MDD is an extension of an OBDD.

##### 3.1. Ordered Binary Decision Diagram

If denotes a Boolean expression on with being a Boolean variable of , the** ite** (If-Then-Else) format of a binary decision diagram (BDD) is defined aswhere , is the complement of (if , ; else if , ), , and . A BDD has two terminal nodes that correspond to Boolean constants, 0 and 1, respectively. Each nonterminal node denotes a Boolean variable with two branches corresponding to the Boolean expressions of and of for Shannon decomposition. Then each nonterminal node in BDD represents an** ite**(, , and ) and it is different from the others.

An ordered binary decision diagram (OBDD) is a BDD with a constant order for Boolean variables. The order of the Boolean variables from root to terminal is descending or increasing. Some operations can be defined between two OBDDs with the same variable order, and a new compact OBDD with the same variable order is obtained by an operation.

For example, Figure 1 shows the complete binary tree (Figure 1(a)) and the OBDD (Figure 1(b)) for the Boolean expression with the variable order . Obviously, the OBDD stores the same information with fewer nodes. If we trace the path ①→③→⑤→⑦ and reach terminal node 1, the value of with variable assignment = (0, 0, 1) is 1. Figure 1(c) shows the OBDD for expression with the same variable order, and Figure 1(d) shows the new OBDD obtained by an operation “·” (conjunctive,** And**) between the two OBDDs.