Complexity 1 Hardness of Approximation. Complexity 2 Introduction Objectives: –To show several approximation problems are NP-hard Overview: –Reminder:

Slides:



Advertisements
Similar presentations
Complexity ©D.Moshkovits 1 Where Can We Draw The Line? On the Hardness of Satisfiability Problems.
Advertisements

Max Cut Problem Daniel Natapov.
1 ©D.Moshkovitz Complexity The Traveling Salesman Problem.
The Theory of NP-Completeness
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Complexity ©D Moshkovitz 1 Approximation Algorithms Is Close Enough Good Enough?
Approximation Algorithms Chapter 5: k-center. Overview n Main issue: Parametric pruning –Technique for approximation algorithms n 2-approx. algorithm.
Combinatorial Algorithms
Introduction to PCP and Hardness of Approximation Dana Moshkovitz Princeton University and The Institute for Advanced Study 1.
Complexity ©D.Moshkovits 1 Hardness of Approximation.
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
CS21 Decidability and Tractability
Computability and Complexity 15-1 Computability and Complexity Andrei Bulatov NP-Completeness.
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.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
NP-Complete Problems Problems in Computer Science are classified into
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 23 Instructor: Paul Beame.
Analysis of Algorithms CS 477/677
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 24 Instructor: Paul Beame.
1 INTRODUCTION NP, NP-hardness Approximation PCP.
Toward NP-Completeness: Introduction Almost all the algorithms we studies so far were bounded by some polynomial in the size of the input, so we call them.
Complexity ©D.Moshkovitz 1 Paths On the Reasonability of Finding Paths in Graphs.
Complexity ©D.Moshkovits 1 Hardness of Approximation.
1 Slides by Asaf Shapira & Michael Lewin & Boaz Klartag & Oded Schwartz. Adapted from things beyond us.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
1 The Theory of NP-Completeness 2012/11/6 P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
1 The TSP : NP-Completeness Approximation and Hardness of Approximation All exact science is dominated by the idea of approximation. -- Bertrand Russell.
Lecture 22 More NPC problems
NP-complete Problems SAT 3SAT Independent Set Hamiltonian Cycle
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
CSE 024: Design & Analysis of Algorithms Chapter 9: NP Completeness Sedgewick Chp:40 David Luebke’s Course Notes / University of Virginia, Computer Science.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Techniques for Proving NP-Completeness Show that a special case of the problem you are interested in is NP- complete. For example: The problem of finding.
Unit 9: Coping with NP-Completeness
Non-Approximability Results. Summary -Gap technique -Examples: MINIMUM GRAPH COLORING, MINIMUM TSP, MINIMUM BIN PACKING -The PCP theorem -Application:
1.1 Chapter 3: Proving NP-completeness Results Six Basic NP-Complete Problems Some Techniques for Proving NP-Completeness Some Suggested Exercises.
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 30, 2014.
NPC.
1 2 Introduction In this lecture we’ll cover: Definition of PCP Prove some classical hardness of approximation results Review some recent ones.
CSC 413/513: Intro to Algorithms
Complexity ©D.Moshkovits 1 2-Satisfiability NOTE: These slides were created by Muli Safra, from OPICS/sat/)
CSE 421 Algorithms Richard Anderson Lecture 27 NP-Completeness Proofs.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
Approximation algorithms
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
The Theory of NP-Completeness
The NP class. NP-completeness
Richard Anderson Lecture 26 NP-Completeness
Richard Anderson Lecture 26 NP-Completeness
(xy)(yz)(xz)(zy)
NP-Completeness Yin Tat Lee
Computability and Complexity
CS154, Lecture 16: More NP-Complete Problems; PCPs
Where Can We Draw The Line?
ICS 353: Design and Analysis of Algorithms
Introduction to PCP and Hardness of Approximation
Hardness Of Approximation
Hardness of Approximation
NP-Completeness Yin Tat Lee
The Theory of NP-Completeness
CS154, Lecture 16: More NP-Complete Problems; PCPs
Presentation transcript:

Complexity 1 Hardness of Approximation

Complexity 2 Introduction Objectives: –To show several approximation problems are NP-hard Overview: –Reminder: How to show inapproximability? –Probabilistic Checkable Proofs –Hardness of approximation for clique

Complexity 3 Optimization Problems Consider an optimization problem P: instances: x 1,x 2,x 3,… optimization measure feasible solutions all graphs Example: all cliques in that graph the clique’s size (max)

Complexity 4 Each Instance Has an Optimal Solution OPT x1x1 x2x2 x3x3 x4x4

Complexity 5 Approximation (Max Version) OPT xixi

Complexity 6 How To Show Hardness of Approximation? Hardness of distinguishing far off instances  Hardness of approximation OPT AB gap xixi

Complexity 7 Gap Problems (Max Version) Instance: … Problem: to distinguish between the following two cases: The maximal solution  B The maximal solution ≤ A

Complexity 8 Formally: Claim: If the [A,B]-gap version of a problem is NP-hard, then that problem is NP-hard to approximate within factor B/A.

Complexity 9 Formally: Proof: Suppose there is an approximation algorithm that outputs C so that C/C*≤B/A A proper distinguisher: * If C  B, return ‘YES’ * Otherwise return ‘NO’

Complexity 10 Proof Since C*≥AC/B, (1) If C>B (we answer ‘YES’), then necessarily C*>A (the correct answer cannot be ‘NO’). (2) If C*≤A (the correct answer is ‘NO’), then necessarily C≤B (we answer ‘NO’)

Complexity 11 Idea We’ve shown “standard” problems are NP-hard by reductions from 3SAT. We want to prove gap-problems are NP- hard, Why won’t we prove some canonical gap- problem is NP-hard and reduce from it? If a reduction reduces one gap-problem to another we refer to it as approximation-preserving

Complexity 12 Gap-3SAT[  ] Instance: a set of clauses {c 1,…,c m } over variables v 1,…,v n. Problem: to distinguish between the following two cases: There exists an assignment which satisfies all clauses. No assignment can satisfy more than 7/8+  of the clauses.

Complexity 13 Gap-3SAT: Example ( x 1  x 2  x 3 ) ( x 1   x 2   x 2 ) (  x 1  x 2  x 3 ) (  x 1   x 2   x 2 ) (  x 1  x 2   x 3 ) (  x 3   x 3   x 3 )  = { x 1  F ; x 2  T ; x 3  F } satisfies 5/6 of the clauses

Complexity 14 Why 7/8? Claim: For any set of clauses with exactly three independent literals, there always exists an assignment which satisfies at least 7/8.

Complexity 15 The Probabilistic Method Proof: Consider a random assignment. x1x1 x2x2 x3x3 xnxn...

Complexity Find the Expectation Let Y i be the random variable indicating the outcome of the i-th clause. For any 1  i  m, E[Y i ]=0·1/8+1·7/8=7/8 E[  Y i ] =  E[Y i ] = 7/8m

Complexity Conclude Existence Expectedly, the number of clauses satisfied is 7/8m. Thus, there exists an assignment which satisfies at least that many.

Complexity 18 PCP (Without Proof) Theorem (PCP): For any  >0, Gap-3SAT[  ] is NP-hard. This is tight! Gap-3SAT[0] is polynomial time decidable

Complexity 19 Approximation Preservation AB YES don’t care NO YES don’t care NO

Complexity 20 Hardness of Approximation Do the reductions we’ve seen also work for the gap versions? We’ll revisit the CLIQUE example.

Complexity 21 CLIQUE Construction a part for each clause a vertex for each literal edge indicates consistency

Complexity 22 Approximation Preservation If there is an assignment which satisfies all clauses, there is a clique of size m. If there is a clique of size (7/8+  )m, there is an assignment which satisfies more than 7/8+  of the clauses.

