Dual-fitting analysis of Greedy for Set Cover

Similar documents
Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

Mathematical and Algorithmic Foundations Linear Programming and Matchings

LECTURES 3 and 4: Flows and Matchings

4 Integer Linear Programming (ILP)

1. Lecture notes on bipartite matching February 4th,

Linear programming and duality theory

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

1. Lecture notes on bipartite matching

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

Approximation Algorithms

Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs

12 Introduction to LP-Duality

6. Lecture notes on matroid intersection

1 Linear programming relaxation

Approximation Algorithms: The Primal-Dual Method. My T. Thai

11 Linear Programming

Integer Programming Theory

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar

Advanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Approximation Algorithms

A List Heuristic for Vertex Cover

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Notes for Lecture 20

Linear Programming Motivation: The Diet Problem

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

Lecture 3: Totally Unimodularity and Network Flows

In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems.

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

Generalized Network Flow Programming

NOTES ON COMBINATORIAL OPTIMIZATION

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014

Linear Programming. Course review MS-E2140. v. 1.1

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University

Advanced Algorithms Linear Programming

Lecture Notes 2: The Simplex Algorithm

The Ordered Covering Problem

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

AMS : Combinatorial Optimization Homework Problems - Week V

THEORY OF LINEAR AND INTEGER PROGRAMMING

In this lecture, we ll look at applications of duality to three problems:

Linear Programming Duality and Algorithms

by conservation of flow, hence the cancelation. Similarly, we have

Linear and Integer Programming (ADM II) Script. Rolf Möhring WS 2010/11

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS

Primal-Dual Methods for Approximation Algorithms

Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix.

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm. Instructor: Shaddin Dughmi

Steiner Trees and Forests

Math 5593 Linear Programming Lecture Notes

6 Randomized rounding of semidefinite programs

Linear Programming in Small Dimensions

Combinatorial Optimization

1 Bipartite maximum matching

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

11. APPROXIMATION ALGORITHMS

The simplex method and the diameter of a 0-1 polytope

Lecture Overview. 2 Shortest s t path. 2.1 The LP. 2.2 The Algorithm. COMPSCI 530: Design and Analysis of Algorithms 11/14/2013

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 29

Linear Programming. Linear programming provides methods for allocating limited resources among competing activities in an optimal way.

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

10. EXTENDING TRACTABILITY

Lecture 6: Faces, Facets

Graph Theory S 1 I 2 I 1 S 2 I 1 I 2

10. EXTENDING TRACTABILITY

R n a T i x = b i} is a Hyperplane.

5. Lecture notes on matroid intersection

11. APPROXIMATION ALGORITHMS

Some Advanced Topics in Linear Programming

Section Notes 4. Duality, Sensitivity, and the Dual Simplex Algorithm. Applied Math / Engineering Sciences 121. Week of October 8, 2018

Civil Engineering Systems Analysis Lecture XIV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming

CSE 417 Network Flows (pt 4) Min Cost Flows

Linear Programming: Introduction

1 The Traveling Salesperson Problem (TSP)

Linear Programming and Integer Linear Programming

2. Optimization problems 6

AM 121: Intro to Optimization Models and Methods Fall 2017

Network flows and Menger s theorem

Polytopes Course Notes

Design and Analysis of Algorithms (V)

Math 5490 Network Flows

COVERING POINTS WITH AXIS PARALLEL LINES. KAWSAR JAHAN Bachelor of Science, Bangladesh University of Professionals, 2009

AMS /672: Graph Theory Homework Problems - Week V. Problems to be handed in on Wednesday, March 2: 6, 8, 9, 11, 12.

Bipartite Vertex Cover

Systems of Inequalities

Lecture 5: Duality Theory

Homework 3 Solutions

Fall CS598CC: Approximation Algorithms. Chandra Chekuri

Transcription:

Dual-fitting analysis of Greedy for Set Cover We showed earlier that the greedy algorithm for set cover gives a H n approximation We will show that greedy produces a solution of cost at most H n OPT LP Note that OPT LP OPT For this we need the dual of the LP for set cover

Primal and Dual for Set cover Primal: min i=1m c(i) x(i) i: e Si x(i) 1 for each e U x(i) 0 1 i m Dual: max e U y(e) e Si y(e) c(i) for 1 i m y(e) 0 e U

Dual-fitting Recall the analysis of H n approximation for greedy. Essentially dual-fitting in disguise as we see now. Let h j be the index of set picked by Greedy in iteration j Let S hj be the new elements covered by S hj : that is those elements covered in iteration j for each e in S hj we set p(e) = c(h j )/ S hj

Dual-fitting Note that by construction e p(e) = cost of solution output by Greedy Define y (e) = p(e)/h n Lemma: y is a feasible solution to the dual LP Assuming lemma, e y (e) OPT LP (by weak duality). Therefore cost of Greedy H n OPT LP

Dual-fitting Define y (e) = p(e)/h n Lemma: y is a feasible solution to the dual LP Need to show that for any set S i e in Si y (e) c(i) or in other words e in Si p(e) H n c(i) Renumber elements s.t e 1, e 2,..., e n are covered in that order

