presentation

Download Report

Transcript presentation

Yet another algorithm for
dense max cut - go greedy
Claire Mathieu
Warren Schudy (presenting)
Brown University Computer Science
SODA 2008
Max cut
• Splitting an area code in
two…
• …to maximize long
distance charges!
• 2-layer circuit board
layout
• Research platform – e.g.
first use of SDP in
approximation algorithms
Standard greedy for Max-cut
10
21
01
• 0.5-approx for general graphs
(Animation done)
Dense graphs
# edges  n  (n vertices)
2
• Definition:
• Poly-Time Approximation Schemes for dense
graphs by:
–
–
–
–
Arora, Karger and Karpinski 95
Fernandez de la Vega 96
Goldreich, Goldwasser and Ron 98.
Frieze and Kannan 99
• We prove the same theorem using a simpler
algorithm
(Animation done)
Seeded greedy algorithm
• Take a random sample of t0  1  2 vertices
• For all 2t colorings of sampled vertices
0
– Add remaining vertices greedily in random order
Analyze
when it
guesses
OPT
• Return best overall coloring found
01
10
Constructed
coloring
OPT
22
12
01
(Animation done)
Our results
• Seeded greedy algorithm satisfies
CUT  OPT  n 2 in time 2O 1   n 2.
• The standard seedless greedy, when
repeated 1 22
times with random order,
also works.
• Simpler proof than Alon, Fernandez de la
Vega, Kannan, and Karpinski (2003) that
~
the sample complexity of MaxCut is O 1  4 
• Results extend to weighted MAX-r-CSP
2
poly(  )
(Animation done)
Talk outline
• Introduction (done)
• Analysis of seeded greedy:
– Introduction of the smoothed coloring
– Using the relation between the smoothed and
constructed colorings to lower-bound the
number of cut edges (profit) of the output
• Conclusions
The Smoothed Coloring
Constructed
coloring C
Time:
22½ 3
Smoothed coloring S
(initialized to OPT)
00
G
10
G
10
Before choosing a
random vertex,
determine the
greedy color for
each
G
G
11
G
01
Are we done updating S? No, because 1/3
of C was greedy, but only 1/7 of S was
greedy!
(Animation done)
Next vertex…
Time:
01
G
Constructed
coloring (C)
11
3 3½ 4
Smoothed
coloring (S)
G
G
12
01
G
• Update:
  unprocesse d vertex v, what is greedy color g(v) in C?
 u  random unprocesse d vertex, color u with g(u) in both C and S
  still unprocesse d vertex v, add a wedge g(v) to S
(Animation done)
Another vertex…
01
44½ 5
G
Constructed
coloring (C)
11
Time:
Smoothed
coloring (S)
G
G
12
• Update:
  unprocesse d vertex v, what is greedy color g(v) in C?
 u  random unprocesse d vertex, color u with g(u) in both C and S
  still unprocesse d vertex v, add a wedge g(v) to S
(Animation done)
Penultimate
Time:
Smoothed
coloring (S)
5 6
Constructed
coloring (C)
11
G
G
22
• Update:
  unprocesse d vertex v, what is greedy color g(v) in C?
 u  random unprocesse d vertex, color u with g(u) in both C and S
  still unprocesse d vertex v, add a wedge g(v) to S
(Animation done)
Final vertex
Time:
Smoothed
coloring (S)
6 7
Constructed
coloring (C)
12
G
• Smoothed coloring starts at OPT and ends at
output
• Therefore it suffices to bound the change in profit
of the smoothed coloring at each time step
(Animation done)
S Changes Slowly
Time: 4 Smoothed coloring (S) Time: 5
• At most 1  (n  t )  1 t   n (fractional) vertices change
color
• Consider each changing vertex separately (interactions
negligible).
(Animation done)
5 n
 is a
3 t
scaling factor
5
r  1  
 3
5
b  1  
3
Bounding the lost profit
Constructed
coloring (C)
Time:
r'  5 / 3 
b'  4 / 3 
(Blue wins ties)
3
Smoothed
coloring (S)


Vertex v
This vertex will gain
a blue wedge and
becomes
. Net
change:
into
Lv  lost profit here  blue  b'r '  1 12  1 3  0
Greedy chose blue, so r  b  0.
(Animation done)
Finishing the proof
b'r '  (b'b)  (b  r )  (r  r ' )   b'b  0  r  r '
By greedy
Lv  blue  b' r '  blue   b'b  r  r ' 
 


n
Overall loss at time t  E  L   O   O n / t 
t
Martingale argument : E  r 'r  b'b   O n / t
v
 v 
Overall profit loss  OPT  CUT
Error estimating a
quantity  n using
t samples
 
 blue
n2
2n 2
  3/ 2 
 O(n 2 )
1/  2
t 1 /  2 t
n
vertices
 On / t 
(Animation done)
Conclusions
• Problem: dense weighted max cut and
max-CSP
• Algorithm: seeded greedy
• Analysis:
– Smoothed / extrapolated coloring
– Martingale
• Bonus: simpler sample complexity proof
Questions?
• Acknowledgments:
– Brown theory lunch and Claire Mathieu for
comments on preliminary talks.
(Animation done)