Complexity 23 Gap-CLIQUE (Ver1) The following problem is NP-hard for any  >0: Instance: a graph G=(V,E) composed of m independent sets of size 3. Problem: to distinguish between: There’s a clique of size m Every clique is of size at most (7/8+  )m

Complexity 24 Corollary Theorem: for any  >0, CLIQUE is hard to approximate within a factor of 1/(7/8+  )

Complexity 25 Amplification The bigger the gap is, the better the hardness result. We’ll see how a gap can be amplified.

Complexity Amplification A part for every k vertices vertex for each Boolean assignment edge indicates consistency Given an instance of the Gap-CLIQUE problem and a constant k:

Complexity 27 Boolean assignments A Boolean assignment over k vertices {v 1,…,v k } is a function A:{v 1,…,v k }  {0,1}. Think about it as if it indicates whether each vertex belongs to the clique.

Complexity 28 Good Assignments

Complexity 29 Consistency Two assignments are inconsistent, when they give the same vertex different truth-values.... n

Complexity 30 Consistency They are also inconsistent, if they both assign 1 to two vertices not connected by an edge. non-edge

Complexity 31 Correctness

Complexity 32 Chromatic Number Instance: a graph G=(V,E). Problem: To minimize k, so that there exists a function f:V  {1,…,k}, for which (u,v)  E  f(u)  f(v)

Complexity 33 Chromatic Number

Complexity 34 Chromatic Number Observation: Each color group is an independent set

Complexity 35 Clique Cover Number (CCN) Instance: a graph G=(V,E). Problem: To minimize k, so that there exists a function f:V  {1,…,k}, for which (u,v)  E  f(u)=f(v)

Complexity 36 Clique Cover Number (CCN)

Complexity 37 Reduction Idea CLIQUECCN q cyclic shift- morphic clique preserving m......

Complexity 38 Correctness

Complexity 39 Transformation T:V  [q] for any v 1,v 2,v 3,v 4,v 5,v 6, T(v 1 )+T(v 2 )+T(v 3 )  T(v 4 )+T(v 5 )+T(v 6 ) (mod q) {v 1,v 2,v 3 }={v 4,v 5,v 6 } T is unique for triplets

Complexity 40 Observations Such T is unique for pairs and for single vertices as well: If T(x)+T(u)=T(v)+T(w), then {x,u}={v,w} If T(x)=T(y) (mod q), then x=y

Complexity 41 feasible values Greedy Construction v6v6 v2v2 v1v1 v5v5 v3v3 v4v4 vertices we determined forbidden values

Complexity 42 Greedy Construction - Analysis At most values are ruled out totally, so for q=n 5 the greedy construction works. Corollary: There exists a polynomial time algorithm which constructs a triplet unique transformation with q=n 5

Complexity 43 Using the Transformation 01234… (q-1) vivi vjvj T(v i )=1 T(v j )=4 CLIQUE CCN

Complexity 44 Completing the CCN Graph Construction T(s) T(t) (s,t)  E CLIQUE  (T(s),T(t))  E CCN

Complexity 45 Completing the CCN Graph Construction T(s) T(t) Close the set of edges under shift: For every (x,y)  E, if x’-y’=x-y (mod q), then (x’,y’)  E

Complexity 46 Max Clique of G-clique and G-ccn Lemma: Max-Clique(G-clique) = Max-Clique(G-CCN) Corollary: –MAX-clique(G-clique) = m  CCN(G-ccn)=q –MAX-clqiue(G-clique)  q

Complexity 47 Edge Origin Unique T(s) T(t) First Observation: This edge comes only from (s,t)

Complexity 48 Triangle Consistency Second Observation: A triangle only come from a triangle

Complexity 49 Clique Preservation Corollary: {c 1,…,c k } is a clique in the CCN graph iff {T(c 1 ),…,T(c k )} is a clique in the CLIQUE graph.

Complexity 50 Summary We’ve seen how to show hardness of approximation results in general, and even proven several such using the PCP theorem: –CLIQUE –CHROMATIC NUMBER 