A Minimal Path-Based Method for Computing Multistate Network Reliability

Most of modern technological networks that can perform their tasks with various distinctive levels of eﬃciency are multistate networks, and reliability is a fundamental attribute for their safe operation and optimal improvement. For a multistate network, the two-terminal reliability at demand level d , deﬁned as the probability that the network capacity is greater than or equal to a demand of d units, can be calculated in terms of multistate minimal paths, called d -minimal paths ( d -MPs) for short. This paper presents an eﬃcient algorithm to ﬁnd all d -MPs for the multistate two-terminal reliability problem. To advance the solution eﬃciency of d -MPs, an improved model is developed by redeﬁning capacity constraints of network components and minimal paths (MPs). Furthermore, an eﬀective technique is proposed to remove duplicate d -MPs that are generated multiple times during solution. A simple example is provided to demonstrate the proposed algorithm step by step. In addition, through computational experiments conducted on benchmark networks, it is found that the proposed algorithm is more eﬃcient.


Introduction
e economic development and social well-being of modern society are increasingly dependent on the quality of service (QoS) of a variety of technological networks, such as computer and communication networks [1,2], manufacturing networks [3], logistics/supply chain networks [4][5][6][7], and power transmission networks [8], and a major challenge which we have to face is ensuring their safety and normal operation against potential malfunctions. Reliability is a fundamental attribute for the safe operation of modern technological networks [9], and demands for the quantification of network reliability are steadily growing in the networked society [10].
A network that can have a number of distinctive levels of performance is called multistate network [11,12]. Most of modern technological networks are often deemed as multistate networks for reliability analysis. For instance, a computer network can be modeled as a multistate network with a set of edges (links) and a set of nodes, in which an edge represents a transmission line and a node denotes a computer center involving several routers or switches. In practice, a transmission line is composed of several physical lines, such as fiber cables, twisted pairs, or coaxial cables, and all of the physical lines may provide a specific capacity or fail, that is, every transmission line has multiple capacities (states) with a probability distribution, which results in a number of different levels of transmission capacity for the whole computer network. Such a computer network is thus treated as a typical multistate network. Multistate network with components having many different states (different levels of performance) is an extension of the traditional binary-state network with components having only two possible states: either completely failed or perfectly functioning [13][14][15][16]. Given a multistate network, the two-terminal reliability at demand level d, denoted as R d , is defined as the probability that the network capacity is greater than or equal to a demand of d units. A variety of algorithms have been presented to calculate R d , and these algorithms can be broadly categorized into direct methods and indirect methods [17]. One important type of indirect method for the exact evaluation of R d is using d-minimal paths (d-MPs). A d-MP, say x, is a minimal network state vector with the max-flow of the network under x being equal to d. Provided that all d-MPs are found, the well-known Inclusion-Exclusion method [14], the Sum of Disjoint Products method [18][19][20], or the State Space Decomposition method [21] are available to exactly compute the two-terminal reliability at demand level d. us, solving all d-MPs is a critical issue to the two-terminal reliability at demand level d.
ere are two important mathematical models with respect to the d-MP problem. e first mathematical model for solving d-MPs is originally proposed by Lin et al. [22].
is model requires all minimal paths (MPs) and contains three constraints that are established by the network structure and the flow-conservation law. An MP is a subset of edges, such that if any edge is removed from it, the remaining is no longer a path. e second mathematical model for solving d-MPs is proposed by Yeh [23].
is model without requiring MPs information is a componentbased formulation with three constraints. Note that the model by Yeh [23] is derived from the well-known max-flow mathematical programming model; thus, it is more applicable to directed networks. Based on the model of Yeh, Xu et al. [24] combined the max-flow algorithm and the implicit enumeration method to seek d-MPs. Niu et al. [25] recently improved the model by Yeh [23] and pointed out that if the model is applied to an undirected network, each undirected edge in the network should be treated as two directed edges with the opposite direction. In such a case, however, the number of variables in the model is dramatically increased, which could significantly add to the difficulty of the d-MP problem. e model by Lin et al. [22] applicable to both directed networks and undirected networks has been widely used by most of the existing algorithms [26][27][28][29][30]. For example, Lin [26] proposed a simple method to solve d-MPs of a network with unreliable nodes; Yeh [27] proposed a cycle-checking method to verify whether a feasible solution to the model is a d-MP; Chen and Lin [28] suggested the fast enumeration method to solve all of the feasible solutions to the model; Forghani-Elahabad and Bonani [29] proposed an improved enumeration method to search for d-MPs. Lin and Chen [30] recently proposed a new max-flow evaluation method to find d-MPs.
In addition to the methods based on the above two models, there are also several other methods for solving d-MPs. For example, Satitsatian and Kapur [31] proposed an approximate algorithm to find a subset of d-MPs using the minimal improvement paths algorithm; Ramirez-Marquez et al. [32] proposed an algorithm to find potential d-MPs using the information sharing approach that a selected number of edges share information among each other. Different from the abovementioned methods that find d-MPs for a fixed demand level d, Bai et al. [33] considered the problem of finding all d-MPs for all possible demand levels and proposed a recursive method to solve it. By overcoming the obstacles of the method by Bai et al. [33], Yeh [34] recently proposed a new addition-based algorithm with better time complexity.
As stated earlier, the model by Lin et al. [22] has been extensively applied to the d-MP problem. And yet, we note that the capacity constraints in this model are too relaxed, such that a large number of enumerations need to be implemented in order to find all d-MPs, which to an extent influences the computational efficiency. Recently, Niu et al. [25] improved Yeh's model [23] by imposing stronger capacity constraints on network components. Because the capacity constraints of network components in both models are identical, the ideas in [25] can also be used to improve the model by Lin et al. [22]. In addition, the major cost for solving d-MPs from the model by Lin et al. [22] lies in identifying duplicate d-MPs, and an effective and efficient method for removing duplicates is always desirable. is paper is devoted to developing a new efficient algorithm for finding all d-MPs. To advance the solution efficiency of d-MPs, an improved model is constructed by redefining capacity constraints of network components and MPs. e constructed model is an improvement to the model by Lin et al. [22]. Furthermore, a technique with better efficiency is proposed to remove duplicate d-MPs. e time complexity of the proposed algorithm is analyzed, and a simple example is provided to illustrate the proposed algorithm. Finally, through computational experiments, it is found that the proposed algorithm is more efficient in finding all d-MPs. e rest of this paper is organized as follows. Section 2 introduces the multistate network model, the fundamental results for solving d-MPs, and the Inclusion-Exclusion method. In Section 3, an improved model for finding d-MPs is constructed, and an efficient technique is developed to remove duplicate d-MPs. Also, an algorithm for solving d-MPs without duplicates is proposed, together with a discussion on its time complexity. In Section 4, an illustrative example is provided to demonstrate the proposed algorithm. Computational experiments on two benchmark networks are performed in Section 5 to investigate the efficiency of the proposed algorithm through comparisons with the existing methods. Section 6 presents the concluding remarks. e multistate network discussed herein satisfies the following assumptions [28,30]. (1) Each node is perfectly reliable, which means no capacity constraint is imposed on nodes. (2) e state/capacity of each edge e i (1 ≤ i ≤ m) is a nonnegative integer-valued random variable which takes values from 0 to W i according to a given distribution. (3) e 2 Complexity states/capacities of different edges are statistically independent. (4) All flows in the network obey the conservation law, i.e., total flows into and from a node (not source and sink nodes) are all equal.

