Вы находитесь на странице: 1из 18

Surveys in Operations Research and Management Science 16 (2011) 3–20

Contents lists available at ScienceDirect

Surveys in Operations Research and Management Science


journal homepage: www.elsevier.com/locate/sorms

Approximation algorithms for network design: A survey


Anupam Gupta a , Jochen Könemann b,∗
a
Computer Science Department, Carnegie Mellon University, Pittsburgh, PA 15213, USA
b
Department of Combinatorics & Optimization, University of Waterloo, Waterloo, ON N2L 3G1, Canada

article info abstract


Article history: Network Design is an active research area in the intersection of Combinatorial Optimization and Theoretical
Received 28 May 2010 Computer Science that focuses on problems arising in the realm of modern communication networks.
Accepted 3 June 2010 During the last 30 years of research in this field a number of major techniques have emerged; the aim
of this article is to provide a survey of some of them. Each section concentrates on one technique; we
first illustrate it using the well-known minimum spanning tree problem, and then present an advanced
application.
© 2010 Elsevier Ltd. All rights reserved.

Contents

1. Greedy algorithms.............................................................................................................................................................................................................. 4
1.1. Matroids and greedy algorithms........................................................................................................................................................................... 4
2. Primal–dual approaches .................................................................................................................................................................................................... 5
2.1. A primal–dual interpretation of Kruskal’s algorithm .......................................................................................................................................... 5
2.2. Modeling network design problems: f -connectivity .......................................................................................................................................... 6
2.3. Advanced primal–dual applications: Steiner trees and forests .......................................................................................................................... 6
2.4. More applications of the primal–dual method .................................................................................................................................................... 7
3. Iterative rounding: a polyhedral approach ...................................................................................................................................................................... 7
3.1. Spanning trees via iterative rounding .................................................................................................................................................................. 8
3.2. Advanced iterative rounding: survivable network design.................................................................................................................................. 9
3.3. Advanced iterative rounding: degree-bounded network design ....................................................................................................................... 10
3.4. Other applications of iterative rounding .............................................................................................................................................................. 11
4. Approximate packing results ............................................................................................................................................................................................ 11
4.1. Packing spanning trees .......................................................................................................................................................................................... 12
4.2. Advanced packing theorems ................................................................................................................................................................................. 12
5. Randomization ................................................................................................................................................................................................................... 12
5.1. Randomized rounding for minimum spanning tree............................................................................................................................................ 12
5.1.1. Advanced applications of randomized rounding.................................................................................................................................. 13
5.2. Two other randomized algorithms ....................................................................................................................................................................... 13
6. Metric embedding techniques .......................................................................................................................................................................................... 13
6.1. Embeddings into distributions of trees ................................................................................................................................................................ 14
6.2. An application: approximating buy-at-bulk network design ............................................................................................................................. 14
6.3. Extensions and other applications........................................................................................................................................................................ 15
7. Matching-based augmentation ......................................................................................................................................................................................... 15
7.1. Approximate MST via matching-based augmentation........................................................................................................................................ 15
7.2. An application: A non-uniform buy-at-bulk problem......................................................................................................................................... 16
7.3. Extensions and other applications........................................................................................................................................................................ 17
8. Other ideas and techniques ............................................................................................................................................................................................... 17
Acknowledgements............................................................................................................................................................................................................ 17
References........................................................................................................................................................................................................................... 17

∗ Corresponding author. Tel.: +1 519 888 4567.


E-mail address: jochen.konemann@gmail.com (J. Könemann).
1876-7354/$ – see front matter © 2010 Elsevier Ltd. All rights reserved.
doi:10.1016/j.sorms.2010.06.001
4 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

In a typical instance of a network design problem, we are given a Theorem 1. For any connected graph G with arbitrary edge costs c,
directed or undirected graph G = (V , E ), non-negative edge costs Kruskal’s algorithm finds a minimum-cost spanning tree.
ce for all e ∈ E, and our goal is to find a minimum-cost subgraph
H of G that satisfies some design criteria. For example, we may A direct combinatorial proof of this theorem is based on idea by
wish to find a minimum-cost set of edges that induces a connected Jarník [6] and shows that each intermediate forest is contained in a
graph (this is the minimum-cost spanning tree problem), or we some minimum-cost spanning tree of G. We omit details and refer
might want to find a minimum-cost set of arcs in a directed graph the reader to [9].
such that every vertex can reach every other vertex (this is the
minimum-cost strongly connected subgraph problem). This abstract 1.1. Matroids and greedy algorithms
model for network design problems has a large number of practical
applications; the design process of telecommunication and traffic A slight generalization of Kruskal’s algorithm turns out to be
networks, and VLSI chip design are just two examples. optimal for a much more general class of problems.
Many practically relevant instances of network design prob-
lems are NP-hard, and thus likely intractable. This survey focuses
Definition 2. Let E be a ground-set of elements and consider a set
on approximation algorithms as one possible way of circumvent-
F ⊆ 2E of subsets of E. (E , F ) is called an independence system if
ing this impasse. Approximation algorithms are efficient (i.e., they
(M1) ∅ ∈ F , and (M2) if X ∈ F and Y ⊆ X , then Y ∈ F as well.
run in polynomial-time), and they compute solutions to a given in-
The elements of F are called independent and the elements in
stance of an optimization problem whose objective values are close
2E \ F are dependent. For any set S of elements, an inclusion-wise
to those of the respective optimum solutions. More concretely,
maximal subset T of S is called a basis of S. For brevity, we say that
most of the problems discussed in this survey are minimization
T is a basis, if it is a basis of E.
problems. We then say that an algorithm is an α -approximation for
a given problem if the ratio of the cost of an approximate solution For example, consider a connected undirected graph G = (V , E )
computed by the algorithm to that of an optimum solution is at and let S ⊆ E be in F iff S has no cycles. It is then not hard to
most α over all instances. In the following we will also sometimes see that (E , F ) is an independence system whose bases are the
refer to α as the performance guarantee of the respective approxi- spanning trees of G.
mation algorithm.
The last 30 years have seen a tremendous amount of research Definition 3. Given an independence system (E , F ) and a subset
on approximation algorithms for network design problems. And S ⊆ E. The rank r (S ) is defined as the cardinality of the largest basis
over this period, several technical themes have emerged, and of S, and the lower rank ρ(S ) is the cardinality of the smallest basis
have been explored and exploited to give algorithms and analyze of S. The rank quotient q(E , F ) then defined as
their performance. Our aim in this survey is to provide an
overview over these techniques. Each of the following sections ρ(S )
q(E , F ) = min .
focuses on one technique and has two main parts: first, we S ⊆E r (S )
present an introductory application to the well-known classical
minimum spanning tree problem. The second part of each section Given an independence system (E , F ) and a non-negative
demonstrates more sophisticated recent example applications of weight we for each of the elements e ∈ E, we now consider the
the respective technique. Throughout we assume that the reader is problem of finding a basis of E of maximum total weight. Consider
familiar with fundamental concepts of graph theory, combinatorial the following greedy algorithm.
optimization, and approximation algorithms. While we may recap Best-In-Greedy Algorithm:
certain key definitions, we rely on the reader to be familiar with
1: Input: independence system (E , F ), weights we ≥ 0 for all
others. We refer to the excellent text books [1–3] for background
e∈E
reading.
2: Sort E = {e1 , . . . , em } such that we1 ≥ · · · ≥ wem
The minimum spanning tree problem has been studied for at
3: F =∅
least a century, and it is clearly one of the most prominent network
4: for 1 ≤ i ≤ m do
design problems. The input to an instance of this problem consists
5: if F ∪ {ei } ∈ F then
of an undirected graph G = (V , E ) each of whose edges e ∈ E
6: Add ei to F
is endowed by an arbitrary cost ce , and the goal is to compute a
7: end if
spanning tree of smallest cost. The earliest known algorithm for
8: end for
this problem was developed by Boru̇vka [4], and since then a vast
9: Return F
number of techniques have been developed and subsequently used
in order to devise increasingly sophisticated algorithms. The following result is due to Jenkyns [10], and Korte and
Hausmann [11]. We omit its proof and refer the reader to [12].

1. Greedy algorithms
Theorem 4. Given an independence system (E , F ), the Best-In-
Greedy algorithm finds a set F such that w(F ) ≥ q(E , F ) · w(F ∗ ),
The first known algorithms for the minimum spanning tree where F ∗ is a basis of maximum total weight.
problem use a tree growing approach (see [5–8]); we describe
Kruskal’s algorithm: the algorithm starts with the empty spanning Consider the spanning tree example from before, and let S ⊆ E
forest F = (V , ∅) and in each step adds a cheapest edge uv ∈ E be a subset of the edges. Clearly, T ⊆ S is a basis of S iff it is an
whose endpoints lie in different connected components of F . The inclusion-wise maximal forest in the graph G[S ] induced by the
algorithm terminates as soon as F is a spanning tree. edges in S. Any such forest has n − κ(S ) edges, where κ(S ) is
Kruskal’s algorithm is a good example for a greedy algorithm, the number of connected components of G[S ]. Hence, the indepen-
as it constructs the final set of edges iteratively, starting from the dence system for acyclic subgraphs has rank quotient equal to 1.
empty set, and each of its edge-addition steps is independent of
future iterations. Acting in a locally optimal way in each step is Definition 5. An independence system (E , F ) with q(E , F ) = 1
maybe the most characteristic feature of a greedy algorithm. is called a matroid.
A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20 5

The specific matroid whose independent sets correspond to parts of π and also say that an edge e crosses partition π if e ∈ Eπ .
acyclic subgraphs of G is called the graphic or forest matroid. It The following formulation is due to Fulkerson [23].
follows that the Best-In-Greedy algorithm is an exact algorithm −
for finding a spanning tree of maximum weight in a given graph min ce xe (P+
SP )
G. Given an instance of the minimum-cost spanning tree problem, e∈E

we define the weight we of each edge e ∈ E as cmax − ce where −


cmax is the maximum cost among all edges. Observe now that any s.t. xe ≥ r (π ) − 1 ∀π ∈ Π ,
maximum weight spanning tree for these weights is, at the same e∈Eπ
time, a minimum-cost spanning tree under the original costs, and x ≥ 0.
vice versa. Moreover, all weights are non-negative, and we can
therefore use the Best-In-Greedy method to compute a minimum- The validity of the above formulation is not difficult to see: for
cost spanning tree. In fact, it is not hard to see that the Best-In- a spanning tree T and a partition π of V , T must have at least
Greedy method is equivalent to Kruskal’s algorithm in this case. r (π )− 1 edges in Eπ . Hence, the optimum value of the above LP is at
We remark that Korte et al. [13] showed that the class of most the cost of an MST. In fact, Fulkerson [23] states the following
greedoids which contains that of all matroids admits optimal theorem whose first explicit proof was given by Chopra [24].
greedy algorithms if a certain strong exchange property is satisfied.
Theorem 6. The feasible region of (P+ SP ) is the dominant of the convex
It is easily checked that the independence system given by the
hull of incidence vectors of spanning trees of G.
intersection of k matroids has q(E , F ) ≤ k, and hence the greedy
algorithm is a k-approximation for the max-weight independent The standard linear programming dual of (P+SP ) has a variable yπ
set in the intersection of k matroids; this generalizes the observa- for each partition π ∈ Π and a constraint for each edge e ∈ E.
tion that the greedy algorithm is a 2-approximation for the max- −
weight matching in a graph. Also, Theorem 4 can be generalized max (r (π ) − 1) · yπ (D+
SP )
to show that given any independence system (E , F ) and a mono- π∈Π
tone submodular function f : 2E → R≥0 , the greedy algorithm is a
(q(E , F ) + 1)-approximation for the problem of maximizing f (S )

s.t. yπ ≤ ce ∀e ∈ E , (1)
over sets S ∈ F [14,10,15]; recently other algorithms have been π:e∈Eπ
used to give a e−e 1 -approximation for the case of q(E , F ) = 1 [16].
y ≥ 0.
These algorithms for submodular maximization have many appli-
cations to approximation algorithms, see, e.g. [15] and the refer- Constraint (1) for edge e restricts the total dual value of partitions
ences therein. that e crosses by the cost ce of the edge. Kruskal’s algorithm can
now be viewed as a continuous process over time: we start with an
2. Primal–dual approaches empty tree at time τ = 0 and add edges as time progresses. The
algorithm terminates at time τ ∗ with a spanning tree of the input
The original primal–dual method was introduced by Dantzig graph G. At any time 0 ≤ τ ≤ τ ∗ we keep a pair (xτ , yτ ), where xτ
et al. [17] as an alternate method for solving linear programs. is the incidence vector of a spanning forest in G and yτ is a feasible
Its main feature, the reduction of weighted instances of an dual solution for (D+ SP ). Initially, we let xe,0 = 0 for all e ∈ E and

optimization problem to unweighted ones, is at the heart of many yπ ,0 = 0 for all π ∈ Π .


classical algorithms in combinatorial optimization (e.g., [5,18,19]). Let Fτ denote the forest corresponding to partial solution xτ and
Eτ denote its edges, i.e., Eτ = {e ∈ E : xe,τ = 1}. We use πτ to
Later work on the vertex-cover problem due to Bar-Yehuda
denote the partition induced by the connected components of Fτ .
and Even [20] showed that primal–dual techniques can also
At time τ , the algorithm increases yπτ until constraint (1) for some
be employed to obtain good approximation algorithms for NP-
edge e ∈ Eπτ is satisfied with equality; we say that edge e becomes
hard optimization problems. In [21,22], Goemans and Williamson
tight. Suppose that this happens at time τ ′ ≥ τ . We then include e
provided a rigorous description of a primal–dual framework for
into our solution by setting xe,τ ′ = 1 and update the dual by letting
the design of approximation algorithms. In the course of the last
20 years, this method has evolved to one of the most powerful yπτ ,τ ′ = τ ′ − τ .
techniques in the design optimization problems for network
The above view of Kruskal’s algorithm first appeared in [24].
design problems. Central to this approach is the idea that for a
Chopra showed that the final primal and dual solutions have
minimization problem (say), given a LP relaxation of the problem
the same objective value (and are, by LP duality, optimal). We
(the ‘‘primal’’) and its LP dual, the cost of any feasible dual solution
remark that a similar interpretation for Prim’s algorithm appears
is no more than the cost of the optimal primal solution—hence, if
in Lawler’s book [25]. We sketch Chopra’s proof for completeness.
we can construct an integral primal solution and a dual solution
such that the cost of this primal is no more than α times the cost Proof∑ of Theorem 1. All edges e ∈ Eτ ∗ are tight and therefore
of the dual solution, we have an α -approximate integral solution. ce = π:e∈Eπ yπ ,τ ∗ . We can use this to express the cost of the final
tree as follows:
− − −
2.1. A primal–dual interpretation of Kruskal’s algorithm c (Fτ ∗ ) = yπ ,τ ∗ = |Eτ ∗ ∩ Eπ | · yπ ,τ ∗ .
e∈Eτ ∗ π:e∈Eπ π∈Π
We demonstrate the main features of primal–dual algorithms
by reinterpreting Kruskal’s algorithm. For this, we first exhibit a By construction the set Eτ ∗ ∩ Eπ has cardinality exactly r (π ) − 1
linear programming formulation for the minimum-cost spanning for all π ∈ Π with yπ ,τ ∗ > 0. We obtain that
tree problem. The LP has a variable xe for each edge e ∈ E, and its − −
ce xe,τ ∗ = (r (π ) − 1) · yπ ,τ ∗
feasible 0, 1-valued solutions correspond to incidence vectors of
e∈E π∈Π
spanning trees. Let Π denote the set of all partitions of the vertex
set V , and let the rank r (π ) of π ∈ Π be the number of parts of whose right-hand side is the objective value of the dual solution
π . We use Eπ to denote the set of edges whose ends lie in different yτ ∗ . The theorem follows from weak duality. 
6 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

