In many systems such as computer network, fuel distribution, and transportation system, it is necessary to change the capacity of some arcs in order to increase maximum flow value from source s to sink t, while the capacity change incurs minimum cost. In real-time networks, some factors cause loss of arc’s flow. For example, in some flow distribution systems, evaporation, erosion or sediment in pipes waste the flow. Here we define a real capacity, or the so-called functional capacity, which is the operational capacity of an arc. In other words, the functional capacity of an arc equals the possible maximum flow that may pass through the arc. Increasing the functional arcs capacities incurs some cost. There is a certain resource available to cover the costs. First, we construct a mathematical model to minimize the total cost of expanding the functional capacities to the required levels. Then, we consider the loss of flow on each arc as a stochastic variable and compute the system reliability.
1. Introduction
Given a directed network flow with unique source s and unique sink t, one of the common problems is the maximum flow problem where the value of flow from s to t should be maximized. Various algorithms have been presented to solve this problem. The first algorithm developed by Ford and Fulkerson [1] was called Augmenting Path Algorithm. Karzanov [2] introduced the first preflow-push algorithm on layered networks. He obtained an O(n3) algorithm. Capacity scaling is another polynomial algorithm developed by Ahuja and Orlin [3]. It seems that the best available time bounds algorithms to solve this problem are based on Alon [4] and Ahuja and Orlin [5].
The budgeted capacity expansion problem has been investigated for different systems. One of them is flow expansion on transportation networks with budget constraints. This problem was studied by Elalouf et al. [6]. The general budget-restricted max flow problem was first discussed by Eiselt and Frajer [7]. Also, another algorithm for optimal expansion problems was provided by Ahuja et al. [8].
Many physical flow systems are regarded as stochastic network flows. In such a system, the system reliability is an important criterion for system performance. Several studies have evaluated network reliability of maximum flow. Yeh evaluated the reliability factor of a network, where arc capacities are stochastic. He defined a simple approach to evaluate reliability of a multistate network [9]. Xiao et al. [10] presented a model for reliability computation in power distribution system. Later, the presented approach in [9] was considerably improved by Salehi Fathabadi and Forghani-elahabadi [11]. In another paper, Yeh [12] designed a survivable network under cost constraints and computed its reliability. For this case, Salehi Fathabadi and Khodaei [13] presented a different method to find the optimal system parameters and computed its reliability. Lin and Yeh [14] proposed a genetic algorithm to find maximal reliability of networks. Also Lin studied stochastic flow network with two commodities [15] and network reliability with budget constraint [16]. In all of the above studies the probability function of the arcs’ capacity was assumed to be discrete. However, in many real-life systems, where the flow is liquid, this assumption is not applicable.
In this paper, we consider network flow systems in which the functional capacities of the arcs are continuous random variables. The investigated problem is to expand the nominal capacities of arcs so that the system would be capable of securing the demands, while the expansion cost is minimal. Then, we evaluate the reliability of the systems as the probability that the network can transfer a desired amount of flow from the source, s, to the sink, t. The former goal is achieved by running the algorithm CEA, which is explained in Section 3 and the later goal is accomplished in Section 4.
Regarding the previous studies [17, 18], our contribution has been compiled based on the following. (i) We define and use the arcs’ functional capacities which are quite different from arcs’ nominal capacities in real-life systems. (ii) The probability functions of the stochastic functional capacities are continuous. (iii) The capacity expansion cost is minimum. The capacity expansion takes place in a discrete manner until the maximum flow reaches the required level. This paper has been arranged as follows. Section 2 defines notations, primary assumptions, and the related theorems. Also, the mathematical model of the problem is constructed in Section 2. Section 3 explains the capacity expansion algorithm. System reliability is computed in Section 4 and eventually a numerical example will be considered in Section 5.
2. Notations and Assumptions
We use the following definitions and assumptions throughout this paper.
G(V,A): A directed network flow with a unique source s and a unique sink t, where V is the set of nodes and A⊆V×V is the set of arcs.
uij: Nominal capacity of (i,j)∈A (the initial built-in capacity of arc(i,j)).
uijf: Functional capacity of arc(i,j)∈A, (the current operational capacity of arc(i,j)∈A).
wij: Amount of capacity expansion on arc(i,j)∈A.
Mij: Maximum capacity expansion for arc(i,j)∈A.
cij: Expansion cost per unit of capacity on arc(i,j)∈A.
αij: Loss factor on (i,j)∈A. The fraction of arc’s capacity is lost due to some stochastic events. Then αij′=1-αij is fraction of arc’s capacity that is able to transmit the flow. We call them transmission factor.
Pi: The ith simple path from s to t. A simple path does not include repeated arcs and/or nodes.
Ωr: The rth category r=1,2,…,R. Each category includes several subsets of transmission factors. In addition, each category is related to set of simple paths that are capable of sending maximum flow from s to t.
The network flow satisfies the following assumption.
Each node is perfectly reliable. This means that the amount of flow passing through a node does not change.
The loss factors and transmission factors of different arcs are statistically independent random variable.
3. Problem Statement
Assume G=(V,A) is a network flow with node set, V; arc set, A; source node s; and sink node t. We assume G includes n nodes and m arcs. Each arc, (i,j), has a nominal capacity of uij. There are some factors in this network that cause loss of flow on each arc. For example, in a water distribution system, evaporation, erosion, or sediment in pipes waste the flow in some parts. For each arc we define a real capacity or the so-called functional capacity and denote it by uijf. uijf equals the real amount of maximum flow that can pass along the arc(i,j). According to the current functional capacities, the real maximum flow value from s to t is v. This value is equal to the functional capacity of the current minimum cut, (S,S-) [19]. We are going to expand the nominal capacity, uij, such that the real maximum flow value is increased by v0 and the total expansion cost is minimized. We know that the expansion cost on arc(i,j), for each unit of capacity, is cij and the maximum capacity expansion is Mij units. For each arc, say, (i,j), there is a loss factor, αij, which is a continuous random variable in interval [0,1] and shows the fraction of nominal capacity that is wasted. Thus transmission factor (αij′=1-αij, for all (i,j)∈A) is computable for any arc. Note that this factor is a continuous random number in interval [0,1] as well. Therefore, the functional capacity of arc(i,j) is computed as uijf=αij′uij. uijfs satisfy 0≤uijf=αij′uij≤uij, (i,j)∈A.
Now using the above notations and assuming (S,S-) is the current minimum s-t cut, the mathematical model of the problem is constructed as
(1)minz=∑(i,j)∈Acijwij,(2)s.t.∑j∈Vxij-∑j∈Vxji={v+v0,ifi=s,0,ifi≠s,t,-(v+v0),ifi=t,(3)∑(i,j)∈(S,S-)αij′uij=v,(4)0≤xij≤αij′(uij+wij),(i,j)∈A,(5)αij′∈[0,1],(i,j)∈A.
Constraints (2) show the flows are balanced at each node other than the source and sink; for the source and sink nodes the amount of out-flow from s equals the amount of in-flow to t and equals v+v0. Constraint (3) shows that the maximum flow, before changing the arcs’ capacities, is equal to v. The constraints (4) guaranty the arc flows do not exceed the functional arcs’ capacities. Finally, continuity of αij′s, and therefore continuity of xij are the impact of constraints (5).
3.1. The Capacity Expansion Algorithm (CEA)
It should be noted that, according to the current functional capacities, the value of the maximum flow is v and is equal to the capacity of the minimum s-t cut, (S,S-). Using the functional capacity, we assume that the current maximum flow is denoted by x={xij}(i,j)∈A and generates the residual network G(x). Suppose Pk is a path from s to t in G. The current amount of flow passing through this path is equal to δk=min{uijf∣(i,j)∈Pk}. For some arcs, (i,j)∈Pk say, it may be δk<uijf. In this case, (i,j) has some residual (free) capacity that may be used, without any cost, to increase the flow on (i,j). If δk=uijf, for an arc(i,j)∈Pk, there is no free capacity left on (i,j) and the capacity of this arc must be increased incurring some cost. According to this point, we define capacity expanding cost for each arc and find the cheapest path from the source node to the sink node. For this purpose the residual network and an auxiliary network called expansion-cost-network are constructed. We denote the later one by G(cost) and it is constructed as follows.
G(cost) include all nodes of G(x). For every arc(i,j)∈G(x) two directed arcs in opposite directions between i and j are drawn in G(cost). Note that, if there already are two arcs between i and j with opposite directions, no more arcs are drawn between these nodes. The arc(i,j) shows the possibility of expanding capacity with cost cij′ on (i,j)∈G(cost). The artificial arc(j,i) represents the possibility of reducing the expanded capacity on (i,j)∈G(cost). It is important to note that, when there is a positive amount of flow going from node i to node j through the arc(i,j), we may decrease it by assuming an artificial arc from j to i with some positive flow xji and cost cji′. Each arc in G(cost) is labeled by cij′, which is the expansion or narrowing cost per unit of capacity. If the flow on arc(i,j) is smaller than the functional capacity, namely, δk<uijf, then this arc steel has room to increase the flow. Hence there is no need to increase the current capacity. The labels for this case are set as cij′=cji′=0. Otherwise, the capacity of (i,j) should be expanded. At this stage of the algorithm, if the capacity of this arc has not been expanded so far, namely, wij=0, then increasing the capacity is possible. Hence we set cij′=cij and cji′=0. If 0<wij<Mij, then, for a better solution, we may increase the capacity or reduce the increased capacity. Therefore the labels are set as cij′=cij, cji′=-cij. Eventually, if the expanded capacity value on arc(i,j) is equal to Mij the capacity expansion is not possible and we can only reduce it. So, the costs are set as cij′=+∞ and cji′=-cij [6].
After setting the labels in G(cost), the cheapest simple path from the source to the sink is found; the capacities are extended on this path as much as possible and the current iteration is ended with computing the maximum flow. This process is repeated until the value of the maximum flow becomes equal to v+v0.
3.2. Pseudocode of CEA
For more details see Pseudocode 1.
Pseudocode 1:
Start
Read the nominal capacities, uij s, and subset of the transmission factors, αij′ s, of the original network, G.
Calculate functional capacity, uijf s, of each arc.
Find the maximum flow, MAX.
While MAX <v+v0 Do
Define the residual graph G(x) and G(cost) as follow
VG(cost)=VG(x) and AG(cost)={(i,j),(j,i)∣(i,j)or(j,i)∈AG(x)}
and let a label for each arc which show the cost of arc expansion as following:
For each (i,j)∈AG(cost) Do
if uij′=uijf-xij>0 and uji′=xij>0 then
set cij′=0 and cji′=0
else
if uij′=0 and uji′=0
if wij=0 then
set cij′=cij and cji′=0
else if 0<wij<Mij then
set cij′=cij and cji′=-cij
else if wij=Mij then
set cij′=∞ and cji′=-cij
end if
end if
end if
Find the shortest path P in G(cost) regarding c′ value
if (sum of the costs on the shortest path < +∞)
∀(i,j)∈P replace the new capacity in G as follow:
if cij′=0 and cji′=0 then
set wijnew=0 and uijnew=uij
else if cij′>0 and cji′≤0 or cij′≤0 and cji′>0 then
set wijnew=min{min{Mpq-wpq∣(p,q)∈P,cpq′>0,cqp′≤0},min{upq-xpq∣(p,q)∈P,cpq′=0,cqp′=0},min{upq+wpq∣(p,q)∈P,cpq′≤0,cqp′>0}} and uijnew=uij+wijnew
end if
end if
end For
Calculate functional capacity using new capacity
Find maximum flow, MAX.
end while
end.
3.3. Algorithm’s Complexity
We now consider the complexity of CEA. We might compute the computational time of this algorithm as allocated to the following four basic operations.
Construction of G(x) and G(cost): concerning residual network, the algorithm allocates costs to the arcs of G(cost). If the network contains m arcs, costs of 2m arcs would be calculated and assigned to the arcs. Thus the algorithm performs this operation in O(m) time.
Finding the shortest path: the algorithm finds the cheapest (shortest) path from the source to the sink according to the cost vector c′. FIFO implementation of the modified label correcting algorithm is the best known algorithm for this purpose. The runtime of this algorithm is O(nm), [19].
Capacity expansions: for each arc belonging to the cheapest path, it would be examined whether capacity expansions are required or not. This operation would be implemented in O(m) time.
Computing the maximum flow: at this stage, the maximum flow algorithm is run. The order of the best known algorithm (highest label preflow push) is O(n2m) [19].
The above steps are repeated until the maximum flow for the first time becomes equal to or greater than v+v0. Suppose S(v0) is the maximum number overall repetition needed to reach this threshold. Finally we have the following result.
Theorem 1.
The capacity expansion algorithm (CEA) runs in O(S(v0)(m+nm+n2m)) time.
4. System Reliability
In order to increase the maximum flow value to the required value, the above algorithm computes the optimal capacity expansion while assuming deterministic transmission factors. But, in case of randomness the algorithm may be used only for observation values of these factors. System reliability is defined as the probability that the maximum flow value satisfies a certain condition, such as appraising some demands [3, 13]. Since the loss factors, transmission factors, and, therefore, the functional capacities are stochastic, the final value of maximum flow is also stochastic. In order to establish an approach for evaluating the system reliability of such systems, we assume the loss factors are continuous uniform random variables and generate N uniformly distributed pseudo-random numbers in the interval [0,1]. The method to generate these numbers is multiplication congruent [20]. Then we calculate the transmission factors for any arc using loss factors. Note these factors are continuous uniform random numbers in the interval [0,1] as well. We denote them by α1′,α2′,…,αN′. We consider several subsets of these numbers and denote them by Aj, j=1,2,…,L. Each subset includes m members. At the beginning of each run of CEA, we take one of these subsets as the arcs’ transmission factors and run the algorithm. At the end of CEA a set of paths that transfer at least v+v0 unit of flow from s to t is generated. It is clear that the generated paths and their number depend on the given subset of transmission factors. Furthermore, there may be subsets of transmission factors that generate similar set of paths. We consider the subsets of transmission factors that generate the same set of paths as a category and assume that the number of categories is R (R≤L). We denote the categories by Ωr, r=1,2,…,R. Also we assume that the number of paths associated to the rth category is Kr.
Now we consider v-r as the final value of maximum flow in each category and compute the density function of v-r. Since 0≤αij′≤1, uijfs are continuous uniform random variables on interval [0,uij] with density function of f(uijf)=(1/uij)I[o,uij]. The number of paths generated at each run of CEA depends on the applied subset of transmission factors. For each path Pi associated with the rth category, the flow value on Pi is computed as
(6)δir=min{upqf∣(p,q)∈Pi},i=1,2,…,Kr,r=1,2,…,R.
The total flow value v-r is equal to the sum of all flow values on the generated paths. That is, v-r=∑i=1Krδir. The distribution functions of δir may be computed according to the following theorem. Then we determine density function of v-r.
Theorem 2 (see [21]).
If t1,t2,…,tn are independent random variables with distribution function Fti(t) and T(1)=min{t1,t2,…,tn}, then FT(1)(t)=1-∏i=1n[1-Fti(t)], [21].
Now, we apply the following procedure to compute the network reliability.
4.1. Computing the Network Reliability
After running CEA L times with input of Aj, j=1,2,…,L, and determining the categories Ωr, r=1,2,…,R, the following procedure is performed to compute the network reliability.
Step 1.
From each category, Ωr, r=1,2,…,R, select one subset of transmission factors, Ar say.
Step 2.
For each r=1,2,…,R and i=1,2,…,Kr, compute
(7)δir=min{upqf∣(p,q)∈Pi},i=1,2,…,Kr,r=1,2,…,R.
Step 3.
Find the probability function of δir, where i=1,2,3,…,Kr and r=1,2,…,R.
Step 4.
Calculate v-r=∑i=1Krδir and its probability functions [21].
Step 5.
Compute the conditional probability; that is, pr (v-r>v∣αi′,i=1,2,…,m), r=1,2,…,R.
Now the system’s reliability is computed using the following equation:
(8)p(v->v)=∑r=1Rpr(v-r>v∣αi′,i=1,2,…,m)R.
5. Numerical Example
In order to illustrate how the algorithm works, we apply it to the network flow shown in Figure 1. In this example, we assume v=3.89 and v0=3.28. We generate the following sequence of pseudo-random numbers, transmission factor, and its subsequences:
(9)(α1,α2,α3,α4,α5,α6)=(0.11,0.1,0.34,0.01,0.2,0.8),(α1′,α2′,α3′,α4′,α5′,α6′)=(0.89,0.9,0.66,0.99≅1,0.8,0.2),A1=(0.89,0.9,0.66,0.99≅1,0.8),A2=(0.89,0.2,0.9,0.8,0.99≅1),A3=(0.89,0.9,0.2,0.99≅1,0.8),A4=(0.89,0.66,0.9,0.8,0.99≅1),A5=(0.2,0.8,0.99≅1,0.66,0.89).
Note that Aj, j=1,2,…,5, has been arranged as (αs1′,α1t′,α12′,αs2′,α2t′).
An example of network flow; arc labels present as (uij,Mij,cij).
We use Aj, j=1,2,…,5, as transmission factors and run CEA to find the related paths from node s to node t. For example, we consider A1 and run algorithm CEA. For more explanation, we describe one stage of implementing this algorithm using A1 in Figure 2.
The network after one stage of running CEA using A1.
Functional capacity—maximum flow: 3.89 unit
Shortest path in G(cost): 1$
Extended capacities
Functional capacity—maximum flow: 5.57 unit
Note that we show the shortest (cheapest) path in Figure 2(b) by solid line and other arcs by dotted line. The result of running CEA using A1 is shown in Figure 3.
The result of running CEA using A1.
Extended capacities
Functional capacities
Also note that the dotted lines in networks Figures 3(a) and 3(b) from note 1 to node 2 in the last stage indicate that no increase has taken place on this arc and that no flow passes through this arc. We see that A3 generates the same set of paths with A1; that is, (s,1,t) and (s,2,t). Therefore we put A1 and A3 in category 1, Ω1. Also, A2 and A4 generate the same paths: (s,1,t), (s,1,2,t), and (s,2,t). Hence we put A2 and A4 in category 2, Ω2. The result of running CAE using A2 is shown in Figure 4.
The result of running CEA using A2.
Extended capacities
Functional capacities
We discard the factor A5, because this subset of the transmission factors reduces the functional capacity of the arcs originating from source to the extent that these arcs are unable to carry at least v+v0 unit of flow. For more explanation, the result of running CEA using A5 is shown in Figure 5.
The result of running CEA using A5.
Extended capacities
Functional capacities
Now, we apply the following steps to compute the network reliability.
Step 1.
We choose the subset A1 from Ω1.
Step 2.
Let δ11=min{us1f,u1tf} and δ21=min{us2f,u2tf} where uijf are random variables that have uniform distribution on [0,uij]; that is, us1f~U[0,3], u1tf~U[0,5], us2f~U[0,6], and u2tf~U[0,6].
Step 3.
Density functions of δ11 and δ21 are computed as fδ11(δ11)=(8/15)-(2/5)δ11 and fδ21(δ21)=(1/3)-(1/18)δ21. Also fδ11,δ21(δ11,δ21)=fδ11(δ11). fδ21(δ21)=((8/15)-(2/5)δ11)I(0,3)(δ11)((1/3)-(1/18)δ21)I(0,6)(δ21).
Step 4.
Let v-1=δ11+δ21 and
(10)fv-1(v-1)={845v-1-127(v-1)2+1180(v-1)3,0≤v-1<3,54135-118v-1,3≤v-1<6,162135-297135×6v-1+30135×6(v-1)2-1135×6(v-1)3,6≤v-1<9.
Step 5.
Now we can calculate the following conditional probability:
(11)P1(v-1>3.89∣α1′=0.89,α2′=0.9,α3′=0.66,P1(v-1>3.89∣∣α4′=0.99≅1,α5′=0.8)=0.29.
Also we implement the above steps for A2 from Ω2 and get the following probability:
(12)P2(v-2>3.89∣α1′=0.89,α2′=0.2,α3′=0.9,P1(v-1>3.89∣∣α4′=0.8,α5′=0.99≅1)=0.37.
Finally, we can calculate the system reliability:
(13)p(v->3.89)=0.33.
Although the reliability network in this example was equal to 0.33, yet this is an effective algorithm which presents a new method for calculating the reliability in networks with continuous components. Although previous algorithms [11–14] also have presented methods for calculating the reliability in the network, but in all of these methods, components, including arcs’ capacity, have been assumed to be discrete, while this assumption is not true for all networks. By presenting this algorithm, we have created an innovation in regard with reliability of networks with continuous capacities. Finally, we would give another example and calculate the reliability of a network in order to elucidate efficiency of these algorithms.
5.1. Another Example
In order to elucidate efficiency of CEA, we consider the network flow shown in Figure 6. Also we assume v=7.25 and v0=5.05. We generate the following pseudo-random numbers and transmission factors:
(14)(α1,α2,α3,α4,α5,α6,α7,α8,α9,α10)=(0.15,0.32,0.1,0.3,0.11,0.34,0.8,0.7,0.6,0.01),(α1′,α2′,α3′,α4′,α5′,α6′,α7′,α8′,α9′,α10′)=(0.85,0.68,0.9,0.7,0.89,0.66,0.2,0.3,0.4,0.99).
We consider several subsets Aj of these numbers that each subset includes m members. Note that Aj has been arranged as Aj=(αs1′,α13′,α3t′,αs2′,α12′,α24′,α34′,α4t′). Also, we implement CEA using Aj. In order to classify the result, we place the result of implementing CEA and reliability algorithm in Table 1.
An example of the network flow; arc labels present as (uij,Mij,cij).
We discard the subset (0.2,0.9,0.7,0.3,0.66,0.7,0.68,0.4) or (0.85,0.9,0.2,0.7,0.8,0.9,0.4,0.3) because these subsets of transmission factors reduce the functional capacity of the arcs which originate from the source or reach the sink, to the extent that these arcs are unable to carry at least v+v0 unit of flow.
Finally we can calculate the system reliability as follows:
(15)p(v->7.25)=0.54.
6. Conclusion
In this study, first, we proposed an algorithm to change the arcs capacities so that the maximum flow value exceeds a predefined value and the total cost of change is minimum. In the algorithm (CEA), arc capacities were expanded on the cheapest paths from the source node to the sink node. Then, system reliability was evaluated when the arcs’ functional capacities were stochastic with continuous probability function. There are several different methods in the literature for evaluating of network reliability, when the random components are mostly discrete. In contrast, we studied that system which has continuous random components. For each arc, a functional capacity was defined that had continuous uniform distribution on [0,uij] and then, the network reliability is calculated.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgment
The authors are pleased to appreciate the respectful referee(s) for their valuable comments and guidance that made this paper more accurate and credible.
FordL.FulkersonD.Maximal flow through a network195683399404MR0079251KarzanovA. V.Determining the maximal flow in a network by the method of pre-flows197415434437AhujaR. K.OrlinJ.A capacity scaling algorithm for the constrained maximum flow problem19952528998AlonN.Generating pseudo-random permutations and maximum flow algorithms199035420120410.1016/0020-0190(90)90024-RMR1066123ZBL0702.680872-s2.0-0025702464AhujaR. K.OrlinJ. B.A fast and simple algorithm for the maximum flow problem198937574875910.1287/opre.37.5.748MR10214162-s2.0-0024733173ElaloufA.AdanyR.CederA.Flow expansion on transportation networks with budget constraints20125411681175EiseltH.von FrajerH.On the budget-restricted max flow problem19823422523110.1007/BF017197912-s2.0-34250233951AhujaR. K.BatraJ. L.GuptaS. K.PunnenA. P.Optimal expansion of capacitated transshipment networks1996891-217618410.1016/S0377-2217(96)90072-72-s2.0-0043130524YehW. C.A simple approach to search for all d-MCs of a limited-flow network2001711151910.1016/S0951-8320(00)00070-3XiaoJ.ZuG.-Q.GongX.-X.WangC.-S.Model and topological characteristics of power distribution system security region201420141332707810.1155/2014/327078Salehi FathabadiH.Forghani-elahabadiM.A note on “A simple approach to search for all d-MCs of a limited-flow network”200994111878188010.1016/j.ress.2009.05.0162-s2.0-67949123084YehW. C.A new approach to evaluate reliability of multistate networks under the cost constraint200533320320910.1016/j.omega.2004.04.0052-s2.0-11144329031Salehi FathabadiH.KhodaeiM.Reliability evaluation of network flows with stochastic capacity and cost constraint20124443945210.1504/IJMOR.2012.048904MR29857542-s2.0-84875780567LinY. K.YehC. T.Maximal network reliability with optimal transmission line assignment for stochastic electric power networks via genetic algorithms20111122714272410.1016/j.asoc.2010.11.0022-s2.0-78751605022LinY. K.Using minimal cuts to study the system capacity for a stochastic-flow network in two-commodity case200330111595160710.1016/S0305-0548(02)00094-1MR19780532-s2.0-0037791894LinJ. S.Reliability evaluation of capacitated-flow networks with budget constraints199830121175118010.1023/A:10075365203932-s2.0-0032279568AvenT.Some considerations on reliability theory and its applications198821321522310.1016/0951-8320(88)90122-62-s2.0-0023859813BallM. O.Computational complexity of network reliability analysis: an overview198635323023910.1109/TR.1986.4335422AhujaR. K.MagnantiT. L.1993Englewood Cliffs, NJ, USAPrentice HallBanksJ.CarsonJ.1984New York, NY, USAPrentice HallMoodA. M.GraybillF. M.BoesD. C.1974McGraw Hill