Dual-fitting Renumber elements s.t e 1, e 2,..., e n are covered in that order For a set S i let its elements be e i1, e i2,..., e it where S i = t for l = 1 to t we claim that p(e il ) c(i)/(t-l+1) This is because when e it was covered, Greedy could have picked S i at density c(i)/(t-l+1)

Dual-fitting for l = 1 to t we claim that p(e il ) c(i)/(t -l+1) This is because when e il was covered, Greedy could have picked S i at density c(i)/(t-l+1) Therefore e Si p(e) l=1 t c(i)/(t-l+1) c(i) H t Remark: notice that the above analysis shows that Greedy s cost is can be upper bounded by H k OPT LP where k is the size of the largest set

Primal Dual for Set Cover Primal-dual method is a general paradigm - see Vazirani s book for extensive discussion Here we apply it to obtain an f-approximation for Set Cover where f is the max # of sets that any element belongs to Vertex Cover is a special case with f = 2 and hence this yields a 2-approx for weighted vertex cover

Primal Dual for Set Cover We obtain a feasible integral primal solution x and a feasible dual solution y The pair (x,y) satisfy primal complementary slackness condition x(i) > 0 implies e Si y(e) = c(i) since x is an integral solution x(i) = 1 implies e Si y(e) = c(i)

Cost of solution If we can find such a pair (x, y) then cost of solution is i c(i) x(i) = i x(i) e Si y(e) Changing the order of summation e y(e) i: e Si x(i) e y(e) f Since y is feasible e y(e) OPT LP Therefore cost of solution f OPT LP f OPT

Primal-Dual algorithm Start with feasible dual y = 0 and infeasible primal x = 0 While some element is not covered increase y(e) for all uncovered e uniformly until some constraint becomes tight (that is for some i, e Si y(e) = c(i) ) for all tight i, set x(i) = 1 and all elements in S i are covered

Primal-Dual By induction on while loop iterations it can easily be seen that y remains a feasible solution through out the algorithm thus at end of algorithm all elements covered are covered (by x) and y is feasible by construction x(i) = 1 iff i is tight hence primal complementary slackness is satisfied for pair (x, y)

Integral Polyhedra A rational polyhedron given by a system of inequalities Ax b is integral iff all its vertices have integer coords Theorem: The polyhedron Ax b is integral iff for each integral w, the optimum value of max wx s.t Ax b is an integer if it is finite.

Totally Unimodular Matrices A 0,1 matrix A is called totally unimodular (TUM) iff for each square submatrix A of A, det(a ) {0,1,-1} A simple consequence of the definition is the following Theorem: For any integer vector b and TUM matrix A, the polyhedron A x b is an integral polyhedron

Totally Unimodular Matrices Theorem: For any integer vector b and TUM matrix A, the polyhedron A x b is an integral polyhedron Proof: Any vertex of the polyhedron is given by the solution to the system A x = b for some square nonsingular sub-matrix A of A. Therefore x = (A ) -1 b = ((A ) t /det(a )) b Since A is TUM, det(a ) {+1, -1}. Therefore x is integral since both A and b are integral

TUM matrices Several operations preserve total unimodularity For example we can add box constraints to Ax b The system A x b, u x l for integer b, u, l is an integral polyhedron if A is TUM The dual of max c x, A b is min y b, y A = c If c, b are integer then both primal and dual are integer polyhedra

Examples of TUM matrices Given a directed graph G = (V, E) consider the adjacency matrix A = V x Ewith A(u, e) = +1 if e = (u, v) for some v V A(u, e) = -1 if e = (v, u) for some v V A(u, e) = 0 if u is not the head or tail of e A is TUM From above one can deduce integrality of singlecommodity flows with integer capacities and also the maxflow-mincut theorem

Bipartite graphs Bipartite graph G = (U, V, E) with U, V as the vertex sets of the two partitions Adjacency matrix A = U x V with A(u, v) = 1 if uv E A is TUM = 0 otherwise From above one can deduce Konig s theorem and Hall s theorems etc regarding matchings and vertex covers in bipartite graphs

Consecutive 1 s matrices Let A be a 0,1 matrix such that the 1 s in each row occur consecutively. Then A is TUM. From above one can solve various optimization problems on interval graphs

Network matrices The previous three cases are examples of network matrices. A network matrix is obtained from a directed graph G=(V, E) and a directed tree T = (V, E ) on the same vertex set. Note that the arcs of T can be oriented in any way. Given G, T we obtain a matrix A = E x E as follows For e = (u,v) in E let P uv be the unique path from u to v in T (the path is simply a list of edges in E ) A(e, e ) = +1 if e occurs in the direction of traversal of P uv from u to v A(e, e ) = -1 if e occurs in the opposite direction of traversal from u to v A(e, e ) = 0 if e is not in P uv

Network matrices Theorem: Network matrices are TUM Not all TUM matrices are network matrices Exercise: show how each of the three classes seen before are examples of network matrices (difficult theorem of Seymour) Theorem: Given a matrix A, poly-time algorithm to check if A is TUM

Integer decomposability of TUM matrices Useful to know following. Theorem: Let x be a feasible point in A x b for some TUM A and integral b. Let k x be integral for some integer k. Then k x = x 1 + x 2 +... + x k for integral vectors x 1,..., x k each of which is a feasible point in A x b. Above also holds for system A x b, l x u for integral bounds l, u