25
Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP Relax and do Something Random: The MAXCUT Approximation of Goemans and Williamson Michael McCoy January 29, 2010

Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Embed Size (px)

Citation preview

Page 1: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Relax and do Something Random:The MAXCUT Approximation of Goemans and

Williamson

Michael McCoy

January 29, 2010

Page 2: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

What is a cut?

• Given a graph (V ,E ) with edge weights wij ≥ 0,

w13

w12

w25

w24

4

2

53

1

w34

a cut S is a subset of the vertices S ⊂ V .

• The weight of the cut ω(S) is the sum of the weights of theedges that ”cross the cut”:

ω(S) =∑

i∈S, j /∈S

wij

Page 3: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Cut Example

• Here, S = {1, 4, 5}.

w13

w12

w25

w243 5

2

1

4w34

• The weight of the cut ω({1, 4, 5}) is

ω({1, 4, 5}) = w12 + w13 + w24 + w25 + w34. (1)

Page 4: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

MAXCUT

• Determining a subset S ⊂ V that maximizes ω(S) is theMAXCUT problem:

maximize ω(S)subject to S ⊂ V

(MAXCUT)

• Equiavelently, we can write MAXCUT as

maximize 14

∑i ,j wij(1− σiσj)

subject to σi = ±1 for all i ∈ V(MAXCUT’)

• Equivalent by setting i ∈ S ⇐⇒ σi = +1.

• MAXCUT is known to be NP-complete.

Page 5: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

MAXCUT

• Determining a subset S ⊂ V that maximizes ω(S) is theMAXCUT problem:

maximize ω(S)subject to S ⊂ V

(MAXCUT)

• Equiavelently, we can write MAXCUT as

maximize 14

∑i ,j wij(1− σiσj)

subject to σi = ±1 for all i ∈ V(MAXCUT’)

• Equivalent by setting i ∈ S ⇐⇒ σi = +1.

• MAXCUT is known to be NP-complete.

Page 6: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Relax

• Key Idea: Replace integers |σi | = 1 with norm-1 vectors‖ui‖ = 1, and scalar multiplication with vector multiplication.

maximize 14

∑i ,j wij(1− 〈ui , uj〉)

subject to ‖ui‖ = 1 for all i in V(RELAX)

• This is a relaxation of MAXCUT since the original problem iscontained in this problem, e.g., take ui = (±1, 0, . . . , 0).

• We will show later how to compute the ui ’s using asemidefinite program.

Page 7: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

A key result

LemmaLet r be a random1 vector. For any unit vectors ui and uj ,

P(sign(〈ui , r〉) 6= sign(〈uj , r〉)

)=

arccos(〈ui , uj〉)π

.

As an immediate consequence of this Lemma, we have that

E[

1

2− 1

2sign(〈ui , r〉) sign(〈uj , r〉)

]=

1

πarccos(〈ui , uj〉).

1By which me mean that r is drawn from a spherically symmetricdistribution with zero mass at the origin.

Page 8: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

A key result

LemmaLet r be a random1 vector. For any unit vectors ui and uj ,

P(sign(〈ui , r〉) 6= sign(〈uj , r〉)

)=

arccos(〈ui , uj〉)π

.

As an immediate consequence of this Lemma, we have that

E[

1

2− 1

2sign(〈ui , r〉) sign(〈uj , r〉)

]=

1

πarccos(〈ui , uj〉).

1By which me mean that r is drawn from a spherically symmetricdistribution with zero mass at the origin.

Page 9: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Proof.Using a suitable rotation, we can assume without loss thatui = (1, 0, . . . , 0) and uj = (a, b, 0, . . . , 0). (Why?)

θij

uj

ui

〈ui , uj〉

Page 10: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Proof.The signs of 〈ui , r〉 and 〈uj , r〉 are different if and only if thetangent plane of r separates ui and uj .

θij

uj

ui

〈ui , uj〉

Page 11: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Proof.The signs of 〈ui , r〉 and 〈uj , r〉 are different if and only if thetangent plane of r separates ui and uj .

Here, the tangent plane does not separate ui and uj .

r

Page 12: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Proof.The signs of 〈ui , r〉 and 〈uj , r〉 are different if and only if thetangent plane of r separates ui and uj .

Here, the tangent plane separates ui and uj .

r

Page 13: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Proof.A random line bisects an angle of θij with probability

θijπ ,

θij

uj

ui

〈ui , uj〉

Page 14: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Proof.A random line bisects an angle of θij with probability

θijπ ,

but cos(θij) = 〈ui , uj〉,

θij

uj

ui

〈ui , uj〉

Page 15: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Proof.A random line bisects an angle of θij with probability

θijπ ,

but cos(θij) = 〈ui , uj〉,so that

θijπ =

arccos(〈ui ,uj〉)π .

θij

uj

ui

〈ui , uj〉

Page 16: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Converting back to scalars

Suppose we have the vectors ui that solve RELAX. Then do thefollowing:

1. Choose a random vector r .

2. Set σi = sign(〈ui , r〉) for all i ∈ V .

3. Equivalently, set i ∈ S if sign(〈ui , r〉) ≥ 0.

Page 17: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Converting back to scalars

TheoremLet S∗ be a cut that optimizes MAXCUT. Then

E[ω(S)] ≥ αω(S∗),

where α > 0.87.

For the proof, we will use the fact that

arccos(y)

π≥ α1− y

2for all − 1 ≤ y ≤ 1,

where

α = min0≤θ≤π

π(1− cos(θ))> 0.87.

Page 18: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Converting back to scalars

TheoremLet S∗ be a cut that optimizes MAXCUT. Then

E[ω(S)] ≥ αω(S∗),

where α > 0.87.

For the proof, we will use the fact that

arccos(y)

π≥ α1− y

2for all − 1 ≤ y ≤ 1,

where

α = min0≤θ≤π

π(1− cos(θ))> 0.87.

Page 19: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Proof.By the corollary to the Lemma and our fact,

E[ω(S)] =

1

2

∑i ,j

wijarccos 〈ui , uj〉

π≥ α

4

∑i ,j

wij(1− 〈ui , uj〉).

Since ui and uj maximize maximize the right-hand side over theunit sphere, by restriction, we have

E[ω(S)] ≥ α

4

∑i ,j

wij(1− σiσj).

for any σi = ±1. In particular, the inequality holds for themaximum possible choice of signs, which by definition isαω(S∗).

Page 20: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

The step to semidefinite

• For a square matrix Σ, following are equivalent:

1. Σ < 0, Σii = 1, and rank(Σ) = 1,2. Σ = σσt , where σi = ±1.

• Setting (W )ij = wij , note that∑i ,j

wijσiσj = tr(Wσσt) (2)

• Thus, MAXCUT is equivalent to

maximize 14

∑i ,j wij − 1

4 tr(WΣ)

subject to Σ < 0, Σii = 1, and rank(Σ) = 1.(3)

Page 21: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

Semidefinite relaxation

• By dropping the rank-1 restriction, (3) becomes a semidefiniteprogram:

minimize tr(WΣ)

subject to

{Σ < 0,Σii = 1

(4)

• Setting Σ = UtU via a Cholesky factorization, the restrictionΣii = 1 implies that U has unit-norm columns.

• That is, (4) is equivalent to RELAX.

Page 22: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

How to compute it

• For large problems, the current state-of-the-art algorithm forcomputing the solution to these semidefinite programs isavailable in Burer and Montiero [2].

• For moderately sized problems, use Matlab’s CVX

package [3].

The entire code using CVX:

... % define W, N

cvx_begin sdp

variable

Sigma(N,N) symmetric

minimize

trace(W*Sigma)

subject to

Sigma >= 0;

diag(Sigma) == ones(N,1);

cvx_end

U = chol(Sigma);

sigma = sign(U*randn(N,1));

Page 23: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

How to compute it

• For large problems, the current state-of-the-art algorithm forcomputing the solution to these semidefinite programs isavailable in Burer and Montiero [2].

• For moderately sized problems, use Matlab’s CVX

package [3].

The entire code using CVX:

... % define W, N

cvx_begin sdp

variable

Sigma(N,N) symmetric

minimize

trace(W*Sigma)

subject to

Sigma >= 0;

diag(Sigma) == ones(N,1);

cvx_end

U = chol(Sigma);

sigma = sign(U*randn(N,1));

Page 24: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

How to compute it

• For large problems, the current state-of-the-art algorithm forcomputing the solution to these semidefinite programs isavailable in Burer and Montiero [2].

• For moderately sized problems, use Matlab’s CVX

package [3].

The entire code using CVX:

... % define W, N

cvx_begin sdp

variable

Sigma(N,N) symmetric

minimize

trace(W*Sigma)

subject to

Sigma >= 0;

diag(Sigma) == ones(N,1);

cvx_end

U = chol(Sigma); % May fail occasionally due to numerical inaccuracy

sigma = sign(U*randn(N,1));

Page 25: Relax and do Something Random: The MAXCUT Approximation …users.cms.caltech.edu/~umans/cs38/gw-max-cut.pdf · The MAXCUT Approximation of Goemans and Williamson Michael McCoy January

Introduction: MAXCUT Relaxation Key Lemma The Theorem The SDP

For More Details

M.X. Goemans and D.P. Williamson.Improved approximation algorithms for maximum cut andsatisfiability problems using semidefinite programming.Journal of the ACM (JACM), 42(6):1145, 1995.

S. Burer and R. Monteiro.Local Minima and Convergence in Low-Rank SemidefiniteProgramming.Mathematical Programming, 103(3):427–444, December 2004.

M. Grant and S. Boyd.CVX: Matlab software for disciplined convex programming(web page and software)http://stanford.edu/~boyd/cvx