An improved algorithm for decomposing arc flows into multipath flows
Introduction
The multipath maximum flow problem, an extension of the traditional maximum flow problem [9], has been actively addressed recently [1], [4], [5], [6], [7], [13], [11] due to its applications in fault-tolerant network design.
The traditional (single commodity) maximum flow problem seeks to send the maximum amount of a single commodity from a single source to a single destination through a network subject to flow conservation and capacity constraints. It is well known that this problem can be modeled by either defining flows on arcs or defining flows on paths. This results in two equivalent formulations: the arc flow form and the path flow form. These two forms are equivalent in the following sense. Given any path flow, one can construct an arc flow with the same total flow value by assigning to each arc a flow equal to the sum of all the flows across the arc. The converse can also be done using the well-known path decomposition (see e.g. [2, pp. 79–83]). One advantage of an arc flow over a path flow is that its specification involves a polynomial number of variables. Therefore, almost all the existing algorithms are based on this form. On the other hand, a path flow may be preferred in practice because it specifies how the flows are actually routed from the source to the destination. Therefore efficient algorithms for transformation of path flows into arc flows, and vice versa, are of great practical and theoretical significance. Such efficient schemes exist for the traditional maximum flow problem as explained earlier.
The multipath maximum flow problem differs from the traditional maximum flow problem in that any flow has to be shipped along a multipath channel, i.e., a channel that consists of q arc-disjoint paths rather than one single path from the source to the destination, where q is any given positive integer. This naturally provides protection against up to arc failures. Kishimoto [13] shows that, like the traditional maximum flow problem, the multipath maximum flow problem can also be modeled in two equivalent forms: the q-path flow and the q-path arc flow (defined shortly in Section 2). All the existing algorithms for the multipath maximum flow problem [1], [6], [7], [13] involve two phases:
Phase I: Solve at most q ordinary maximum flow problems to obtain an optimal q-path arc flow.
Phase II: Transform this optimal q-path arc flow into a q-path flow.
The overall worst-case complexity of each of these algorithms is thus , where is the time to solve an ordinary maximum flow problem, and is the worst-case complexity of the scheme used to construct a q-path flow from an optimal q-path arc flow. The current best value of in Phase I is [12]. This implies that the worst-case complexity of Phase I is . The current best value of in Phase II is [1], where is the time to solve a unit-capacity ordinary maximum flow problem. Using the current best value of [3], [8], we get a worst-case complexity for Phase II of .This result is an improvement upon a previous algorithm for Phase II of complexity in [13], where is the worst-case complexity of the perfect matching problem in a bipartite graph with nodes. Since the current best value of is [8], [10], the worst-case complexity of the Phase II algorithm in [13] is .
It is easy to see that none of the two phases is dominant in terms of the worst-case complexity. However, efficient implementation of Phase II has not received as much attention in the literature as Phase I [1], [6], [7], [13]. In this note, we provide an improved algorithm for Phase II of complexity . This is a refinement of the algorithm in [1].
The rest of this paper is organized as follows. We start by introducing some notations and definitions in Section 2; then we present the main algorithm and its analysis in Section 3.
Section snippets
Preliminaries and definitions
For any finite set S, let denote the cardinality of S, and let denote the set of nonnegative real column vectors with dimension . We consider a directed graph with vertex set V, arc set A, and a source–sink pair of nodes in V. Throughout the paper, we will reserve m and n for and , respectively. Let be an arc capacity vector. Let q be a positive integer. Definition 2.1 Multipath maximum flow problem (1) A q-path from s to t is a set of arcs which form q arc-disjoint s–t paths. The
Main algorithm and analysis
In this section, we state our multipath decomposition algorithm and analyze its time complexity.
The input to our algorithm is a directed graph and a q-path arc flow of value from a node s to a node t on G. Our algorithm first constructs an alternate q-path arc flow from s to t on G of the same value , such that the directed graph with is acyclic.
We then identify the set of arcs with arc flow equal to , and find a q-path from s to t in D,
Acknowledgements
This research is supported in part by NSERC grant 283103 for the first author, and by NSERC grant A8085 for the second author. We thank the anonymous referee for the valuable suggestions in improving the presentation of this paper.
References (13)
- et al.
Multi-terminal multipath flowssynthesis
Discrete Appl. Math.
(2004) - et al.
A faster deterministic maximum flow algorithm
J. Algorithms
(1994) - et al.
On multiroute maximum flows in networks
Networks
(2002) - et al.
Network FlowsTheory, Algorithms, and Applications
(1993) - et al.
Distance-directed augmenting path algorithms for maximum flow and parametric maximum flow problems
Nav. Res. Logist. Q.
(1991) - Y.P. Aneja, R. Chandrasekaran, S.N. Kabadi, K.P.K. Nair, Flows over edge-disjoint mixed multipaths and applications,...
Cited by (7)
An Approximation Algorithm for Multiroute Flow Decomposition
2016, Electronic Notes in Discrete MathematicsIntegral flow decomposition with minimum longest path length
2015, European Journal of Operational ResearchCitation Excerpt :Both these approaches are equivalent in such a sense that any path flow can be uniquely transformed to an arc flow with the same total flow value and, conversely, for any arc flow one can construct a path flow with the same total flow value, although there may exist many such path flows (Ahuja, Magnanti, & Orlin, 1993). In most network design problems the arc flow approach is used because it involves much less variables and many algorithms are based on it (Du & Kabadi, 2006). However, an arc flow does not say anything about routing which is essential from a viewpoint of practical demand realization.
Integer version of the multipath flow network synthesis problem
2008, Discrete Applied MathematicsDEAR: Delay-bounded energy-constrained adaptive routing in wireless sensor networks
2012, Proceedings - IEEE INFOCOMReliable adaptive multipath provisioning with bandwidth and differential delay constraints
2010, Proceedings - IEEE INFOCOMSensitivity analysis on the all pairs q-route flows in a network
2010, International Transactions in Operational Research