scispace - formally typeset
Open AccessJournal ArticleDOI

Faster and Simpler Algorithms for Multicommodity Flow and Other Fractional Packing Problems

Naveen Garg, +1 more
- 01 May 2007 - 
- Vol. 37, Iss: 2, pp 630-652
Reads0
Chats0
TLDR
This paper considers the problem of designing fast, approximate, combinatorial algorithms for multicommodity flows and other fractional packing problems and presents new, faster, and much simpler algorithms for these problems.
Abstract
This paper considers the problem of designing fast, approximate, combinatorial algorithms for multicommodity flows and other fractional packing problems. We present new, faster, and much simpler algorithms for these problems.

read more

Content maybe subject to copyright    Report

Faster and Simpler Algorithms for Multicommo dity Flow and other
Fractional Packing Problems
Naveen Garg
Jochen Konemann
y
Abstract
This paper considers the problem of designing fast, approximate, combinatorial algorithms for
multicommodity ows and other fractional packing problems. We provide a dierent approach
to these problems which yields faster and much simpler algorithms. In particular we provide the
rst p olynomial-time, combinatorial approximation algorithm for the fractional packing problem;
in fact the running time of our algorithm is strongly polynomial. Our approach also allows us
to substitute shortest path computations for min-cost ow computations in computing maximum
concurrent ow and min-cost multicommodity ow; this yields much faster algorithms when the
number of commo dities is large.
Max-Planck-Institut f ur Informatik, Im Stadtwald, 66123 Saarbrucken, Germany. Supported by the EU ESPRIT
LTR Pro ject N. 20244 (ALCOM-IT).
y
Universitat des Saarlandes, Im Stadtwald, 66123 Saarbrucken, Germany.
0

1 Intro duction
Consider the problem of computing a maximum
s
-
t
ow in a graph with unit edge capacities. While
there are many dierent algorithms known for this problem we discuss one which views the problem
purely as one of packing
s
-
t
paths so that constraints imposed by edge-capacities are not violated. The
algorithm asso ciates a length with each edge and at any step it routes a unit ow along the shortest
s
-
t
path. It then multiplies the length of every edge on this path by 1 +
for a xed
. Thus the longer
an edge is the more is the ow through it. Since we always choose the shortest
s
-
t
path to route ow
along, we essentially try to balance the ow on all edges in the graph. One can argue that, if, after
suciently many steps,
M
is the maximum ow through an edge, then the ow computed is almost
M
times the maximum
s
-
t
ow. Therefore scaling the ow by
M
gives a feasible ow which is almost
maximum.
Note that the length of an edge at any step is exponential in the total ow going through the edge.
Such a length function was rst prop osed by Shahrokhi and Matula [12] who used it to compute the
throughput of a given multicommodity ow instance. While this problem (and all other problems
considered in this pap er) can be formulated as a linear program and solved to optimality using fast
matrix multiplication [15], [12] were mainly interested in providing fast, p ossibly approximate, com-
binatorial algorithms. Their procedure, which applied only to the case of uniform edge capacities,
computed a (1 +
!
)-approximation to the maximum throughput in time polynomial in
!
1
. The key
idea of their procedure, which was adopted in a lot of subsequent work, was to compute an initial ow
by disregarding edge capacities and then to reroute this, iteratively, along short paths so as to reduce
the maximum congestion on any edge.
The running time of [12] was improved signicantly by Klein
et.al.
[8]. It was then extended and
rened to the case of arbitrary edge capacities by Leighton
et.al.
[9], Goldb erg [4] and Radzik [11] to
obtain b etter running times; see Table 1 for the current best b ound.
Plotkin, Shmoys and Tardos [10] and Grigoriadis and Khachiyan [6] observed that a similar technique
could b e applied to solve any fractional packing or covering problem. Their approach, for packing
problems, starts with an infeasible solution. The amount by which a packing constraint is violated is
captured by a variable which is exp onential in the extent of this violation. At any step the packing is
modied by a
xed amount
in a direction determined by these variables. Hence, the running time of
the procedure depends upon the maximum extent to which any constraint could be violated; this is
referred to as the
width
of the problem [10]. The running time of their algorithm for packing problems
being only pseudo-p olynomial, [10] suggest dierent ways of reducing the width of the problem.
In a signicant departure from this line of research and motivated by ideas from randomized rounding,
Young [16] proposed an
oblivious rounding
approach to packing problems. Young's approach has the
essential ingredient of previous approaches | a length function which measures, and is exp onential
in, the extent to which each constraint is violated by a given solution. However, [16] builds the
solution from scratch and at each step adds to the packing a variable which violates only such packing
constraints that are not already too violated. In particular, for multicommodity ow, it implies a
procedure which does not involve rerouting ow (the ow is only scaled at the end) and which for the
case of maximum
s
-
t
ow reduces to the algorithm discussed at the beginning of this section.
Our Contributions.
In this pap er we provide a unied framework for a host of multicommodity ow
and packing problems which yields signicantly simpler and faster algorithms than previously known.
Our approach is similar to Young's approach for packing problems. However, we develop a new and
simple combinatorial analysis which has the added exibili ty that it allows us to make the greatest
1