2.2. Modeling network design problems: f -connectivity We start this section by presenting a primal–dual approxima-
tion algorithm due to Agrawal et al. [41]. This algorithm (hence-
In an f -connectivity problem we are given an undirected graph forth denoted by AKR) is a primal–dual algorithm and as such it
G = (V , E ), non-negative costs ce for all e ∈ E, and a cut- constructs a solution to (Pf ) and (Df ) simultaneously. Much like
requirement function f : 2V → {0, 1}. Our goal is to find a the primal–dual algorithm for minimum-cost spanning trees pre-
minimum-cost subgraph H of G such that H has at least f (S ) edges sented earlier, it does this in an incremental fashion.
crossing each set S ⊆ V . We will assume f (V ) = 0 throughout this We can think of an execution of AKR as a process over time.
section. The following is a natural LP formulation of the problem: Let xτ and yτ , respectively, be the primal incidence vector and
− feasible dual solution at time τ . We use F τ to denote the forest
min ce xe (IPf )
corresponding to xτ . Initially, x0e = 0 for all e ∈ E and y0S = 0 for all
e∈E
S ⊆ V . Assume that the forest F τ at time τ is infeasible. We use F̄ τ
− to denote the subgraph of G that is induced by the tight edges for
s.t. xe ≥ f (S ) ∀S ⊆ V
dual yτ . In the following, we will also use the term moat to refer to
e∈δ(S )
a connected component S of F̄ τ .
xe integer ∀e ∈ E . Algorithm AKR raises the dual variables of all moats uniformly
Replacing the integrality requirement by non-negativity con- as long as F τ is infeasible. Let S1 and S2 be two distinct connected
straints yields the canonical LP relaxation (Pf ). Its LP dual has a components of the forest maintained by the algorithm. We say that
variable yS for every set S ⊆ V . these components collide at time τ if τ is the first time during
− the execution of the algorithm where S1 and S2 are contained in
max f (S ) · yS (Df ) a common moat.
S ⊆V If this happens, we add the edges on a shortest S1 , S2 -path to F τ
and continue. The algorithm stops at the earliest time τ ∗ where F τ


s.t. yS ≤ ce ∀e ∈ E (2) is a feasible Steiner tree. Suppose
S :e∈δ(S )
P = {P1 , . . . , Pq }
y ≥ 0.
is the set of paths that the algorithm adds in the process of
Note the minimum spanning tree problem can be cast in this
constructing F τ and let τi be the time where Pi is added for all

framework by using the function f (S ) = 1 for all S ̸∈ {∅, V }, f (∅) =
f (V ) = 0. 1 ≤ i ≤ q (we order the paths such that τ1 ≤ · · · ≤ τq ). Also let
Si1 and Si2 be the colliding components that caused AKR to add path
P i . We obtain the following lemma:
2.3. Advanced primal–dual applications: Steiner trees and forests

The Steiner tree problem is a well-studied classical problem that Lemma 7. For all times 0 ≤ τ ≤ τ ∗ and for all moats S ∈ F̄ τ we
fits into the framework of Section 2.2. The input in an instance of have
this problem specifies a set of terminals R and the goal is to find a
ce xτe ≤ 2 · yτS − 2τ .
− −
minimum-cost tree in the input graph that connects all terminals.
e∈E (S ) S ′ ⊆S
In the following we say that two vertex sets S and T intersect if all
of S ∩ T , S \ T , and T \ S are non-empty. The Steiner tree problem
is then modeled by letting f (S ) = 1 if S intersects R, and f (S ) = 0 Proof. In the following let τ0 = 0 be the start time of the algo-
otherwise; such a set is sometimes called a Steiner cut. The resulting rithm. We prove the claim using induction over 0 ≤ i ≤ q. The
integer program (IPf ) is commonly known as the undirected cut claim is trivially true for time i = 0. Now assume that the claim
formulation for Steiner tree [26]. holds for i ≥ 0. We state the following technical fact and refer the
The Steiner tree problem is a fundamental problem in reader to [41] for a proof:
combinatorial optimization with a rich history and many practical
applications; we refer the reader to the two excellent surveys
Claim 8. The cost of path Pi is at most 2τi .
in [27,28] for a much more detailed account. The Steiner tree
problem is well known to be NP-hard in general (see [29]), and
By induction, we have that
remains hard even in Euclidean spaces [30] and in other restricted
topologies. Moreover, Chlebík and Chlebíková showed in [31] that τ
ce xτei ≤ 2 ·
− −
ySi − 2τi (3)
it is NP-hard even to approximate the minimum-cost Steiner tree
e∈E (S ) S ′ ⊆S
within any ratio better than 96 95
.
Until very recently, the best known algorithm for the Steiner for all moats S of F̄ τi . Consider such a moat S; the algorithm grows
tree problem was due to Robins and Zelikovsky [32]. Robins and the dual variable for this moat at all times τ ∈ [τi , τi+1 ). During
Zelikovsky’s algorithm follows a greedy strategy, and achieves a
this interval, no edges are added to the partial tree and the left-
performance ratio of 1 + ln23 ≈ 1.55; the algorithm is the final
hand side of (3) remains unchanged. Similarly, it is not hard to see
refinement of a long list of greedy algorithms for the problem
that the right-hand side of the equation remains unchanged as well
[33–36]. Roughly speaking, the main insight in these algorithms
and we have
is to view the Steiner tree problem as a minimum-cost spanning
tree problem in a suitably defined hypergraph. This hypergraphic τ
ce xτei ≤ 2 ·
− −
ySi+1 − 2τi+1 (4)
view of the Steiner tree problem inspired a number of linear j j
e∈E (Si+1 ) S ′ ⊆Si+1
programming relaxations [37–39]. Using an elegant randomized
rounding approach applied to the directed relaxation of [38], Byrka j
et al. [40] recently obtained the currently best ln 4 < 1.39-appro- for j ∈ {1, 2} (where we abuse notation slightly and let E (Si+1 ) de-
j
ximation for the problem. note the set of edges with both ends in Si+1 of the partial forest
A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20 7

before path Pi+1 has been added). Let S be the new moat created at 2.4. More applications of the primal–dual method
time τi+1 by merging moats Si1+1 and Si2+1 . We have
Goemans and Williamson [48] showed that the above pri-
2 mal–dual algorithm can be adapted to yield a 2-approximation
τi+1 τi+1
− − −
ce xe = ce xe for (IPf ) if f is a 0, 1-downwards monotone function, where a cut-
e∈E (S ) j=1 e∈E (S j ) requirement function f is downwards monotone if
i+1

2 f (B) ≤ f (A)
τ
− −
≤ ySi+1 + c (Pi+1 ) − 4τi+1
for any pair of sets A, B ⊆ V with A ⊆ B.
j =1 S ′ ⊆S j
i+1 A more advanced application of the primal–dual method is for
2 the survivable network design problem (SNDP). In this problem, we
τ
are given non-negative integers rij for each pair of nodes i, j ∈
− −
≤ ySi+1 − 2τi+1
j =1 S ′ ⊆S j V , and the goal is to find a minimum-cost subgraph H of G that
contains rij edge-disjoint paths for each pair i, j ∈ V . The central
i+1

where the last inequality uses Claim 8. The lemma follows.  motivation for SNDP lies in fault tolerance issues in the design
of communication networks; nodes i and j stay connected in H
This immediately implies the following corollary. even if rij − 1 edges are removed (see also [49]). SNDP clearly
generalizes the Steiner tree and forest problems discussed in the
previous section. It also falls into the f -connectivity framework by
Corollary 9 ([41]). Algorithm AKR computes a (2 − 2/|R|)- letting
approximate Steiner tree.
f (S ) = max rij (6)
i∈S ,j̸∈S
Proof. As AKR grows at most one moat per terminal at all times
0 ≤ τ ≤ τ ∗ , we have for all S ⊆ V in integer program (IPf ).
The SNDP cut-requirement function given in (6) is easily seen
yτS ≤ |R| · τ ∗
− ∗
(5) to be proper, where a function f is proper if it is symmetric (i.e., if
S ⊆V f (A) = f (V \ A) for all A ⊆ V ) and if it satisfies ‘‘maximality’’:

and hence we must have f (A ∪ B) ≤ max{f (A), f (B)}



τ∗
− for all pairs of disjoint sets A, B ⊆ V . For this class of cut-
ce xe = c (P )
requirement functions, Goemans and Williamson [21] showed that
e P ∈P
the primal–dual method from the previous section can be used to
yτS − 2τ ∗
− ∗
≤2 obtain a 2-approximation algorithm.
S ⊆V Klein and Ravi [50] were the first to consider non-0, 1 proper
yτS
− ∗ functions, and gave a primal–dual 3-approximation algorithm
≤ (2 − 2/|R|) ·
S ⊆V
for (IPf ) where f is a proper function with range {0, 2}.
Subsequently, Williamson et al. [51] presented a primal–dual 2k-
where the first inequality follows from Lemma 7 and the second approximation algorithm for general proper functions, where k =
inequality uses (5). The corollary follows from weak duality as yτ

maxS f (S ) is the maximum cut-requirement. Goemans et al. [52]
is feasible for (Df ).  presented a further improvement by giving a primal–dual 2H (k)-
approximation algorithm for the problem, where H (k) is the kth
The above result is easily seen to be tight as (Pf ) has an harmonic number 1 + 1/2 + · · · + 1/k.
integrality gap of nearly 2 even for the minimum spanning tree The authors of [52] also showed that the same approximation
setting (where R = V ): consider a circle with n terminals where guarantee can be obtained for the larger class of weakly or skew-
each edge has a cost of 1. The cost of an optimum solution to supermodular cut-requirement functions. A function f : 2V → N
(P+ is skew-supermodular if f (∅) = f (V ) = 0, and
SP ) is n − 1 while the optimum solution x to the LP relaxation

(Pf ) assigns a value of 1/2 to each edge and thus has cost n/2. f (A) + f (B) ≤ f (A \ B) + f (B \ A), or
We note that there is a large body of work on alternate f (A) + f (B) ≤ f (A ∩ B) + f (A ∪ B)
relaxations for the Steiner tree problem (e.g., see [42,37,43,38,39])
that, until very recently, were not known to be stronger than for all A, B ⊆ V . In the next section we will see a direct LP rounding
the undirected cut relaxation. Chakrabarty et al. [44] show that algorithm due to Jain that achieves a performance ratio of 2 for this
the hypergraphic relaxations of [37–39] are equivalent, and Byrka problem.
et al. [40] prove that their integrality gap in general graphs is at Finally, we refer the reader to the surveys in [22,53,54] for
further applications, and pointers.
most 1.55.
The downside of using hypergraphic LPs is their size: they have
3. Iterative rounding: a polyhedral approach
an exponential number of constraints, and no compact alternative
formulations are known. On the other hand, the bidirected cut
In this section, we discuss the technique of iterative rounding,
relaxation [45,46] is a compact relaxation for the Steiner tree
a powerful and elegant scheme which was first introduced by Jain
problem, and it is widely conjectured to have a gap smaller than 2.
in his work on the generalized Steiner network problem in [55].
The worst-known integrality gap example shows a factor of 8/7 and
Extension of this technique (iterative relaxation [56]) has more
is due to Goemans (see [47]). It is well known that the bidirected recently lead to breakthrough results in the area of constrained
cut relaxation is weaker than the hypergraphic relaxations in network design, where a number of linear constraints are added
general. However, in quasi-bipartite instances (where no two to a classical network design problem. Such constraints arise
Steiner nodes are connected by an edge), these relaxations are naturally in a wide variety of practical applications, and model
equivalent [44], and their gap is bounded by 1.28 [40]. limitations in processing power, bandwidth or budget. The design
8 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

of powerful techniques to deal with these problems is therefore an Proof. We will prove a slightly stronger statement by showing that
important goal. the tree computed by the algorithm has cost at most the optimal
In this section we first show how iterative rounding can be value of (PSP ). We will use induction on the number of vertices of G.
used to obtain an alternative proof of Theorem 6; subsequently, we In the base case where G has at most one vertex, the above
discuss Jain’s work on the survivable network design problem. We algorithm clearly does the right thing by returning the empty set.
conclude this section by showing an application of the technique Now assume that G has at least two vertices. As G is connected,
for a degree-bounded network design problem. Lemma 10 guarantees that step 5 of the above algorithm will
identify a vertex u that is incident to a single support edge uv with
x∗uv = 1.
3.1. Spanning trees via iterative rounding As described in the algorithm, we obtain G′ = (V ′ , E ′ ) from G
by deleting vertex u and its incident edges. Let x′ be the projection

As the key step in the proof of Theorem 6, Chopra showed that of x∗ onto the edge set of G′ ; i.e., x′ ∈ RE and x′e = x∗e for all
the vertices of the feasible region of (P+
SP ) are identical to those of
e ∈ E ′ . Observe that x′ is feasible for (PSP ) for graph G′ . Let F ′ be the
the following formulation: tree computed by the algorithm from iteration 2 on. Inductively, it
follows that F ′ is a minimum-cost spanning tree of G′ and, as the
projection of x∗ onto E ′ is feasible for (PSP ), we also must have

min ce xe (PSP )
e∈E −
c (F ′ ) ≤ ce x∗e .
e∈E ′
s.t. x(E ) = n − 1 (7)
x(E (S )) ≤ |S | − 1 ∀S ⊂ V (8) Finally, F = F ′ ∪∑uv is a spanning tree of G and its cost is equal
to cuv + c (F ′ ) ≤ ∗
e∈E ce xe where the inequality uses the fact that
x≥0 ∗
xuv = 1. 
where n = |V | is the number of vertices in G, E (S ) denotes the set We remark (see [58]) that the projection x′ of x∗ onto the edge
of edges in E for which both
∑ endpoints lie in S, and where we use set of G′ is a basic feasible solution for (PSP ) for graph G′ . This
x(A) as a short-hand for e∈A xe for A ⊆ E. Edmonds [57] showed means that the algorithm does not need to resolve LP (PSP ) in
that (PSP ) is a formulation of the convex hull of incidence vector every iteration of the while loop, and may instead just work with a
of spanning trees of G. We now provide an alternate proof that is suitable projection of the initial basic feasible solution. Theorem 11
based on iterative rounding; our exposition follows that of Singh therefore shows that x∗ is the incidence vector of a spanning tree
and Lau [58]. and it provides an alternate argument for Edmonds result in [57].
Our strategy will be as follows: first solve LP (PSP ) and obtain It now remains to give a proof of Lemma 10. Its fundamental
an optimal basic feasible solution x∗ . We shall show that there is techniques are ubiquitous in LP rounding algorithms for network
at least one edge e ∈ E for which x∗e = 1. We add this edge to design problems.
a partial spanning forest and subsequently obtain a new graph by
Proof of Lemma 10. Let x∗ be a basic feasible solution for (PSP ) and
contracting it. We continue recursively by computing an MST in
assume that x∗e > 0 for all e ∈ E. This assumption is w.l.o.g. as
the resulting contracted graph, and obtain a spanning tree for the we can always delete 0-value edges; x∗ projected onto the space
original graph by adding in e again. We will be able to show that defined by the remaining edges is an optimal basic feasible solution
the cost of the final tree is at most the objective value of x∗ and for (P+
SP ) in the resulting graph. Now let
hence it is optimal.
We begin by stating a fundamental structural lemma but defer F = {S ⊆ V : x∗ (E (S )) = |S | − 1}
its proof to a later point in this section. be the set of all tight constraints among (7) and (8). We use χ A to
denote the characteristic vector of a set A ⊆ R: χ A has an element
Lemma 10. Let G be a connected graph with at least two vertices and χeA for each edge e ∈ E, where χeA = 1 if e ∈ A and χeA = 0
let x∗ be a basic solution of (PSP ) with support E ∗ = {e ∈ E : x∗e > 0}. otherwise. As x∗ is a basic solution, it follows that the characteristic
There exists a vertex v that is incident to exactly one edge in E ∗ . vectors of sets in F span the set

