Hardness of Approximation

1 / 50

# Hardness of Approximation - PowerPoint PPT Presentation

Hardness of Approximation. Introduction. Objectives: To show several approximation problems are NP-hard Overview: Reminder: How to show inapproximability? Probabilistic Checkable Proofs Hardness of approximation for clique. Optimization Problems. Consider an optimization problem P :.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Hardness of Approximation' - venus

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Hardness of Approximation

Complexity

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

Optimization Problems

Consider an optimization problem P:

Example:

all graphs

instances: x1,x2,x3,…

all cliques in that graph

feasible solutions

the clique’s size (max)

optimization measure

Complexity

xi

A

B

gap

How To Show Hardness of Approximation?

Hardness of distinguishing far off instances  Hardness of approximation

OPT

Complexity

Gap Problems (Max Version)
• Instance: …
• Problem: to distinguish between the following two cases:

The maximal solution  B

The maximal solution ≤ A

YES

NO

Complexity

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

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

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

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

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.

YES

NO

Complexity

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

Complexity

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

x1

x2

x3

xn

The Probabilistic Method

Proof: Consider a random assignment.

. . .

Complexity

1. Find the Expectation

Let Yi be the random variable indicating the outcome of the i-th clause.

For any 1im,E[Yi]=0·1/8+1·7/8=7/8

E[ Yi] =  E[Yi] = 7/8m

Complexity

2. Conclude Existence

Expectedly, the number of clauses satisfied is 7/8m.

Thus, there exists an assignment which satisfies at least that many. 

Complexity

PCP (Without Proof)

Theorem (PCP):

For any >0,

Gap-3SAT[] is NP-hard.

This is tight! Gap-3SAT[0] is polynomial time decidable

Complexity

Approximation Preservation

A

B

• YES
• YES
• don’t care
• don’t care
• NO
• NO

Complexity

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

Complexity

CLIQUE Construction

a vertex for each literal

a part for each clause

edge indicates consistency

.

.

.

Complexity

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

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

YES

NO

Complexity

Corollary

Theorem: for any >0,

CLIQUE is hard to approximate within a factor of 1/(7/8+)

Complexity

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

Complexity

...

...

.

.

.

Amplification

Given an instance of the Gap-CLIQUE problem and a constant k:

A part for every k vertices

edge indicates consistency

vertex for each Boolean assignment

Complexity

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.

Complexity

. . .

. . .

. . .

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

n

Complexity

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

non-edge

Complexity

Correctness

Complexity

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

Chromatic Number

Observation: Each color group is an independent set

Complexity

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

.

.

.

Reduction Idea

CLIQUE

CCN

.

.

.

.

.

.

m

• cyclic shift-morphic
• clique preserving

q

Complexity

Correctness

Complexity

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

Complexity

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

v5

forbidden values

v1

v2

v3

v4

feasible values

vertices we determined

Greedy Construction

v6

Complexity

Greedy Construction - Analysis

At most values are ruled out totally, so for q=n5the greedy construction works.

Corollary: There exists a polynomial time algorithm which constructs a triplet unique transformation with q=n5

Complexity

Using the Transformation

vi

vj

CLIQUE

T(vj)=4

T(vi)=1

CCN

0 1 2 3 4 … (q-1)

Complexity

Completing the CCN Graph Construction

T(s)

(s,t)ECLIQUE 

(T(s),T(t))ECCN

T(t)

Complexity

Completing the CCN Graph Construction

Close the set of edges under shift:

For every (x,y)E,

if x’-y’=x-y (mod q), then (x’,y’)E

T(s)

T(t)

Complexity

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

Complexity

Edge Origin Unique

T(s)

First Observation: This edge comes only from (s,t)

T(t)

Complexity

Triangle Consistency

Second Observation: A triangle only come from a triangle

Complexity

Clique Preservation

Corollary:

{c1,…,ck} is a clique in the CCN graph

iff

{T(c1),…,T(ck)} is a clique in the CLIQUE graph.

Complexity

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

Complexity