possible advance at each step. Thus for the setting of maximum
s
-
t
ows with integral edge capacities,
Young's pro cedure routes a unit ow at each step while our procedure would route enough ow so as to
saturate the minimum capacity edge on the shortest
s
-
t
path. This simple mo dication is surprisingly
powerful and delivers b etter running times and simpler proofs. In particular, it lets us argue that
the
contribution of a constraint to the running time of the procedure cannot exceed a certain bound which
is independent of the width
. This yields the rst strongly-p olynomial combinatorial approximation
algorithm for the fractional packing problem (Section 3).
Our approach yields a new, very natural, algorithm for maximum concurrent ow (Section 5) which
extends in a straightforward manner to min-cost multicommodity ows (Section 6). Both these algo-
rithms use a min-cost ow computation as a subroutine as do all earlier algorithms. Contradicting
popular belief that using min-cost ow as a subroutine is better, we provide algorithms for these two
problems which use shortest path computations as a subroutine and are faster than previous algo-
rithms by at least a factor min
n
n;
nk
log
k
m
o
where
k; m; n
are the number of commo dities, edges and
vertices respectively.
Table 1 summarizes our results.
T
sp
and
T
mcf
are the times to compute single-source shortest paths
and single-commo dity min-cost ow in a graph with p ositive edge lengths and costs while
T
orc
is the
time taken for each call to an oracle as in [10]. All our algorithms are deterministic and compute
a (1 +
!
)-approximation to the optimum solution. For brevity we dene
C
1
def
=
d
1
1
log
1+
1
m
e
where
(1
1
)
2
= 1 +
!
and
C
2
def
=
d
1
2
log
1+
2
m
1
2
e
where (1
2
)
3
= 1 +
!
.
Problem Previous Best Our running time Improvement
Max. multicomm. O(
!
3
m
2
log
m
) [13]
mC
1
(
kT
sp
)
!
1
ow
Fractional Packing Pseudo-polynomial
mC
1
T
orc
Strongly poly.
running time [10, 16] running time
Spreading metrics
O
(
!
3
nm
log
nT
sp
) [3]
mC
1
(
nT
sp
)
!
1
Maximum
O
(
k
(
!
2
+ log
k
) log
nT
mcf
) (2
k
log
k
)
C
2
T
mcf
In constants
concurrent ow [11, 9] (2
k
log
k
+
m
)
C
2
T
sp
For
k
m=n
Max. cost-bounded
O
(
k
(
!
2
+ log
k
) log
n
log(
!
1
k
) (2
k
log
k
+ 1)
C
2
T
mcf
log(
!
1
k
)
concurrent ow
T
mcf
) [5] (2
k
log
k
+
m
+ 1)
C
2
T
sp
For
k
m=n
Table 1
: A summary of our results
Note that in the running time of our algorithms for concurrent ow problems we can replace
C
2
log
k
by
O
(log
n
(
!
2
+ log
k
)) using a trick from earlier papers; we remark on this in Section 5.
2 Maximum multicommodity ow
Given a graph
G
= (
V ; E
) with edge capacities
c
:
E
!
R
+
and
k
pairs of terminals (
s
i
; t
i
), with one
commodity associated with each pair, we want to nd a multicommodity ow such that the sum of
the ows of all commo dities is maximized. The dual of the maximum multicommodity ow problem
is an assignment of lengths
l
:
E
!
R
+
to the edges such that
D
(
l
)
def
=
P
e
l
(
e
)
c
(
e
) is minimized. This
is sub ject to the constraint that the shortest path between any pair
s
i
; t
i
under the length function
2