Let uv ∈ E ∗ be the single support edge incident to vertex v span(F ) = {x ∈ Rm ∗


+ : xe = 0 for all e ̸∈ E }
described in Lemma 10. It is easy to see that constraints (7) and (8) where E ∗ is the support of x∗ . We say that two sets A, B ⊆ V
imply that x∗uv = 1. We obtain the following iterative algorithm: intersect if A \ B, B \ A, and A ∩ B are all non-empty. We obtain the
Iterative MST Algorithm: following well-known uncrossing argument (e.g., see [59,55,60]):
1: Input: connected graph G = (V , E ).
2: F =∅ Claim 12 ([61]). Let S , T be two intersecting sets in F . Then, both
3: while V (G) ̸= ∅ and |V | > 1 do S ∩ T and S ∪ T are sets in F and χ E (S ) + χ E (T ) = χ E (S ∩T ) + χ E (S ∪T ) .
4: Compute optimum basic solution x∗ of (PSP ), and remove all Proof. Since S ∩ T ̸= ∅ it follows that
edges with x∗e = 0 from G.
5: Find vertex u as in Lemma 10 and let uv be the single support |S | − 1 + | T | − 1 = |S ∩ T | − 1 + |S ∪ T | − 1
edge incident to it. ≥ x∗ (E (S ∩ T )) + x∗ (E (S ∪ T ))
6: Add uv to F .
≥ x∗ (E (S )) + x∗ (E (T ))
7: Delete u and all incident edges from G.
8: end while = |S | − 1 + |T | − 1
9: Return F and hence all inequalities above hold with equality. Thus, S ∩ T
and S ∪ T are in F and, furthermore, no edges uv ∈ E ∗ exist
Theorem 11. Given a connected graph G = (V , E ) and edge costs ce with u ∈ S \ T and v ∈ T \ S. This implies that χ E (S ) + χ E (T ) =
for all e ∈ E, the above algorithm correctly computes an MST of G. χ E (S ∩T ) + χ E (S ∪T ) . 
A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20 9

This innocuous looking lemma has important structural conse- At this point we remark that it is not known whether LP (Pf ) can
quences for bases of span(F ). In the following we call a family of be solved in polynomial-time for arbitrary skew-supermodular
subsets of V laminar if no two of its sets intersect (i.e., for any two cut-requirement functions. However, this is possible – via
sets in a laminar family, either they are disjoint, or one of them is the Ellipsoid method – for general proper functions (e.g., see
contained within the other). Theorem 20.19 of [12] for a proof of this fact). In the following, we
assume that step 4 of Jain’s algorithm can be implemented to run
Corollary 13 ([55]). Let L be an inclusion-wise maximal laminar in polynomial-time. Modulo this assumption, Lemma 14 yields the
family in F , then span(L ) = span(F ). following main theorem of [55]:

Proof. Assume that the above statement is false and let L be a Theorem 15. Jain’s algorithm achieves a performance guarantee
maximal laminar family in F whose span is different from that of of 2 for the survivable network design problem.
F . Then pick a set S ∈ F that intersects a minimum number of sets Proof. We will prove a stronger result and show that the algorithm
in L . As L is maximal, there must exist a set T ∈ L that intersects returns a subgraph H of cost at most twice the optimal value
S. Claim 12 implies that S ∩ T and S ∪ T are also in F and of LP (Pf ). We use induction on the number of iterations of the
algorithm’s main loop.
χ E (S ) + χ E (T ) = χ E (S ∩T ) + χ E (S ∪T ) .
The theorem is trivially true if f (S ) = 0 for all S ⊆ V . If f (S ) > 0
Therefore, at least one of S ∩ T and S ∪ T cannot be in span(L ) for at least one S ⊆ V , then Lemma 14 guarantees that there is at
either. Now note that every set in L that intersects S ∩ T or S ∪ T least one edge e ∈ E with x∗e ≥ 1/2. Let f ′ be the residual cut-
must also intersect S and hence both S ∩ T and S ∪ T intersect fewer requirement function obtained by the algorithm, i.e.,
sets of L than S. This contradicts the choice of S.  
f (S ) − ⌈x∗e ⌉ : e ∈ δ(S )
f ′ (S ) =
f (S ) : otherwise
Armed with the above corollary we are now ready to finish the
proof of Lemma 10. The fact that x∗ is basic, the assumption that for all S ⊆ V . The reader verifies that function f ′ is skew-
x∗e > 0 for all e ∈ E, and Corollary 13 imply that there is a maximal supermodular if f is. Furthermore, it is not hard to see that the
laminar family L in F such that x∗ is the unique solution of projection x′ of x∗ onto E ′ = E \ {e∗ } is feasible for (Pf ′ ) with
the above residual cut-requirement function. Inductively, we can
x(E (S )) = |S | − 1 ∀S ∈ L . ′
therefore conclude that the algorithm finds
∑ a subgraph H of G that
As F does not contain singleton sets, it follows that L has at most is feasible for f ′ and has cost at most 2 e′ ∈E ′ ce x∗e . We obtain H
n − 1 sets and this is an upper bound on the rank of the above linear from H ′ by adding e∗ . The resulting subgraph is feasible for f and
its cost is
system. Consequently, E ∗ can have at most n − 1 non-zeros and this − −
in turn implies that there must be a vertex in V that is incident to c (H ) = ce∗ + c (H ′ ) ≤ 2 · ce x∗e∗ + 2 · ce x∗e ≤ 2 · ce x∗e . 
exactly one edge of E ∗ .  e∈E ′ e∈E

We now prove Lemma 14. Our exposition follows a recent


3.2. Advanced iterative rounding: survivable network design
argument due to Nagarajan et al. [62].

In this section we return to the survivable network design Proof of Lemma 14. The strategy pursued in this proof resembles
problem discussed in Section 2.4. In particular, we will see Jain’s that used in the proof of Lemma 10. Let x∗ be the positive basic
2-approximation algorithm for (IPf ) for the case where f is feasible solution of (Pf ), and let
skew-supermodular (see [55]). Jain’s algorithm iteratively rounds F = {S ⊆ V : x∗ (δ(S )) = f (S )}
optimal solutions to LP (Pf ). The main technical lemma whose
proof we defer until later is the following: be the set of tight inequalities for the given basic solution. Using
an argument similar to that of Claim 12 and Corollary 13 together
with the skew supermodularity of f , Jain [55] showed that there is
Lemma 14. Let x∗ be a basic feasible solution to (Pf ) where f is a
a laminar family L ⊆ F such that x∗ is uniquely defined by the
skew-supermodular function, and assume that x∗e > 0 for all e ∈ E.
system
Then there is an edge e ∈ E for which x∗e ≥ 1/2.
x(δ(S )) = f (S ) ∀S ∈ L . (9)
The algorithm resembles the iterative rounding algorithm
presented in Section 3.1. For a subgraph H of G and a vertex set In the following we assume that the rank of the above system is
S, we use degH (S ) for the number of edges in H that have exactly exactly |L |.
one endpoint in S. Let us assume, for the sake of contradiction, that 0 < x∗e < 1/2
for all e ∈ E. We will use a counting argument to arrive at a
Jain’s Algorithm:
contradiction. To start, we assign one token to each edge e ∈ E,
1: Input: G = (V , E ), cost ce ≥ 0, ∀e ∈ E, skew-supermodular and we redistribute these tokens over the sets in L so that every
function f . set obtains at least one token, and at least one set obtains strictly
2: H = ∅, f ′ = f more than a token. This would show that the number of positive
3: while ∃S ⊆ V s.t. f ′ (S ) > 0 do variables x∗e is larger than L , and hence larger than the rank of the
4: Compute optimum basic solution x∗ of (Pf ′ ) and remove all system in (9); this is, of course, a contradiction.
edges with x∗e = 0 from G. The token of edge uv ∈ E is reassigned as follows. We give x∗uv
5: Find an edge e ∈ E with x∗e ≥ 1/2 and add ⌈x∗e ⌉ copies of e to tokens each to the inclusion-wise smallest sets in L that contain
H. u and v . Furthermore, we give 1 − 2x∗uv tokens to the inclusion-
6: Update f ′ by letting f ′ (S ) = f (S ) − degH (S ) for all S ⊆ V . wise smallest set in L that contains both u and v . Note that, by
7: end while assumption, 0 < x∗uv < 1/2, and hence all three sets in the above
8: Return H redistribution receive a positive amount of tokens.
10 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

We proceed by showing that each set in L receives at least one degree [64]. The algorithm in [64] and its performance guarantees
token. Consider one such set S, and let T1 , . . . , Tp be its children in extend to the minimum-degree Steiner tree problem as well. We
L ; i.e., T1 , . . . , Tp are the inclusion-wise maximal proper subsets refer the reader to [65] for an excellent survey discussing the above
of S in L . The set of edges that contribute tokens to S can be and related algorithms.
partitioned into sets A, B, C ⊆ E. The minimum-cost degree-bounded spanning tree problem
(BMST) is a natural generalization of MDST to weighted graphs.
[A] Edges e with one endpoint in S \ (T1 ∪ · · · ∪ Tp ), and the other
In this problem, we are given a non-negative integer parameter
in V \ S contribute x∗e tokens to S.
Bv for each vertex v ∈ V , and the goal is to find a minimum-
[B] Edges e with one end in S \ (T1 ∪ · · · ∪ Tp ), and the other in
cost tree T such that degT (v) ≤ Bv for all vertices v . Let T ∗ be an
T1 ∪ · · · ∪ Tp contribute 1 − x∗e tokens to S.
optimum solution for an instance of this problem. Given Fürer and
[C] Edges e with one end in Ti and the other in Tj for some 1 ≤ i <
Raghavachari’s algorithm for MDST, it is natural to ask whether one
j ≤ p contribute 1 − 2x∗e to S.
can find an algorithm that computes a spanning tree T of cost at
Thus S receives most c (T ∗ ), and degT (v) ≤ Bv + 1 for all vertices v . After much
work on the topic (e.g., see [66,67,61,68–71]), this question was
x∗ (A) + (|B| − x∗ (B)) + (|C | − 2x∗ (C )) recently resolved by Singh and Lau [58] via an elegant adaptation
p
− of Jain’s iterative rounding technique. We give a simplified
= |B| + |C | + x∗ (δ(S )) − x∗ (δ(Ti )) presentation of their algorithm that is due to Bansal et al. [72].
i =1 Just like in Jain’s algorithm, Singh and Lau propose a natural
tokens in total. Using the tightness of the constraints for sets linear programming relaxation for BMST, and their algorithms
S , T1 , . . . , Tp in (Pf ), we can rewrite the number of tokens of S as produces an integral solution via an iterative rounding process. The
new ingredient in their algorithm concerns the treatment of degree
p
− constraints. Singh and Lau observed that, whenever the number
|B| + |C | + f (S ) − f (Ti ). (10) of fractional (support) edges incident to a vertex becomes small,
i=1 then the corresponding degree constraint can be dropped. The
Note that each edge e ∈ A ∪ B ∪ C contributes a positive amount of reason is simple: no matter what the algorithm does in subsequent
tokens to S, and the expression in (10) is therefore non-negative. iterations, in the worst case, it decides to include all support edges;
Furthermore, it is 0 only if A = B = C = ∅. But in this case, we we drop a constraint if these are few. This refinement of Jain’s
observe that iterative rounding technique is commonly referred to as iterative
relaxation and it first appeared in [56].
χ δ(S ) = χ δ(T1 ) + · · · + χ δ(Tp ) , In a bit more detail, Singh and Lau’s algorithm (SL) maintains
a set F of edges that have already been included, and a set W of
which contradicts the fact that the system of equalities in (9) has
remaining degree constraints. Given these two sets, SL repeatedly
full rank. Thus S obtains a positive amount of tokens, and since (10)
solves the following linear programming relaxation, where we use
is integral it follows that S receives at least one token.
E ′ for the set of remaining (non-dropped) edges in E \F , and degF (v)
Finally consider an inclusion-wise maximal set S ∈ L . As the
denotes the number of edges in F that are incident to v .
constraint for S in (Pf ) is tight, there must be at least one edge
e ∈ δ(S ) with x∗e > 0. Observe that L has no set containing both

min ce xe (PBMST )
endpoints of e, and hence there are 1−2x∗e > 0 tokens of edge e that e∈E ′
have not yet been redistributed. We conclude that the number of
edges is bigger than |L |, and this is the desired contradiction. 
s.t. x(E ′ ) = n − |F (V )| − 1 (11)
x(E (S )) ≤ |S | − |F (S )| − 1 ∀S ⊂ V (12)
3.3. Advanced iterative rounding: degree-bounded network design
x(δ(v)) ≤ Bv − degF (v) ∀v ∈ W (13)
In this section we study degree-bounded variants of the x ≥ 0.
f -connectivity and survivable network design problems intro-
Constraints (11) and (12) are familiar from the spanning
duced so far. Adding degree constraints to network design prob-
tree application in Section 3.1; (13) captures the new degree
lems is natural and models communication as well as hardware
constraints. The following lemma states the key structural
constraints in physical networks. Initial work on these problems
property needed buy the algorithm.
mostly focused on uniform cost (i.e., unweighted) network design
problems. Very recently, several breakthrough results have been Lemma 16. Let x∗ be a basic feasible solution for (PBMST ). Then either
obtained for weighted instances as well using beautiful extensions x∗e ∈ {0, 1} for some e ∈ E ′ , or there is a vertex v ∈ W with
of the iterative rounding paradigm discussed above. Once again,
we will use the spanning trees as a canonical example to illustrate degE ′ (v) ≤ Bv − degF (v) + 1. (14)
the essential ideas.
We begin with the minimum-degree spanning tree problem Before we prove Lemma 16, let us describe the algorithm. Given
(MDST). In this problem, we are given a connected unweighted F and W , algorithm SL first solves (PBMST ); let x∗ be the solution
graph G = (V , E ), and the goal is to find a spanning tree of obtained. If there is an edge e with x∗e = 0, then e is simply removed
smallest maximum degree. We first note that this problem, unlike from E ′ , and we iterate. Similarly, if there is an edge e with x∗e = 1,
the minimum spanning tree problem, is NP-hard; an undirected we include e into F , and delete it from E ′ . Finally, if none of the
graph has a Hamiltonian path iff it has a spanning tree with above two cases holds, Lemma 16 implies that there must be a
maximum degree at most 2. Fürer and Raghavachari [63] were the vertex v ∈ W with few incident support edges; we drop this vertex
first to consider the problem, and gave an O(log |V |) approximation from W and continue. The proof of the following main theorem
algorithm for it, as well as for the related problem of finding of [58] is similar to that of Theorem 15, and we omit it here.
an arborescence of smallest maximum out-degree in a directed
graph. Subsequently, Fürer and Raghavachari improved upon their Theorem 17. Let T ∗ be an optimum solution for the given BMST
previous result and showed how to compute a spanning tree instance. Algorithm SL computes a spanning tree T of cost at most
that has degree within an additive one of the minimum possible c (T ∗ ), and degT (v) ≤ Bv + 1 for all v ∈ W .
A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20 11

