15
Algorithmen II – Wintersemester 2012/2013 Institut f ¨ ur Theoretische Informatik Prof. Dr. Dorothea Wagner Algorithmen II Vorlesung am 22.11.2012 www.kit.edu KIT – Universit¨ at des Landes Baden-W ¨ urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft I NSTITUT F ¨ UR T HEORETISCHE I NFORMATIK · PROF .DR.DOROTHEA WAGNER Randomisierte Algorithmen – Max Cut

Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Algorithmen IIVorlesung am 22.11.2012

www.kit.eduKIT – Universitat des Landes Baden-Wurttemberg undnationales Forschungszentrum in der Helmholtz-Gemeinschaft

INSTITUT FUR THEORETISCHE INFORMATIK · PROF. DR. DOROTHEA WAGNER

Randomisierte Algorithmen – Max Cut

Page 2: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problemdefinition

Problem MAXCUT: Gegeben ist ein Graph G = (V , E) mit Gewichtsfunktionc : E −→ N. Gesucht ist ein Schnitt (S, V \ S) von G mit maximalem Gewicht,d.h.

c(S, V \ S) :=∑

u,v ∈ Eu∈S und v∈V\S

c({u, v}) soll maximal sein.

c(S, V \ S) = 18

Problem ist NP-schwer.

1

5

6

2

2

3

1

32

5 4

S

V\S

Page 3: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problemdefinition

Problem MAXCUT: Gegeben ist ein Graph G = (V , E) mit Gewichtsfunktionc : E −→ N. Gesucht ist ein Schnitt (S, V \ S) von G mit maximalem Gewicht,d.h.

c(S, V \ S) :=∑

u,v ∈ Eu∈S und v∈V\S

c({u, v}) soll maximal sein.

G = (V , E)Transformation

ganzzahligesquadratischesProgramm (IQP)uber N

RelaxierungreellwertigesquadratischesProgramm (QP2)uber R2

Losung Transformation mithilfe eines randomisierten Algorithmus

Problem ist NP-schwer.

Page 4: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ganzzahliges Quadratisches Programm

Zu i und j ∈ V := {1, . . . , n} definiere ci j :=