l
, which we denote by
dist
i
(
l
), is at least one. Let
(
l
)
def
= min
i
dist
i
(
l
) b e the minimum length path
between any pair of terminals. Then the dual problem is equivalent to nding a length function
l
:
E
!
R
+
such that
D
(
l
)
(
l
)
is minimized. Let
def
= min
l
D
(
l
)
=
(
l
).
The algorithm proceeds in iterations. Let
l
i
1
be the length function at the beginning of the
i
th
iteration and
f
i
1
be the total ow routed in iterations 1
: : : i
1. Let
P
be a path of length
(
l
i
1
)
between a pair of terminals and let
c
be the capacity of the minimum capacity edge on
P
. In the
i
th
iteration we route
c
units of ow along
P
. Thus
f
i
=
f
i
1
+
c
. The function
l
i
diers from
l
i
1
only
in the lengths of the edges along
P
; these are mo died as
l
i
(
e
) =
l
i
1
(
e
)(1 +
c=c
(
e
)), where
is a
constant to be chosen later.
Initially every edge
e
has length
,
ie.
,
l
0
(
e
) =
for some constant
to b e chosen later. For brevity
we denote
(
l
i
)
; D
(
l
i
) by
(
i
)
; D
(
i
) respectively. The pro cedure stops after
t
iterations where
t
is the
smallest number such that
(
t
)
1.
2.1 Analysis
For every iteration
i
1
D
(
i
) =
X
e
l
i
(
e
)
c
(
e
) =
X
e
l
i
1
(
e
)
c
(
e
) +
X
e
2
P
l
i
1
(
e
)
c
=
D
(
i
1) +
(
f
i
f
i
1
)
(
i
1)
which implies that
D
(
i
) =
D
(0) +
i
X
j
=1
(
f
j
f
j
1
)
(
j
1) (1)
Consider the length function
l
i
l
0
. Note that
D
(
l
i
l
0
) =
D
(
i
)
D
(0) and
(
l
i
l
0
)
(
i
)
L
where
L
is the longest path along which ow is routed. Hence
D
(
l
i
l
0
)
(
l
i
l
0
)
D
(
i
)
D
(0)
(
i
)
L
Substituting this bound on
D
(
i
)
D
(0) in equation 1 we get
(
i
)
L
+
i
X
j
=1
(
f
j
f
j
1
)
(
j
1)
which implies that
(
i
)
Le
f
i
=
By our stopping condition
1
(
t
)
Le
f
t
=
and hence
f
t
ln(
L
)
1
(2)
Claim 2.1
There is a feasible ow of value
f
t
ln
1+
1+
3