In the following sketch of the proof of Lemma 16, we follow [72]. The multiplicative degree guarantees obtained in [56] were
recently improved by Lau and Singh [75] who presented algorithms
Proof-sketch of Lemma 16. Let us assume that 0 < xe < 1 for all ∗
for degree-bounded survivable network design problems with
e ∈ E ′ ; we are done, otherwise. An uncrossing argument, similar additive degree guarantees. The authors presented an algorithm
to that used in the proofs of Claim 12 and Corollary 13 implies that that computes a 2-approximate solution where the degree of each
there is a laminar family L of vertex sets, and a set T ⊆ W such vertex is violated by at most 6rmax + 3, where rmax is the maximum
that x∗ is the unique solution to the system requirement across any cut. In the special case of Steiner forests,
this can be improved to 3.
x(E ′ (S )) = |S | − |F (S )| − 1 ∀S ∈ L (15)
While we have focused on undirected problems in this section,
x(δ(v)) = Bv − |F ∩ δ(v)| ∀v ∈ W . (16) we emphasize that similar progress has been made for the directed
E (S ) δ(v) counterparts of the problems considered. In [56], Lau et al.
Furthermore, the characteristic vectors {χ }S ∈L and {χ }v∈T
consider degree-bounded problems in directed graphs where the
are linear independent, and the size of the support is |E | = |L | +
connectivity requirements are given by crossing supermodular cut-
|T |. Now define the spare of vertex v ∈ W as
requirement functions (see also [76]), and where the in- and out-
spare(v) = degE ′ (v) − x∗ (δ(v)). degree for each vertex v is constrained to be at most av and bv ,
respectively. For this case, the authors showed how to compute a
The following is the central technical claim needed for this proof. feasible solution of cost at most 3 times the optimum whose in-
degree at v is at most 3av + 4, and whose out-degree at v is at most
spare(v) < 2|W |

Claim 18 ([72]). v∈W 3bv + 4, for all v ∈ V . Subsequently, Bansal et al. [72] presented
several further improvements of the directed results given in [56].
Let us first see how this claim implies the existence of a vertex v
The authors also demonstrated how their techniques can be used
with small support. The lemma shows that there is a vertex v ∈ W
to compute arborescences whose out-degree at each vertex v is at
with spare(v) < 2. We obtain
most Bv + 2.
degE ′ (v) < 2 + x∗ (δ(v)) ≤ 2 + Bv − degF (v),
3.4. Other applications of iterative rounding
where the second inequality uses the feasibility of x∗ for (PBMST ).
Note that the left- and right-hand sides of the latter inequality are
The survivable network design problem, the way we introduced
integral, and hence (14) is satisfied for v .
it in Section 2.4, is concerned with establishing pre-specified
In order to see Claim 18, observe that each edge in E ′ contributes
number of edge-disjoint paths between any pair of vertices i and
to the spare of at most two vertices of W , and hence j at a small total cost. It is natural to ask a similar question in the
vertex-connectivity setting: given integer parameters rij for each
− −
spare(v) ≤ 2 (1 − x∗e ) = 2(|E ′ | − x∗ (E ′ ))
v∈W
pair of vertices i, j ∈ V , find a minimum-cost subgraph H of G such
e∈E ′
that H has at least rij internally vertex-disjoint paths between any
= 2(|L | + |T | − x∗ (E ′ )), pair of vertices i, j ∈ V . (Here, internally vertex-disjoint means the
where we have used the assumption that 0 < x∗e < 1 for all e, and paths only share the endpoints i and j, and no other vertices.)
the fact that the system in (15) and (16) is non-singular. A counting Ravi and Williamson [77,78] describe a primal–dual
argument shows that |L | ≤ x∗ (E ′ ) (see [72]), and hence 3-approximation for this problem when rij ∈ {0, 1, 2} for all i, j ∈
− V . Subsequently, Fleischer [79] presented an IP formulation for the
spare(v) ≤ 2|T | ≤ 2|W |. problem and used iterative rounding to obtain a 2-approximation
v∈W algorithm for this special case. Kortsarz et al. [80] showed that
no polynomial-time approximation algorithm with performance
Finally, Bansal et al. show that the non-singularity of the system in 1−ϵ
(15) and (16) implies that the above inequality holds strictly.  guarantee better than 2log n exists for any ϵ > 0 unless NP ⊆
DTIME(npolylog (n) ). Recently, Chuzhoy and Khanna [81] gave an
In [72], Bansal et al. applied the above spare argument to the O(k3 log n)-approximation for this problem, which we shall discuss
more general minimum crossing spanning tree problem (MCSP). In in Section 5.2, via a reduction to the element-connectivity problem
this problem, we are given edge subsets E1 , . . . , Ek and integers we talk about next.
B1 , . . . , Bk , and the goal is to find a spanning tree T of smallest The element-connectivity problem was introduced by Jain
cost that has at most Bi edges from Ei for all i. For the case where et al. [82] as a problem which is intermediate in difficulty between
each edge e ∈ E is in at most r of the given sets Ei , Bansal et al. the edge- and vertex-connectivity versions described above. Here,
presented an algorithm that returns a tree of at most optimum the vertex set V of graph G is partitioned into terminals and non-
cost, that has at most Bi + r − 1 edges from Ei for all 1 ≤ i ≤ k. terminals. Edges and non-terminals are called elements. For each
An improvement for the structured special case where the sets pair of terminals i, j we are given a parameter rij and we require rij
E1 , . . . Ek are induced by a laminar system of cuts was given in [73]. element-disjoint paths between them. Jain et al. [82] presented a
Checkuri et al. [74] recently presented a very elegant randomized 2H (k) approximation algorithm where k is the largest value of rij
technique for rounding a fractional point in a matroid polytope to over all i, j. Fleischer et al. [83] then presented a 2-approximation
an integral one. The authors derive concentration bounds on linear algorithm for the problem, once again using iterative rounding, and
functions of variables for the elements of the underlying matroid. matching the approximation ratio for the edge-connectivity case.
In the special case of MCSP, this yields a tree of at most optimum
(expected) cost with (1 + ϵ)Bi + O( 1ϵ log n) edges from set Ei for all 4. Approximate packing results
i.
Lau et al. [56] were the first to apply iterative rounding ideas The network design problems considered so far aim at selecting
to the more general degree-bounded survivable network design a minimum-cost subgraph of a given weighted undirected graph
problem (BSNDP). The authors showed how to find a subgraph H that satisfies certain prescribed connectivity properties. This
satisfying all connectivity constraints whose cost is at most twice section focuses on packing problems which are, in a sense, dual
that of an optimum solution. Moreover, the degree of each vertex to these problems. The arc-version of Menger’s classical theorem
v is at most 2Bv + 3. serves as a canonical example:
12 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

Theorem 19 (Menger [84]). A directed graph G = (V , E ) has k arc- graph G has k edge-disjoint Steiner trees if the terminal set is
disjoint s, t-paths for some s, t ∈ V if and only if any s, t-cut has at 3k-edge-connected. Kriesell [95] showed that the conjecture in
least k arcs. general Eulerian graphs G. For a general undirected graph G,
Lau [97] recently proved that G has k edge-disjoint Steiner trees
Menger’s theorem characterizes the class of graphs in which we if every Steiner cut has at least 26k edges; in his thesis ([92], The-
can pack k arc-disjoint s, t-paths; the theorem provides a succinct orem 3.1.2) he slightly improves this bound to 24k.
certificate for the existence and non-existence of such paths. We It is natural to ask whether Kriesell’s conjecture extends to more
will see that similar min–max type statements exist for the case general network design problems. For example, given a Steiner
where we pack spanning trees instead of paths, but no such exact forest instance such that each of the pairs is connected by k edge-
characterization exists for the packing variants of the Steiner tree disjoint paths, does the graph have k edge-disjoint Steiner forests?
and f -connectivity problems. Chekuri and Shepherd [98] pose this conjecture for the more
In this section we will be interested in the implications general 0, 1-f -connectivity problem.
of min–max characterizations of packing problems for network
design problems. Packing is an important and active area of Conjecture 1 ([98]). Let G be an undirected graph, and f a 0, 1-skew-
research that has applications in VLSI circuit design (e.g., see supermodular function. If x∗ is a feasible solution to (Pf ) such that kx∗
[85–87]), in computer networking (e.g., see [88–90]), and in is integral, there exist f -connected integer vectors x1 , . . . xk such that
∑k i
many other domains. Research in this area has been very active
i=1 x ≤ kx.
throughout the last decade and before, and a comprehensive
account is beyond the scope of this survey. We refer the reader to In fact, Chekuri and Shepherd remark that there is no reason
the survey by Frank [91], and to Lau’s recent thesis [92] for more why this result should not also be true for general (non-0, 1)
skew-supermodular functions. Using Nash-Williams and Tutte’s
information.
theorem for spanning trees as well as Mader’s well-known
splitting-off technique [99], the authors arrive at the following
4.1. Packing spanning trees
main decomposition theorem.
In their ground-breaking work Nash-Williams [93] and Tutte
Theorem 21. Let G be an undirected graph and let f be a 0, 1-valued
[94] provided the following beautiful generalization of Menger’s downwards monotone or proper function. Further let x∗ be a feasible
theorem. solution of (Pf ) and let k ≥ 1 be an integer such that kx∗ is integral.
Then there are solutions x1 , . . . , xk to (IPf ) such that
Theorem 20. There exist k edge-disjoint spanning trees in an
undirected graph G = (V , E ) if and only if |Eπ | ≥ k · (r (π ) − 1) k

for all partitions π ∈ Π . xi ≤ 2k · x∗ .
i=1
The theorem immediately yields a short alternative proof of
integrality of (P+
SP ). Let x be an optimum basic feasible solution for

The theorem provides an alternate 2-approximation algorithms
the LP and let k be smallest such that x̄ = kx∗ is integral. Note that for the f -connectivity problem where f is a 0, 1 proper or down-
the existence of an optimal solution implies that all edges costs are wards monotone function. Extending his work on Steiner trees,
non-negative. As x∗ is feasible for (P+SP ) it follows that Lau [100] recently showed that Conjecture 1 is approximately true
− for the Steiner forest problem: if each of the given terminal pairs is
x̄e ≥ k(r (π ) − 1)
32k-edge-connected, then G has k edge-disjoint Steiner forests.
e∈Eπ

for all π ∈ Π . Let H be a graph with vertex set V and x̄e parallel 5. Randomization
copies of each edge e ∈ E. By Theorem 20, H has k edge-disjoint
spanning trees T1 , . . . , Tk . Let xi be the incidence vector of tree Ti Randomization has long been a widely used technique in
for 1 ≤ i ≤ k, then approximation algorithms: perhaps the most common use has
been in randomized rounding of linear programming relaxations,
k
− but often randomization is a useful tool in its own right. In
xi ≤ kx∗ , (17)
this section, we show a randomized rounding for minimum
i =1
spanning tree, and then give two recent examples of the use of
and hence kx∗ dominates the sum of k integer solutions. Polyhedra randomization in non-rounding contexts.
whose extreme points satisfy (17) are said to have the integer
decomposition property. We refer the reader to [9] for more 5.1. Randomized rounding for minimum spanning tree
information on this well-studied property.
An immediate consequence of (17) is that there is an 1 ≤ i ≤ k The general idea in randomized rounding is to take an integer
such that c (T i ) ≤ c T x∗ , and the optimality of x∗ implies that the programming (IP) formulation of the problem at hand, solve a
inequality as well as that in (17) must hold with equality. Hence, we convex programming relaxation (CP) of this formulation, and then
showed that x∗ is a convex combination of minimum-cost spanning convert the resulting fractional solution to (CP) into an integral
trees. solution for (IP) by randomly rounding the variables. The goal is
to do this so that the cost of the integral solution thus obtained is
4.2. Advanced packing theorems not much more than that of the fractional solution to the convex
program.
Unless NP = co − NP, Nash-Williams’ and Tutte’s result in In this section, we show how to randomly round the linear
Theorem 20 cannot be extended to the Steiner tree and the more programming relaxation (PSP ) of the minimum spanning tree
general f -connectivity setting. Nevertheless, Kriesell [95] conjec- problem. In particular, we give a proof due to Alon [101] that, given
tured that a graph G has k edge-disjoint Steiner trees if every any feasible solution
∑ to the minimum spanning tree LP relaxation
Steiner cut is crossed by at least 2k edges. While this conjecture with cost Z ∗ = e ce xe , shows that there is a randomized rounding
remains open, some partial progress has been made. In particular, procedure to obtain a tree with expected cost at most O(Z ∗ log n).
Frank, Király, and Kriesell [96] showed that a given quasi-bipartite The procedure is simple:
A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20 13

