Kombinatorische Optimierung - Juniorprof. Dr. Henning

Werbung
Kombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke
Institut für Theoretische Informatik
1
KIT –Henning
Universität desMeyerhenke:
Landes Baden-Württemberg und
nationales
Forschungszentrum in
der Helmholtz-Gemeinschaft
Kombinatorische
Optimierung
Institut für Theoretische Informatik
www.kit.edu
Wiederholung
Bin-Packing:
Bin-Packing ∈ N P C schon für zwei Behälter, im allgemeinen Fall
streng N P -vollständig
Greedy-Algorithmen: First-Fit-Decreasing hat relative Güte 3/2
2
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Wiederholung
Bin-Packing:
Bin-Packing ∈ N P C schon für zwei Behälter, im allgemeinen Fall
streng N P -vollständig
Greedy-Algorithmen: First-Fit-Decreasing hat relative Güte 3/2
Asymptotisches Approximationsschema:
Partitioniere Zahlen in Gruppe gemäß ihrer Größe
Packe die größten Zahlen, jede Zahl in einen Behälter
Mittlere Gruppen verpacken
Kleine Gruppe u.a. mit N EXT F IT verpacken
2
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Vorlesungen 19 und 20
Programm:
Übung zu linearer Programmierung
Übungen zum Bin-Packing
Wiederholung des bisherigen Stoffes
Approximation von Max-Cut
3
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Inhalt
Approximation
Max-Cut
Der Algorithmus von Goemans und Williamson
Das Problem des dünnsten Schnitts
4
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Schnitte maximaler Größe in Graphen
Problem (Max-Cut)
Sei G = (V , E ) ein ungerichteter Graph.
Finde eine Partition (V1 , V2 ) in G mit maximaler Schnittgröße!
Bemerkung
Komplexität: N P -schwer
5
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Schnitte maximaler Größe in Graphen
Problem (Max-Cut)
Sei G = (V , E ) ein ungerichteter Graph.
Finde eine Partition (V1 , V2 ) in G mit maximaler Schnittgröße!
Bemerkung
Komplexität: N P -schwer
Beispiel: Siehe Tafel!
5
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Einfacher deterministischer
Max-Cut-Algorithmus
S IMPLE A PPROX M AX C UT(Graph G = (V , E ))
Sei (V1 , V2 ) eine beliebige Partition von V
while es gibt einen Knoten v mit mehr internen als externen Kanten do
Verschiebe v in den jeweils anderen Teil der Partition
od
6
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Einfacher deterministischer
Max-Cut-Algorithmus
S IMPLE A PPROX M AX C UT(Graph G = (V , E ))
Sei (V1 , V2 ) eine beliebige Partition von V
while es gibt einen Knoten v mit mehr internen als externen Kanten do
Verschiebe v in den jeweils anderen Teil der Partition
od
Behauptung:
Der obige Algorithmus hat relative Güte 2.
Frage: Warum? Beweisen Sie in Gruppenarbeit!
6
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Inhalt
Approximation
Max-Cut
Der Algorithmus von Goemans und Williamson
Das Problem des dünnsten Schnitts
7
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Einführende Grundlagen
Definition
Eine n × n-Matrix A über R heißt genau dann positiv semidefinit, wenn
gilt: ∀x ∈ Rn : x T Ax ≥ 0.
8
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Einführende Grundlagen
Definition
Eine n × n-Matrix A über R heißt genau dann positiv semidefinit, wenn
gilt: ∀x ∈ Rn : x T Ax ≥ 0.
Definition
Semidefinites Programm SDP:
optimiere
C•X
= ∑ cij · xij
i ,j
udN Ak • X
= ∑ ak ,ij · xij ≤ bk
∀k ,
i ,j
wobei X = (xij ) symmetrisch positiv semidefinit ist.
Beispiel: Siehe Tafel!
8
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Fakten zur semidefiniten
Programmierung
Gram: A ist genau dann symmetrisch positiv semidefinit, wenn es
eine m × n-Matrix B gibt mit B T · B = A.
Cholesky: Ist A positiv semidefinit und symmetrisch, kann die obige
Matrix B in Zeit O(n3 ) mittels Cholesky-Zerlegung berechnet werden.
9
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Fakten zur semidefiniten
Programmierung
Gram: A ist genau dann symmetrisch positiv semidefinit, wenn es
eine m × n-Matrix B gibt mit B T · B = A.
Cholesky: Ist A positiv semidefinit und symmetrisch, kann die obige
Matrix B in Zeit O(n3 ) mittels Cholesky-Zerlegung berechnet werden.
Diagonale: Sind alle Diagonaleinträge einer symmetrisch positiv
semidefiniten Matrix A gleich 1, sind die Spalten der zugehörigen
Matrix B Einheitsvektoren im Rn .
Komplexität: Semidefinite Optimierung kann in Zeit
O(poly(n, m, log( 1ε )) mit absoluter Güte ε für beliebiges ε > 0 gelöst
werden.
9
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Arithmetisierung von Max-Cut
Sei AG die Adjazenzmatrix des Graphen G.
Sei x der Indikatorvektor für eine Partition von G, d. h.
(
−1 falls vi ∈ V1
xi =
+1 falls vi ∈ V2
Zu Kante {vi , vj } ∈ E betrachte:
1
( 1 − xi xj ) =
2
Größe des Schnitts:
1
C (x ) =
∑
2 (1 − xi xj ) =
{vi ,vj }∈E
10
Henning Meyerhenke:
Kombinatorische Optimierung
(
1
2
1
0
{vi , vj } liegt im Schnitt
sonst.
∑ aij (1 − xi xj ).
i <j
Institut für Theoretische Informatik
Max-Cut als quadratisches
Optimierungsproblem
Q UADRATISCHES P ROGRAMM (QP) FÜR M AX -C UT:
maximiere
udN
11
Henning Meyerhenke:
Kombinatorische Optimierung
1
aij (1 − xi xj )
2 i∑
<j
xi ∈ {−1, +1}
(1)
∀i
(2)
Institut für Theoretische Informatik
Max-Cut als quadratisches
Optimierungsproblem
Q UADRATISCHES P ROGRAMM (QP) FÜR M AX -C UT:
maximiere
udN
1
aij (1 − xi xj )
2 i∑
<j
xi ∈ {−1, +1}
(1)
∀i
(2)
Bemerkung
Ganzzahligkeit der xi macht das QP schwer lösbar (N P -schwer).
11
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Max-Cut als quadratisches
Optimierungsproblem
Q UADRATISCHES P ROGRAMM (QP) FÜR M AX -C UT:
maximiere
udN
1
aij (1 − xi xj )
2 i∑
<j
xi ∈ {−1, +1}
(1)
∀i
(2)
Bemerkung
Ganzzahligkeit der xi macht das QP schwer lösbar (N P -schwer).
⇒ Relaxierung und schließlich Transformation in ein SDP.
11
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Relaxiertes QP
Ersetze zunächst binäre Variablen xi durch Vektoren xi0 mit n
Einträgen, davon ist der erste aus {-1, +1}, der Rest 0
Feststellung: xi0 hat Länge 1, ändert aber noch nichts an Komplexität
Relaxierung: Ersetze xi0 durch reelle Vektoren ui der Länge 1 (d. h.
ui · ui = 1).
12
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Relaxiertes QP
Ersetze zunächst binäre Variablen xi durch Vektoren xi0 mit n
Einträgen, davon ist der erste aus {-1, +1}, der Rest 0
Feststellung: xi0 hat Länge 1, ändert aber noch nichts an Komplexität
Relaxierung: Ersetze xi0 durch reelle Vektoren ui der Länge 1 (d. h.
ui · ui = 1).
Relaxiertes QP für Max-Cut
maximiere
udN
12
Henning Meyerhenke:
Kombinatorische Optimierung
1
aij (1 − ui · uj )
2 i∑
<j
(3)
ui ist Vektor der Länge 1
∀i
(4)
Institut für Theoretische Informatik
Umformulierung des relaxierten QP in
SDP
n2 neue Variablen yij mit yij = ui · uj , Y = (yij ).
Sei B die Matrix, deren Spalten die Vektoren ui sind.
Es gilt: Y = B T · B.
⇒ Y ist symm. pos. semidefinit, yii = 1.
13
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Umformulierung des relaxierten QP in
SDP
n2 neue Variablen yij mit yij = ui · uj , Y = (yij ).
Sei B die Matrix, deren Spalten die Vektoren ui sind.
Es gilt: Y = B T · B.
⇒ Y ist symm. pos. semidefinit, yii = 1.
Semidefinites Programm SD-Cut für Max-Cut
maximiere
udN
13
Henning Meyerhenke:
Kombinatorische Optimierung
1
aij (1 − yij )
2 i∑
<j
(5)
Y = (yij ) ist symmetrisch positiv semidefinit
yii = 1 ∀i
(6)
(7)
Institut für Theoretische Informatik
Lösung des relaxierten Problems
Wir lösen nun SD-C UT in polynomieller Zeit mit absolutem Fehler ε
(als bekannt vorausgesetzt).
(ε)
(ε)
⇒ Berechne yij mit 0 ≤ OPT( SD-C UT ) − 21 ∑ aij (1 − yij ) ≤ ε.
i <j
Abschätzung für später:
Da OPT(G ) ≤ OPT( SD-C UT ) (Relaxierung vergrößert Lösungsraum), folgt:
OPT( SD-C UT ) −
1
(ε)
aij (1 − yij ) ≤ ε
∑
2 i <j
(8)
1
(ε)
aij (1 − yij )
2 i∑
<j
(9)
⇒ OPT( SD-C UT ) − ε ≤
⇒ OPT(G ) − ε ≤
14
Henning Meyerhenke:
Kombinatorische Optimierung
1
(ε)
aij (1 − yij ).
2 i∑
<j
(10)
Institut für Theoretische Informatik
Rücktransformation in Max-Cut-Lösung
Anwendung von Fakten (Folie 9):
Cholesky-Zerlegung: Aus Y (ε) die Matrix B bestimmen.
Die Spalten von B sind die Vektoren ui .
Die ui sind Einheitsvektoren (wegen yii = 1).
15
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Rücktransformation in Max-Cut-Lösung
Anwendung von Fakten (Folie 9):
Cholesky-Zerlegung: Aus Y (ε) die Matrix B bestimmen.
Die Spalten von B sind die Vektoren ui .
Die ui sind Einheitsvektoren (wegen yii = 1).
Umwandlung der ui in Indikatorvariablen xi :
Teile Vektoren in zwei Mengen auf!
Idee: Bestimme zufällig den Normalenvektor r einer Trennebene
durch den Ursprung.
Vektoren werden je nach Lage bzgl. Trennebene in V1 oder V2 verteilt.
Fakt: Ist sgn(r · ui ) 6= sgn(r · uj ), liegen ui und uj auf verschiedenen
Seiten der Trennebene.
15
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Algorithmus SDP-M AX -C UT
16
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Algorithmus SDP-M AX -C UT
Theorem
Sei G = (V , E ) ein Graph mit mindestens einer Kante.
Für den Algorithmus M AX -C UT gilt: E[ M AX -C UT (G )] ≥ 0.878 · OPT(G ),
1
d. h. die erwartete relative Güte beträgt 0.878
≈ 1.139.
16
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Beweisbeginn
(
Für die Indikatorvariable zij =
1 falls {ui , uj } über den Schnitt geht,
0 sonst
ist E[zij ] = aij P[xi 6= xj ] und damit


E[ M AX -C UT (G )] = 
∑
{ui ,uj }∈E
=
zij  =
∑ aij E[zij ] = ∑ aij P[xi 6= xj ]
i <j
i <j
∑ aij P[sgn(r · ui ) 6= sgn(r · uj )].
i <j
Fakt: Alle Schnittgeraden mit der durch ui und uj aufgespannten Ebene
sind gleich wahrscheinlich.
u
≥ 0.87852(1−u ) .
Fakt: Für u ∈ [−1, +1] gilt: arccos
π
Weiter an der Tafel!
17
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Zusammenfassung
Max-Cut einfach mit relativer Güte 2 zu approximieren
Arithmetisierung führt zu quadratischem Programm für Max-Cut
Relaxierung auf SDP, Lösung als “Black Box"
18
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Zusammenfassung
Max-Cut einfach mit relativer Güte 2 zu approximieren
Arithmetisierung führt zu quadratischem Programm für Max-Cut
Relaxierung auf SDP, Lösung als “Black Box"
Rücktransformation: Entscheidung anhand von Lage zu zufälliger
Trennebene
1
Relative Güte von 0.878
≈ 1.139 rührt von Abschätzung des arccos
her, zugehöriger Winkel zwischen den Vektoren ui und uj
18
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Vorlesung 21
Programm:
Approximation des dünnsten Schnitts
19
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Inhalt
Approximation
Max-Cut
Der Algorithmus von Goemans und Williamson
Das Problem des dünnsten Schnitts
20
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Einführung
Definition (S PARSEST C UT)
Sei G = (V , E ) ein Graph mit n Knoten und m Kanten
Für eine nicht leere Menge S ⊂ V bezeichne (S , S ) die Menge der
Kanten von G, die genau einen Endknoten in S haben (Schnitt)
Ein dünnster Schnitt des Graphen G = (V , E ) hat die Größe
|E (S , S )|
|S |
S ⊆V ,|S |≤|V |/2
min
Das Berechnen des dünnsten Schnitts hat wichtige Anwendungen in
der Theorie: Divide-and-Conquer-Algorithmen
21
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Historie
Wie Probleme zuvor ist S PARSEST C UT N P -schwer zu optimieren.
Approximationen für S PARSEST C UT und eng verwandte Probleme:
Eigenvektor-basierte Ansätze mit Faktor-n-Approximation (Cheeger
’70, Alon ’85, Alon-Milman ’85)
O(log n)-Approximation mit LP (Mehrgüter-Flüsse) von Leighton und
Rao (’88)
√
Nun: Arora, Rao und Vazirani (’04, ’09): O( log n)-Approximation in
Polynomialzeit
Neuere Techniken existieren (schneller, aber nicht mit besserer Güte)
22
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Der ARV-Algorithmus
[Arora, Rao und Vazirani]
Kernidee: Einbettung der Knoten in einen abstrakten Raum, wobei die
Kanten nicht zu sehr gedehnt werden dürfen,
Partitionierung des Graphen durch Partitionierung des Raumes
23
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Der ARV-Algorithmus
[Arora, Rao und Vazirani]
Kernidee: Einbettung der Knoten in einen abstrakten Raum, wobei die
Kanten nicht zu sehr gedehnt werden dürfen,
Partitionierung des Graphen durch Partitionierung des Raumes
Vorgehensweise:
Wir konstruieren ein semidefinites Programm (SDP) für
S PARSEST C UT
Die Lösung des SDP weist jedem Knoten i einen Punkt xi auf der
Einheitskugel im Rn zu
Diese Lösung kann man als `22 -Metrik ansehen: d (i , j ) = kxi − xj k22
Ziel: Zuweisung finden, die die durchschnittliche Distanz zwischen
allen Knotenpaaren ”groß” macht, die durchschnittliche Distanz
zwischen adjazenten Knoten aber klein
Komplexität der Einbettung hängt von Metrik ab, für `1 und `2 N P -schwer,
daher verwenden wir die `22 -Norm
23
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Der ARV-Algorithmus
Vorgehensweise (Forts.)
Das Haupttheorem besagt, dass man unter gewissen
Voraussetzungen ein Paar von Teilmengen S , T ⊂ X eines
metrischen Raums X findet, so dass |S |, |T | = Ω(n) und
d (S , T ) = ∆ = Ω ( √
1
)
log n
√
⇒ Dann lässt sich d in `1 mit durchschnittlicher Verzerrung O( log n)
einbetten: Bilde jedes x ∈ X auf d (x , S ) ab
Hierdurch wird auf die Gerade R eingebettet
Wähle für d in X die quadratische Euklidische Norm `22
24
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Der ARV-Algorithmus
Vorgehensweise (Forts.)
Das Haupttheorem besagt, dass man unter gewissen
Voraussetzungen ein Paar von Teilmengen S , T ⊂ X eines
metrischen Raums X findet, so dass |S |, |T | = Ω(n) und
d (S , T ) = ∆ = Ω ( √
1
)
log n
√
⇒ Dann lässt sich d in `1 mit durchschnittlicher Verzerrung O( log n)
einbetten: Bilde jedes x ∈ X auf d (x , S ) ab
Hierdurch wird auf die Gerade R eingebettet
Wähle für d in X die quadratische Euklidische Norm `22
Beim anschließenden Runden macht man nicht ”zu viel falsch”
24
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Der ARV-Algorithmus
Vorgehensweise (Forts.)
Um das Theorem zu beweisen, gibt man einen randomisierten
Algorithmus mit zwei Phasen an, der die gewünschten Teilmengen S
und T findet
Phase 1: Wähle zufällig eine Hyperebene
und teile X in zwei
p
Punktmengen, die relativ weit (Θ(1/ log n)) von der Hyperebene
entfernt liegen, jeweils auf unterschiedlichen Seiten
Phase 2: Entferne wiederholt Paare von Punkten, die in den
verschiedenen
Hälften
liegen und einander zu nah sind
1
√
(näher als O
)
log n
25
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Der ARV-Algorithmus
Vorgehensweise (Forts.)
Um das Theorem zu beweisen, gibt man einen randomisierten
Algorithmus mit zwei Phasen an, der die gewünschten Teilmengen S
und T findet
Phase 1: Wähle zufällig eine Hyperebene
und teile X in zwei
p
Punktmengen, die relativ weit (Θ(1/ log n)) von der Hyperebene
entfernt liegen, jeweils auf unterschiedlichen Seiten
Phase 2: Entferne wiederholt Paare von Punkten, die in den
verschiedenen
Hälften
liegen und einander zu nah sind
1
√
(näher als O
)
log n
Man erhält so zwei Mengen, die weit genug auseinander liegen
Schwierigkeit: Zu zeigen, dass beide Mengen Ω(n) Punkte haben
25
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Modellierung von S PARSEST C UT
(
)
|E (S , S )|
n
SC (G ) = min
: S ∈ V , |S | ≤
|S |
2
)
(
∑ij ∈E d (i , j )
|E (S , S )|
η (G ) = min
=
d =δS
∑ i ,j d ( i , j )
|S ||S |
⇒ SC (G ) ≤ nη (G ) ≤ 2SC (G )
Mit Indikatorvektor x ergibt sich:
η (G ) =
min
xi ∈{−1,1}
∑ij ∈E (xi − xj )2
∑i ,j (xi − xj )2
Zur Erinnerung: ∑ij ∈E (xi − xj )2 = x T Lx
Klar: Optimierung von η (G ) ist N P -schwer
26
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Einheits-`22 -Repräsentation
Idee: Relaxierung mit Einheits-`22 -Repräsentation
Definition (`22 -Repräsentation)
Eine `22 -Repräsentation eines Graphen ist eine Zuweisung eines Punktes
(Vektors) an jeden Knoten, etwa xi an Knoten i, so dass für alle i , j , k die
Dreiecksungleichung gilt:
kxi − xj k2 + kxj − xk k2 ≥ kxi − xk k2
Eine `22 -Repräsentation heißt Einheits-`22 -Repräsentation, falls alle
Punkte auf der Einheitskugel liegen, d. h. Länge 1 haben.
27
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Relaxierung von S PARSEST C UT
Relaxierung der xi von ganzen Zahlen aus der Menge {−1, 1} zu
n-dimensionalen Einheitsvektoren:
η ∗ (G ) =
∑ij ∈E kxi − xj k2
2
xi ∈Rn ,kxi k2 =1 ∑i ,j kxi − xj k
min
Resultat: Semidefinites Programm (SDP):
1
kxi − xj k2
4 ij∑
∈E
min
xi ∈Rn
∀i
s.t .
∀i , j , k
∑ i <j
28
Henning Meyerhenke:
Kombinatorische Optimierung
(11)
kxi k2 = 1 (Vektoren der Länge 1)
2
2
kxi − xj k + kxj − xk k ≥ kxi − xk k
2
kxi − xj k ≥ 4c (1 − c )n
2
(12)
2
(13)
(14)
Institut für Theoretische Informatik
Relaxierung von S PARSEST C UT (Forts.)
Umformung in SDP∗ durch passende Skalierung:
min
∑ kxi − xj k2
(15)
kxi − xj k2 + kxj − xk k2 ≥ kxi − xk k2
(16)
ij ∈E
s .t . ∀ i , j , k
∑ i <j
2
kxi − xj k = 1
(17)
Durch die Dreiecksungleichungen werden die Lösungen auf
`22 -Metriken beschränkt
Durch die Länge 1 der gesuchten Vektoren (vorige Formulierung)
liegen diese auf der Einheitskugel
29
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Semidefinite Programmierung
Definition
Eine n × n-Matrix Y über R heißt genau dann positiv semidefinit, wenn
gilt: ∀x ∈ Rn : x T Yx ≥ 0.
Definition
S EMIDEFINITES P ROGRAMM SDP:
optimiere
C•Y
= ∑ cij · yij
i ,j
gemäß Ak • Y
= ∑ ak ,ij · yij ≤ bk
∀k ,
i ,j
wobei Y = (yij ) symmetrisch positiv semidefinit ist.
Semidefinite Optimierung kann in Zeit O(poly(n, m, log( 1ε )) mit absoluter
Güte ε für beliebiges ε > 0 gelöst werden.
30
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Fakten zur SDP
Y ist genau dann symmetrisch positiv semidefinit, wenn es eine
m × n-Matrix X gibt mit X T · X = Y .
Also: Yij = hxi , xj i
31
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Fakten zur SDP
Y ist genau dann symmetrisch positiv semidefinit, wenn es eine
m × n-Matrix X gibt mit X T · X = Y .
Also: Yij = hxi , xj i
Ist Y positiv semidefinit und symmetrisch, kann die obige Matrix X in
Zeit O(n3 ) mittels Cholesky-Zerlegung berechnet werden.
Sind alle Diagonaleinträge einer symmetrisch positiv semidefiniten
Matrix Y gleich 1, sind die Spalten der zugehörigen Matrix X
Einheitsvektoren im Rn .
Wir betrachten den SDP-Löser einfach als Black Box, der die
gewünschte Lösung in Polynomialzeit berechnet
31
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Zusammenhang zwischen Schnitt und
Lösung des SDP
Jeder Schnitt (S , S ) ergibt direkt eine offensichtliche
Einheits-`22 -Repräsentation:
Allen Knoten in S wird ein Einheitsvektor v0 zugewiesen
Allen Knoten in S wird der Vektor −v0 zugewiesen
32
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Zusammenhang zwischen Schnitt und
Lösung des SDP
Jeder Schnitt (S , S ) ergibt direkt eine offensichtliche
Einheits-`22 -Repräsentation:
Allen Knoten in S wird ein Einheitsvektor v0 zugewiesen
Allen Knoten in S wird der Vektor −v0 zugewiesen
⇒ Für diese Zuweisung sind die Werte von η (G ) und η ∗ (G ) gleich
Wichtige Beobachtung
Es gilt immer: η ∗ (G ) ≤ η (G )
Grund: Jede zulässige Lösung für S PARSEST C UT ist auch eine
zulässige Lösung für das SDP (Auffüllen des Vektors mit lauter Nullen)
Es gibt aber für das SDP noch mehr zulässige Lösungen – mit
potentiell niedrigeren Zielfunktionswerten
32
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Partitionierung von `22
Große separierte Mengen finden
Definition
Seien v1 , v2 , . . . , vn ∈ Rn und ∆ ≥ 0.
Zwei Mengen von Vektoren S und T heißen ∆-separiert, wenn für
jedes xi ∈ S , xj ∈ T gilt: kxi − xj k2 ≥ ∆.
Wir benötigen zwei ∆-separierte Mengen S , T linearer Größe, also
d`2 (S , T ) = min kxi − xj k2 ≥ ∆
2
i ∈ S ,j ∈ T
mit |S | = Ω(n) und |T | = Ω(n)
Wollen: ∆ = Ω((log n)−1/2 )
33
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Partitionierung von `22
Haupttheorem
Theorem (Haupttheorem)
Für jedes c > 0 gibt es c 0 , b > 0 derart, dass
jede Einheits-`22 -Repräsentation
mit ∑i <j kxi − xj k2 ≥ 4c (1 − c )n2 und n Punkten
∆-separierte Teilmengen
S , T der Größe c 0 n enthält,
√
wobei ∆ = b/ log n
Es gibt einen randomisierten Polynomialzeit-Algorithmus, der diese
Teilmengen S und T findet
Bemerkung: Der obige Wert für ∆ ist scharf.
Beispiel: Hypercube {−1, 1}d
34
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Der ARV-Algorithmus
Zur Erinnerung
Um das Theorem zu beweisen, gibt man einen randomisierten
Algorithmus mit zwei Phasen an, der die gewünschten Teilmengen S
und T findet
Phase 1: Wähle zufällig eine Hyperebene und teile X in zwei
Punktmengen S und T , die auf unterschiedlichen Seiten der
Hyperebene liegen
Phase 2: Entferne wiederholt Paare von Punkten, die in den
verschiedenen
Seiten
liegen und einander zu nah sind
1
(näher als O √log n )
35
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Transformation SDP → Schnitt
Approximationsfaktor
Sei W = ∑ij ∈E kxi − xj k2 der optimale Wert für das SDP∗ .
Wissen: W = η ∗ (G ) ≤ η (G )
Wieviel verlieren wir durch das Runden der Lösung?
36
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Transformation SDP → Schnitt
Approximationsfaktor
Sei W = ∑ij ∈E kxi − xj k2 der optimale Wert für das SDP∗ .
Wissen: W = η ∗ (G ) ≤ η (G )
Wieviel verlieren wir durch das Runden der Lösung?
Lemma
Es gibt einen randomisierten Polynomialzeit-Algorithmus,
der mit hoher Wkt. einen Schnitt findet, der
c 0 -balanciert ist und
√
Größe O(W log n) hat.
Definition
Ein Schnitt (S , S ) ist c 0 -balanciert, falls sowohl S als auch S mindestens
c 0 |V | Knoten haben.
36
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Beweis Approximationsfaktor
Beweis.
Der Algorithmus zum
√ Haupttheorem liefert ∆-separierte Mengen S
und T für ∆ = b/ log n
Bezeichne V0 die Knoten, deren Vektoren in S liegen
Assoziiere mit jeder Kante e = {i , j } eine Länge we = kxi − xj k2
Also: W = ∑e∈E we = ∑{i ,j }∈E kxi − xj k2
S und T sind mindestens ∆ voneinander entfernt (bzgl. dieser
Distanz)
37
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Beweis Approximationsfaktor (Forts.)
Beweis.
Bezeichne Vs die Knoten mit Distanz ≤ s von S
Wir erstellen einen Schnitt wie folgt:
Ziehe eine Zufallszahl r zwischen 0 und ∆
Gebe den Schnitt (Vr , V − Vr ) aus
Weil S ⊆ Vr und T ⊆ V − Vr , ist dies ein c 0 -balancierter Schnitt
38
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Beweis Approximationsfaktor (Forts.)
Beweis.
Bezeichne Vs die Knoten mit Distanz ≤ s von S
Wir erstellen einen Schnitt wie folgt:
Ziehe eine Zufallszahl r zwischen 0 und ∆
Gebe den Schnitt (Vr , V − Vr ) aus
Weil S ⊆ Vr und T ⊆ V − Vr , ist dies ein c 0 -balancierter Schnitt
Bezeichne Es die Menge der Kanten, die aus Vs herausführen
Weil |V0 | = |S | ≥ c 0 n: |Es | =
38
Henning Meyerhenke:
Kombinatorische Optimierung
|Es |
|V |
| Vs | s
≥
|Es | 0
cn
|Vs |
Institut für Theoretische Informatik
Beweis Approximationsfaktor (Forts.)
Beweis.
Wir wollen nun die Größe des Schnitts beschränken
Beitrag jeder Kante e = {i , j } zu Es im Intervall (s1 , s2 ),
s1 = d (i , V0 ), s2 = d (j , V0 )
Aus Dreiecksungleichung folgt: ks2 − s1 k ≤ we
39
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Beweis Approximationsfaktor (Forts.)
Beweis.
Wir wollen nun die Größe des Schnitts beschränken
Beitrag jeder Kante e = {i , j } zu Es im Intervall (s1 , s2 ),
s1 = d (i , V0 ), s2 = d (j , V0 )
Aus Dreiecksungleichung folgt: ks2 − s1 k ≤ we
R∆
W = ∑e we ≥ s =0 |Es |ds
Also: Der erwartete Wert von |Es | über dem Intervall [0, ∆] ist
höchstens W /∆
39
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Beweis Approximationsfaktor (Forts.)
Beweis.
Wir wollen nun die Größe des Schnitts beschränken
Beitrag jeder Kante e = {i , j } zu Es im Intervall (s1 , s2 ),
s1 = d (i , V0 ), s2 = d (j , V0 )
Aus Dreiecksungleichung folgt: ks2 − s1 k ≤ we
R∆
W = ∑e we ≥ s =0 |Es |ds
Also: Der erwartete Wert von |Es | über dem Intervall [0, ∆] ist
höchstens W /∆
⇒ Resultat: Der Algorithmus√berechnet daher einen Schnitt mit Größe
höchstens 2W /∆ = O(W log n) mit Wkt. mindestens 1/2
√
√
Schließlich: W = η ∗ (G ) ≤ η (G ) ⇒ W log n ≤ η (G ) log n
39
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Zusammenfassung ARV
Approximation von Graphzerlegungen
S PARSEST C UT ist strukturell eng verwandt mit anderen besprochenen
Problemstellungen
Relaxierung hier mit SDP statt mit Eigenvektorproblem
Komplexer in der Laufzeit, aber mit besserer Qualitätsschranke
ARV-Algorithmus ist wichtiger Beitrag zur Approximation von
Partitionierungsproblemen
Aus Zeitgründen in der Vorlesung nicht vollständig
Neue Ergebnisse: Gleiche Schranke bei besserer Laufzeit
Literaturhinweis
Sanjeev Arora, Satish Rao, Umesh V. Vazirani: Expander flows,
geometric embeddings and graph partitioning. J. ACM 56(2): (2009)
40
Henning Meyerhenke:
Kombinatorische Optimierung
Institut für Theoretische Informatik
Herunterladen