2.2.
Calculating R d in Terms of D-MPs. As mentioned before, once all d-MPs are found, the well-known Inclusion-Exclusion method [14], the Sum of Disjoint Products method [18][19][20], or the State Space Decomposition method [21] are available to calculate R d . While the Inclusion-Exclusion method is not as efficient as the Sum of Disjoint Products method [18][19][20] or the State Space Decomposition method [21], it is simple and easy to understand. erefore, we briefly introduce how it performs in calculating R d . Assume y 1 , y 2 , . . . , y σ are all d-MPs, and let , and x ≥ y i means that x j ≥ y i j for j � 1, 2, . . . , m; then, R d can be calculated via the Inclusion-Exclusion method as follows: where In addition, it should be pointed out that when the number of d-MPs is huge, the Sum of Disjoint Products method [18][19][20] or the State Space Decomposition method [21] is applicable to the calculation of R d . Readers are encouraged to refer to [18][19][20][21] for the details of the two methods.

e Fundamental Results for Solving d-MPs.
where 0(e i ) � (0, . . . , 0, 1, 0, . . . , 0), i.e., capacity is 1 for e i and 0 for other edges, that is, two conditions must be fulfilled for a d-MP x. e first condition suggests that the network capacity under x is equal to d, and the second reveals that capacity degradation of any edge with nonzero capacity would lead to a smaller network capacity (below d). e above definition implicitly demonstrates that a d-MP is also the minimal state vector satisfying the demand level d.
e well-known model proposed by Lin et al. [22] is one of the two fundamental models with respect to d-MPs. Suppose that there are totally p MPs, P 1 , P 2 , . . . , P p , from the source node s to the sink node t in the network, and the flow . . , f p ) consists of flows travelling through all MPs. e following model by Lin et al. [22] is the foundation of most of the existing algorithms.
. . , f p ) satisfies the following conditions: where Since each unit of flow sent from source node s to sink node t should travel through one of the MPs, the summation of flows travelling through all MPs must be equal to d, which is reflected by condition (3). Condition (4) points out that the flow travelling through P j should not exceed the maximal capacity of P j (1 ≤ j ≤ p), and condition (5) indicates that the flow through e i should not be above the largest capacity of e i ( 1 ≤ i ≤ m). Equation (6) pinpoints the relationship between the current state of e i and the flow through Generally, the algorithms [22,[26][27][28][29][30] grounded on Lemma 1 consist of three steps: Step 1: solve all d-MP candidates Step 2: verify d-MP candidates to obtain real d-MPs Step 3: remove duplicate d-MPs.
Each d-MP is also a d-MP candidate, and most of the existing methods need to search for all d-MP candidates prior to determining all d-MPs (Step 1). e feasible solutions derived from Lemma 1 are d-MP candidates. A d-MP candidate is not necessarily a d-MP; then, a verification step is required (Step 2). e methods for verifying d-MP candidates include the direct verification method [30], the comparison method [22,26,28], and the cycle-checking method [27]. e direct verification method is mainly based on the definition of d-MPs, that is, every d-MP candidate x derived from Lemma 1 is verified to determine whether it satisfies M(x − 0(e i )) < d for each x i > 0. If the answer is "yes," x is a d-MP; otherwise, x is not a d-MP. e rationale behind the comparison method is that, for a d-MP candidate x, if there exists no d-MP candidate y such that x > y(x > y means x i ≥ y i for i � 1, 2, . . . , m and x j ≥ y j for at least one j ( 1 ≤ j ≤ m)), then x is a d-MP. A major drawback for the Complexity comparison method is the high-computational complexity. e cycle-checking method is to check whether the network under x has a cycle. In contrast to the direct verification method and the comparison method, the cycle-checking method holds the efficiency advantage, but it is more applicable to directed networks. e set of d-MPs derived from Step 2 may contain duplicate d-MPs which significantly contribute to the computational burden of reliability evaluation but have no effect on the final reliability value, and then there is need to remove duplicate d-MPs (STEP 3). (5) is said to be a feasible flow vector. It is obvious that solving all of the feasible flow vectors is the first step and also the major obstacle for finding all d-MP candidates. e burden of solving feasible flow vectors is greatly dependent on the capacity ranges determined by conditions (4) and (5); thus, the solution efficiency would be improved if the capacity ranges in conditions (4) and (5) can be shrunk. As can be seen below, the lower bounds in condition (5) have the potential to be raised and the upper bounds in conditions (4) and (5) have the potential to be dropped. Now, we define a special state vector

The Proposed Algorithm
. . , W m ) in which capacity level is 0 for e i and capacity level is the largest capacity for other edges; then, a crucial necessary condition for a state vector to be a d-MP can be attained.
In fact, eorem 1 reveals that is an improved lower capacity bound of e i in d-MPs, and thus can be employed in condition (5) to shorten the capacity range. By the renowned max-flow algorithm, computing M(W(0 i )) requires O(mnlog n) time [36]; then, the time complexity of determining all e time complexity of finding all L i for .
Hence, the upper bounds in conditions (4) and (5) , f 2 , . . . , f n ) satisfies the following conditions: Proof. Directly from eorem 1 and Lemma 1. It can be easily understandable that eorem 2 is an improvement to Lemma 1 due to the stronger capacity constraints (8) and (9). Here, we adopt an example to illustrate the advantage of eorem 2 in comparison with Lemma 1. e network in Figure 1 is a simple network with two MPs: P 1 � e 1 , e 2 and P 2 � e 3 , and the largest state vector is W � (3, 2, 2). Given the demand level d � 3, a 3-MP candidate x � (x 1 , x 2 , x 3 ), by Lemma 1, should satisfy the following conditions: that is, en, a total number of 9 flow vectors determined by conditions (18) and (19) need to be checked to solve 3-MP candidates in the worst case. When d � 3, , by eorem 2, should satisfy the following conditions: that is, x 3 � f 2 .
As a result, a total number of 4 flow vectors determined by conditions (25) and (26) need to be checked to solve 3-MP candidates in the worst case. By comparison, it can be seen that eorem 2 holds an advantage over Lemma 1 owing to a smaller number of flow vectors to be checked.