{c({i , j}) falls {i , j} ∈ E

0 sonst

IQP(I):

max1

n∑j=1

j−1∑i=1

ci j · (1− xi · xj )

unter den Nebenbedingungen

xi , xj ∈ {−1, 1} und 1 ≤ i , j ≤ n .

1 2 3 4 51 3 12 3 5 23 5 64 6 25 1 2 2

Gewichtungsmatrix:

Losung:x2 = x4 = 1x1 = x5 = x3 = −1

1

5

6

2

2

3

1

32

5 4

S

V\S

Page 5: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Relaxierung von IQP(I)

Sei x i = (x i1, x i

2) ∈ R2 normierter Vektor.

QP2(I):

max1

n∑j=1

j−1∑i=1

ci j · (1− x i · x j )

unter den Nebenbedingungen

x i , x j ∈ R2 sind normierte Vektoren

Fur das Produkt von x i und x j gilt:

x i · x j = x i1 · x

j1 + x i

2 · xj2

Beachte: Jede Losung (x1, . . . , xn) von IQP(I) induziert eine Losung (x1, . . . , xn) vonQP2(I) mittels x i = (xi , 0).

⇒ QP2(I) ist Relaxierung von IQP(I)

Page 6: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Random MaxCut

Eingabe: Graph G = (V , E) mit einer Gewichtsfunktion c : E −→ NAusgabe: Ein Schnitt (S, V \ S) in G

1. Berechne optimale Losung (x1, . . . , xn) fur QP2(G,c)

2. Wahle zufallig einen zweidimensionalen Vektor r mit Norm 1

3. S ← {i ∈ V : x i · r ≥ 0}

xi liegt oberhalb der zu r senkrechten Linie `

1

5

6

2

2

3

1

3

optimal

2

5 4

Page 7: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Random MaxCut

Eingabe: Graph G = (V , E) mit einer Gewichtsfunktion c : E −→ NAusgabe: Ein Schnitt (S, V \ S) in G

1. Berechne optimale Losung (x1, . . . , xn) fur QP2(G,c)

2. Wahle zufallig einen zweidimensionalen Vektor r mit Norm 1

3. S ← {i ∈ V : x i · r ≥ 0}

xi liegt oberhalb der zu r senkrechten Linie `

1. Schritt: Berechne Losung fur QP2:

x1

x5

x4

x3

x2

1

5

6

2

2

3

1

3

optimal

Skizze:

2

5 4

Page 8: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Random MaxCut

Eingabe: Graph G = (V , E) mit einer Gewichtsfunktion c : E −→ NAusgabe: Ein Schnitt (S, V \ S) in G

1. Berechne optimale Losung (x1, . . . , xn) fur QP2(G,c)

2. Wahle zufallig einen zweidimensionalen Vektor r mit Norm 1

3. S ← {i ∈ V : x i · r ≥ 0}

xi liegt oberhalb der zu r senkrechten Linie `

x1

x5

x4

x3

x2

1

5

6

2

2

3

1

3

optimal

r

Skizze:

2. Schritt: Rate Vektor r

`2

5 4

Page 9: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Random MaxCut

Eingabe: Graph G = (V , E) mit einer Gewichtsfunktion c : E −→ NAusgabe: Ein Schnitt (S, V \ S) in G

1. Berechne optimale Losung (x1, . . . , xn) fur QP2(G,c)

2. Wahle zufallig einen zweidimensionalen Vektor r mit Norm 1

3. S ← {i ∈ V : x i · r ≥ 0}

xi liegt oberhalb der zu r senkrechten Linie `

x1

x5

x4

x3

x2

1

5

6

2

2

3

1

3

optimal

r

Skizze: `

geraten

3. Schritt: Berechne S

2

5 4

Page 10: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Random MaxCut

Satz 8.18: Sei I eine Instanz fur MAXCUT und CRMC(I) der Wert der Losung, die RANDOM

MAXCUT fur I berechnet. Wenn die Vektoren r gleichverteilt angenommen werden, so gilt:

E [CRMC (I)] =1

π·

n∑j=1

j−1∑i=1

ci j · arccos(x i · x j )

Eingabe: Graph G = (V , E) mit einer Gewichtsfunktion c : E −→ NAusgabe: Ein Schnitt (S, V \ S) in G

1. Berechne optimale Losung (x1, . . . , xn) fur QP2(G,c)

2. Wahle zufallig einen zweidimensionalen Vektor r mit Norm 1

3. S ← {i ∈ V : x i · r ≥ 0}

r

s

t`

x j

x i

r

s

t

`

x j

x i

Page 11: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Random MaxCut

Eingabe: Graph G = (V , E) mit einer Gewichtsfunktion c : E −→ NAusgabe: Ein Schnitt (S, V \ S) in G

1. Berechne optimale Losung (x1, . . . , xn) fur QP2(G,c)

2. Wahle zufallig einen zweidimensionalen Vektor r mit Norm 1

3. S ← {i ∈ V : x i · r ≥ 0}

Satz 8.19: Fur eine Instanz I von MAXCUT berechnet RANDOM MAXCUT eine Losung mit demWert CRMC(I), fur die gilt

E [CRMC(I)]

OPT (I)≥ 0, 8785 .

Page 12: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Random MaxCut

Eingabe: Graph G = (V , E) mit einer Gewichtsfunktion c : E −→ NAusgabe: Ein Schnitt (S, V \ S) in G

1. Berechne optimale Losung (x1, . . . , xn) fur QP2(G,c)

2. Wahle zufallig einen zweidimensionalen Vektor r mit Norm 1

3. S ← {i ∈ V : x i · r ≥ 0}

RANDOM MAXCUT ist polynomiell, falls Schritt 1 polynomiell ist.

Bisher nicht bekannt, ob QP2 polynomiell gelost werden kann.

Idee: Modifiziere QP2 so, dass RANDOM MAXCUT polynomiell gelost wird.

Page 13: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Effiziente Losung von QP2(I)

max1

n∑j=1

j−1∑i=1

ci j · (1− x i · x j )

unter den Nebenbedingungen

x i , x j ∈ R2 sind normierte Vektoren.

max1

n∑j=1

j−1∑i=1

ci j · (1− mi j )

mit mi j = x i · x j und mi i = 1 und unterden Nebenbedingungen

x i , x j ∈ Rn sind normierte Vektoren.

ist aquivalent zu

QPn

Page 14: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Effiziente Losung von QP2(I)

max1

n∑j=1

j−1∑i=1

ci j · (1− x i · x j )

unter den Nebenbedingungen

x i , x j ∈ R2 sind normierte Vektoren.

max1

n∑j=1

j−1∑i=1

ci j · (1− mi j )

mit mi j = x i · x j und mi i = 1 und unterden Nebenbedingungen

x i , x j ∈ Rn sind normierte Vektoren.

ist aquivalent zu

Definition 8.20: Eine n × n-Matrix M heißt positiv semidefinit, falls fur jeden Vektor x ∈ Rn

gilt:xT · M · x ≥ 0

Die Matrix M := (mi j ) ist positiv semidefinit.

Denn: Symmetrische Matrix M ist genau dann positiv semidefinit, wenn es m × n-Matrix P(m ≤ n) gibt, sodass

M = PT · P(P ist in polynomieller Zeit berechenbar, falls M positiv semidefinit.)

QPn

(Fur jede positiv semidefinite n × n-Matrix M mit mi i = 1 gilt, dass n normierte Vektorenx1, . . . , xn ∈ Rn mit mi j = x i · x j in polynomieller Zeit berechnet werden konnen.)

Page 15: Vorlesung am 22.11 · Algorithmen II – Wintersemester 2012/2013 Institut fur Theoretische Informatik¨ Prof. Dr. Dorothea Wagner Effiziente Losung von¨ QP2(I) max 1 2 Xn j=1 Xj

Algorithmen II – Wintersemester 2012/2013Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Effiziente Losung von QP2(I)

max1

n∑j=1

j−1∑i=1

ci j · (1− x i · x j )

unter den Nebenbedingungen

x i , x j ∈ R2 sind normierte Vektoren.

max1

n∑j=1

j−1∑i=1

ci j · (1− mi j )

mit mi j = x i · x j und mi i = 1 und unterden Nebenbedingungen

x i , x j ∈ Rn sind normierte Vektoren.

ist aquivalent zu

Definition 8.20: Eine n × n-Matrix M heißt positiv semidefinit, falls fur jeden Vektor x ∈ Rn

gilt:xT · M · x ≥ 0

Die Matrix M := (mi j ) ist positiv semidefinit.

QPn

Damit entspricht QPn(I) dem Problem SEMI-DEFINIT-CUT(I).

Satz: Es gibt AlgorithmusAε fur jedes ε, sodassAε polynomiell in Eingabegroßeund log( 1

ε) ist und

Aε(I) ≥ OPTSD(I)− ε,

wobei OPTSD(I) optimaler Losungswert von SEMI-DEFINIT-CUT(I).

(Ohne Beweis) Man kann zeigen: Fur ε = 10−5 wird Approximationsgutevon RANDOM MAXCUT erreicht.