Upload
bartholomew-stewart
View
224
Download
3
Tags:
Embed Size (px)
Citation preview
Approximation Algorithms for Unique Games
Luca Trevisan
Slides by Avi Eyal
What’s in the Lecture:
• Definition of “Unique Game”
• The Unique Game Conjecture
• General Unique Game Limitation
• Linear Unique Game Limitation
General Unique GameA trio (G=(V,E), {f(e)}, S) where S is a set of possible values to V, and f(e) is a permutation between the vertices of e.
v3
v1
v2
v4
c
b
a
b
c
a
a
c
b
c
b
a
c
b
a
c
b
a
cbaS ,,
c
a
b
c
b
a
c
b
a
a
b
c
Linear Unique GameThe permutation constraints are linear
v3
v1
v2
v4
cbaS ,,
)(mod113 Svv
)(mod241 Svv
)(mod22 23 Svv
)(mod2 12 Svv
The Unique Game Conjecture
Given a (G(V,E), {f(e)}, S), it is NP hard to decide between:
• Completeness 1-γ• Soundness γ
What about a (γ,1) gap?
That would be easy, since a value of a node forces the values of all it’s neighbors:
.
.
.
.
.
.
.
.
Just create a spanning tree for each connected component!
Try for every s∈S
What if we new that the graph has a value of at least (1-γ)?
From now on we shall denote A as the assignment that satisfies
(1-γ) of the constraints.
Theorems:
1. The Unique Game Conjecture with completeness 1-cε4/log3n and soundness 1- ε is false.
2. For linear games the conjecture with completeness 1-cε2/logn and soundness 1- ε is false.
ε 1-ε
ε 1-ε
1-cε4/log3n
1-cε2/logn
General Unique Games
Linear Unique Games
ε 1
General Games (for example Label Cover)
Algorithm for General Games
We would like to use the spanning tree algorithm we’ve seen before.
.
.
.
.
.
.
.
.
Just pick a random vertex and get going!
But what if our graph looks like this:
clique clique
Constraints that are not
satisfied by A
If we dealt with expanders…
The chances that a random route would hit a polluted edge is relatively small.
A few definitions
A random walk matrix:
M(u,v) = 1/d if (u,v) E, else M(u,v)=0∈
A random walk:
If the next step starts from vertex u, then each of u’s edges have the same probability to be next.
From now on we assume that all vertices have the same degree d.
A lazy walk on G with matrix M is:
M’ = 1/2(I+M)
From now on, “walk” = “lazy walk!”
π(u) = d/2|E|(=1/n) is the stationary distribution for M.πM = π
The statistical distance between 2 distributions p,q is:
1)(Pr1)(Prmax: ~~}1,0{:
yTxTqp pypxT
x
xqxpqp )()(2
1:
Alternative definition:
For every vector p (over the vertices):pM = the probability distribution after the first steppMk = the probability distribution after k steps.
We denote p - the probability distribution vector for the first vertex of the walk.
Fact: For every probability distribution and for every random walk matrix we have:
Mixing Time (t, δ) - after t steps of a random walk starting on an arbitrary vertex, we come δ close to the stationary distribution.
nnpM
tpM
So G is (t, δ)-mixing if for every distribution p (for a start vertex), |pMt - π| < δ.
Select by p
Lazy random walkt steps or more
Final vertexVertex selected
by π
≈
Working on Expanders
• Choose a random node r (by π!) and guess A(r) (A is the best assignment).
• Pick random walks (of length t) in the graph to all nodes. Assign values to the nodes consistent with A(r) and with the path.
Lemma 1:
Given a 1-γ value unique game such that G is (t, δ)-mixing, the above algorithm finds an assignment that satisfies on average at least 1-2(tγ+ δ) of the constraints.
Lemma 2:
The probability that v gets a value different than A(v) is at most tγ+δ.
r selected from π
v – the last vertex
t-long random
walk
r selected from π
v selected from π
The following 2 walks have a δ-close probability:
Every edge (in every step) has the same 1/|E| probability!
Up to γ of the edges are spoiled.
→The chance to meet a spoiled edge ≤ tγ.
→The chance to meet a spoiled edge when v is chosen from π ≤ tγ + δ.
→At the end of the algorithm each edge has a 2(tγ + δ) probability to be spoiled (tγ + δ from each of it’s vertices).
The IdeaDecompose the graph into connected components with good (t, δ).
Run the “random walk algorithm” on each connected component.
For a set S V⊆ ,π(S) := Σu∈Sπ(u) = Σu∈S d/2|E| = |S|d/2|E|
For a cut (S, V-S), Q(S, V-S) is half the fraction of edges that cross the cut.
Q(S, V-S) := Σu S, v S ∈ ∉ π(u)M(u,v) = |e(S, V-S)|/2|E|
For a cut with π(S) ≤ ½, the conductance of the cut:
h(S):= Q(S, V-S) / π(S) = |e(S, V-S)|/|S|d
Some more…
Let λ(G) be the second largest eigenvalue of M, then (1- λ(G)) is the spectral gap of G.
Fact: All M’s eigenvalues are real, and ≤ 1.π has the maximal eigenvalue.
Relations:Lemma 3 (fact):
Every graph G with λ(G)<1 is (k, δ)-mixing with
1
loglog)(1
1n
GOk
Lemma 4 (fact):
It is possible to find in polynomial time a cut of conductance ))(1(2)( GSh
Lemma 5:
Given G=(V,E) and 0<ε≤1/2, it is possible to find in polynomial time a subset E’ E⊆ , with at least (1- ε)|E| edges, such that in the graph G’=(V,E’) every connected component C gives:
2
2
)(log72)(1
EC
Algorithm for Lemma 5:
Set:
For each connected component C, if λ(C)≤λ we are done. Otherwise, use Lemma 4 to find a cut of conductance ≤ h, and remove
the edges of that cut from E’.
2
22
)(log721
21:
E
h E
hlog6
:
)1(2: h
Charges
• Each edge gets a charge 1 to begin with.
• When we remove the edges of (S, C-S), we distribute the charges of the deleted edges among the edges of S.
1
1
11
1
1
1
1
11 1/3
1 1/3
1 1/3
• The sum of the edges charges in E’ is |E| throughout the algorithm.
• In every connected component, all edges have the same charge.
• The charge of an edge is increased at most log|E| times throughout the algorithm. (because π(S)≤1/2).
Simple Facts:
The charge of an edge is increased by a factor of at most (1+3h) each time.
S C-S
d|S| e
Increase each edge by
hh
h
eSd
e3
1
2
21
hShSd
e )(
From Lemma 4:
Conclusion
At the end, each edge has weight at most
1
11
log2131
log
log
E
E
Eh
Which means that |E’|≥(1-ε)|E|.
Back to Theorem 1The Unique Game Conjecture with completeness 1-cε4/log3n and soundness 1- ε is false.
Remove ε/3 of the edges to get connected components in which:
•1-λ(G) ≥ O((ε/logn)2)
•(t, δ)-mixing with t = O(log3n/ε2) and δ = 1/n.
Apply the “random walk” algorithm on each connected component.
ε/3 constraints removed
averageerrorε/3
A satisfies less than 1-3γ/ε constraints
ε/3
A satisfies at least 1-3γ/ε constraints.
)(log
log 2
3
3
4
On
nOt
Linear Games
Definition:Graph G has diameter d if there is a vertex r V∈ such that every vertex v∈V has distance at most d from r.
Lemma:There is a polynomial time algorithm that on input G=(V,E) and t>1, returns a subset E’⊆E and |E’|≥|E|/t, such that every connected component in the graph G’=(E’,V) has diameter at most (1+log|E|)/(log t).
The algorithmE’ = EWhile there is a connected component with
diameter > d:1. Let v be a vertex in that component.2. i=03. While the number of edges in the cut
B(v,i), V-V(v,i) > t-1 times the number of edges in B(v,i), i++.
4. Remove from E’ the edges in the cut.
We increase i only if the number of edges is increased by a factor of t. Therefore the radius is always ≤ 1 + log|E|/log t.
Example: we want d=3, t~3
Lemma:
Given a Linear Unique Game with diameter ≤ t, and given r ∈ V, root of a spanning tree of depth ≤ t, it is possible to either find a satisfactory assignment, or to find 4t+2 edges that cannot be all satisfied at one time.
“bad” edge
Let r get a free variable x.
Each node v in the tree is assigned with a function of the form: fv(x) = ax+b
If for (u,v) the equation fu,v(fu(x))=fv(x) has no solution, then (u,v) is a “bad” edge and the whole loop cannot be satisfied.
Algorithm for Theorem 2Given G and ε>0, delete up to ε|E|/2 edges to get connected components each with diameter k ≤ O(log|E|/ ε).
Find a spanning tree of depth ≤ k.
Remove every unsatisfiable loop found .
If the graph is 1-cε2/logn feasible, then only 2k*cε2/logn ~ ε/2 of the edges will be deleted.
In total we have deleted only ε of the edges.
d-to-d GameIf (u,v) are neighbors then every value
of u can match d values in v
3-coloring of a graph is a 2-to-2 game