Complexity 1 Hardness of Approximation. Complexity 2 Introduction Objectives: –To show several...
-
date post
21-Dec-2015 -
Category
Documents
-
view
216 -
download
3
Transcript of Complexity 1 Hardness of Approximation. Complexity 2 Introduction Objectives: –To show several...
Complexity1
Hardness of Approximation
Complexity2
Introduction
• Objectives:– To show several approximation
problems are NP-hard• Overview:
– Reminder: How to show inapproximability?
– Probabilistic Checkable Proofs– Hardness of approximation for clique
Complexity3
Optimization Problems
Consider an optimization problem P:
instances: x1,x2,x3,…
optimization measure
feasible solutions
all graphs
Example:
all cliques in that graph
the clique’s size (max)
Complexity4
Each Instance Has an Optimal Solution
OPTx1 x2 x3x4
Complexity5
Approximation (Max Version)
OPTxi
Complexity6
How To Show Hardness of Approximation?
Hardness of distinguishing far off instances Hardness of approximation
OPT
A B
gap
xi
Complexity7
Gap Problems (Max Version)
• Instance: …
• Problem: to distinguish between the following two cases:
The maximal solution B
The maximal solution ≤ A
Complexity8
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.
Complexity9
Formally:
Proof: Suppose there is an approximation algorithm that outputs C so that C/C*≤B/A
A proper distinguisher:* If CB, return ‘YES’* Otherwise return ‘NO’
Complexity10
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’)
Complexity11
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
Complexity12
Gap-3SAT[]
Instance: a set of clauses {c1,…,cm} over variables v1,…,vn.
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.
Complexity13
Gap-3SAT: Example
( x1 x2 x3 )
( x1 x2 x2 )
( x1 x2 x3 )
( x1 x2 x2 )
(x1 x2 x3 )
( x3 x3 x3 )
= { x1 F ; x2 T ; x3 F }satisfies 5/6 of the clauses
Complexity14
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.
Complexity15
The Probabilistic Method
Proof: Consider a random assignment.
x1 x2 x3 xn
. . .
Complexity16
1. Find the Expectation
Let Yi be the random variable indicating the outcome of the i-th clause.
For any 1im, E[Yi]=0·1/8+1·7/8=7/8
E[ Yi] = E[Yi] = 7/8m
Complexity17
2. Conclude Existence
Expectedly, the number of clauses satisfied is 7/8m.
Thus, there exists an assignment which satisfies at least that many.
Complexity18
PCP (Without Proof)
Theorem (PCP): For any >0,
Gap-3SAT[] is NP-hard.
This is tight! Gap-3SAT[0] is polynomial time
decidable
Complexity19
Approximation Preservation
A B
•YES
•don’t care
•NO
• YES
• don’t care
• NO
Complexity20
Hardness of Approximation
• Do the reductions we’ve seen also work for the gap versions?
• We’ll revisit the CLIQUE example.
Complexity21
CLIQUE Construction
.
.
.
a part for each
clause
a vertex for each literal
edge indicates
consistency
Complexity22
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.
Complexity23
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
Complexity24
Corollary
Theorem: for any >0,CLIQUE is hard to approximate
within a factor of 1/(7/8+)
Complexity25
Amplification
• The bigger the gap is, the better the hardness result.
• We’ll see how a gap can be amplified.
Complexity26
.
.
.
...
...
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:
Complexity27
Boolean assignments
• A Boolean assignment over k vertices {v1,…,vk} is a function A:{v1,…,vk}{0,1}.
• Think about it as if it indicates whether each vertex belongs to the clique.
Complexity28
Good Assignments
Complexity29
Consistency
• Two assignments are inconsistent, when they give the same vertex different truth-values.
. . .
n
. . .. . .
Complexity30
Consistency
• They are also inconsistent, if they both assign 1 to two vertices not connected by an edge.
non-edge
Complexity31
Correctness
Complexity32
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)
Complexity33
Chromatic Number
Complexity34
Chromatic NumberObservation: Each color group is an
independent set
Complexity35
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)
Complexity36
Clique Cover Number (CCN)
Complexity37
Reduction Idea
.
.
.
CLIQUE CCN
.
.
.
q
• cyclic shift-morphic
• clique preserving
m.
.
.
Complexity38
Correctness
Complexity39
Transformation
T:V[q]
for any v1,v2,v3,v4,v5,v6,
T(v1)+T(v2)+T(v3) T(v4)+T(v5)+T(v6) (mod q)
{v1,v2,v3}={v4,v5,v6}T is unique for triplets
Complexity40
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
Complexity41
feasible values
Greedy Constructionv6
v6
v2
v2
v1
v1
v5
v5v
3
v3
v4
v4
vertices we determined
forbidden values
Complexity42
Greedy Construction - Analysis
At most values are ruled out totally, so for q=n5 the greedy construction works.
Corollary: There exists a polynomial time algorithm which constructs a triplet unique transformation with q=n5
5
n
Complexity43
Using the Transformation
0 1 2 3 4 … (q-1)
vi
vj
T(vi)=1
T(vj)=4
CLIQUE
CCN
Complexity44
Completing the CCN Graph Construction
T(s)
T(t)
(s,t)ECLIQUE
(T(s),T(t))ECCN
Complexity45
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
Complexity46
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) < m CCN(G-ccn)>
q
Complexity47
Edge Origin Unique
T(s)
T(t)
First Observation: This edge comes
only from (s,t)
Complexity48
Triangle Consistency
Second Observation: A
triangle only come from a triangle
Complexity49
Clique Preservation
Corollary: {c1,…,ck} is a clique in the CCN graph
iff {T(c1),…,T(ck)} is a clique in the CLIQUE graph.
Complexity50
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