Removing Duplicate d-MPs.
e set of d-MPs derived from Lemma 1 or eorem 2 may contain duplicate d-MPs in the sense that one d-MP has the potential to be generated multiple times. Removing duplicate d-MPs is the most timeconsuming step of the d-MP problem [22,[26][27][28][29][30]. e traditional method for removing duplicate d-MPs is the component-wise comparison method. Although the component-wise comparison method is simple and easy to understand, it has the deficiency of poor computational efficiency. In this section, an efficient technique will be developed to remove duplicate d-MPs and its computational efficiency is higher than the component-wise comparison method. Given a state vector x, its associated value Φ(x) is defined as follows: en, the following theorem indicates that there exists a one-to-one relationship between the state vector x and its associated value Φ(x). Proof. us, x i − y i � 0 for all i � 1, 2, . . . , m when m i�1 (x i − y i )π i− 1 � 0 holds, which means x � y. e aim of introducing the concept of the associated value is to transfer each state vector into a unique number. Based on the relationship between a state vector and its associated value, the task of removing duplicate d-MPs can be accomplished by sorting all of the associated values. For example, consider the network in Figure 1, and it is trivial to obtain that x � (1, 1, 2) and y � (2, 2, 1) are all the 3-MPs. By equation (30), Φ(x) � log(1 × π 0 + 1 × π 1 + 2 × π 2 ) � 3.173075 and Φ(y) � log(2 × π 0 + 2 × π 1 + 1 × π 2 ) � 2.898824. Because Φ(x) � 3.173075 ≠ Φ(y) � 2.898824, it is directly concluded that x � (1, 1, 2) and y � (2, 2, 1) are not duplicates each other. For

Complexity
Output: All d-MPs without duplicates.
Step 0. Calculate min U j , d for 1 ≤ j ≤ p, min W i , d and L i � max 0, d − M(W(0 i )) for 1 ≤ i ≤ m, and let Ω � ∅.
Step 1. Use the fast enumeration algorithm to solve all of the feasible solutions (i.e., feasible flow vectors) to conditions (7)-(9), and transform each feasible solution into its corresponding d-MP candidate by equation (10). Suppose x 1 , x 2 , . . . , x σ are all the obtained d-MP candidates.
Step 3. Use the quick sort or merge sort method to remove all duplicate elements in Ω, and the remaining elements correspond to all of the d-MPs without duplicates.
Step 0 is a preprocessing step for calculating lower and upper capacity bounds in conditions (8) and (9). In Step 1, all d-MP candidates are solved by using the enumeration method. In particular, we notice that the fast enumeration method reported by Chen [37] has been proven to be more efficient than the traditional enumeration method; thus, it is used to solve all of the feasible flow vectors in Step 1. e details regarding the fast enumeration method can be referred to Chen [37] and Chen and Lin [28]. All d-MP candidates are verified in Step 2, and the associated value Φ(x j ) corresponding to each d-MP x j is calculated.
Step 3 is to remove duplicate d-MPs.
e computational complexity of every step is analyzed as follows. Given that the method by Chen and Lin [28] is regarded as an efficient algorithm for finding d-MPs, we compare it with the proposed algorithm in terms of computational complexity. In addition, while the method by Lin and Chen [30] is a newly reported method and is also considered to be efficient in solving d-MPs, it does not include the step of removing duplicates. erefore, it is unfair to compare it with the proposed algorithm from the perspective of computational complexity. However, we will compare both algorithms through numerical examples in Section 5 when the step of removing duplicates is incorporated into the method by Lin and Chen [30].
Recall that the method by Chen and Lin [28] is based on Lemma 1 to search for all d-MP candidates. Note that the role of Step 1 for solving all d-MP candidates in the proposed algorithm is identical with that of Steps 1 and 2 in the method by Chen and Lin [28]. e theoretical results in Section 3.2 indicate that the time complexity of finding d-MP candidates based on eorem 1 is upper bounded by the one based on Lemma 1; therefore, it is easy to conclude that the proposed algorithm holds an advantage over Chen and Lin's method [28] in solving d-MP candidates.
Moreover, the role of Steps 2 and 3 in the proposed algorithm is equivalent to that of Step 3 in the method by Chen and Lin.
Step 3 of Chen and Lin's method utilizes the component-wise comparison method to find out d-MPs and remove duplicate d-MPs at the same time, so its computational complexity is O(mσ 2 ). And yet, the computational complexity of Steps 2 and 3 in the proposed algorithm is totally Because O(m 2 σn log n) < O(mσ 2 ), the computational complexity of the proposed algorithm in finding out d-MPs and removing duplicate d-MPs is lower than that of Chen and Lin's method [28]. Note that even though one more Step 0 needs to be implemented by the proposed algorithm compared with the method of Chen and Lin [28], it has no impact on the computational complexity of the whole algorithm considering O(mp) < O(m2σn log n) < O(mσp). erefore, the proposed algorithm has a distinct efficiency advantage in solving d-MPs.

An Illustrative Example
e classical bridge network shown in Figure 2 is adopted to demonstrate how the proposed algorithm works. e data of edges are presented in Table 1. e network in Figure 2 has 4 MPs from s to t: P 1 � e 1 , e 2 , P 2 � e 1 , e 3 , e 5 , P 3 � e 4 , e 5 , and P 4 � e 4 , e 3 , e 2 . Suppose the demand level is d � 3; then, all 3-MPs can be obtained using the following steps.

Efficiency Investigation by Numerical Examples
In this section, we investigate the efficiency of the proposed algorithm. As mentioned in Section 2.2, Lemma 1 proposed by Lin et al. [22] is one of the most important models with respect to d-MPs, and is also the foundation of most of the existing methods [26][27][28][29][30]. As an improvement to Lemma 1, eorem 2 is the foundation of the proposed algorithm. So, we compare the proposed algorithm with the ones based on Lemma 1. Also, given that the methods by Chen and Lin [28] and Lin and Chen [30] are newly developed algorithms and also considered to be efficient in solving d-MPs, we implement the numerical experiments to compare the proposed algorithm with them. Meanwhile, since Lin and Chen [30] did not consider the step of removing duplicate d-MPs, we incorporate the proposed technique into the method of Lin and Chen for a fair comparison. All of the three algorithms require MPs as prior knowledge. Actually, MPs can be easily determined using the existing methods, such as the methods by Chen and Lin [38] and Bai et al. [39], so it is unnecessary to include this procedure when we compare the efficiency. All algorithms are coded in MATLAB 2009 and are implemented on a PC with Intel(R) Core (TM) i5-3210M 2.50 GHz CPU and 8 GB of RAM. Figure 3. e largest state vector is set to W � (7,5,6,4,4,5,4,6,7), and the max-flow of the network under the largest state vector W is D � 12. To draw a full picture of the efficiency of different algorithms, all of the demand levels from 1 to 12 are examined, i.e., 1-MPs, 2-MPs, . . ., and 12-MPs are solved. In numerical experiments, we are interested in the required computational time for finding all d-MPs. In addition, we use ratios, defined as the CPU time consumed by the reported methods by Chen and Lin [28] and Lin and Chen [30] divided by the CPU time consumed by the proposed algorithm, respectively, to exhibit the relative efficiency for the sake of intuitively capturing the performances of different algorithms. e computational results are summarized in Table 3, including the number of d-MPs, the CPU times in seconds consumed by different algorithms and their ratios. By Table 3, we make the following observations. Compared with the method by Chen and Lin [28], the proposed algorithm spends a smaller amount of CPU time in solving d-MPs for every demand level d. us, the proposed algorithm is more efficient than Chen and Lin's method. Notice that the ratio T CL /T, representing the advantage of proposed algorithm over the method by Chen and Lin for finding d-MPs, is greater than 4 for every demand level d except d � 12, indicating that the proposed algorithm holds a distinct advantage in most cases. Furthermore, when the demand level d is intermediate (d � 5, 6, 7, 8), the ratio T CL / T is above 30, which exhibits the considerable advantage of the proposed algorithm. e CPU time consumed by the proposed algorithm is less than that consumed by Lin and Chen's method [30] in

Example 2.
In this section, we consider a relatively larger network in Figure 4 and consider two scenarios, where the largest states of all edges are equal to 4 and 5, respectively. For each scenario, five demand levels, i.e., d � D/2 − 2, D/2 − 1, D/2, D/2 + 1, and D/2 + 2, where D is the max-flow of the network under the largest state vector, are examined. We still use ratios, defined as the CPU time consumed by the reported methods by Chen and Lin [28] and Lin and Chen [30] divided by the CPU time consumed by the proposed algorithm, respectively, to exhibit the relative efficiency. e experimental results are summarized in Table 4, including the number of d-MPs, the CPU times in seconds consumed by different algorithms and their ratios. It can be seen from Table 4 that all ratios (T CL /T and T LC / T) that denote the advantage of proposed algorithm over the methods by Chen and Lin [28] and Lin and Chen [30] for finding d-MPs are greater than 1 for every demand level d (d � D/2 − 2, D/2 − 1, D/2, D/2 + 1, D/2 + 2) in both scenarios; then, the proposed algorithm is more efficient than both methods. It is noteworthy that the method by Chen and Lin cannot find all 6-MPs (7-MPs) within 20000 CPU seconds, while the proposed algorithm requires 815.486 CPU seconds (1538.119 CPU seconds) that is far less than 20000 CPU seconds to generate all 6-MPs (7-MPs). In addition, the efficiency difference between the proposed algorithm and the method by Chen and Lin [28] is more prominent than that between the proposed algorithm and the method by Lin and Chen [30].
As an NP-hard problem, searching for d-MPs is a challenging task. e comparative results derived from Table 4 reveals that the proposed algorithm does contribute to the efficiency improvement of solving d-MPs without duplicates. us, the suggested algorithm can be used to accelerate the computation of network reliability. Network reliability is a key performance parameter in network design and improvement [9]. By employing the proposed algorithm, the network supervisor can efficiently capture the quality of service of real-world systems to make managerial decisions, especially to figure out the bottleneck of network improvement in many enterprises or organizations. Note: T CL and T LC are the computational times of Chen and Lin's algorithm [28] and Lin and Chen's algorithm [30], respectively, and T is the computational time of the proposed algorithm.   8 Complexity

Concluding Remarks
Reliability evaluation is an effective manner to capture the operational state of practical networks. One important type of method for multistate network reliability evaluation is using d-MPs. is paper presents a new efficient method to search for d-MPs for the multistate network reliability problem. On the one hand, an improved model is constructed to solve d-MPs by redefining capacity constraints of network components and MPs, and the model is an improvement to the well-known fundamental model. On the other hand, a technique superior to the traditional comparison method is proposed to remove duplicate d-MPs. e computational complexity of the proposed algorithm is analyzed, and a simple example is provided to illustrate the proposed algorithm. In addition, through computational experiments, it is found that the proposed algorithm is more efficient in terms of finding all d-MPs. For future research, there is still potential for improving the suggested algorithm. For instance, transmission cost is also an important attribute of real-world networks, such as transportation networks or power transmission networks, and thus, extending the suggested algorithm to network reliability subject to cost constraint is worthy of study. Furthermore, it is interesting to study how to modify the suggested algorithm to be an approximate algorithm for tradeoff between execution time and the obtained set of d-MPs.

Data Availability
All data are provided in full in the results section of this paper.

Conflicts of Interest
No conflicts of interest exist in this submission.