1 Introduction to Approximation Algorithms Lecture 15: Mar 5.

Slides:



Advertisements
Similar presentations
Set Cover 資工碩一 簡裕峰. Set Cover Problem 2.1 (Set Cover) Given a universe U of n elements, a collection of subsets of U, S ={S 1,…,S k }, and a cost.
Advertisements

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.
Bipartite Matching, Extremal Problems, Matrix Tree Theorem.
Approximation Algorithms Chapter 14: Rounding Applied to Set Cover.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
Approximation, Chance and Networks Lecture Notes BISS 2005, Bertinoro March Alessandro Panconesi University La Sapienza of Rome.
Combinatorial Algorithms
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Approximating Maximum Edge Coloring in Multigraphs
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Approximation Algorithm for Multicut
Approximation Algoirthms: Semidefinite Programming Lecture 19: Mar 22.
Computational problems, algorithms, runtime, hardness
Instructor Neelima Gupta Table of Contents Lp –rounding Dual Fitting LP-Duality.
Approximation Algorithms
Approximation Algorithms: Combinatorial Approaches Lecture 13: March 2.
Linear Programming and Approximation
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
Semidefinite Programming
1 Optimization problems such as MAXSAT, MIN NODE COVER, MAX INDEPENDENT SET, MAX CLIQUE, MIN SET COVER, TSP, KNAPSACK, BINPACKING do not have a polynomial.
Randomized Algorithms and Randomized Rounding Lecture 21: April 13 G n 2 leaves
Approximation Algorithm: Iterative Rounding Lecture 15: March 9.
Duality Lecture 10: Feb 9. Min-Max theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum Cut Both.
Vertex Cover, Dominating set, Clique, Independent set
Approximation Algorithms
Matching Polytope, Stable Matching Polytope Lecture 8: Feb 2 x1 x2 x3 x1 x2 x3.
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
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.
Prize Collecting Cuts Daniel Golovin Carnegie Mellon University Lamps of ALADDIN 2005 Joint work with Mohit Singh & Viswanath Nagarajan.
Randomness in Computation and Communication Part 1: Randomized algorithms Lap Chi Lau CSE CUHK.
Linear Programming and Parameterized Algorithms. Linear Programming n real-valued variables, x 1, x 2, …, x n. Linear objective function. Linear (in)equality.
(work appeared in SODA 10’) Yuk Hei Chan (Tom)
Approximation Algorithms Motivation and Definitions TSP Vertex Cover Scheduling.
Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department.
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Approximation Algorithms for NP-hard Combinatorial Problems Magnús M. Halldórsson Reykjavik University
C&O 355 Mathematical Programming Fall 2010 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
APPROXIMATION ALGORITHMS VERTEX COVER – MAX CUT PROBLEMS
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.
DATA MINING LECTURE 13 Pagerank, Absorbing Random Walks Coverage Problems.
Approximation Algorithms
Computer Science Day 2013, May Distinguished Lecture: Andy Yao, Tsinghua University Welcome and the 'Lecturer of the Year' award.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Minicourse on parameterized algorithms and complexity Part 4: Linear programming Dániel Marx (slides by Daniel Lokshtanov) Jagiellonian University in Kraków.
Implicit Hitting Set Problems Richard M. Karp Erick Moreno Centeno DIMACS 20 th Anniversary.
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
1 Approximation algorithms Algorithms and Networks 2015/2016 Hans L. Bodlaender Johan M. M. van Rooij TexPoint fonts used in EMF. Read the TexPoint manual.
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.
Non-LP-Based Approximation Algorithms Fabrizio Grandoni IDSIA
Approximation Algorithms by bounding the OPT Instructor Neelima Gupta
Approximation Algorithms Greedy Strategies. I hear, I forget. I learn, I remember. I do, I understand! 2 Max and Min  min f is equivalent to max –f.
Instructor: Shengyu Zhang 1. Optimization Very often we need to solve an optimization problem.  Maximize the utility/payoff/gain/…  Minimize the cost/penalty/loss/…
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
Approximation Algorithms based on linear programming.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Approximation algorithms
TU/e Algorithms (2IL15) – Lecture 11 1 Approximation Algorithms.
Introduction to Approximation Algorithms
Approximation algorithms
Maximum Matching in the Online Batch-Arrival Model
Computability and Complexity
Coverage Approximation Algorithms
Approximation Algorithms
Linear Programming Duality, Reductions, and Bipartite Matching
Problem Solving 4.
Presentation transcript:

1 Introduction to Approximation Algorithms Lecture 15: Mar 5

2 NP-completeness Do your best then.

3 Different Approaches  Special graph classes e.g. vertex cover in bipartite graphs, perfect graphs.  Fast exact algorithms, fixed parameter algorithms find a vertex cover of size k efficiently for small k.  Average case analysis find an algorithm which works well on average.  Approximation algorithms find an algorithm which return solutions that are guaranteed to be close to an optimal solution.

4 Vertex Cover Vertex cover: a subset of vertices which “covers” every edge. An edge is covered if one of its endpoint is chosen. The Minimum Vertex Cover Problem: Find a vertex cover with minimum number of vertices.

5 Approximation Algorithms Constant factor approximation algorithms: SOL <= cOPT for some constant c. Key: provably close to optimal. Let OPT be the value of an optimal solution, and let SOL be the value of the solution that our algorithm returned.

6 Vertex Cover: Greedy Algorithm 1 Idea: Keep finding a vertex which covers the maximum number of edges. Greedy Algorithm 1: 1.Find a vertex v with maximum degree. 2.Add v to the solution and remove v and all its incident edges from the graph. 3.Repeat until all the edges are covered. How good is this algorithm?

