Title: Iterative Rounding in Graph Connectivity Problems
1Iterative Rounding in Graph Connectivity Problems
- Kamal Jain
- ex- Georgia Techie
- Microsoft Research
Some slides borrowed from Lap Chi Lau.
2The Main Object
undirected or directed
- A graph G (V,E)
- A connectivity requirement r(u,v) for each pair
of vertices u,v.
- Steiner Network
- A subgraph H of G which has r(u,v) disjoint
paths between each pair u,v.
edge or vertex
3Examples of Steiner Network
- Spanning tree r(u,v) 1 for all pairs of
vertices. - Steiner tree r(u,v) 1 for all pair of
required vertices. - Steiner forest r(si,ti) 1 for all source sink
pairs. - k-edge-connected subgraph r(u,v) k for all
pairs of vertices.
4Survivable Network Design
Survivable network design find a good Steiner
network
e.g. minimum spanning tree, minimum Steiner tree
Minimum cost Steiner network Given a cost c(e)
on each edge, find a Steiner network with
minimum total cost.
Minimum degree Steiner network Find a Steiner
network with minimum maximum degree.
e.g. Hamiltonian path, Hamiltonian cycle
5Three Kinds of Problems
Only the first objective Minimize the cost of
the edges.
Only the second objective Minimize the maximum
degree.
Both objectives Minimize the cost of the edges
as well as the maximum degree.
6Minimum cost Steiner Network
- Given
- A an undirected graph G (V,E),
- Cost c(e) on edges, and
- A connectivity requirement r(u,v) for each pair
of vertices u,v.
- Feasibility
- A subgraph H of G which has r(u,v) edge disjoint
paths between each pair u,v.
- Objective
- Minimize the cost of H.
Result Factor 2 approximation algorithm.
7Linear Programming Relaxation
At least r(u,v) edges crossing S
S
Write f(S) max r(u,v) S separates u and v.
u
v
8Typical Rounding
Iterative Rounding
Good Part
Too much Fractional
9Linear Programming Relaxation
Theorem J. Every basic solution has an edge
with value at least 1/2
A half edge
10Iterative Rounding
- Initialization H , f f.
- While f ? 0 do
- Find a basic optimal solution, x, of the LP with
function f. - Add an edge with x(e) 1/2 into H.
- Update f for every set S, set
- Output H.
By previous Theorem
f(S)1
f(S)2
e
0.5
The residual problem is feasible.
0.5
Corollary. This is a 2-approximation algorithm
for the minimum cost Steiner network problem.
0.5
0.5
11A Proof Sketch
An edge of 0, delete it.
An edge of 1, pick it.
A basic solution is the unique solution of m
linearly independent tight constraints, where m
is the number of variables in the LP.
Tight inequalities all come from the connectivity
requirements.
12A Proof Sketch
Each tight constraint corresponds to a set of
vertices in the graph.
Uncrossing technique uncross intersecting sets
AB
B
A
AÃ…B
13A Proof Sketch
In a basic solution, number of linearly
independent tight constraints number of edges
If there are no half-edges, derive a
contradiction by a counting argument.
no intersecting tight sets gt number of linearly
independent tight constraints is small
Contradiction!
1/3
no half-edges gt number of edges is large
1/3
1/3
Laminar family
14Iterative Rounding
Theorem J. Iterative rounding gives factor 2
approximation algorithm.
Theorem
Induction
15One shot rounding is harde.g., Petersen Graph
- Use every edge to the extent of 1/3.
16Basic Feasible Solution
17Tight sets
18The Problem Statement with both objectives
Goal to find a good Steiner network w.r.t. to
both criterion
Minimum cost Steiner network with degree
constraints Given a cost c(e) on each edge,
find a Steiner network with minimum total
cost, so that every vertex has degree at most B.
Without degree bounds, this is the minimum cost
Steiner network problem.
Without cost on edges, this is the minimum degree
Steiner network problem.
19Ideal Approximation
Minimum cost Steiner network with degree
constraints Given a cost c(e) on each edge,
find a Steiner network with minimum total
cost, so that every vertex has degree at most B.
Let OPT(B) be the value of an optimal solution to
this problem.
Ideally, we would like to return a solution so
that
SOL(B) cOPT(B)
However, it cannot be done for any polynomial
factor, even for B2, since this generalizes the
minimum cost Hamiltonian path problem.
20Bicriteria Approximation Algorithms
Minimum cost Steiner network with degree
constraints Given a cost c(e) on each edge,
find a Steiner network with minimum total
cost, so that every vertex has degree at most B.
Let OPT(B) be the value of an optimal solution to
this problem.
A (c,f(B))-approximation algorithm if it returns
a solution with
SOL(f(B)) cOPT(B)
maximum degree f(B)
e.g. f(B)2B10
This implies a c-approximation for minimum cost
Steiner network, and a f(B)-approximation for
minimum degree Steiner network.
21Results without and with Iterative Rounding
(1, B1)
(2,2B3)
(2,2B3)
2B3
(2,2B3)
2B3
(2,2B3)
2B3
Main Theorem LNSS There is a
(2,2B3)-approximation algorithm for the minimum
Steiner network problem with degree constraints.
Corollary There is a constant factor
approximation algorithm for the Minimum Degree
Steiner Network problem.
22Linear Programming Relaxation
At least r(u,v) edges crossing S
S
Write f(S) max r(u,v) S separates u and v.
u
v
Nonuniform degree bounds
23Linear Programming Relaxation
Theorem J. Every basic solution has an edge
with value at least 1/2
A half edge
Nonuniform degree bounds
24Iterative Rounding
- Initialization H , f f.
- While f ? 0 do
- Find a basic optimal solution, x, of the LP with
function f. - Add an edge with x(e) 1/2 into H.
- Update f for every set S, set
- Output H.
By previous Theorem
f(S)1
f(S)2
e
0.5
The residual problem is feasible.
0.5
Corollary. This is a 2-approximation algorithm
for the minimum cost Steiner network problem.
0.5
0.5
25First Try
Observation Half edges are good for degree
bounds as well.
- Initialization H , f f.
- While f ? 0 do
- Find a basic optimal solution, x, of the LP with
function f. - Add an edge with x(e) 1/2 into H.
- Update f for every set S, set
- Update degree bounds
- Output H.
set BvBv-1 if e is incident on v.
Bv2
Bv1
e
0.5
0.5
The residual problem may not be feasible!
0.5
0.5
26First Try
Observation Half edges are good for degree
bounds as well.
- Initialization H , f f.
- While f ? 0 do
- Find a basic optimal solution, x, of the LP with
function f. - Add an edge with x(e) 1/2 into H.
- Update f for every set S, set
- Update degree bounds
- Output H.
Problem A half edge may not exist!
set BvBv-0.5 if e is incident on v.
Bv2
Bv1.5
e
0.5
0.5
The residual problem is feasible.
0.5
0.5
27A Proof Sketch
An edge of 0, delete it.
An edge of 1, pick it.
A basic solution is the unique solution of m
linearly independent tight constraints, where m
is the number of variables in the LP.
Tight inequalities all come from the connectivity
requirements.
28A Proof Sketch
Each tight constraint corresponds to a set of
vertices in the graph.
Uncrossing technique uncross intersecting sets
AB
B
A
AÃ…B
29A Proof Sketch
In a basic solution, number of linearly
independent tight constraints number of edges
If there are no half-edges, derive a
contradiction by a counting argument.
no intersecting tight sets gt number of linearly
independent tight constraints is small
Contradiction!
1/3
no half-edges gt number of edges is large
1/3
1/3
Laminar family
30The Difference
Back to our current problem.
Why a half edge may not exist with fractional
degree constraints?
fractional values
Uncrossing would just work fine.
0.25
0.25
But integrality is important in the counting
argument.
Bv0.5
31New Idea
Idea Relax the problem by removing the degree
constraint for v if v is of low degree.
0.25
0.25
Bv0.5
Reason Only violate the degree bound by an
additive constant.
Lemma LNSS If every vertex is of degree 5 when
its degree constraint is present, then there is a
half edge in a basic solution.
Intuition Removing a constraint decreases the
number of linearly independent tight constraint,
and makes the counting argument work.
32Iterative Relaxation
- Initialization H , f f.
- While f ? 0 do
- Find a basic optimal solution, x, of the LP with
function f. - (Rounding) Add an edge with x(e) 1/2 into H.
- (Relaxing) Remove the degree constraint of
v if v has degree 4 - Update f for every set S, set
- Update degree bounds set BvBv-0.5 if e
is incident at v. - Output H.
A multiplicative factor 2
An additive constant 3
Main Theorem LNSS There is a
(2,2B3)-approximation algorithm for the minimum
Steiner network problem with degree constraints.
33Concluding Remarks
Main Theorem LNSS There is a
(2,2B3)-approximation algorithm for the minimum
Steiner network problem with degree constraints.
Question Is there an additive approximation for
this problem?
LS There is a (1, B1)-approximation algorithm
for degree bounded minimum spanning tree problem.
There is a (2, B9)-approximation algorithm for
the minimum Steiner forest problem with degree
constraints. There is a (2, B
6rmax3)-approximation algorithm for the
degree bounded minimum Steiner network problem.
34Concluding Remarks
The iterative relaxation method provides a
unifying algorithmic framework for many network
design problems.
This method can be applied to other approximation
algorithms.
e.g. prize collecting Steiner trees,
multi-criteria spanning trees, partial
covering problem, degree-constrained graph
orientations, etc.
And even for many polynomial time solvable
problems.
e.g. matchings, matroid intersection, submodular
flows, Frank-Tardos, etc.
A course is prepared by Mohit Singh on the topic.
35A big thanks!