Proof: Consider an edge
e
. For every
c
(
e
) units of ow routed through
e
the length of
e
increases by
a factor of at least 1 +
. The last time its length was increased,
e
was on a path of length strictly less
than 1. Since every increase in edge-length is by a factor of at most 1 +
,
l
t
(
e
)
<
1 +
. Since
l
0
(
e
) =
it follows that the total ow through
e
is at most
c
(
e
) ln
1+
1+
. Scaling the ow,
f
t
, by ln
1+
1+
then
gives a feasible ow of claimed value.
Thus the ratio of the values of the dual and the primal solutions,
, is
f
t
ln
1+
1+
. By substituting
the b ound on
=f
t
from (2) we obtain
ln
1+
1+
ln(
L
)
1
=
ln(1 +
)
ln
1+
ln(
L
)
1
The ratio
ln(1+
)
1
ln(
L
)
1
equals (1
)
1
for
= (1 +
)((1 +
)
L
)
1
=
. Hence with this choice of
we have
(1
) ln(1 +
)
(1
)(
2
=
2)
(1
)
2
Since this quantity should be no more than our approximation ratio (1 +
w
) we choose
appropriately.
2.2 Running time
In the
i
th
iteration we increase the length of the minimum capacity edge along
P
by a factor of 1 +
.
Since for any edge
e
,
l
0
(
e
) =
and
l
t
(
e
)
<
1 +
and there are
m
edges in all, the total number of
iterations is at most
m
ln
1+
1+
=
m
ln
1+
((1 +
)
L
)
1
=
=
m
(1 + ln
1+
L
)
=
.
3 Packing LP
A packing
LP
is a linear program of the kind max
n
c
T
x
j
Ax
b; x
0
o
where
A; b
and
c
are (
m
n
)
;
(
m
1) and (
n
1) matrices all of whose entries are positive. We also assume that for all
i; j
, the
(
i; j
)
th
entry of
A
,
A
(
i; j
), is at most
b
(
i
). The dual of this
LP
is min
n
b
T
y
j
A
T
y
c; y
0
o
.
We view the rows of
A
as edges and the columns as paths.
b
(
i
) is the capacity of edge
i
and every
unit of ow routed along the
j
th
column consumes
A
(
i; j
) units of capacity of edge
i
while providing
a benet of
c
(
j
) units.
The dual variable
y
(
i
) corresponds to the length of edge
i
. Dene the
length
of a column
j
with
respect to the dual variables
y
as
length
y
(
j
)
def
=
P
i
A
(
i; j
)
y
(
i
)
=c
(
j
). Finding a shortest path now
corresponds to nding a column whose length is minimum; dene
(
y
)
def
= min
j
length
y
(
j
). Also
dene
D
(
y
)
def
=
b
T
y
. Then the dual program is equivalent to nding a variable assignment
y
such that
D
(
y
)
=
(
y
) is minimized.
Once again our procedure will be iterative. Let
y
k
1
be the dual variables and
f
k
1
the value of
the primal solution at the beginning of the
k
th
iteration. Let
q
be the minimum length column of
A
ie.
,
(
y
k
1
) =
length
y
k
1
(
q
) | this corresponds to the path along which we route ow in this
iteration. The minimum capacity edge is the row for which
b
(
i
)
=A
(
i; q
) is minimum; let this be row
p
. Thus in this iteration we will increase the primal variable
x
(
q
) by an amount
b
(
p
)
=A
(
p; q
) so that
f
k
=
f
k
1
+
c
(
q
)
b
(
p
)
=A
(
p; q
). The dual variables are modied as
y
k
(
i
) =
y
k
1
(
i
)(1 +
b
(
p
)
=A
(
p; q
)
b
(
i
)
=A
(
i; q
)
)
4

Citations
More filters
Journal ArticleDOI

The Multiplicative Weights Update Method: A Meta-Algorithm and Applications

TL;DR: A simple meta-algorithm is presented that unifies many of these disparate algorithms and derives them as simple instantiations of the meta-Algorithm.
Proceedings ArticleDOI

Bandits with Knapsacks

TL;DR: This work presents two algorithms whose reward is close to the information-theoretic optimum: one is based on a novel "balanced exploration" paradigm, while the other is a primal-dual algorithm that uses multiplicative updates that is optimal up to polylogarithmic factors.
Proceedings ArticleDOI

