Abstract
Network flows over time (also called Dynamic Network Flows) are considered as generalized form of standard (static) networks by adding an element of time. The factor of transit time on the arcs which specify the amount of time it takes for one unit of the flows to pass through a particular arc, make these networks different to traditional form of networks. While in most of network flow problems, transit times and capacities are given constant, stochastic or Fuzzy numbers, in this paper we suppose that transit times, capacities and consequently flows on arcs fall within specific ranges expressed as compact intervals. This vagueness in transit times, capacities and flows could arise in a number of ways: 1) when determining the exact capacity or transit time quantities is hard and there may happen errors in determining them which intervals reflect the measurement errors; 2) when it is impossible or even it is not needed to produce neither a distribution nor fuzzy functions but transit times, capacities and flows lie within specific ranges, or vary in time within these ranges. While determining the exact time for traveling in specific path in network transportation system is extremely difficult or almost impossible, determination of interval which can describe the range of required time for travelling in the network would be easy and fully operational. Our contribution in this paper is producing maximum flow and quickest s - t flow algorithms, first to network flows over time with interval-valued capacities and then to T-length bounded network flows over time with interval-valued transit times and capacities.
Keywords
Introduction
Ford and Fulkerson [14, 15] for the first time in the 1960’s introduced flows over time (also called dynamic flows) by including transit time of an arc in the network model. They considered the problem of sending maximum flow from the source node s to the sink node t and showed that this problem can be solved efficiently by one minimum cost flow computation on the given network, where transit times of arcs are interpreted as arc costs. Since then a fair amount of study has been devoted to this topic, for example see the survey of Aronson [3] and Powell et al. [27]. Anderson et al. [2] studied the maximum flow over time problem in a network with zero transit times and time-varying transit times and storage capacities for the case where time is modeled as a continuum. They generalized the Max Flow-Min Cut theorem to the continuous-time model. This result was later extended by Philpott [26] to arbitrary transit times on the arcs. Fonoberova and Lozovanu [13] on the other hand, proposed an algorithm to solve the dynamic maximum flow problem in which capacities are depended on time.
Alonso and Fall [1] using a linear programming formulation of flows over time with piecewise constant capacity and transit times, presented an algorithm to solve a deterministic form of a routing problem in delay tolerant networking. Hashemi et al. [19] introduced two algorithms for dynamic network flow problems in the continuous model, based on a discretization approach. Their algorithms lead to approximate interior solutions and converge to optimum solutions.
Koch et al. [21] deployed measure theory in order to introduce a general model of network flows over time combining both discrete and continuous aspects in only one model. They also generalized the concept of cuts to their case and extend the famous Max Flow-Min Cut theorem to the setting.
Fleischer and Tardos [12] proved a close correspondence between discrete and continuous flows over time when cost, capacities, supplies and demands are independent of time and transit times on arcs are integral. A problem closely related to one considered by Ford and Fulkerson is the quickest s - t flow problem which can be solved in polynomial time by incorporating the algorithm of Ford and Fulkerson into binary search frame work. Burkard et al. [4] using Megiddo’s method of parametric search presented a faster algorithm for the quickest s - t flow problem.
But in most real-world situations, the model’s coefficients like transits times or capacities are not exactly known because relevant data is inexistent or scarce, difficult to obtain or estimate, the system is subject to changes, etc. Therefore, appropriate mathematical programming models for decision support must take explicitly into account. Moreover, fuzzy and stochastic approaches are frequently used to describe and treat imprecise and uncertain elements present in a real decision problem. In fuzzy programming problems, it is assumed that the membership functions of fuzzy sets are known. Also, in stochastic programming problems, it is assumed that the probability distributions of coefficients (viewed as random variables) are known. Ebrahimnejad et al. [6] used the bounded primal simplex algorithm for solving minimum cost flow problem (MCFP) with fuzzy costs which is a fundamental problem in networks and is widely applied in transportation, communication and computer network. After that Ebrahimnejad and Nasseri [7] generalized the network simplex algorithm for solving the same problem. Ghatee et al. [16] transformed the MCFP with fuzzy link costs into multi-objective MCFP. Also, Ghatee and Hashemi [17] deal with fuzzy quantities and relations in multi-objective minimum cost flow problem. In addition, Nasseri and Ebrahimnejad [25] used the fuzzy variable linear programming problems (FVLPs) for solving the flexible minimum cost flow problem. Moreover, Ebrahimnejad and Verdegay [8] and Ebrahimnejad [9], respectively applied the fuzzy bounded primal and dual simplex algorithms for solving maximum flow problem with fuzzy arc capacities and bounded transportation problem with fuzzy demands and supplies as two applications of bounded FVLPs. Ebrahimnejad [10] proposed a simplified method for solving transportation problem with generalized fuzzy numbers as an important network structured linear programming problem. Also, a two-step method has proposed for solving fuzzy transportation problem where all of the parameters are represented by non-negative triangular fuzzy numbers in [11].
In real world applications, however, it is not always easy to specify the membership function or the probability distribution in an inexact environment. Thus, in some of the cases, the use of an interval coefficient may serve the purpose better [20, 29–32]. Interval programming just assumes that information about the range of variation of some (or all) of the parameters is available, which allows to specify a model with interval coefficients. Sengupta and pal [29] presented an algorithm for the shortest path problem when the connected arcs in a transportation network were represented as interval numbers. Using Hukuhara difference, Diamond [5] developed interval-valued version of the Max Flow-Min Cut theorem and Karp-Edmonds algorithm for networks with fuzzy capacities and flows. Although the Hukuhara difference is unique, but it doesn’t always exist, so aim to overcome this situation, Stefanini [30] produced a generalization of Hukuhara difference for interval and fuzzy arithmetic. Moreover Stefanini and Bede [31] introduced generalizations of the Hukuhara differentiability to the case of interval valued functions. They also studied interval differential equations and produced a practical algorithm to solve interval differential equations. Our main approach in this paper is generalizing Ford and Fulkerson’s maximum flow algorithm, first to network flows over time with interval-valued capacities and then to network flows over time with interval-valued transit times andcapacities.
The rest of the paper is organized as fallows. Section 2 gives the necessary definitions and symbolic representations for interval arithmetic. In Section 3, starting with static interval-valued flows, we generalize the concept of flows over time to interval-valued one and then produce an algorithm for the maximum flows over time with interval-valued capacities. Section 4, extends the maximum interval-valued flows over time to the case in which the capacities and transit times are interval-valued, and then gives two algorithms to obtain the quickest and maximum interval-valued flow in T-length bounded networks. Finally, Section 5 concludes the paper.
Interval arithmetic and order operations
As a coefficient, an interval signifies the extent of tolerance or a region that the parameter can possibly take. In reality, inexactness of this kind can be cited in countless situations. Here, all lower case letters denote real numbers and the upper case letters denote the interval numbers or the closed intervals on the real line R. An interval number A = [l A , r A ] is the set of real numbers x such that l A ≤ x ≤ r A .
Let I denote the class of nonempty compact intervals on [0, ∞] and A, B ∈ I such that A = [l A , r A ] and B = [l B , r B ] then we have:
[l
A
, r
A
] is nonnegative if l
A
≥ 0, r
A
≥ 0 and it is positive if l
A
≥ 0 , r
A
> 0 .
3) A ≤ B if l A ≤ l B and r A ≤ r B .
4) The generalized Hukuhara difference of two sets A, B ∈ I (gH-difference for short) is defined as follows ([26]):
Conditions (a) and (b) in (1) are satisfied simultaneously if and only if the two intervals have the same length and l c = r c .
Note: All differences used in this paper aregH-difference.
In this section we first give several basic definitions from graph theory and present some basic notations and then work on the main subject of the section.
A directed graph N = (V, A) consists of a finite nonempty set V of nodes and a set A of arcs whose elements are ordered pairs of distinct nodes. A directed network is a directed graph whose nodes and/or arcs have associated numerical values (typically costs, capacities, transit times, and/or supplies and demands). As usual, we let n denotes the number of nodes and m denotes the number of arcs in N.
For two (not necessarily distinct) nodes u and v in a directed graph N = (V, A), a u - v walk W in N is a sequence of nodes in N, beginning at u and ending at v like W = (u = v0, v1, …, v k = v) where (v i , vi+1) ∈ A for 0 ≤ i ≤ k. A walk in which no node is repeated is a (directed) path. A u - v walk is closed if u = v. A closed walk of length at least 2 in which no node is repeated except for the initial and terminal nodes is a (directed) cycle. In this paper we use terms graph, network, path and cycle instead of directed graph, directed network, directed path and directed cycle for short.
Let S ⊆ V be a set of terminals in network N = (V, A) which can be portioned into a subset of sources S+ and sinks S-. Every source node v ∈ S+ has a supply D
v
≥ 0 and every sink v ∈ S- has a demand D
v
≤ 0 such that ∑v∈SD
v
= 0. In this paper we consider the case with only one source s ∈ V and one sink t ∈ V. In this case, we suppose D
s
= - D
t
= d. A static flow x on N assigns every arc e a non-negative flow value x
e
such that the following flow conservation constraints are obeyed:
Here δ+ (v) and δ- (v) denote the set of arcs e leaving node v and entering node v, respectively.
The static flow x satisfies the supplies and demands if:
For the case of a single source s and a single sink t which we use the term s - t flow: An s - t flow x satisfying supply D
s
= - D
t
= d has value d which we show with |x| = d. A flow x is called feasible if it obeys the capacity constraints x
e
≤ u
e
for all e ∈ A in which u
e
is a positive capacity for arc e. The cost of a static flow x is defined as
Now, we review the concepts such as network flows over time and temporally repeated flows in order to formulate the maximum flow over time problem. Consider network N = (V, A) in which each arc e ∈ A has an associated nonnegative integral transit time τ
e
and a positive capacity u
e
. A flow over time f on N with time horizon T is given by Lebesgue-measurable function f
e
: [0, T] → R+ where f
e
(θ) determines the rate of flow per unit entering arc e at time θ. Suppose that we have an s - t flow over time. In the model without intermediate storage which is desired in this paper, for all ξ ∈ [0, T) and v∈ V ∖ { s, t } we require that:
Note that here f e (θ - τ e ) determines the rate of flow entering arc e at time θ - τ e which arrives to v; the tail of arc e which is an intermediate node, at time θ.
Moreover an s - t flow over time should satisfy the supply D
s
= - D
t
= d in which:
Let x be a feasible static flow in N with path decomposition (x
p
) p∈P and value |x| = ∑p∈Px
p
such that the transit time τ
p
at every path p ∈ P is bounded from above by T. For every path p ∈ P the temporally repeated flow f sends flow at constant rate x
p
into path p ∈ P starting at time zero, ending at time T - τ
p
. The value of a temporally repeated s - t flow f which we show with |f| is given by |f| = T|x| - ∑e∈Aτ
e
x
e
; because according to the definition of temporally repeated flows:
We are in a position to formulate the maximum flow over time problem. In the maximum flow over time problem it is aimed to determine an s - t flow over time f that send as much flow as possible from the source node s to the sink node t within a given time horizon T. Ford and Fulkerson considered this problem in the setting of discrete flows over time. They proved that the problem can be solved efficiently by transforming it to a static minimum cost flow problem in a related graph. Fleischer and Tardos [12] showed that this algorithm directly extends to continuous flows over time. Since we are going to generalize this algorithm for the case with interval data, we give a short description of it. The algorithm of Ford and Fulkerson computes a temporally repeated s - t flow of maximum value. Recall that the value of a temporally repeated flow f with underlying static flow x is given by T|x| - ∑e∈Aτ
e
x
e
. This suggests the following static flow formulation:
Any solution to this problem defines a temporally repeated flow with time horizon T.
Optimality of x with respect to the objective function implies that transit time τ p of any path p ∈ P is bounded by T (A network in which transit time of any path p ∈ P is bounded by T is called T-length bounded network). Furthermore, Ford and Fulkerson [14] proved that a maximum temporally repeated flow with time horizon T is a maximum flow over time with time horizon T.
A static interval-valued s - t flow x = [l
x
, r
x
] assigns every arc e a non-negative interval-valued flow [l
x
e
, r
x
e
]; the set of real numbers x
e
such that l
x
e
≤ x
e
≤ r
x
e
, such that the flow conservation constraints for all v ∈ V ∖ S are obeyed. Again δ+ (v) and δ- (v) denote the set of arcs e leaving node v and entering node v, respectively. In addition interval-valued outflow of node s should be more than interval-valued inflow of it and then s has a supply as
Similarly inflow of node t should be more than outflow of it and then t has a demand
An interval-valued s - t flow x = [l
x
, r
x
] satisfying supply [l
D
s
, r
D
s
] = [- r
D
t
, - l
D
t
] = [l
d
, r
d
] has value |x| = [l
d
, r
d
]. Consequently the cost of a static interval-valued flow x = [l
x
, r
x
] is defined as
Finally an interval-valued flow x = [l x , r x ] is called feasible if it obeys the capacity constraints [l x e , r x e ] ≤ [l u e , r u e ] for all e ∈ A.
For example consider a two-sided street which has two lines in each side but sometimes because of some traffical reasons it changes to three or even four lines just in one side. In this case the upper bound for number of lines in this side of the street is a number between two and four, means [2, 4], then every interval-valued flow in this street should satisfy the constraint [l x , r x ] ≤ [2, 4].
Every directed path with positive interval-valued flow connects a source node to a sink node. At most n + m paths and cycles have nonzero interval-valued flow; out of these, at most m cycles have nonzero flow.
Now we establish the converse assertions. We give an algorithmic proof to show how to decompose any interval-valued arc flow x into an interval-valued path and cycle flow.
Suppose that i0 is a source node. Then some arc (i0, i1) carries a positive interval-valued flow. If i1 is a sink node, we stop; otherwise, the flow conservation constraint of node i1 implies that some other arc (i1, i2) carries interval-valued positive flow. We repeat this argument until we encounter a sink node or we revisit a previously examined node. Note that one of these two cases will occur within n steps. In the former case we obtain a directed path p from source node i0 to some sink node i
k
, and in the latter case we obtain a directed cycle w. In either case the path or the cycle consists solely of arcs with positive interval-valued flow. If we obtain a directed path, we let lf(p) = min{ l
D
i
0
, l
D
i
k
, min { l
x
ij
: (i, j) ∈ p }} and rf(p) = lf(p) + k in which
Then redefine:
Also, for each arc (i, j) in p define:
If we obtain a directed cycle w, we let lf(w) = min{ l x ij : (i, j) ∈ w }, rf(w) = lf(w) + k in which k = min{ (r x ij - l x ij ) : (i, j) ∈ w } and redefine for each (i, j) in w. We repeat this process with the redefined problem until flow conservation constraint for all v ∈ V ∖ S are obeyed. Then we select any node with at least one outgoing arc with a positive interval-valued flow as the starting node, and repeat the procedure, which in this case must find a directed cycle. We terminate when [l x e , r x e ] = [0, 0] for the redefined problem and all e ∈ A. Clearly, the original flow is the sum of flows on the paths and cycles identified by this method.
Notice that if in an obtained path (cycle) lf(p) = k = 0 (lf(w) = k = 0) then we should change the path (cycle) in a way that either lf(p) > 0 or k > 0. It is obvious that always there is a path (cycle) with a desired property; otherwise, suppose that lf(p) = k = 0 (lf(w) = k = 0) for all p ∈ P(w ∈ W). On the other word suppose that there is at least an arc on every path (cycle), say (i, j) with [l x ij , r x ij ] = [0, 0].
Let p = (s = i0, i1, … i k , ik+1, … i l = t) be an arbitrary path and (i k , ik+1) be a first arc on the path with zero interval-valued flow. If i k ∉ S+, then i k is an intermediate node, and interval-valued flow on the former arc on the path i.e. (ik-1, i k ) should be positive. Flow conservation constraint on node i k guarantees that there is another outward arc like with positive flow. Pursuing the same argument for node and repeating the process we will either revisit a node on the path or meet a sink node which in the former case we have a cycle with lf(w) > 0 or k > 0 and in the latter case a path with lf(p) > 0 or k > 0 which is a contradiction.
If i k ∈ S+ then there should be some outward arc that carry a positive interval-valued flow. By pursuing the same argument in this case we will also come to contradiction. Now observe that each time we identify a directed path, we reduce the supply/demand of some terminal to zero or the flow on some arc to zero; and each time we identify a directed cycle, we reduce the flow on some arc to zero. Consequently, the path and cycle representation of the given interval-valued flow x contains at most m + n directed paths an cycles, and at most m of these are directed cycles. □
If we apply Theorem 1, we can decompose the given interval-valued arc flow into interval-valued path-flows as follow:
Consider network N = (V, A) in which each arc e ∈ A has an associated nonnegative integral transit time τ e and a positive interval-valued capacity [l u e , r u e ]. An interval-valued flow over time [l f , r f ] on N with time horizon T is given by Lebesgue-measurable function f e : [0, T] → I in which I denotes the class of nonempty compact intervals on [0, ∞] and [lf e (θ), rf e (θ)] determines the uncertain rate of flow per unit entering arc e at time θ. Although, transit times are fixed, but flow on arc e progresses at uncertain rate. In particular, the interval-valued flow [lf e (θ), rf e (θ)] entering arc e at time θ arrives to the tail of the arc at time θ + τ e . Thus, in order to obey the time horizon T, we require that [lf e (θ), rf e (θ)] = [0, 0] for θ ∈ [T - τ e , T).
Suppose that we have an interval-valued s - t flow over time. In the model without intermediate storage which is desired in this paper, for all ξ ∈ [0, T) and v∈ V ∖ { s, t } we require that:
This implies
Moreover an interval-valued s - t flow over time should satisfy the supply
Let [l x , r x ] be a feasible interval-valued static flow in N with path decomposition [lf(p), rf(p)] p∈P such that the transit time τ p of every path p ∈ P is bounded from above by T. For every path p ∈ P, the temporally repeated interval-valued flow [l f , r f ] sends flow at uncertain rate [lf(p), rf(p)] into path p ∈ P starting at time zero, ending at time T - τ p .
The value of a temporally repeated interval-valued s - t flow [l
f
, r
f
] is given by
Then if we want to have a temporally repeated interval-valued flow with maximum value, we must maximize the objective value in (17) and consequently T|l x | - ∑e∈Aτ e l x e and T|r x | - ∑e∈Aτ e r x e .
Inspired by algorithm of Ford and Fulkerson we produce an algorithm for maximum interval-valued flow over time as follow:
Let N = (V, A) be a network flow with interval-valued capacities u e = [l u e , r u e ] e∈A and time horizon T, then:
Let be an optimal solution of P
L
, solve the next following static problem:
Now, if we name the optimal solutions of the problems P L and P R , say and as and , respectively, then will be an optimal solution for the static network flow N = (V, A) with interval-valued capacities.
Interval-valued T-length bounded network flows over time with interval-valued capacities and transit times
Now consider network N = (V, A) in which each arc e ∈ A has an associated nonnegative interval-valued transit time [l τ e , r τ e ] and a positive interval-valued capacity [l u e , r u e ]. An interval-valued flow over time [l f , r f ] on N with time horizon T = [T, T] is defined similar to Section 3.2. In this case both transit times and capacities are uncertain throughout, so that flow on arc e progresses at uncertain rate, as before. In particular, the interval-valued flow [lf e (θ), rf e (θ)] entering arc e = (u, v) at time θ arrives at v at uncertain time [θ + l τ e , θ + r τ e ]. Thus, in order to obey the time horizon T = [T, T], we require that [lf e (θ), rf e (θ)] = [0, 0] for θ ∈ [T - r τ e , T). As before Let we have a single source s and a single sink t in the network and intermediate storage is not desired. We also require that for all ξ ∈ [0, T) and v∈ V ∖ { s, t } flow conservation constraints and needed supply satisfied (see Section 3.2)
Temporally repeated interval-valued flows with interval-valued transit times
As before, let [l x , r x ] be a feasible interval-valued static flow in N with path decomposition [lf(p), rf(p)] p∈P such that the transit time [l τ p , r τ p ] of every path p ∈ P is bounded from above by T = [T, T]. Note that in this section we have considered that all paths are T-length bounded. For every path p ∈ P, the temporally repeated interval-valued flow [l f , r f ] sends flow at uncertain rate [lf(p), rf(p)] into path p ∈ P starting at time zero, ending at uncertain time [T - r τ p , T - l τ p ].
The value of a temporally repeated interval-valued s - t flow [l
f
, r
f
] is given by
Now since 0 ≤ l
x
p
≤ r
x
p
, 0 ≤ l
τ
p
≤ r
τ
p
and both T - l
τ
p
and T - r
τ
p
are nonnegative for all p ∈ P then:
Then if we want to have temporally repeated interval-valued flow with maximum value, we must maximize T|l x | - ∑e∈Ar τ e l x e and T|r x | - ∑e∈Al τ e r x e .
As before, we produce an algorithm for maximum interval-valued flow over time with interval-valued transit times as follow:
Let N = (V, A) be a network flow with time horizon T, interval-valued transit times and capacities [l τ e , r τ e ] e∈A and u e = [l u e , r u e ] e∈A respectively, then:
Then let be an optimal solution of and solve the next following static problem:
Now if we name the optimal solutions of the problems and, say and as and , respectively, then will be an optimal solution for the mentioned static network flow with interval-valued capacities.
Proof is obvious because we divide the objective value of a temporally repeated interval-valued flow into two problems P L and P R ( and ).
Moreover a solution to problems P L and P R ( and ) can be obtained by adding the arc (t, s) to the original graph with transit time -T and computing the minimum cost circulation in N with transit times interpreted as costs. For example by applying the minimum mean cycle-cancelling algorithm of Goldberg and Tarjan [18] this can be solved in strongly polynomial time.
To see a complexity survey of minimum cost circulation; refer to the book of Schrijver [28].
Numerical example
Now we produce a numerical example which is solved using the proposed algorithm in Section 4.2 and the obtained results are discussed.
Note that all paths at the given network are 12-length bounded. We are going to send maximum interval-valued flow over time from node s to node t within time horizon T = [12, 12] applying the algorithm produced in Section 4.2.
In Step 1 we solve the following static problem:
Using the standard simplex algorithm to solve problem (21) leads to the following optimal solution and optimal objective value:
The optimal solution and optimal value of objective function of problem (22) are achieved asfollows:
Optimal solutions of the problems (21) and (22) compose optimal interval-valued solution of the static network flow with interval-valued capacities shown in Fig. 1(a) as follow:
In Step 2 we decompose the outcome static interval-valued flows into interval-valued flows onpaths:
Now we start to send Starting at time zero, ending at [T - r
τ
p
, T - l
τ
p
]:
This means that at most [21, 77] unit of interval-valued flow over time can be sent within time horizon [12, 12].
Here we want to produce an algorithm which determines an interval-valued s - t flow over time that satisfies demand [l D , r D ] within minimum time [l T , r T ].
Algorithm is very easy; Apply binary search to determine the time horizon T. In each step, solve the problems P L and P R ( and for the case with interval-valued transit times on T-length bounded network) separately for the current value of T. Repeat this approach separately to meet demands and in which and for the given ɛ. The resulted is the quickest time horizon in which the demand which is sufficiently close to, and falls in [l D , r D ] is satisfied.
According to Fleischer and Tardos [12] if demands and transit times are integral in P L and P R ( and ), the mentioned binary search algorithm finds the optimal time horizons and in polynomial time.
Conclusions
In this paper we considered a network flow over time in which transit times, capacities and consequently flow on arcs fall within compact intervals. In fact, sometimes determining the exact quantity of capacities and transit times are either hard, with probable errors or even unwanted. In these cases considering transit times, capacities and flows laid within specific ranges, or vary in time within these ranges may help. In this paper, thanks to Ford and Fulkerson algorithm for the maximum flow over time, we produced interval-valued maximum flow and quickest s - t flow algorithms to network flows over time with interval-valued capacities and transit times. As we mentioned before, the algorithm proposed at section 4 works on T-length bounded networks which is a restriction, then a future work would be producing an algorithm without this restriction.
Footnotes
Acknowledgments
The authors would like to thank the anonymous reviewers and the editor for their insightful comments and suggestions. Moreover, the first and second authors greatly appreciate the office of vice chancellor for research of Islamic Azad University, Parand Branch and Qaemshahr Branch, respectively, for financially supports.
