An improved algorithm for decomposing arc flows into multipath flows

https://doi.org/10.1016/j.orl.2005.01.005Get rights and content

Abstract

We consider a multipath maximum flow problem introduced by Kishimoto (Networks 27(4)(1996)279–291). The focus is on efficient transformation from arc flows into multipath flows, where a multipath flow is a nonnegative combination of multipaths. A new algorithm that is more efficient than existing ones is proposed for the transformation.

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 q-1 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 O(qω+γ), 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 O(nmlogm/nlognn) [12]. This implies that the worst-case complexity of Phase I is O(qnmlogm/(nlogn)n). The current best value of γ in Phase II is O(mφ) [1], where φ is the time to solve a unit-capacity ordinary maximum flow problem. Using the current best value of φ=O(min{mn2/3,m3/2}) [3], [8], we get a worst-case complexity for Phase II of O(min{m2n2/3,m5/2}).This result is an improvement upon a previous algorithm for Phase II of complexity O(m2θ) in [13], where θ is the worst-case complexity of the perfect matching problem in a bipartite graph with 2(q+m) nodes. Since the current best value of θ is O(m(q+m)1/2) [8], [10], the worst-case complexity of the Phase II algorithm in [13] is O(m3(q+m)1/2).

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 O(m2). 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 |S| denote the cardinality of S, and let R+|S| denote the set of nonnegative real column vectors with dimension |S|. We consider a directed graph G=(V,A) with vertex set V, arc set A, and a source–sink pair {s,t} of nodes in V. Throughout the paper, we will reserve m and n for |A| and |V|, respectively. Let u={uij}(i,j)AR+m 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 st 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 G=(V,A) and a q-path arc flow f¯R+m of value λ from a node s to a node t on G. Our algorithm first constructs an alternate q-path arc flow fR+m from s to t on G of the same value λ, such that the directed graph D=(V,A+) with A+={(i,j)A:fij>0} is acyclic.

We then identify the set S0 of arcs with arc flow equal to λ, and find a q-path from s to t in D, P0

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)

  • R. Chandrasekaran et al.

    Multi-terminal multipath flowssynthesis

    Discrete Appl. Math.

    (2004)
  • V. King et al.

    A faster deterministic maximum flow algorithm

    J. Algorithms

    (1994)
  • C.C. Aggarwal et al.

    On multiroute maximum flows in networks

    Networks

    (2002)
  • R.K. Ahuja et al.

    Network FlowsTheory, Algorithms, and Applications

    (1993)
  • R.K. Ahuja 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,...
There are more references available in the full text version of this article.

Cited by (7)

  • An Approximation Algorithm for Multiroute Flow Decomposition

    2016, Electronic Notes in Discrete Mathematics
  • Integral flow decomposition with minimum longest path length

    2015, European Journal of Operational Research
    Citation 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.

  • Sensitivity analysis on the all pairs q-route flows in a network

    2010, International Transactions in Operational Research
View all citing articles on Scopus
View full text