Iterative Rounding and Iterative Relaxation

Slides:



Advertisements
Similar presentations
The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.
Advertisements

Network Design with Degree Constraints Guy Kortsarz Joint work with Rohit Khandekar and Zeev Nutov.
Min-Max Relations, Hall’s Theorem, and Matching-Algorithms Graphs & Algorithms Lecture 5 TexPoint fonts used in EMF. Read the TexPoint manual before you.
Trees Chapter 11.
Bart Jansen 1.  Problem definition  Instance: Connected graph G, positive integer k  Question: Is there a spanning tree for G with at least k leaves?
C&O 355 Lecture 23 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.
Approximation Algorithms Chapter 14: Rounding Applied to Set Cover.
C&O 355 Mathematical Programming Fall 2010 Lecture 22 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.
Combinatorial Algorithms
Approximation Algoirthms: Semidefinite Programming Lecture 19: Mar 22.
Algorithms & LPs for k-Edge Connected Spanning Subgraphs
Instructor Neelima Gupta Table of Contents Lp –rounding Dual Fitting LP-Duality.
Linear Programming and Approximation
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
Semidefinite Programming
Introduction to Linear and Integer Programming Lecture 7: Feb 1.
Approximation Algorithm: Iterative Rounding Lecture 15: March 9.
A general approximation technique for constrained forest problems Michael X. Goemans & David P. Williamson Presented by: Yonatan Elhanani & Yuval Cohen.
Approximation Algorithms
Graphs and Trees This handout: Trees Minimum Spanning Tree Problem.
An Approximation Algorithm for Requirement cut on graphs Viswanath Nagarajan Joint work with R. Ravi.
Job Scheduling Lecture 19: March 19. Job Scheduling: Unrelated Multiple Machines There are n jobs, each job has: a processing time p(i,j) (the time to.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Randomness in Computation and Communication Part 1: Randomized algorithms Lap Chi Lau CSE CUHK.
(work appeared in SODA 10’) Yuk Hei Chan (Tom)
Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department.
1 Spanning Tree Polytope x1 x2 x3 Lecture 11: Feb 21.
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
Outline Introduction The hardness result The approximation algorithm.
V. V. Vazirani. Approximation Algorithms Chapters 3 & 22
1.3 Modeling with exponentially many constr.  Some strong formulations (or even formulation itself) may involve exponentially many constraints (cutting.
Design Techniques for Approximation Algorithms and Approximation Classes.
Approximating Minimum Bounded Degree Spanning Tree (MBDST) Mohit Singh and Lap Chi Lau “Approximating Minimum Bounded DegreeApproximating Minimum Bounded.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Topics in Algorithms 2005 Constructing Well-Connected Networks via Linear Programming and Primal Dual Algorithms Ramesh Hariharan.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Theory of Computing Lecture 13 MAS 714 Hartmut Klauck.
Approximation Algorithms for Prize-Collecting Forest Problems with Submodular Penalty Functions Chaitanya Swamy University of Waterloo Joint work with.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Algorithms & LPs for k-Edge Connected Spanning Subgraphs Dave Pritchard University of Waterloo CMU Theory Lunch, Dec 2 ‘09.
2) Combinatorial Algorithms for Traditional Market Models Vijay V. Vazirani.
Linear Program Set Cover. Given a universe U of n elements, a collection of subsets of U, S = {S 1,…, S k }, and a cost function c: S → Q +. Find a minimum.
EMIS 8373: Integer Programming Combinatorial Relaxations and Duals Updated 8 February 2005.
Chapter 2. Optimal Trees and Paths Combinatorial Optimization
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
Improved Approximation Algorithms for Directed Steiner Forest Moran Feldman Technion Joint work with: Guy Kortsarz,Rutgers University Camden Zeev Nutov,The.
Iterative Rounding in Graph Connectivity Problems Kamal Jain ex- Georgia Techie Microsoft Research Some slides borrowed from Lap Chi Lau.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Approximation Algorithms based on linear programming.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Multiroute Flows & Node-weighted Network Design Chandra Chekuri Univ of Illinois, Urbana-Champaign Joint work with Alina Ene and Ali Vakilian.
Trees.
Lap Chi Lau we will only use slides 4 to 19
Topics in Algorithms Lap Chi Lau.
The minimum cost flow problem
Iterative Methods in Combinatorial Optimization
A note on the Survivable Network Design Problem
1.3 Modeling with exponentially many constr.
Bart M. P. Jansen June 3rd 2016, Algorithms for Optimization Problems
Analysis of Algorithms
Linear Programming and Approximation
Minimum Spanning Tree Algorithms
1.3 Modeling with exponentially many constr.
V12 Menger’s theorem Borrowing terminology from operations research
Presentation transcript:

Iterative Rounding and Iterative Relaxation Some of the slides prepared by Lap Chi Lau

undirected or directed Steiner Network 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

Examples 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.

e.g. minimum Steiner tree, k-edge-connected subgraph Survivable Network Design Survivable network design: find a “good” Steiner network e.g. minimum Steiner tree, k-edge-connected subgraph Minimum cost Steiner network: Given a cost c(e) on each edge, find a Steiner network with minimum total cost. NP-complete…

at least r(u,v) edges crossing S Linear Programming Relaxation at least r(u,v) edges crossing S S f(S) := max{ r(u,v) | S separates u and v}. u v number of constraints is exponential. can be handled by Ellipsoid algorithm need a separation oracle 5

Approximating Survivable network Design What does not seem to generalize … ? primal-dual algorithm for constrained Steiner forest only logarithmic approx. is known via this approach one shot rounding as in vertex cover - rounding up fractions ¸ ½ set cover – randomized rounding combinatorial algorithms e.g., Steiner tree (reduction to spanning tree in the metric completion graph) New ideas are needed …

Basic Solutions (1) A basic solution is the unique solution of m linearly independent “tight” constraints, where m is the number of variables in the LP. A basic solution cannot be represented as a convex sum of feasible solutions

Basic Solutions (2) An edge of 1, pick it. An edge of 0, delete 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.

Petersen Graph: Non-Basic Feasible Solution use every edge to the extent of 1/3. 15 edges with 0 < x(e) < 1 10 tight constraints (at the vertices)

Basic Feasible Solution black edge – ¼ red edge – ½

Tight sets

LP Solutions All 1/3 is a feasible solution. But not a basic feasible solution This is a basic feasible solution. Thick edges have value 1/2; Thin edges have value 1/4. Theorem [Jain 98] Every basic feasible solution has an edge of value at least 1/2 Corollary. There is a 2-approximation algorithm for survivable network design.

Iterative Rounding e Corollary. This is a 2-approximation algorithm 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 Jain’s Theorem f’(S)=2 f’(S)=1 e 0.5 The residual problem is feasible. 0.5 Corollary. This is a 2-approximation algorithm for the minimum cost survivable network problem. 0.5 0.5 13

Typical Rounding: Iterative Rounding: Too much Problem Linear Programming Solver Suitable Rounding Procedure Optimal Fractional Solution Integer Solution Problem Instance Iterative Rounding: Linear Programming Solver Part Integer Good Part Optimal Fractional Solution Problem Instance Residual Problem Too much Fractional

Laminar Basis tree representation any pair of sets in the basis are either disjoint or contained

Weak Supermodularity A weakly supermodular function f satisfies: or Example: f(S) := max{ r(u,v) | S separates u and v}. Important: when f is updated by setting x(e)=1 for some edges e, it remains weakly supermodular Weakly supermodular functions are very useful for obtaining a laminar basis

Obtaining a Laminar Basis Tight constraints: Uncrossing technique: A basic solution is defined by a laminar family of tight connectivity constraints. A[B A B AÅB

Proof of Jain’s Theorem Theorem [Jain]. Every basic solution has an edge with value at least 1/3 There are |L| constraints. There are |E| variables. Assume every edge has value 0 < x(e) < 1/3. Prove that |E| > |L| by a counting argument. At the beginning we give 2 tokens to each edge, 1 to each endpoint. At the end we redistribute the tokens so that each member in the laminar family has at least 2 tokens, and there are still some tokens left. Then this would imply |E| > |L|

Induction Basis Assume every edge has value 0 < x(e) < 1/3. 1/4 each leaf set has degree ¸ 4 otherwise 9e, x(e) · 1/3 each leaf has 4 tokens 1/4 $ $ $ $ 1/4 1/4

Inductive Step (1) Induction Hypothesis: the root has 2 extra tokens (total of 4) +2 +2 +2 +2 +2 +2 +2 +2 Theorem [Jain]. Every basic solution has an edge with value at least 1/3

$ $ $ $ $ $ Inductive Step (2) root has two children – each child can pass up 2 tokens root has 4 tokens +2 +2 +2 $ $ root has one child and 2 new edges – child can pass up 2 tokens root has 4 tokens $ $ $ $

Inductive Step (3) root has one child root has no new edges but \delta(child) = \delta(root) linear dependence root has one child and only one new edge e (of the two in picture) both root and child are tight f(root) = f(child) + x(e) or f(root) = f(child) - x(e) but 0<x(e)<1 contradicting integrality of f e e

Summary of Jain’s Algorithm Theorem [Jain]. Every basic solution has an edge with value at least 1/3 Theorem [Jain]. Every basic solution has an edge with value at least ½ Proof is more involved … Open Question: Combinatorial proof ?

e.g. minimum spanning tree, minimum Steiner tree Survivable 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

The Problem Statement Goal: to find a good Steiner network w.r.t. to both criteria 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.

Let OPT(B) be the value of an optimal solution to this problem. Ideal 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) ≤ c·OPT(B) However, it cannot be done for any polynomial factor, even for B=2, since this generalizes the minimum cost Hamiltonian path problem.

Let OPT(B) be the value of an optimal solution to this problem. Bicriteria 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 maximum degree f(B) SOL(f(B)) ≤ c·OPT(B) e.g. f(B)=2B+1 This implies a c-approximation for minimum cost Steiner network, and an f(B)-approximation for minimum degree Steiner network.

Minimum Bounded Degree Spanning Trees Theorem [Furer and Raghavachari ’92] Given k, there is a polynomial time algorithm which does the following: either the algorithm finds a spanning tree with maximum degree at most k+1. shows that there is no spanning tree with maximum degree at most k. Theorem [Goemans 06]: Given k, there is a polynomial time algorithm that computes a spanning tree with cost at most OPT(k) and maximum degree at most k+2. (1,B+2) uncrossing!

Results on Minimum Degree Survivable Networks Minimum cost Minimum degree Bicriteria Spanning tree 1 B+1 [FR] (1,B+2) [G] Steiner tree 1.55 [RZ] (O(logn),O(logn)B) Steiner forest 2 [AKR] ? k-ec subgraph 2 [KV] O(log n)·B [FMZ] Steiner network 2 [Jain] (2,2B+3) 2B+3 (2,2B+3) 2B+3 (2,2B+3) 2B+3 (2,2B+3) More results at the end add citation Theorem [Lau,Naor,Salavatipour,Singh, STOC 07]: There is a (2,2B+3)-approximation algorithm for the minimum bounded degree Steiner network problem. Corollary: There is a constant factor approximation algorithm for the Minimum Degree Steiner Network problem.

At least r(u,v) edges crossing S Linear Programming Relaxation At least r(u,v) edges crossing S S f(S) := max{ r(u,v) | S separates u and v}. u v Max flow min cut Nonuniform degree bounds

Problem: A half edge may not exist! First 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 Bv:=Bv-0.5 if e is incident on v. Bv=1.5 Bv=2 e 0.5 0.5 The residual problem is feasible. 0.5 0.5

The Difference fractional values Uncrossing would just work fine. 0.25 But integrality is important in the counting argument. Bv=0.5

New Idea Idea: Relax the problem by removing the degree constraint for v if v is of “low” degree. 0.25 0.25 Bv=0.5 Effect: Only violates 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 constraints, and makes the counting argument work.

By linear independence Counting Induction Hypothesis: The root has 2 extra tokens. +2 +2 +2 +2 +2 +2 +2 +3 By linear independence Theorem [LNSS]. Every basic solution has an edge with value at least 1/3 if every degree constraint has at least 5 edges.

A multiplicative factor 2 Iterative 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 the connectivity requirement f’ Update degree bounds: set Bv:=Bv-1/2 if e is incident at v. Output H. A multiplicative factor 2 An additive constant +3 Theorem: There is a (2,2B+3)-approximation algorithm for the minimum bounded degree Steiner network problem.

Additive Approximation Theorem [Lau,Singh,STOC 08]: There is a (2,B+3)-approximation algorithm for the minimum bounded degree Steiner forest problem. Theorem [Lau,Singh,STOC 08]: There is a (2,B+O(rmax))-approximation algorithm for the minimum bounded degree Steiner network problem.

Minimum Bounded Degree Spanning Trees Theorem [Singh,Lau,STOC 07] There is an (1,B+1)-approximation algorithm for the minimum bounded degree spanning tree problem. Improves on the (1,B+2)-approximation of Goemans 2006

Directed Connectivity (const, const)-approximation for certain directed Connectivity problems [LNSS STOC 07] [Bansal,Khandekar,Nagarajan,STOC 08]

Exact Formulations This method can be applied to prove LP formulations are exact. Spanning Tree Arborescence Matroid intersection Perfect matching in general graphs Rooted k-out-connected subgraphs Submodular flows Limitation: not simple to prove the dual is integral.

Approximation Algorithms Some NP-hard problems are variants of basic problems. General assignment (bipartite matching) Multicriteria spanning trees Partial vertex cover Prize collecting Steiner trees Degree bounded matroids [Király,L,Singh,08] Degree bounded submodular flows [Király,L,Singh,08]

Open Problems TSP, ATSP? Other applications? Combinatorial algorithms? Connection to existing approaches?