Umans Complexity Theory Lectures Lecture 15: Approximation Algorithms and Probabilistically Checkable Proofs (PCPs)

Slides:



Advertisements
Similar presentations
A threshold of ln(n) for approximating set cover By Uriel Feige Lecturer: Ariel Procaccia.
Advertisements

NP-Hard Nattee Niparnan.
Approximation Algorithms
Max Cut Problem Daniel Natapov.
Theory of Computing Lecture 18 MAS 714 Hartmut Klauck.
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 
Probabilistically Checkable Proofs (and inapproximability) Irit Dinur, Weizmann open day, May 1 st 2009.
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.
Inapproximability from different hardness assumptions Prahladh Harsha TIFR 2011 School on Approximability.
PCPs and Inapproximability Introduction. My T. Thai 2 Why Approximation Algorithms  Problems that we cannot find an optimal solution.
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
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.
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.
CSE 421 Algorithms Richard Anderson Lecture 27 NP Completeness.
CS151 Complexity Theory Lecture 15 May 18, CS151 Lecture 152 Outline IP = PSPACE Arthur-Merlin games –classes MA, AM Optimization, Approximation,
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 1 Hardness of Approximation. Complexity 2 Introduction Objectives: –To show several approximation problems are NP-hard Overview: –Reminder:
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
CS151 Complexity Theory Lecture 16 May 25, CS151 Lecture 162 Outline approximation algorithms Probabilistically Checkable Proofs elements of the.
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.
HARDNESS OF APPROXIMATIONS. Gap Introducing Reduction For simplicity we assume that we are always reducing from SAT(or any other NP- hard problem). Let.
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.
APPROXIMATION ALGORITHMS VERTEX COVER – MAX CUT PROBLEMS
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Lecture 22 More NPC problems
TECH Computer Science NP-Complete Problems Problems  Abstract Problems  Decision Problem, Optimal value, Optimal solution  Encodings  //Data Structure.
Approximation Algorithms
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Princeton University COS 423 Theory of Algorithms Spring 2001 Kevin Wayne Approximation Algorithms These lecture slides are adapted from CLRS.
CS151 Complexity Theory Lecture 14 May 13, Arthur-Merlin Games IP permits verifier to keep coin-flips private –necessary feature? –GNI protocol.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
Unit 9: Coping with NP-Completeness
1/19 Minimizing weighted completion time with precedence constraints Nikhil Bansal (IBM) Subhash Khot (NYU)
Non-Approximability Results. Summary -Gap technique -Examples: MINIMUM GRAPH COLORING, MINIMUM TSP, MINIMUM BIN PACKING -The PCP theorem -Application:
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
CS151 Complexity Theory Lecture 16 May 20, The outer verifier Theorem: NP  PCP[log n, polylog n] Proof (first steps): –define: Polynomial Constraint.
CSE 6311 – Spring 2009 ADVANCED COMPUTATIONAL MODELS AND ALGORITHMS Lecture Notes – Feb. 3, 2009 Instructor: Dr. Gautam Das notes by Walter Wilson.
NPC.
NP Completeness Piyush Kumar. Today Reductions Proving Lower Bounds revisited Decision and Optimization Problems SAT and 3-SAT P Vs NP Dealing with NP-Complete.
CSC 413/513: Intro to Algorithms
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.
CS151 Complexity Theory Lecture 15 May 18, Gap producing reductions Main purpose: –r-approximation algorithm for L 2 distinguishes between f(yes)
Umans Complexity Theory Lectures Lecture 16: The PCP Theorem.
Approximation algorithms
The Theory of NP-Completeness
P & NP.
CS21 Decidability and Tractability
Computability and Complexity
Introduction to PCP and Hardness of Approximation
Approximation Algorithms
The Theory of NP-Completeness
Umans Complexity Theory Lectures
Trevor Brown DC 2338, Office hour M3-4pm
Instructor: Aaron Roth
Presentation transcript:

Umans Complexity Theory Lectures Lecture 15: Approximation Algorithms and Probabilistically Checkable Proofs (PCPs)

2 New topic(s) Optimization problems, Approximation Algorithms, and Probabilistically Checkable Proofs

3 Optimization Problems many hard problems (especially NP-hard) are optimization problems –e.g. find shortest TSP tour –e.g. find smallest vertex cover –e.g. find largest clique –may be minimization or maximization problem –“opt” = value of optimal solution

4 Approximation Algorithms often happy with approximately optimal solution –warning: lots of heuristics –we want approximation algorithm with guaranteed approximation ratio of r –meaning: on every input x, output is guaranteed to have value at most r*opt for minimization at least opt/r for maximization

5 Approximation Algorithms Example approximation algorithm: –Recall: Vertex Cover (VC): given a graph G, what is the smallest subset of vertices that touch every edge? –NP-complete

6 Approximation Algorithms Approximation algorithm for VC: –pick an edge (x, y), add vertices x and y to VC –discard edges incident to x or y; repeat. Claim: approximation ratio is 2. Proof: –an optimal VC must include at least one endpoint of each edge considered –therefore 2*opt  actual

7 Approximation Algorithms diverse array of ratios achievable some examples: –(min) Vertex Cover: 2 –MAX-3-SAT (find assignment satisfying largest # clauses): 8/7 –(min) Set Cover: ln n –(max) Clique: n/log 2 n –(max) Knapsack: (1 + ε) for any ε > 0

8 Approximation Algorithms (max) Knapsack: (1 + ε) for any ε > 0 called Polynomial Time Approximation Scheme (PTAS) –algorithm runs in poly time for every fixed ε>0 –poor dependence on ε allowed If all NP optimization problems had a PTAS, almost like P = NP (!)

9 Approximation Algorithms A job for complexity: How to explain failure to do better than ratios on previous slide? –just like: how to explain failure to find poly- time algorithm for SAT... –first guess: probably NP-hard –what is needed to show this? “gap-producing” reduction from NP- complete problem L 1 to L 2

10 Approximation Algorithms “gap-producing” reduction from NP- complete problem L 1 to L 2 no yes L1L1 L 2 (min. problem) f opt k rk

11 Gap producing reductions r-gap-producing reduction: –f computable in poly time –x  L 1  opt(f(x))  k –x  L 1  opt(f(x)) > rk –for max. problems use “  k” and “< k/r” Note: target problem is not a language –promise problem (yes  no not all strings) –“promise”: instances always from (yes  no)

12 Gap producing reductions Main purpose: –r-approximation algorithm for L 2 distinguishes between f(yes) and f(no); can use to decide L 1 –“NP-hard to approximate to within r” no yes L1L1 f k rk yes no L1L1 f k/r k L 2 (min.)L 2 (max.) yes noyes no

13 Gap preserving reductions gap-producing reduction difficult (more later) but gap-preserving reductions easier f k rk k’k’ r’k’r’k’ Warning: many reductions not gap-preserving yes no yes no L 1 (min.) L 2 (min.)

14 Gap preserving reductions Example gap-preserving reduction: –reduce MAX-k-SAT with gap ε –to MAX-3-SAT with gap ε’ –“MAX-k-SAT is NP-hard to approx. within ε  MAX-3-SAT is NP-hard to approx. within ε’ ” MAXSNP (PY) – a class of problems reducible to each other in this way –PTAS for MAXSNP-complete problem iff PTAS for all problems in MAXSNP constants

15 MAX-k-SAT Missing link: first gap-producing reduction –history’s guide it should have something to do with SAT Definition: MAX-k-SAT with gap ε –instance: k-CNF φ –YES: some assignment satisfies all clauses –NO: no assignment satisfies more than (1 – ε) fraction of clauses

16 Proof systems viewpoint k-SAT NP-hard  for any language L  NP proof system of form: –given x, compute reduction to k-SAT:  x –expected proof is satisfying assignment for  x –verifier picks random clause (“local test”) and checks that it is satisfied by the assignment x  L  Pr[verifier accepts] = 1 x  L  Pr[verifier accepts] < 1

17 Proof systems viewpoint MAX-k-SAT with gap ε NP-hard  for any language L  NP proof system of form: –given x, compute reduction to MAX-k-SAT:  x –expected proof is satisfying assignment for  x –verifier picks random clause (“local test”) and checks that it is satisfied by the assignment x  L  Pr[verifier accepts] = 1 x  L  Pr[verifier accepts] ≤ (1 – ε) –can repeat O(1/ε) times for error < ½

18 Proof systems viewpoint can think of reduction showing k-SAT NP-hard as designing a proof system for NP in which: –verifier only performs local tests can think of reduction showing MAX-k-SAT with gap ε NP-hard as designing a proof system for NP in which: –verifier only performs local tests –invalidity of proof* evident all over: “holographic proof” and an  fraction of tests notice such invalidity

19 PCP Probabilistically Checkable Proof (PCP) permits novel way of verifying proof: –pick random local test –query proof in specified k locations –accept iff passes test fancy name for a NP-hardness reduction

20 PCP PCP[r(n),q(n)]: set of languages L with p.p.t. verifier V that has (r, q)-restricted access to a string “proof” –V tosses O(r(n)) coins –V accesses proof in O(q(n)) locations –(completeness) x  L   proof such that Pr[V(x, proof) accepts] = 1 –(soundness) x  L   proof* Pr[V(x, proof*) accepts]  ½

21 PCP Two observations: –PCP[1, poly n] = NP proof? –PCP[log n, 1]  NP proof? The PCP Theorem (AS, ALMSS): PCP[log n, 1] = NP.

22 PCP Corollary: MAX-k-SAT is NP-hard to approximate to within some constant . –using PCP[log n, 1] protocol for, say, VC –enumerate all 2 O(log n) = poly(n) sets of queries –construct a k-CNF φ i for verifier’s test on each note: k-CNF since function on only k bits –“YES” VC instance  all clauses satisfiable –“NO” VC instance  every assignment fails to satisfy at least ½ of the φ i  fails to satisfy an  = (½)2 -k fraction of clauses.

23 The PCP Theorem Elements of proof: –arithmetization of 3-SAT we will do this –low-degree test we will state but not prove this –self-correction of low-degree polynomials we will state but not prove this –proof composition we will describe the idea

24 The PCP Theorem Two major components: –NP  PCP[log n, polylog n] (“outer verifier”) we will prove this from scratch, assuming low- degree test, and self-correction of low-degree polynomials –NP  PCP[n 3, 1] (“inner verifier”) we will not prove

25 Proof Composition (idea) NP  PCP[log n, polylog n] (“outer verifier”) NP  PCP[n 3, 1] (“inner verifier”) composition of verifiers: –reformulate “outer” so that it uses O(log n) random bits to make 1 query to each of 3 provers –replies r 1, r 2, r 3 have length polylog n –Key: accept/reject decision computable from r 1, r 2, r 3 by small circuit C

26 Proof Composition (idea) NP  PCP[log n, polylog n] (“outer verifier”) NP  PCP[n 3, 1] (“inner verifier”) composition of verifiers (continued): –final proof contains proof that C(r 1, r 2, r 3 ) = 1 for inner verifier’s use –use inner verifier to verify that C(r 1,r 2,r 3 ) = 1 –O(log n)+polylog n randomness –O(1) queries –tricky issue: consistency

27 Proof Composition (idea) NP  PCP[log n, 1] comes from –repeated composition –PCP[log n, polylog n] with PCP[log n, polylog n] yields PCP[log n, polyloglog n] –PCP[log n, polyloglog n] with PCP[n 3, 1] yields PCP[log n, 1] many details omitted…