Efficient Algorithms for the Maximum Concurrent Flow
Problem
Pierre-Olivier Bauguion
Télécom Sud Paris, Orange Labs., France
Walid Ben-Ameur
Télécom Sud Paris, CNRS Samovar UMR 5157, 9 rue Charles Fourier 91000 Evry, France
Eric Gourdin
Orange Labs., 38/40 rue du général leclerc 92130 Issy-Les-Moulineaux, France
In this article, we propose a generic decomposition
scheme for the maximum concurrent flow problem.
This decomposition scheme encompasses many mod-
els, including, among many others, the classical path
formulation and the less studied tree formulation, where
the flows of commodities sharing a same source vertex
are routed on a set of trees. The pricing problem for this
generic model is based on shortest-path computations.
We show that the tree-based linear programming formula-
tion can be solved much more quickly than the path or the
aggregated arc-flow formulation. Some other decompo-
sition schemes can lead to even faster resolution times.
Finally, an efficient strongly polynomial-time combina-
torial algorithm is proposed for the single-source case.
© 2014 Wiley Periodicals, Inc. NETWORKS, Vol. 65(1),
56–67 2015
Keywords: maximum concurrent flow; column generation;
decompositions; combinatorial algorithm; shortest path; sparsest
cut; tree-based formulation
1. INTRODUCTION
Multicommodity flow models have been introduced long
ago, as natural extensions of single flow problems, and, since
then, have been extensively used in many contexts essentially
to capture the movements of different types of commodities
in various real-world activities such as shipment of goods in
transportation models, routing of data streams in telecommu-
nications networks, and distribution of energy, water flows,
electricity (see, e.g., [1]).
Received September 2014; accepted September 2014
Correspondence to: W. Ben-Ameur; e-mail: walid.benameur@telecom-
sudparis.eu
DOI 10.1002/net.21572
Published online 25 December 2014 in Wiley Online Library
(wileyonlinelibrary.com).
© 2014 Wiley Periodicals, Inc.
In this article, we will focus on the maximum concur-
rent flow (MCF) problem. We consider a directed graph with
capacities on its arcs and a set of multicommodity demands
to be routed through the graph. The objective is to com-
pute the maximum γ such that a fraction γ of every demand
can be simultaneously routed without exceeding the available
capacities.
Besides the applications previously mentioned, MCF is
the dual of the linear programming (LP) relaxation of the
sparsest cut problem. A sparsest cut is a cut minimizing the
ratio of the capacity of the cut to the total demand that is
separated by the cut. Many approximation algorithms for this
problem are based on the solution of MCF (see, e.g., [26]).
Another reason to consider MCF is that it gives rise to
extremely difficult problems (see, e.g., [4, 5]). Even if MCF
problems can be solved exactly in polynomial time using lin-
ear programming, the computing time can be quite long. In
fact, the MCF problem can even be solved in strongly poly-
nomial time using the approach of [22], slightly improved in
[15]. The approach is based on the strongly polynomial-time
algorithm of [27] to solve linear programs where the size of
the entries of the constraint matrix is polynomially bounded
in the dimension of the problem. While the algorithms of [22]
and [15] are nice theoretical contributions, they are not really
of practical interest. This led many researchers to design
approximation algorithms for MCF [5, 8, 9, 16, 17, 21].
Flows are traditionally modeled with arc-flow variables
specifying the amount of each commodity on each arc.
By considering classical flow conservation constraints and
capacity constraints one can easily model MCF. However,
such models become inefficient when the size of the linear
program becomes huge. One way to reduce the size of the LP
consists of aggregating the demands either by source or by
destination (see [1, 11]). This generally allows one to solve
larger instances.
NETWORKS—2015—DOI 10.1002/net