7 Vertex Cover: Greedy Algorithm 1 OPT = 6, all red vertices. SOL = 11, if we are unlucky in breaking ties. First we might choose all the green vertices. Then we might choose all the blue vertices. And then we might choose all the orange vertices.

8 Vertex Cover: Greedy Algorithm 1 k! vertices of degree k Generalizing the example! k!/k vertices of degree kk!/(k-1) vertices of degree k-1k! vertices of degree 1 OPT = k!, all top vertices. SOL = k! (1/k + 1/(k-1) + 1/(k-2) + … + 1) ≈ k! log(k), all bottom vertices. Not a constant factor approximation algorithm!

9 Vertex Cover: Greedy Algorithm 2 In bipartite graphs, maximum matching = minimum vertex cover. In general graphs, this is not true. How large can this gap be?

10 Vertex Cover: Greedy Algorithm 2 Fix a maximum matching. Call the vertices involved black. Since the matching is maximum, every edge must have a black endpoint. So, by choosing all the black vertices, we have a vertex cover. SOL <= 2 * size of a maximum matching

11 Vertex Cover: Greedy Algorithm 2 What about an optimal solution? Each edge in the matching has to be covered by a different vertex! OPT >= size of a maximum matching So, OPT <= 2 SOL, and we have a 2-approximation algorithm!

12 Vertex Cover Major open question: Can we obtain a 1.99-approximation algorithm? Hardness result: It is NP-complete even to approximate within a factor of 1.36! Approximate min-max theorem: Maximum matching <= minimum vertex cover <= 2*maximum matching

13 Set Cover Set cover problem: Given a ground set U of n elements, a collection of subsets of U, S* = {S1,S2,…,Sk}, where each subset has a cost c(Si), find a minimum cost subcollection of S* that covers all elements of U. Vertex cover is a special case, why? A convenient interpretation: sets elements Choose a min-cost set of white vertices to “cover” all black vertices.

14 Greedy Algorithm Idea: Keep finding a set which is the most effective in covering remaining elements. Greedy Algorithm: 1.Find a set S which is most cost-effective. 2.Add S to the solution and remove all the elements it covered from the ground set. 3.Repeat until all the elements are covered. How good is this algorithm?

15 Logarithmic Approximation Theorem. The greedy algorithm is an O(log n) approximation for the set cover problem. Theorem. Unless P=NP, there is no o(log n) approximation for set cover!

16 Lower bound and Approximation Algorithm The key of designing a polytime approximation algorithm is to obtain a good (lower or upper) bound on the optimal solution. For NP-complete problem, we can’t compute an optimal solution in polytime. The general strategy (for a minimization problem) is: lowerbound OPT SOL SOL ≤ c · lowerbound  SOL ≤ c · OPT

17 Linear Programming and Approximation Algorithm lowerbound OPT SOL Linear programming: a general method to compute a lowerbound in polytime. LP To computer an approximate solution, we need to return an (integral) solution close to an optimal LP (fractional) solution.

18 An Example: Vertex Cover Integrality gap: = Optimal integer solution. Optimal fractional solution. Over all instances. In vertex cover, there are instances where this gap is almost 2. max

19 Linear Programming Relaxation for Vertex Cover Theorem: For the vertex cover problem, every vertex (or basic) solution of the LP is half-integral, i.e. x(v) = {0, ½, 1}

20 Linear Programming Relaxation for Set Cover for each element e. for each subset S. How to “round” the fractional solutions? Idea: View the fractional values as probabilities, and do it randomly!

21 sets elements Algorithm First solve the linear program to obtain the fractional values x* Then flip a (biased) coin for each set with probability x*(S) being “head”. Add all the “head” vertices to the set cover. Repeat log(n) rounds.

22 Performance Theorem: The randomized rounding gives an O(log(n))-approximation. Claim 1: The sets picked in each round have an expected cost of at most LP. Claim 2: Each element is covered with high probability after O(log(n)) rounds. So, after O(log(n)) rounds, the expected total cost is at most O(log(n)) LP, and every element is covered with high probability, and hence the theorem. Remark: It is NP-hard to have a better than O(log(n))-approximation!

23 Cost Claim 1: The sets picked in each round have an expected cost of at most LP. Q.E.D.

24 Feasibility First consider the probability that an element e is covered after one round. Claim 2: Each element is covered with high probability after O(log(n)) rounds. Let say e is covered by S1, …, Sk which have values x1, …, xk. By the linear program, x1 + x2 + … + xk >= 1. Pr[e is not covered in one round] = (1 – x1)(1 – x2)…(1 – xk). This is maximized when x1=x2=…=xk=1/k, why? Pr[e is not covered in one round] <= (1 – 1/k) k

25 Feasibility First consider the probability that an element e is covered after one round. Claim 2: Each element is covered with high probability after O(log(n)) rounds. Pr[e is not covered in one round] <= (1 – 1/k) k So, What about after O(log(n)) rounds?

26 Feasibility Claim 2: Each element is covered with high probability after O(log(n)) rounds. So,

27 Remark Let say the sets picked have an expected total cost of at most clog(n) LP. Claim: The total cost is greater than 4clog(n) LP with probability at most ¼. This follows from the Markov inequality, which says that: Proof of Markov inequality: The claim follows by substituting E[X]=clog(n)LP and t=4clog(n)LP

28 Wrap Up Theorem: The randomized rounding gives an O(log(n))-approximation. This is the only known rounding method for set cover. Randomized rounding has many other applications.