Optimal content placement for a large-scale VoD system

TL;DR: This work presents an approach for intelligent content placement that scales to large library sizes and employs a Lagrangian relaxation-based decomposition technique combined with integer rounding to overcome the challenges of scale.
Journal ArticleDOI

Bandits with Knapsacks

TL;DR: This work presents two algorithms whose reward is close to the information-theoretic optimum: one is based on a novel "balanced exploration" paradigm, while the other is a primal-dual algorithm that uses multiplicative updates that is optimal up to polylogarithmic factors.
Journal ArticleDOI

Lifetime maximization for connected target coverage in wireless sensor networks

TL;DR: This paper model the CTC problem as a maximum cover tree (MCT) problem, determines an upper bound on the network lifetime for the MCT problem and develops a (1+w)H(M circ) approximation algorithm to solve it, which shows that the lifetime obtained is close to the upper bound.
References
More filters
Journal ArticleDOI

Fast approximation algorithms for fractional packing and covering problems

TL;DR: The techniques developed in this paper greatly outperform the general methods in many applications, and are extensions of a method previously applied to find approximate solutions to multicommodity flow problems.
Journal ArticleDOI

The maximum concurrent flow problem

TL;DR: A fully polynomial-time approximation scheme for the maximum concurrent flow problem is developed and the problem of associating costs to the edges so as to maximize the minimum-cost of routing the concurrent flow is the dual of the MCFP.
Proceedings ArticleDOI

Speeding-up linear programming using fast matrix multiplication

TL;DR: An algorithm for solving linear programming problems that requires O((m+n)/sup 1.5/nL) arithmetic operations in the worst case is presented, which improves on the best known time complexity for linear programming by about square root n.
Proceedings ArticleDOI

Improved approximation algorithms for the multi-commodity flow problem and local competitive routing in dynamic networks

TL;DR: Improved Approximation Algorithms the Multi-Commodity Flow Problem and Competitive Routing in Dynamic Networks improve the quality of the approximation algorithms used for routing decisions.
Related Papers (5)
Frequently Asked Questions (7)
Q1. What are the contributions in "Faster and simpler algorithms for multicommodity flow and other fractional packing problems" ?

This paper considers the problem of designing fast, approximate, combinatorial algorithms for multicommodity ows and other fractional packing problems. The authors provide a di erent approach to these problems which yields faster and much simpler algorithms. In particular the authors provide the rst polynomial-time, combinatorial approximation algorithm for the fractional packing problem ; in fact the running time of their algorithm is strongly polynomial. Their approach also allows us to substitute shortest path computations for min-cost ow computations in computing maximum concurrent ow and min-cost multicommodity ow ; this yields much faster algorithms when the number of commodities is large. Supported by the EU ESPRIT LTR Project N. 20244 ( ALCOM-IT ). 

The dual of this linear program is an assignment of lengths to the edges, l : E ! R + , and a scalar | which the authors view as a length associated with a pseudo-edge of capacity B | such thatD(l; )def =Pel(e)c(e)+ 

The key idea of their procedure, which was adopted in a lot of subsequent work, was to compute an initial ow by disregarding edge capacities and then to reroute this, iteratively, along short paths so as to reduce the maximum congestion on any edge. 

If the minimum capacity edge on this pathhas capacity c then the ow function at this step, fs i;j , corresponds to routing c units of ow alongthis path. 

By their de nition of p it follows that z 1 and hence increasing the LHS of the i th constraint by 1 causes an increase in y(i) by a multiplicative factor of at least 1 + . 

The dual to the min-cost multicommodity ow problemis an assignment of lengths to edges, l : E ! R+, and a scalar such that D(l)= (l) is minimized. 

In particular, for multicommodity ow, it implies a procedure which does not involve rerouting ow (the ow is only scaled at the end) and which for the case of maximum s-t ow reduces to the algorithm discussed at the beginning of this section.