Random-Round-MST can be fixed by alterations (see, e.g., [108–111]; in other cases,


1: i←0 we might need to round the variables in some dependent fashion
2: repeat (see, e.g., [112–114]). Moreover, a variety of probabilistic bounds,
3: i←i+1 such as Chernoff–Hoeffding bounds, the Lovász Local Lemma, Jan-
4: Let Ai be the set of edges obtained by picking each edge e son’s inequality, and the FKG inequality are often used to bound the
independently with probability xe . probability of failure: see, e.g., [108] for definitions, and the books
5: until Gi = (V , ∪j≤i Aj ) is connected. and surveys above for applications.
6: return any spanning tree of Gi .
5.2. Two other randomized algorithms
Lemma 22. Given any (multi)graph H = (U , E ′ ) and a feasible
solution {xe }e∈E ′ to (PSP ) for this graph, suppose we pick each edge A recent paper of Chuzhoy and Khanna [81] used a simple ran-
with probability xe independently. Then the number of components is domized argument to approximate the vertex-connectivity prob-
at most 0.9|U | with probability at least 1/2. lem using algorithms for element-connectivity problem (see Sec-
Proof. We call a vertex u isolated if no edge incident to u is tion 3.4 for definitions; recall that k = maxij rij is the maximum
picked by the random ∑ process: the probability that u is isolated is element-connectivity requirement for the instance). Their argu-
ment is the following: let V1 , . . . , VL be independent random sam-
e∈δ({u}) (1 − xe ) ≤ e ≤ 1/e. By linearity of expectation,
∏ − e∈δ({u}) xe
ples of the vertex set V , where for any ℓ, each vertex in V is added
the number of isolated vertices is at most |U |/e, and Markov’s
to Vℓ independently with probability p = 1/k. For each ℓ ∈ [L],
inequality implies that we have at most 2|U |/e isolated vertices
define an element-connectivity instance Iℓ on the original graph
with probability at least 1/2. Since all the other non-isolated
G where rijℓ = rij if both i, j ∈ Vℓ , and rijℓ = 0 otherwise. Clearly, the
vertices must be in components of size at least 2, the total number
optimal vertex-connected solution is feasible for all these element-
of components is at most |U |(2/e + 1/2(1 − 2/e)) < 0.9|U | with
probability at least 1/2.  connectivity instances; the claim is that the union of the solutions
to these instances is a solution to the original vertex-connectivity
Theorem 23. The expected cost of the tree returned by MST-Rand- instance with high probability. The proof is simple: given i, j and
Round is O(log n) times the cost of the LP solution Z ∗ . any set S ⊆ V \{i, j} of size k, the probability that at least one ℓ ∈ [L]
has both i, j ∈ Vℓ and also S ∩Vℓ = ∅ is 1 −[1 −p2 (1 −p)k ]L = 1/2nk
Proof. We show that the expected number of rounds before the if L = Ω (k3 log n). For that choice of ℓ, the set S is not a ver-
procedure stops is O(log n). Let L = 20 log n, and recall that tex cut for i, j in the element-connected solution for Iℓ . By a triv-
Gi = (V , ∪j≤i Aj ). We claim that the graph GL is disconnected
 
choices of i, j, S, we have that
n −2
ial union bound over all n2
with probability at most 1/2; conditioned on it being disconnected, k

an identical argument shows that G2L will be disconnected with the union of these random element-connectivity solutions is solu-
probability at most 1/2 etc., and hence the expected number of tion to the original vertex-connectivity instance with probability at
rounds will be at most 2L. least half. As discussed in Section 3.4, each element-connectivity
To prove that GL is connected with probability at least 1/2, instance is approximable to within a factor of 2, which implies a
define Ci to be the number of components of the graph Gi , and 2L = O(k3 log n) approximation to the vertex-connectivity prob-
define index i to be successful if either Gi−1 is connected (i.e., if lem. Note that for the single-source case of vertex-connectivity,
Ci−1 = 1) or if Ci ≤ 0.9 · Ci−1 (if the number of components the above argument can be improved to L = O(k2 log n), which
decreases by a constant fraction due to the edges in Ai ). The crucial matches the best result known for this case via other involved ar-
claim is that the probability of i being successful is at least 1/2 guments [115–117].
regardless of all random choices made in previous rounds. The proof of A different use of randomization appears in an algorithm for the
this claim is simple: if Gi−1 is connected then i is always successful. connected facility location problem: here the input is a metric space
Else, let Hi−1 be the graph on Ci−1 vertices obtained by contracting (V , d) along with a set of clients D ⊆ V , and an integer M ≥ 1.
all edges in Gi∑
−1 . Since each cut in Hi−1 corresponds to a cut in Gi−1 , The goal is to designate a set F ⊆ V of the vertices as ‘‘facilities’’,
we have that e∈δ(S ) xe ≥ 1 holds for Hi−1 ; now Lemma 22 ensures to assign each client j ∈ D to its closest facility i(j) ∈ F , and
that the number of components after another round of randomly to build a Steiner tree T ∑ = (VT , ET ) connecting
∑ all the facilities.
adding edges will cause Ci ≤ 0.9 · Ci−1 with probability at least 1/2. The objective function is j∈D d(j, i(j)) + M e=uv∈ET d(u, v). Sev-
Given the above claims, the probability that the graph GL is not eral algorithms have been proposed for this problem, e.g., based
connected is bounded above by the probability that a sequence of L on rounding linear programming relaxations [118,119], the pri-
independent unbiased coin-flips contains fewer than log n/ log 0.9 mal–dual method [120], and reductions to uncapacitated facility
heads. Note that while the events in the random rounding process location [121]. Subsequently a simple randomized algorithm was
are not independent, we proved a lower bound of 1/2 on the proposed [122]: randomly pick each client location in D to also be
probability of success regardless of the history. Since L = 20 log n, in F independently with probability 1/M, assign each client to its
the probability we see fewer than log n/ log 0.9 < 10 log n heads closest facility in F , and build an ρST -approximate Steiner tree on
(and hence the probability that GL is not connected) is at most 1/2, F (using, say, the ρST = ln 4-approximation algorithm of Byrka
which completes the proof.  et al. [40]). This algorithm gives a 2 + ρST ≈ 3.39-approximation
to the connected facility location problem. This random sampling
5.1.1. Advanced applications of randomized rounding technique has since been used in approximation algorithms for
Randomized rounding and derandomization techniques have other problems in network design (see, e.g., [123] and the refer-
been widely used since the results of Raghavan and Thomp- ences therein), and for approximation algorithms for stochastic op-
son [102,103] for the low-congestion routing problems, and even timization problems [124,125].
surveying the wealth of ideas developed in this area is beyond
the scope of this survey (see, e.g., the texts [104,105] or the sur- 6. Metric embedding techniques
veys [106,107]). Apart from the idea of independent rounding used
above, techniques have been developed to round the fractional so- Metric embedding techniques have been very widely used in
lutions in more advanced ways: e.g., in some cases randomized recent years in network design, and one of the most popular
rounding does not give the desired solution, but the blemishes results has been that of embedding a general metric space into
14 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

distributions over tree metrics. The main idea is simple: given any The (uniform) buy-at-bulk problem is the following: the input
metric space, one can randomly generate a tree metric such that consists of a graph G = (V , E ) with edge lengths we , and a set of k
distances in the original metric space are closely approximated by terminal pairs (si , ti ) ∈ V × V for i ∈ {1, 2, . . . , k}, and a concave
the expected distances in this random tree; Hence, this allows us to function g : Z≥0 → R≥0 such that the cost of routing t paths on
randomly reduce many optimization problems on general metrics an edge e incurs a cost of we · g (t ). The goal is to find a path Pi
to their counterparts on tree metrics, which are often much simpler between si and ti for each i: if te is the number of paths using edge
to solve. In this section, we give the main result on which this e, the (uniform)
∑ buy-at-bulk objective function seeks to minimize
technique is based, and illustrate it by giving an approximation the total cost e∈E we · g (te ). (The ‘‘uniform’’ indicates that the cost
algorithm for the buy-at-bulk problem. functions for different edges are all multiples of the same function
g (·), and hence proportional to each other—see Section 7.2 for a
6.1. Embeddings into distributions of trees discussion on the ‘‘non-uniform’’ problem.)
Note that the concave cost function causes us to prefer solutions
For any graph G = (V , E ) with edge lengths we , we define dG to where many paths use the same edges. The problem is NP-hard
be the induced shortest-path metric; i.e., dG (x, y) is the length of (since the convex function g (t ) = 1(t ≥1) captures the Steiner forest
the shortest path between x and y according to these edge lengths problem), and the best approximation guarantee known for the
we , which can be found using, say, an all-pairs-shortest-paths com- problem is via probabilistic embeddings into trees.
putation. Given a metric space (V , d), consider a tree T = (V , E ′ )
with edge lengths we′ ′ ; note that since there is a unique path be-
Theorem 26 ([136]). The (uniform) buy-at-bulk problem admits a
tween any pair of nodes in T , the computation of the shortest-path
randomized algorithm that returns a solution with expected cost at
distances dT in the tree T is especially simple. Such a tree T is called
most O(log n) times the optimum.
a dominating tree for the metric (V , d) if dT (x, y) ≥ d(x, y) for all
x, y ∈ V . We define DT(V , d) to be the set of all dominating trees Proof. Most approximation algorithms using probabilistic embed-
defined on the vertex set V . dings into trees have proofs that resemble this one: we first show
that given any solution on the graph G of cost Opt, there is a solu-
Definition 24. A metric space (V , d)α -probabilistically embeds into
dominating tree metrics if there is a probability distribution D tion on the random tree T of ‘‘low’’ expected cost Opt · O(log n). Of
defined on DT(V , d) such that course, we then find the best solution on T , which costs no more,
and then show that any solution on T can be translated back to the
ET ∈D [dT (x, y)] ≤ α · d(x, y) (18) graph G without an increase in cost, thus completing the proof.
for all x, y ∈ V . The embedding is efficient if there is a polynomial- The case of the buy-at-bulk problem is trivial if the input graph
time algorithm that returns a sample from the distribution D . G is a tree: choosing the unique shortest paths between terminals
is the optimal solution in this case. To solve the problem when G
Theorem 25. Any metric space (V , d) with |V | = n points α - is not a tree, apply Theorem 25 to the shortest-path metric (V , dG )
probabilistically embeds into dominating tree metrics with α = O to obtain a random dominating tree T = (V , E ′ ) with edge lengths
(log n); moreover, this embedding is efficient. we′ ′ such that the expected distance dT (x, y) in the tree is at most
O(log n) · dG (x, y) for all x, y ∈ V . For any edge e′ = uv ∈ E ′ ,
Theorem 25 was proved by Fakcharoenphol et al. [126], building fix a shortest u, v -path Qe′ = Quv . Now, for any terminal pair
on a series of important papers [127–131]. The procedure of [126]
(si , ti ), consider the unique path ⟨si , u1 , u2 , . . . , ul , ti ⟩ in the tree
outputs random trees on a larger set of vertices V ′ ⊇ V , but
T , and define the path Pi to be the concatenation of the paths
it is simple to remove the ‘‘Steiner’’ nodes in V ′ \ V using ideas
Qsi u1 , Qu1 u2 , . . . , Qul−1 ul , Qul ti .
from [132,133] whilst changing distances only by a constant factor.
We claim the cost of the final solution on G is at most the cost
For some applications, however, it is more convenient to directly
of the solution on the tree. Indeed, let Xe be the set of pairs whose
use the trees output by the procedure of [126] due to their
paths use the graph edge e ∈ E, and let Ye′ be the set of terminal
‘‘hierarchical well-separated’’ structure, despite the presence of
these Steiner nodes (see, e.g., [134]). pairs whose paths use the tree edge e′ ∈ E ′ : the final cost is
In fact, there is a deterministic polynomial-time algorithm that − − −
outputs a set of O(n log n) trees from DT(V , d) such that the we · g (|Xe |) ≤ we · g (|Ye′ |) (19)
e∈E e∈E e′ ∈E ′ :e∈Qe′
uniform distribution on this set satisfies Theorem 25 (see [131]).
The value α = O(log n) in Theorem 25 is the best possible for
− −
= g (|Ye′ |) · we (20)
general n-point metrics: lower bounds of Ω (log n) can be proved
e′ ∈E ′ e∈E :e∈Qe′
even for ‘‘simple’’ graphs like the square grid [127] and treewidth-2 −
graphs [135]. ≤ g (|Ye′ |) · we′ ′ , (21)
e′ ∈E ′
6.2. An application: approximating buy-at-bulk network design
which is the cost of the optimal solution on T . Note that the
Theorem 25 can be used to give a randomized O(log n)- inequality (19) followed from the concavity of the function g (·),
approximation algorithm to the minimum spanning tree problem and inequality (21) follows from the fact that the tree T is a
on any graph: i.e., given any edge-weighed graph G = (V , E ), dominating tree for the metric (V , dG ) and that Qe′ is a shortest path
the algorithm outputs a random spanning tree of G whose in G.
expected cost is at most O(log n) the cost of the MST. If G is a Finally, it remains to show that if there is a solution in G of
complete graph with metric edge-weights, this algorithm simply cost Opt, there is a solution of expected cost at most Opt · O(log n)
applies Theorem 25 and returns a random tree drawn from the on the random tree T . The argument is similar in spirit to the
distribution. If G = (V , E ) is not a complete graph, this random one above. Suppose the solution in G is given by the paths Pi∗ =
tree returned may contain edges not in E, and one needs to replace ⟨si , v1 , v2 , . . . , vℓ , ti ⟩. For each edge e = uv ∈ E, consider the tree
these edges by paths in the underlying graph. Let us give this path Re = Ruv . Now, define the path Pi′ on the tree for (si , ti ) to
algorithm and its proof in the context of a more general problem, be the concatenation of the paths Rsi v1 , Rv1 v2 , . . . , Rvl−1 vl , Rvl ti ; note
the buy-at-bulk network design problem. that this path Pi′ may be non-simple. If Ae be the set of paths Pi∗
A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20 15

using the graph edge e, and Be′ be the (multi-)set of paths Pi′ using of spanning trees of G (with the same edge lengths we ): note that
the tree edge e′ , then the expected tree cost is this is a subset of the set DT(V , dG ), where dG is the shortest-
    path metric for G—we now consider a variant of Definition 24
− − − where one α -probabilistically embeds the graph metric dG into
E g (|Be′ |) · we′

≤E g (|Ae |) · we′ ′
(22) dominating tree metrics, but the support of the distribution
e′ ∈E ′ e′ ∈E ′ e∈E :e′ ∈Re
is restricted to ST(G). The results of [146,147] show that any
graph metric O(log n poly log log n)-probabilistically embeds into
 
− −
≤ g (|Ae |) · E we′ ′
(23) its spanning trees, thus almost matching the result in Theorem 25
e∈E e′ ∈E ′ :e′ ∈Re up to poly log log n factors. (It remains an interesting open question
− to remove these lower-order factors.) These results have been
≤ g (|Ae |) · O(log n) · we , (24) useful in a number of network design contexts, including a result
e∈E of Chekuri et al. [148] on non-uniform buy-at-bulk problems
where the last inequality follows from the guarantees of the to be discussed in the next section, and online algorithms for
probabilistic tree embedding. This completes the proof of the k-connectivity problems [149].
O(log n)-approximation guarantee.  Other techniques from metric embeddings have been useful
in other contexts as well: e.g., well-padded tree embeddings [143]
Using the deterministic extension mentioned in the discussion have been used for oblivious network design problems, and the
after Theorem 25, one can obtain a deterministic algorithm for similar maximum-gradient embeddings [150] have proved useful
uniform buy-at-bulk by enumerating the O(n log n) trees in the for the fault-tolerant facility location problems. Arora’s techniques
support of the distribution D , solving the problem on each, and for polynomial-time approximation schemes for the traveling
returning the best solution amongst them. salesman problem have been extended to arbitrary metric spaces
The paper of Awerbuch and Azar [136] shows how to extend the of low doubling dimension via embeddings into distributions of
algorithm to handle a slightly more general buy-at-bulk problem, low-treewidth graphs [151].
where the terminal pairs (si , ti ) also have demand values di ∈ Z≥0 ,
and the cost function for the edges g : Z≥0 → R≥0 can be any sub-
7. Matching-based augmentation
additive function (that is, any function satisfying g (x1 ) + g (x2 ) ≤
g (x1 + x2 )). Andrews [137] showed that an O(log1/4−ϵ n) approx-
A particularly simple technique with wide applicability to
imation algorithm for the (uniform) buy-at-bulk problem, for any
connectivity problems is that of matching-based augmentation.
ϵ > 0, would imply that NP ⊆ ZTIME (npoly log n ). Given the hard- Given a problem where some set of terminals desire connectivity
ness results, the special cases of single-sink buy-at-bulk problem
to each other, one may be able to efficiently solve a ‘‘partial’’
(where all the flow goes to a single-sink) has been considered, and
connectivity problem that reduces the number of connected
constant factor approximation algorithms are known [138,139,
components by a constant factor. Iterating this process then
122]. Recently, variants of the buy-at-bulk problems with higher
gives a solution to the original connectivity problem, with an
connectivity requirements (e.g., where each client requires two approximation guarantee that is related to the number of rounds
edge-disjoint paths to the root, and the cost incurred at an edge of this process. In Section 7.1, we will see how such an idea
is a concave function of the number of paths using this edge) have gives an O(log n)-approximate MST; subsequently, we will see
also been studied—e.g., see [140,141]. an advanced application of this problem to the (non-uniform)
A different direction of research considers the case when buy-at-bulk problem in Section 7.2.
the function g (·) is not given up-front, and the goal is to find
paths Pi that are good for all concave functions g (·), even when
7.1. Approximate MST via matching-based augmentation
the adversary choosing the function is allowed to look at the
paths. Goel and Estrin [142] gave an algorithm for single-sink
Start with a metric space (V , d) and define V0 = V . We first
instances that outputs paths which are simultaneously an O(log n)
find a min-cost near-perfect matching M0 (which leaves at most
approximation for all concave functions g (·). Gupta et al. [143]
one node unmatched) on the nodes V , where the cost of matching
extended this result to give an algorithm that outputs paths for
two nodes (u, v) is the distance d(u, v) between them. For each
each pair of vertices, such that regardless of the demand values duv
matched pair, pick one of the nodes and add them to the set V1 ;
between the vertex pairs and the subadditive cost function g (·), the
also add in the unmatched node, if any. Find a min-cost near-
solution given by this set of paths is an O(log2 n) approximation.
perfect matching M1 on V1 ; pick one of the newly matched vertices
(and the unmatched vertex, if any) and form V2 , and continue until
6.3. Extensions and other applications |Vt | = 1 for some t. Return the set of edges T = ∪tj=−01 Mj .
The idea of embedding arbitrary metric spaces into distribu-
Theorem 27. The above algorithm returns a tree of cost at most
tions over trees has had a major impact on approximation algo-
O(log n)-times that of the MST.
rithms for problems on metric space. In some cases, the algorithms
obtained by randomly reducing to the problem on trees are still the Proof. To show that the set of edges output by the algorithm is
best algorithms known for the problem: this is true for the buy- a tree, we inductively claim that for any i, all nodes in V \ Vi are
at-bulk problem, as well as the Group Steiner tree [144], the min- connected to some node in Vi using the edges in ∪j<i Mi . Indeed,
communication spanning tree problem [145]. For other problems this is true when i = 0; moreover, any node in Vi \ Vi−1 is dropped
(such as the k-median problem [130]), these tree embeddings have because it is connected to the other node using an edge from Mi−1 .
given us a general technique to obtain a first-cut approximation al- Since we stop when we have a single node, all other nodes are
gorithm, which have then been improved upon by other problem- connected to this node, and hence to each other. Moreover, the
specific techniques. number of edges added is precisely n − 1, and hence we have a
The idea of embedding a metric into a distribution over trees spanning tree.
can be extended to embedding the shortest-path metric of a graph Since the number of rounds is at most O(log n), it suffices to
G into a distribution over its subtrees. Specifically, given a graph show that the cost of each matching Mi is at most d(T ∗ ), the cost
G = (V , E ) with edge lengths we , one can consider the set ST(G) of the MST T ∗ . To make the argument simpler, assume there are
16 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

2k nodes in Vi . The Euler tour C of the MST T ∗ has cost at most v to mark as inactive: say this vertex is u. The path Pu from the (now
2 d(T ∗ ), twice the cost of the MST. Each node in Vi may appear inactive) terminal u to the root is defined to be Qui v concatenated
at several places: we choose one of these positions arbitrarily. If with the path Pv for v that we will construct in future rounds. This
we rename these nodes to be {x0 , x1 , . . . , x2k−1 , x2k = x0 } in the concludes round i; the set Ai+1 is now defined to be the terminals
order we encounter them as we go around the tour, then by the that are still active. It remains to specify how to find the matching
triangle inequality, i=0 d(xi , xi+1 ) ≤ 2d(T ∗ ). Hence, one of the
∑2k−1
Mi : for this, we define edge lengths ℓi (e) = cB (e) + 2i−1 · cR (e)
sums i=0 d(x2i , x2i+1 ) or i=0 d(x2i+1 , x2i+2 ) is at most half that
∑k−1 ∑k−1
for each edge e ∈ E, and define Qui v to be a shortest path between
value, i.e., d(T ∗ ). But this is a valid matching of the nodes in Vi , and u, v ∈ Ai with edge lengths ℓi (·). We then find a matching Mi of
hence the min-cost perfect matching has cost at most the weight the active set Ai that minimizes
of the MST, which proves the theorem.  −
Li = length of the path Qui v .
7.2. An application: A non-uniform buy-at-bulk problem (u,v)∈Mi

An elegant use of these matching-based ideas appears in a paper Finally, if i = log2 k + 1 and there is only one active vertex v ,
by Meyerson, Munagala, and Plotkin [152], who gave an O(log n) we define Pv to be a shortest path from v to the root r in (V , E )
approximation for the following buy-at-bulk problem. The single- where the edge lengths are again ℓi (e) = cB (e) + 2i−1 · cR (e) =
sink non-uniform buy-at-bulk problem (also known as the cost- cB (e) + k · cR (e). This completes the definition of the paths for every
distance problem) is the following: we are given a graph G = vertex in R.
(V , E ), where the edges have both a buying cost cB : E → R≥0 The proof the theorem follows ∑ from two claims: firstly, that the
and a renting cost cR : E → R≥0 . We are given a root vertex r ∈ V , cost of the solution is at most i Li , the sum of the lengths of all
and a subset of terminals R ⊆ V : the goal is to define a path Pv the paths over all the O(log k) stages, and secondly, that E[Li ] for
from each terminal v ∈ R to the root r (hence it is a ‘‘single-sink’’ each stage is at most Opt. The former claim is not difficult to verify,
problem), with the cost of the solution being and we focus on the latter. To begin, note that the probability that a
terminal u ∈ R belongs to Ai is exactly 2−(i−1) . Consider an optimal
− − −
cost({Pv }v∈R ) = cB (e) + cR (e). (25)
e∈∪v∈R Pv v∈R e∈Pv
solution {Pv∗ } | v ∈ R with cost cost({Pv∗ }) = OPT , and define
E ∗ = ∪v∈R Pv∗ to be the edges used by these paths. Consider the
One can think of the buying cost as being a fixed charge we random set of paths {Pv∗ | v ∈ Ai } used by only the vertices active
pay for using the edge (regardless of the number of paths using in stage i: their union Ei∗ = ∪v∈Ai Pv∗ connects Ai to the root, and
it), and the renting cost as being an incremental charge paid for
has total length ℓi (Ei∗ ) = e∈E ∗ (cB (e) + 2
i −1
cR (e)). For an edge

every path using the edge. The cost function for each edge is an i

affine function fe (x) = cB (e) + cR (e) · x, and hence is a concave e ∈ E ∗ , its expected contribution to this length ℓi (Ei∗ ) is
function in the number of paths x using the edge. Importantly,
the cost functions for different edges are allowed to be unrelated Pr[e ∈ Ei∗ ] × (cB (e) + 2i−1 cR (e))

to each other—hence the use of ‘‘non-uniform’’ to refer to this ≤ cB (e) + Pr[v ∈ Ai ] × 2i−1 cR (e)
problem. (One can consider a variant of the non-uniform buy-at- v∈R:e∈Pv∗
bulk problem where the concave cost functions on each edge are −
not just affine functions ae + be x, but are allowed to be arbitrary = cB (e) + cR (e).
concave function; however, the general concave functions case can v∈R:e∈Pv∗
be reduced the affine functions case with only a constant factor
∑ ∑ over all edges in E , we get∗that ℓi (Ei ) ≤ e∈E ∗ cB (e) +
∗ ∗

loss in the approximation, and hence we will focus on the affine Summing
functions case.) v∈R ∗ c
e∈Pv R (e ) = Opt . Hence, E i is a subgraph of expected
The non-uniformity, where different edges have different length at most Opt that connects all terminals in Ai to the root.
functions, is in contrast to the ‘‘uniform’’ problem formulation In turn, this implies the existence of a tree Ti spanning Ai ∪ {r }
in Section 6.2 where the cost functions were all multiples of with expected length at most Opt; the Euler tour of this tree thus
some fixed concave function g (·). This non-uniformity in the has expected weight at most 2Opt. Now, just as in the proof of
cost function makes buy-at-bulk harder: for instance, while the Theorem 27, we can infer the existence of a perfect matching
single-sink uniform buy-at-bulk problem admits constant factor on Ai of expected total length at most half the cost of this tour,
approximations [138], the single-sink non-uniform buy-at-bulk i.e., at most Opt. Similarly, we can infer that the weight of a path
problem is Ω (log log n)-hard to approximate unless NP admits connecting any vertex in Ai is at most Opt. These two bounds show
O(nlog log log n )-time deterministic algorithms [153]. On the other that the expected length of the paths in each round i is at most Opt,
hand, the best approximation guarantee known for the single-sink thus completing the proof. 
non-uniform problem, with a proof based on random matching-
based augmentations, is the following.
The paper of Meyerson et al. [152] considered a slightly more
Theorem 28 ([152]). The single-sink non-uniform buy-at-bulk general problem where each terminal i wants to send di ∈ Z≥0
problem admits a randomized O(log |R|)-approximation algorithm. units of flow to the sink, and the cost of using an edge e to send
x > 0 units of flow is then cB (e) + x · cR (e); the proof above can be
Proof. Let us first give the algorithm: for simplicity, we assume extended to this more general problem. The derandomization for
that the number of terminals k = |R| is a power of 2. To begin, all the algorithm above was given by Chekuri et al. [154].
the terminals are marked active, and define A1 = R. The algorithm
The results for the single-sink problem have only recently
proceeds in rounds i = 1, 2, . . .: at the beginning of each round i,
k been extended to the general (multiple-sink) case: a poly-
we ensure that the size of the active set Ai is |Ai | = 2i− 1.
In round i, if |Ai | > 1, we find a perfect matching Mi of the logarithmic approximation algorithm has been given by Chekuri
vertices in Ai , and also paths between each of these matched pairs et al. [148]. Andrews [137] has shown that the general non-uniform
(using a procedure described later). If u and v are matched in Mi and buy-at-bulk problem is hard to approximate better than Ω
the path between them is Qui v ⊆ E, we randomly choose one of u or (log1/2−ϵ n).
A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20 17

7.3. Extensions and other applications Acknowledgements

The name ‘‘matching-based augmentation’’ comes from the The first author was supported in part by NSF awards CCF-
survey by Ravi [155]. Perhaps the first application of the matching- 0448095 and CCF-0729022, and an Alfred P. Sloan Fellowship. The
based heuristic was for Christofides’ 23 -approximation algorithm second author was supported in part by NSERC grant no. 288340.
for the metric traveling salesman problem: we first find a
minimum spanning tree (whose cost is at most the cost of the References
optimal TSP tour), and then we find a matching on the odd-degree
nodes (whose cost is at most half the cost of the optimal tour, using [1] W.J. Cook, W.H. Cunningham, W.R. Pulleyblank, A. Schrijver, Combinatorial
an argument akin to those above). Matching-based augmentation Optimization, John Wiley, New York, 1997.
[2] V.V. Vazirani, Approximation Algorithms, Springer, second edition, 2003.
ideas were also used in a series of works on finding trees with small
[3] D.B. West, Introduction to Graph Theory, 2nd edition, Prenctice Hall, Upper
degree and diameter [156–158]. Saddle River, 2001.
[4] O. Boru̇vka, O jistém problému minimálním, Práca Moravské Přírodověcké
Společnosti 3 (1926) 37–58. (in Czech).
8. Other ideas and techniques [5] E.W. Dijkstra, A note on two problems in connexion with graphs, Numer.
Math. 1 (1959) 269–271.
[6] V. Jarník, O jistém problému minimálním, Práca Moravské Pr̆írodovĕdecké
Directed problems. While we have focused on undirected graphs Spolec̆nosti 6 (1930) 57–63. (in Czech).
in this chapter, most of the above problems can also be posed for [7] J. Kruskal, On the shortest spanning subtree of a graph and the traveling
directed graphs. Generally, directed variants of the problems dis- salesman problem, Proc. Amer. Math. Soc. 7 (1956) 48–50.
[8] R.C. Prim, Shortest connection networks and some generalizations, Bell Syst.
cussed are harder than their undirected counterparts, with the ex- Tech. J. (November) (1957) 1389–1401.
ception of the minimum spanning tree problem, whose directed [9] A. Schrijver, Combinatorial Optimization, Springer, New York, 2003.
variant – the min-cost arborescence problem – can be solved us- [10] T. Jenkyns, The efficiency of the greedy algorithm, in: Proceedings of the 7th
ing a primal–dual algorithm [45]. Halperin and Krauthgamer [159] Southeastern Conference on Combinatorics, Graph theory and Computing,
1976, pp. 341–350.
proved that an O(log2−ε n) approximation algorithm for directed [11] B. Korte, D. Hausmann, An analysis of the greedy algorithm for independence
Steiner tree for some constant ε > 0 would imply that NP has ran- systems, Ann. Discrete Math. 2 (1978) 65–74.
domized quasi-polynomial time algorithms; on the positive side, if [12] B. Korte, J. Vygen, Combinatorial Optimization, fourth edition, Springer, New
York, 2008.
there are k terminals to be connected to the root, the best known [13] B. Korte, L. Lovász, R. Schrader, Greedoids, Springer-Verlag, New York, 1991.
algorithm for the problem gives an approximation ratio of ε −3 kϵ [14] G.L. Nemhauser, L.A. Wolsey, M.L. Fisher, An analysis of approximations
and runs in time nO(1/ε) [160]. The directed Steiner forest problem for maximizing submodular set functions. I, Math. Program. 14 (3) (1978)
1−ε 265–294.
is hard to approximate better than Ω (2log n ) for any ε > 0, via a [15] G. Calinescu, C. Chekuri, M. Pál, J. Vondrák, Maximizing a submodular set
reduction from the Label Cover problem [161]; the current best al- function subject to a matroid constraint (extended abstract), in: Proceedings,
gorithms gives an approximation guarantee of O(k1/2+ϵ ) [162] and MPS Conference on Integer Programming and Combinatorial Optimization,
2007, pp. 182–196.
nϵ · min{n4/5 , m2/3 } [163] (note that these two results are incom- [16] J. Vondrák, Optimal approximation for the submodular welfare problem
parable since k could be as large as Θ (n2 )). in the value oracle model, in: Proceedings, ACM Symposium on Theory of
Computing, 2008, pp. 67–74.
Flow-equivalent trees and oblivious routing. The existence of the [17] G.B. Dantzig, L.R. Ford, D.R. Fulkerson, A primal–dual algorithm for linear
‘‘flow-equivalent’’ Gomory–Hu trees for single-commodity flows programs, in: H.W. Kuhn, A.W. Tucker (Eds.), Linear Inequalities and Related
has been long known. Its counterpart for multicommodity flows Systems, Princeton University Press, Princeton, NJ, 1956, pp. 171–181.
[18] J. Edmonds, Maximum matching and a polyhedron with (0, 1) vertices, J. Res.
was proved by Räcke [164,165]: he showed that for some Natl. Bur. Stand. B 69B (1965) 125–130.
parameter β = O(poly log n), given any capacitated graph G = [19] L.R. Ford Jr., D.R. Fulkerson, Maximal flow through a network, Canad. J. Math.
(V , E , u) there exists a capacitated tree TG = (V ′ , E ′ , u′ ) such that 8 (1956) 399–404.
[20] R. Bar-Yehuda, S. Even, A linear time approximation algorithm for the
any traffic matrix that can be feasibly routed in G can be feasibly
weighted vertex cover problem, J. Algorithms 2 (1981) 198–203.
routed in TG , while any traffic matrix that can be routed in TG can be [21] M.X. Goemans, D.P. Williamson, A general approximation technique for
routed in the graph G with edge-congestion β (that is, the flow in G constrained forest problems, SIAM J. Comput. 24 (1995) 296–317.
violates the edge capacities by at most a β factor). The current best [22] M.X. Goemans, D.P. Williamson, The primal–dual method for approx-
imation algorithms and its application to network design problems,
value of β = O(log2 n log log n) is given by Harrelson et al. [166]. At in: D.S. Hochbaum (Ed.), Approximation Algorithms for NP-hard Problems,
a high level, this result allows us to reduce problems on finding cuts PWS Publishing, 1997.
in graphs (which are often challenging) to finding them in trees, [23] D.R. Fulkerson, Blocking and anti-blocking pairs of polyhedra, Math. Program.
1 (1971) 168–194.
where the problems are much simpler. For example, [24] S. Chopra, On the spanning tree polyhedron, Oper. Res. Lett. 8 (1989) 25–29.
In a subsequent paper [167], Räcke extended his definition to [25] E. Lawler, Combinatorial Optimization: Networks and Matroids, Saunders
distributions over trees: instead of constructing a single tree from College Publishing, Fort Worth, 1976.
[26] Y.P. Aneja, An integer linear programming approach to the Steiner problem
the graph G, he proved that there existed distributions over trees
in graphs, Networks 10 (1980) 167–178.
such that (a) any traffic matrix feasibly routable in the graph could [27] F.K. Hwang, D.S. Richards, P. Winter, The Steiner Tree Problem, in: Annals of
also be routed in each of the trees in the distribution’s support, and Discrete Mathematics, Number 53, Elsevier Science Publishers B.V, 1992.
(b) if for each tree T belonging to the support of the distribution, [28] H.J. Prömel, A. Steger, The Steiner Tree Problem — A Tour through Graphs,
Algorithms, and Complexity, Vieweg Verlag, Braunschweig-Wiesbaden,
the traffic matrix DT could be feasibly routed in the tree T , then 2002.
the ‘‘average’’ traffic matrix ET [DT ] could be routed in the graph [29] R.M. Karp, Reducibility among combinatorial problems, in: Complexity of
with congestion at most β = O(log n). This definition may remind Computer Computations, Plenum Press, NY, 1972, pp. 85–103.
[30] M.R. Garey, D.S. Johnson, Computers and Intractability: A Guide to the Theory
the reader of Definition 24: interestingly enough, Räcke used of NP-completeness, Freeman, San Francisco, 1979.
distance-preserving tree embeddings to prove his result, which [31] M. Chlebík, J. Chlebíková, Approximation hardness of the Steiner tree
shows that this factor β obtained in the congestion result and the problem on graphs, in: Proceedings, Scandinavian Workshop on Algorithm
distance-preservation factor α obtained in Theorem 25 are exactly Theory, 2002, pp. 170–179.
[32] G. Robins, A. Zelikovsky, Tighter bounds for graph steiner tree approximation,
the same! Räcke’s paper surveys many of the problems whose SIAM J. Discrete Math. 19 (1) (2005) 122–134.
approximation guarantees can be improved using his results: [33] P. Berman, V. Ramaiyer, Improved approximations for the Steiner tree
e.g., the results can be used to get an O(log n)-approximation for problem, J. Algorithms 17 (3) (1994) 381–408.
[34] S. Hougardy, H.J. Prömel, A 1.598 approximation algorithm for the Steiner
min-bisection (improving on the earlier O(log3/2 n) of Feige and problem in graphs, in: Proceedings, ACM–SIAM Symposium on Discrete
Krauthgamer [168]. Algorithms, 1999, pp. 448–453.
18 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

[35] M. Karpinski, A. Zelikovsky, New approximation algorithms for the Steiner [69] J. Könemann, R. Ravi, Primal–dual meets local search: Approximating MST’s
tree problems, J. Comb. Optim. 1 (1) (1997) 47–65. with nonuniform degree bounds, SIAM J. Comput. 34 (3) (2005) 763–773.
[36] A.Z. Zelikovsky, An 11/6-approximation algorithm for the network Steiner [70] R. Ravi, M.V. Marathe, S.S. Ravi, D.J. Rosenkrantz, H.B. Hunt, Many birds with
problem, Algorithmica 9 (1993) 463–470. one stone: multi-objective approximation algorithms, in: Proceedings, ACM
[37] J. Könemann, D. Pritchard, K. Tan, A partition-based relaxation for Steiner Symposium on Theory of Computing, 1993, pp. 438–447.
trees, Math. Program. (2009). [71] R. Ravi, M. Singh, Delegate and conquer: An LP-based approximation algo-
[38] T. Polzin, S.V. Daneshmand, On Steiner trees and minimum spanning trees in rithm for minimum degree MSTs, in: Proceedings, International Colloquium
hypergraphs, Oper. Res. Lett. 31 (1) (2003) 12–20. on Automata, Languages and Processing, 2006, pp. 169–180.
[39] D. Warme, Spanning Trees in Hypergraphs with Applications to Steiner Trees, [72] N. Bansal, R. Khandekar, V. Nagarajan, Additive guarantees for degree
Ph.D. Thesis, University of Virginia, 1998. bounded directed network design, in: Proceedings, ACM Symposium on
[40] J. Byrka, F. Grandoni, T. Rothvoß, L. Sanità, An improved LP-based Theory of Computing, 2008, pp. 769–778.
approximation for Steiner tree, in: Proc. STOC, 2010, pp. 583–592. [73] N. Bansal, R. Khandekar, J. Könemann, B. Peis, V. Nagarajan, On generalization
[41] A. Agrawal, P. Klein, R. Ravi, When trees collide: an approximation algorithm of network design problems with degree bounds, in: Proceedings, MPS
for the generalized Steiner problem in networks, SIAM J. Comput. 24 (1995) Conference on Integer Programming and Combinatorial Optimization, 2010.
440–456. [74] C. Chekuri, J. Vondrak, R. Zenklusen, Dependent randomized rounding for
[42] M.X. Goemans, Y. Myung, A catalog of Steiner tree formulations, Networks 23 matroid polytopes and applications. Technical Report 0910.4348, arXiv,
(1993) 19–28. 2009.
[75] L.C. Lau, M. Singh, Additive approximation for bounded degree survivable
[43] T. Polzin, S.V. Daneshmand, A comparison of Steiner tree relaxations,
network design, in: Proceedings, ACM Symposium on Theory of Computing,
in: Proceedings of the Combinatorial Optimization Symposium, COS-98,
2008, pp. 759–768.
Discrete Appl. Math. 112 (1–3) (2001) 241–262.
[76] A. Frank, Increasing the rooted-connectivity of a digraph by one, Math.
[44] D. Chakrabarty, J. Könemann, D. Pritchard, Hypergraphic LP relaxations for
Program. 84 (3) (1999) 565–576.
Steiner trees, in: Proceedings, MPS Conference on Integer Programming and
[77] R. Ravi, D.P. Williamson, An approximation algorithm for minimum-cost
Combinatorial Optimization, 2010.
vertex-connectivity problems, Algorithmica 18 (1) (1997) 21–43.
[45] J. Edmonds, Optimum branchings, J. Res. Natl. Bur. Stand. B71 (1967)
[78] R. Ravi, D.P. Williamson, Erratum: an approximation algorithm for minimum-
233–240.
cost vertex-connectivity problems, Algorithmica 34 (1) (2002) 98–107.
[46] R.T. Wong, A dual ascent approach for Steiner tree problems on a directed [79] L. Fleischer, A 2-approximation for minimum cost 0, 1, 2 vertex connectivity,
graph, Math. Program. 28 (1984) 271–287. in: Proceedings, MPS Conference on Integer Programming and Combinatorial
[47] A. Agarwal, M. Charikar, On the advantage of network coding for improving Optimization, 2001, pp. 115–129.
network throughput, in: Proceedings, IEEE Information Theory Workshop, [80] G. Kortsarz, R. Krauthgamer, J.R. Lee, Hardness of approximation for vertex-
2004. connectivity network design problems, SIAM J. Comput. 33 (3) (2004)
[48] M.X. Goemans, D.P. Williamson, Approximating minimum-cost graph 704–720.
problems with spanning tree edges, Oper. Res. Lett. 16 (4) (1994) 183–189. [81] J. Chuzhoy, S. Khanna, An O(k3 log n)-approximation algorithm for vertex-
[49] M. Grötschel, C. Monma, M. Stoer, Design of Survivable Networks, connectivity survivable network design, CoRR, abs/0812.4442, 2008.
in: Handbook in Operations Research and Management Science, Noth- [82] K. Jain, I.I. Mandoiu, V.V. Vazirani, D.P. Williamson, A primal–dual schema
Holland, 1994. based approximation algorithm for the element connectivity problem,
[50] P.N. Klein, R. Ravi, When cycles collapse: A general approximation technique J. Algorithms 45 (1) (2002) 1–15.
for constrained two-connectivity problems, in: Proceedings, MPS Conference [83] L. Fleischer, K. Jain, D.P. Williamson, Iterative rounding 2-approximation
on Integer Programming and Combinatorial Optimization, 1993, pp. 39–55. algorithms for minimum-cost vertex connectivity problems, J. Comput. Syst.
[51] D.P. Williamson, M.X. Goemans, M. Mihail, V.V. Vazirani, A primal–dual ap- 72 (5) (2006) 838–867.
proximation algorithm for generalized steiner network problems, Combina- [84] K. Menger, Zur allgemeinen kurventheorie, Fund. Math. 10 (1927) 95–115.
torica 15 (3) (1995) 435–454. [85] M. Grötschel, A. Martin, R. Weismantel, Packing Steiner trees: a cutting plane
[52] M.X. Goemans, A.V. Goldberg, S.A. Plotkin, D.B. Shmoys, É Tardos, D.P. algorithm and computational results, Math. Program. 72 (1996) 125–145.
Williamson, Improved approximation algorithms for network design prob- [86] M. Grötschel, A. Martin, R. Weismantel, Packing Steiner trees: polyhedral
lems, in: Proceedings, ACM–SIAM Symposium on Discrete Algorithms, 1994, investigations, Math. Program. 72 (1996) 101–123.
pp. 223–232. [87] B. Korte, H.J. Prömel, A. Steger, Steiner trees in VLSI-layout, in: B. Korte,
[53] G. Kortsarz, Z. Nutov, Approximating minimum-cost connectivity problems, L. Lovász, H.J. Prömel, A. Schrijver (Eds.), Paths, Flows, and VLSI-Layout,
in: T.F. Gonzalez (Ed.), Approximation Algorithms and Meta-heuristics, Springer-Verlag, Berlin, Germany, 1990, pp. 185–214.
Chapman & Hall, 2007. [88] D. Bienstock, A. Bley, Capacitated network design with multicast commodi-
[54] D.P. Williamson, The primal–dual method for approximation algorithms, ties, in: Proceedings, 8th International Conference on Telecommunication
Math. Program. 91 (3) (2002) 447–478. Systems, 2000.
[55] K. Jain, A factor 2 approximation algorithm for the generalized steiner [89] S. Chen, O. Günlük, B. Yener, Optimal packing of group multi-casting, in:
network problem, Combinatorica 21 (1) (2001) 39–60. Proceedings, IEEE INFOCOM, 1998, pp. 980–987.
[56] L.C. Lau, S. Naor, M. Salvatipour, M. Singh, Survivable network design with [90] S. Chen, O. Günlük, B. Yener, The multicast packing problem, IEEE/ACM Trans.
degree and order constraints, in: Proceedings, ACM Symposium on Theory of Netw. 8 (3) (2000) 311–318.
Computing, 2007. [91] A. Frank, Packing paths, circuits and cuts — a survey, in: B. Korte, L. Lovasz,
[57] J. Edmonds, Matroids and the greedy algorithm, Math. Program. 1 (1971) H.J. Promel, A. Schrijver (Eds.), Paths, Flows and VLSI-Layout, in: Algorithms
127–136. and Combinatorics, vol. 9, Springer, 1990, pp. 47–100.
[58] M. Singh, L.C. Lau, Approximating minimum bounded degree spanning trees [92] L.C. Lau, On approximate min–max theorems for graph connectivity
to within one of optimal, in: Proceedings, ACM Symposium on Theory of problems, Ph.D. Thesis, University of Toronto, Toronto, Canada, 2006.
Computing, 2007. [93] C.S.J. Nash-Williams, Edge-disjoint spanning trees of finite graphs, J. Lond.
Math. Soc. 36 (1961) 445–450.
[59] G. Cornuéjols, J. Fonlupt, D. Naddef, The traveling salesman problem on a
[94] W.T. Tutte, On the problem of decomposing a graph into n-connected factors,
graph and some related integer polyhedra, Math. Program. 33 (1985) 1–27.
J. Lond. Math. Soc. 36 (1961) 221–230.
[60] V. Melkonian, É Tardos, Algorithms for a network design problem with
[95] M. Kriesell, Edge-disjoint trees containing some given vertices in a graph,
crossing supermodular demands, Networks 43 (4) (2004) 256–265.
J. Combin. Theory Ser. B 88 (1) (2003) 53–65.
[61] M.X. Goemans, Minimum bounded degree spanning trees, in: Proceedings,
[96] A. Frank, T. Király, M. Kriesell, On decomposing a hypergraph into k connected
IEEE Symposium on Foundations of Computer Science, 2006, pp. 273–282.
sub-hypergraphs, Discrete Appl. Math. 131 (2) (2003) 373–383.
[62] V. Nagarajan, R. Ravi, M. Singh, Personal communication, 2009. [97] L.C. Lau, An approximate max-steiner-tree-packing min-steiner-cut theo-
[63] M. Fürer, B. Raghavachari, An NC approximation algorithm for the minimum rem*, Combinatorica 27 (1) (2007) 71–90.
degree spanning tree problem, in: Proc. of the 28th Annual Allerton Conf. on [98] C. Chekuri, F.B. Shepherd, Approximate integer decompositions for undi-
Communication, Control and Computing, 1990, pp. 274–281. rected network design problems, SIAM J. Discrete Math. 3 (1) (2008)
[64] M. Fürer, B. Raghavachari, Approximating the minimum-degree Steiner tree 163–177.
to within one of optimal, J. Algorithms 17 (3) (1994) 409–423. [99] W. Mader, A reduction method for edge–connectivity in graphs, Ann. Discrete
[65] B. Raghavachari, Algorithms for finding low degree structures, Math. 3 (1978) 145–164.
in: D.S. Hochbaum (Ed.), Approximation Algorithms for NP-hard Prob- [100] L.C. Lau, Packing steiner forests, in: Proceedings, MPS Conference on Integer
lems, PWS Publishing, 1997. Programming and Combinatorial Optimization, 2005, pp. 362–376.
[66] K. Chaudhuri, S. Rao, S. Riesenfeld, K. Talwar, What would edmonds do? [101] N. Alon, A note on network reliability, in: Discrete Probability and Algorithms,
augmenting paths and witnesses for degree-bounded MSTs, in: Proceedings, Minneapolis, MN, 1993, in: IMA Vol. Math. Appl., vol. 72, Springer, New York,
International Workshop on Approximation Algorithms for Combinatorial 1995, pp. 11–14.
Optimization Problems, 2005, pp. 26–39. [102] P. Raghavan, C.D. Thompson, Randomized rounding: a technique for
[67] K. Chaudhuri, S. Rao, S. Riesenfeld, K. Talwar, A push-relabel algorithm provably good algorithms and algorithmic proofs, Combinatorica 7 (4) (1987)
for approximating degree bounded MSTs, in: Proceedings, International 365–374.
Colloquium on Automata, Languages and Processing, 2006, pp. 191–201. [103] P. Raghavan, Probabilistic construction of deterministic algorithms: approx-
[68] J. Könemann, R. Ravi, A matter of degree: improved approximation imating packing integer programs, in: Twenty-Seventh Annual IEEE Sympo-
algorithms for degree-bounded minimum spanning trees, SIAM J. Comput. sium on the Foundations of Computer Science, Toronto, ON, 1986, J. Comput.
31 (6) (2002) 1783–1793. System Sci. 37 (2) (1988) 130–143.
A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20 19

[104] M. Mitzenmacher, E. Upfal, Randomized algorithms and probabilistic [133] G. Konjevod, R. Ravi, F.S. Salman, On approximating planar metrics by tree
analysis, in: Probability and Computing, Cambridge University Press, metrics, Inform. Process. Lett. 80 (4) (2001) 213–219.
Cambridge, 2005. [134] Y. Bartal, M. Charikar, D. Raz, Approximating min-sum k-clustering in metric
[105] R. Motwani, P. Raghavan, Randomized Algorithms, Cambridge University spaces, in: Proceedings, ACM Symposium on Theory of Computing, ACM, New
Press, Cambridge, 1995. York, 2001, pp. 11–20.
[106] J.D.P. Rolim, L. Trevisan, A case study of de-randomization methods for [135] A. Gupta, I. Newman, Y. Rabinovich, A. Sinclair, Cuts, trees and ℓ1 -embeddings
combinatorial approximation algorithms, in: Network Design: Connectivity of graphs, Combinatorica 24 (2) (2004) 233–269. Preliminary version in 40th
and Facilities Location, Princeton, NJ, 1997, in: DIMACS Ser. Discrete Math. FOCS, 1999.
Theoret. Comput. Sci., vol. 40, Amer. Math. Soc, Providence, RI, 1998, [136] B. Awerbuch, Y. Azar, Buy-at-bulk network design, in: Proceedings, IEEE
pp. 319–334. Symposium on Foundations of Computer Science, 1997, pp. 542–547.
[137] M. Andrews, Hardness of buy-at-bulk network design, in: Proceedings, IEEE
[107] A. Srinivasan, A survey of the role of multicommodity flow and randomiza-
tion in network design and routing, in: Randomization Methods in Algorithm Symposium on Foundations of Computer Science, 2004, pp. 115–124.
[138] S. Guha, A. Meyerson, K. Mungala, A constant factor approximation for the
Design, Princeton, NJ, 1997, in: DIMACS Ser. Discrete Math. Theoret. Comput.
single sink edge installation problems, in: Proceedings, ACM Symposium on
Sci., vol. 43, Amer. Math. Soc, Providence, RI, 1999, pp. 271–302.
Theory of Computing, 2001, pp. 383–388.
[108] N. Alon, J.H. Spencer, The Probabilistic Method, third edition, in: Wiley- [139] K. Talwar, Single-sink buy-at-bulk LP has constant integrality gap, in: Pro-
Interscience Series in Discrete Mathematics and Optimization, John Wiley &
ceedings, MPS Conference on Integer Programming and Combinatorial
Sons Inc., Hoboken, NJ, 2008. With an appendix on the life and work of Paul
Optimization, in: Lecture Notes in Computer Science, vol. 2337, 2002,
Erdős.
pp. 475–486.
[109] G. Calinescu, A. Chakrabarti, H.J. Karloff, Y. Rabani, Improved approximation [140] S. Antonakopoulos, C. Chekuri, F.B. Shepherd, L. Zhang, Buy-at-bulk network
algorithms for resource allocation, in: Proceedings, MPS Conference on design with protection, in: Proceedings, IEEE Symposium on Foundations of
Integer Programming and Combinatorial Optimization, 2002, pp. 401–414. Computer Science, 2007, pp. 634–644.
[110] A. Chakrabarti, C. Chekuri, A. Gupta, A. Kumar, Approximation algorithms for [141] C. Chekuri, N. Korula, Single-sink network design with vertex connectivity
the unsplittable flow problem, Algorithmica 47 (1) (2007) 53–78. requirements, in: Proceedings, Foundations of Software Technology and
[111] A. Srinivasan, New approaches to covering and packing problems, in: Theoretical Computer Science, 2008.
Proceedings, ACM–SIAM Symposium on Discrete Algorithms, 2001, [142] A. Goel, D. Estrin, Simultaneous optimization for concave costs: single sink
pp. 567–576. aggregation or single source buy-at-bulk, Algorithmica 43 (1–2) (2005) 5–15.
[112] A.A. Ageev, M.I. Sviridenko, Pipage rounding: a new method of constructing [143] A. Gupta, M.T. Hajiaghayi, H. Räcke, Oblivious network design, in: Proceed-
algorithms with proven performance guarantee, J. Comb. Optim. 8 (3) (2004) ings, ACM–SIAM Symposium on Discrete Algorithms, 2006, pp. 970–979.
307–328. [144] N. Garg, G. Konjevod, R. Ravi, A polylogarithmic approximation algorithm
[113] R. Gandhi, S. Khuller, S. Parthasarathy, A. Srinivasan, Dependent rounding and for the group Steiner tree problem, J. Algorithms 37 (1) (2000) 66–84.
its applications to approximation algorithms, J. ACM 53 (3) (2006) 324–360. Preliminary version in 9th SODA, 1998, pp. 253–259.
electronic. [145] B.Y. Wu, G. Lancia, V. Bafna, K.-M. Chao, R. Ravi, C.Y. Tang, A polynomial-
[114] A. Srinivasan, Distributions on level-sets with applications to approximation time approximation scheme for minimum routing cost spanning trees, SIAM
algorithms, in: Proceedings, IEEE Symposium on Foundations of Computer J. Comput. 29 (3) (2000) 761–778. Preliminary version in 9th SODA, 1998.
Science, 2001, pp. 588–597. [146] I. Abraham, Y. Bartal, O. Neiman, Nearly tight low stretch spanning trees, in:
[115] J. Chuzhoy, S. Khanna, Algorithms for single-source vertex connectivity, in: Proceedings, IEEE Symposium on Foundations of Computer Science, 2008,
Proceedings, IEEE Symposium on Foundations of Computer Science, 2008, pp. 781–790.
pp. 105–114. [147] M. Elkin, Y. Emek, D.A. Spielman, S.-H. Teng, Lower-stretch spanning trees,
[116] Z. Nutov, An almost O(log k)-approximation for k-connected subgraphs, SIAM J. Comput. 38 (2) (2008) 608–628.
[148] C. Chekuri, M. Hajiaghayi, G. Kortsarz, M.R. Salavatipour, Approximation
in: Proceedings, ACM–SIAM Symposium on Discrete Algorithms, 2009,
algorithms for non-uniform buy-at-bulk network design problems, in:
pp. 912–921.
Proceedings, IEEE Symposium on Foundations of Computer Science, 2006,
[117] Z. Nutov, A note on rooted survivable networks, Inform. Process. Lett. 109
pp. 677–686.
(19) (2009) 1114–1119.
[149] A. Gupta, R. Krishnaswamy, R. Ravi, Online and stochastic survivable network
[118] A. Gupta, A. Kumar, J.M. Kleinberg, R. Rastogi, B. Yener, Provisioning a virtual
design, in: Proceedings, ACM Symposium on Theory of Computing, 2009,
private network: a network design problem for multicommodity flow, in:
pp. 685–694.
Proceedings, ACM Symposium on Theory of Computing, 2001, pp. 389–398. [150] M. Mendel, A. Naor, Maximum gradient embeddings and monotone cluster-
[119] R. Ravi, F.S. Salman, Approximation algorithms for the traveling purchaser ing, in: Approximation, Randomization, and Combinatorial Optimization. Al-
problem and its variants in network design, in: Algorithms—ESA’99 (Prague), gorithms and Techniques, 10th International Workshop, APPROX 2007, and
in: Lecture Notes in Comput. Sci., vol. 1643, Springer, Berlin, 1999, pp. 29–40. 11th International Workshop, RANDOM 2007, Princeton, NJ, USA, August
[120] C. Swamy, A. Kumar, Primal–dual algorithms for connected facility location 20–22, 2007, Proceedings, 2007, pp. 242–256.
problems, Algorithmica 40 (4) (2004) 245–269. [151] K. Talwar, Bypassing the embedding: algorithms for low-dimensional
[121] D.R. Karger, M. Minkoff, Building Steiner trees with incomplete global metrics, in: Proceedings, ACM Symposium on Theory of Computing, 2004,
knowledge, in: Proceedings, IEEE Symposium on Foundations of Computer pp. 281–290.
Science, 2000, pp. 613–623. [152] A. Meyerson, K. Munagala, S. Plotkin, Cost-distance: two metric network
[122] A. Gupta, A. Kumar, T. Roughgarden, Simpler and better approximation design, in: Proceedings, IEEE Symposium on Foundations of Computer
algorithms for network design, in: Proceedings, ACM Symposium on Theory Science, 2000, pp. 624–630.
of Computing, 2003, pp. 365–372. [153] J. Chuzhoy, A. Gupta, J.S. Naor, A. Sinha, On the approximability of network
[123] F. Eisenbrand, F. Grandoni, T. Rothvoß, G. Schäfer, Approximating connected design problems, in: Proceedings, ACM–SIAM Symposium on Discrete
facility location problems via random facility sampling and core detouring, Algorithms, 2005, pp. 943–951.
in: Proceedings, ACM–SIAM Symposium on Discrete Algorithms, 2008, [154] C. Chekuri, S. Khanna, J.S. Naor, A deterministic algorithm for the cost-
pp. 1174–1183. distance problem, in: Proceedings, ACM–SIAM Symposium on Discrete
[124] A. Gupta, M. Pál, R. Ravi, A. Sinha, Boosted sampling: approximation Algorithms, 2001, pp. 232–233.
algorithms for stochastic optimization problems, in: Proceedings, ACM [155] R. Ravi, Matching based augmentations for approximating connectivity prob-
Symposium on Theory of Computing, 2004, pp. 417–426. lems, in: Proceedings, Latin American Theoretical Informatics Symposium,
[125] A. Hayrapetyan, C. Swamy, E. Tardos, Network design for information 2006, pp. 13–24.
networks, in: Proceedings, ACM–SIAM Symposium on Discrete Algorithms, [156] M.V. Marathe, R. Ravi, R. Sundaram, S.S. Ravi, D.J. Rosenkrantz, H.B. Hunt III,
2005, pp. 933–942. Bicriteria network design problems, J. Algorithms 28 (1) (1998) 142–171.
[126] J. Fakcharoenphol, S. Rao, K. Talwar, A tight bound on approximating arbitrary [157] R. Ravi, Rapid rumor ramification: approximating the minimum broadcast
metrics by tree metrics, J. Comput. System Sci. 69 (3) (2004) 485–497. time, in: Proceedings, IEEE Symposium on Foundations of Computer Science,
[127] N. Alon, R.M. Karp, D. Peleg, D. West, A graph-theoretic game and its 1994, pp. 202–213.
[158] R. Ravi, M.V. Marathe, S.S. Ravi, D.J. Rosenkrantz, H.B. Hunt III., Approximation
application to the k-server problem, SIAM J. Comput. 24 (1) (1995) 78–100.
algorithms for degree-constrained minimum-cost network-design problems,
[128] Y. Bartal, Probabilistic approximations of metric spaces and its algorithmic
Algorithmica 31 (1) (2001) 58–78.
applications, in: Proceedings, IEEE Symposium on Foundations of Computer
[159] E. Halperin, R. Krauthgamer, Polylogarithmic inapproximability, in: Proceed-
Science, 1996, pp. 184–193.
ings of the Thirty-Fifth ACM Symposium on Theory of Computing, ACM Press,
[129] Y. Bartal, On approximating arbitrary metrics by tree metrics, in: Proceedings,
2003, pp. 585–594.
ACM Symposium on Theory of Computing, 1998, pp. 161–168. [160] M. Charikar, C. Chekuri, T. Cheung, Z. Dai, A. Goel, S. Guha, M. Li,
[130] M. Charikar, C. Chekuri, A. Goel, S. Guha, Rounding via trees: deterministic Approximation algorithms for directed Steiner problems, J. Algorithms 33 (1)
approximation algorithms for group Steiner trees and k median, in: (1999) 73–91.
Proceedings, ACM Symposium on Theory of Computing, 1998, pp. 114–123. [161] Y. Dodis, S. Khanna, Designing networks with bounded pairwise distance,
[131] M. Charikar, C. Chekuri, A. Goel, S. Guha, S.A. Plotkin, Approximating a finite in: Annual ACM Symposium on Theory of Computing, Atlanta, GA, 1999, ACM,
metric by a small number of tree metrics, in: Proceedings, IEEE Symposium New York, 1999, pp. 750–759.
on Foundations of Computer Science, 1998, pp. 379–388. [162] C. Chekuri, G. Even, A. Gupta, D. Segev, Set connectivity problems
[132] A. Gupta, Steiner points in tree metrics don’t (really) help, in: Proceedings, in undirected graphs and the directe d Steiner network problem, in:
ACM–SIAM Symposium on Discrete Algorithms, SIAM, Philadelphia, PA, Proceedings of the 19th ACM–SIAM Symposium on Discrete Algorithms,
2001, pp. 220–227. 2008, pp. 532–541.
20 A. Gupta, J. Könemann / Surveys in Operations Research and Management Science 16 (2011) 3–20

[163] M. Feldman, G. Kortsarz, Z. Nutov, Improved approximating algorithms for [166] C. Harrelson, K. Hildrum, S. Rao, A polynomial-time tree decomposition to
directed steiner forest, in: Proceedings, ACM–SIAM Symposium on Discrete minimize congestion, in: Proceedings, ACM Symposium on Parallelism in
Algorithms, 2009, pp. 922–931. Algorithms and Architectures, 2003, pp. 34–43.
[164] M. Bienkowski, M. Korzeniowski, H. Räcke, A practical algorithm for [167] H. Räcke, Optimal hierarchical decompositions for congestion minimization
constructing oblivious routing schemes, in: Proceedings, ACM Symposium in networks, in: Proceedings, ACM Symposium on Theory of Computing,
on Parallelism in Algorithms and Architectures, 2003, pp. 24–33. 2008, pp. 255–264.
[165] H. Räcke, Minimizing congestion in general networks, in: Proceedings, IEEE [168] U. Feige, R. Krauthgamer, A polylogarithmic approximation of the minimum
Symposium on Foundations of Computer Science, 2002, pp. 43–52. bisection, SIAM J. Comput. 31 (4) (2002) 1090–1118.

Вам также может понравиться