1 / 19

Approximation Algorithms for NP-hard Combinatorial Problems

Approximation Algorithms for NP-hard Combinatorial Problems. Local Search, Greedy and Partitioning. Magnús M. Halldórsson Reykjavik University. www.ru.is/~mmh/ewscs13/. Today‘s lecture. Local search Independent set (in bounded-degree graphs) Max Cut Greedy Partitioning If time allows:

ellard
Télécharger la présentation

Approximation Algorithms for NP-hard Combinatorial Problems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Approximation Algorithms for NP-hard Combinatorial Problems Local Search, Greedy and Partitioning Magnús M. Halldórsson Reykjavik University www.ru.is/~mmh/ewscs13/ EWSCS, 5 March 2013

  2. Today‘s lecture • Local search • Independent set (in bounded-degree graphs) • Max Cut • Greedy • Partitioning • If time allows: • Probabilistic method EWSCS, 5 March 2013

  3. Local search technique • Post-processing technique • Frequently used on solutions found by some other algorithms, to try to improve it using simple changes. • “Local” : Changes that affect a small part of the solution EWSCS, 5 March 2013

  4. Generic local improvement method S initial starting solution (obtained elsewhere) while ( small improvement I to S) do S  solution obtained by applying I to S output S A solution that has gone through local search is said to be locally optimal (with respect to the improvements applied) Issues: • What is an improvement? (Problem specific) • How do we find the improvement? (Search) EWSCS, 5 March 2013

  5. Greedy is a form of local search • Consider the Independent Set problem • (1,0)-improvement : Add a single vertex (& delete none) • A locally optimal solution with respect (1,0)-improvements is precisely a maximal independent set EWSCS, 5 March 2013

  6. Max Cut : Local search EWSCS, 5 March 2013

  7. Max Cut – Local search • While some node has more neighbors in its own group than the other group • Move it to the other group • Convergence? • Potential function: # edges cut • Strictly increasing with each move EWSCS, 5 March 2013

  8. Max Cut – Local search • While some node has more neighbors in its own group than the other group • Move it to the other group • For each vertex v: d(v)/2 edges incident on v are cut • More than |E|/2 edges are cut • |ALG| >= |E|/2 • |OPT| <= |E| EWSCS, 5 March 2013

  9. LS for Independent Sets • A 2-improvement (2-imp) is the addition of up to 2 vertices and removal of up to 1 vertex, from the current solution. • Thus, it is a set I of up to 3 vertices so that |S\I| ≤ 2 and |I\S| ≤ 1. S  while ( 2-imp I to S) do S  S  I(symmetric set difference) output S EWSCS, 5 March 2013

  10. G B A C Analysis of 2-opt • Given graph G of max degree  • A : Algorithm’s solution (2-locally optimal) • B : “Best” solution (optimal) • C = A  B • B’ = B \ C • A’ = A \ C • Rest of G doesn’t matter EWSCS, 5 March 2013

  11. Some observation • Let B’ = B \ C, and A’ = A \ C. • Rest of G doesn’t matter • Suppose a vertex in A’ is adjacent to two vertices in B’ v1 u v2 • Then at least one of them must be adjacent to another node in A’ w B’ A’ EWSCS, 5 March 2013

  12. Argument • b1 = #nodes in B w/ 1 nbor in A • b2 = #nodes in B w/  2 nbors in A • b = b1 + b2 = |B’|, a = |A’| • b1  a • b1 + 2 b2   a • So, 2b = 2(b1 + b2)  (+1) a •  (+1)/2-approximation v1 u v2 w B’ A’ EWSCS, 5 March 2013

  13. Simple greedy arguments EWSCS, 5 March 2013

  14. Independent Set in Bounded-degree Graphs Maximal IS(G) // G=(V,E) is a graph if V = , return  Pick some vertex v from V V’ = V – N[v] Let G’ = graph induced by V’ return MaximalIS(G’)  {v} N(v) v N[v] EWSCS, 5 March 2013

  15. Independent Set in Bounded-degree Graphs N(v) • Observation: OPT contains at most  = |N(v)| nodes from N[v]MaximalIS() obtains 1 from N[v] • “Pay , get 1” • Claim: MaximalIS gives a  -approximation v N[v] Maximal IS(G) if V = , return  Pick some vertex v from V V’ = V – N[v] return MaximalIS(G[V’])  {v} EWSCS, 5 March 2013

  16. Maximum collection of disjoint unit circles • Simplest algorithm is: • Keep adding new circles, disjoint from the previous ones • That gives a maximal collection. MaxCircles(S) // S is a set of unit circles if S = , return  Pick any circle C from S S1 = Circles that intersect C, S2 = S \ S1 return MaxCircles(S2)  {C} Observation: Each circle can intersect at most 6 mutually non-intersecting circles Claim: MaxCircles gives a 6-approximation Argument: “Pay 6, get 1” EWSCS, 5 March 2013

  17. Maximum collection of disjoint unit circles • Improved algorithm: • Find a circle whose neighborhood contains few non-intersecting circles MaxCircles(S) // S is a set of unit circles if S = , return  Pick lowest circle C from S S1 = Circles that intersect C, S2 = S \ S1 return MaxCircles(S2)  {C} Observation: C intersects at most 3 mutually non-intersecting circles Claim: MaxCircles gives a 3-approximation Argument: “Pay 3, get 1” EWSCS, 5 March 2013

  18. Problem #1: IS • Consider the min-degree greedy algorithm for the independent set problem • Argue a -1-approximation ratio on non-regular graphs • Argue a (+1)/2 ratio on regular graphs. EWSCS, 5 March 2013

  19. Problem #2: Min maximal matching • Design a factor-2 approximation algorithm for the problem of finding a minimum cardinality maximal matching in an undirected graph. EWSCS, 5 March 2013

More Related