05.11.2012 Aufrufe

Kombinatorische Optimierung Approximation und Randomisierung ...

Kombinatorische Optimierung Approximation und Randomisierung ...

Kombinatorische Optimierung Approximation und Randomisierung ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Handouts zur VL vom 06.05.2009 Stand dieser Sammlung: 17. Juli 2009<br />

Algorithmus 2.2.3 (KMB-Algorithmus).<br />

Eingabe: G = (V, E), T ⊆ V , c : E → R≥0<br />

Ausgabe: Steinerbaum B = (V (B), E(B))<br />

1: Berechne GT <strong>und</strong> ℓT (Distanzgraph mit Längenfunktion für T ), merke Dir dabei<br />

die kürzesten Wege zwischen Knotenpaaren aus T .<br />

2: Bestimme einen minimal spannenden Baum BT in GT .<br />

3: Transformiere BT in einen Subgraphen GS von G durch Ersetzen der Kanten von<br />

BT durch einen entsprechenden kürzesten Weg in G.<br />

4: Bestimme einen minimal spannenden Baum BS für GS.<br />

5: Erzeuge aus BS einen Steinerbaum B für T , indem sukzessive Kanten gelöscht<br />

werden, die zu den Blättern gehören, die keine Terminale sind.<br />

6: Gib B aus.<br />

Satz 2.2.5 (Korrigierte Fassung). Sei (G, T, c) eine Steinerbaum-Instanz, BOPT ein<br />

optimaler Steinerbaum <strong>und</strong> b die Anzahl der Blätter von BOPT. Der KMB-Algorithmus<br />

2.2.3 terminiert auf (G, T, c) erfolgreich in O(|T |n 2 ) Schritten. Für den berechneten<br />

Steinerbaum BKMB gilt<br />

�<br />

c(BKMB) ≤ 2 · 1 − 1<br />

�<br />

b<br />

· c(BOPT) klar<br />

≤ 2 · c(BOPT).<br />

Dass der Algorithmus 2.2.3 erfolgreich <strong>und</strong> mit der geforderten Laufzeit terminiert,<br />

haben wir in der VL besprochen. Die Güteschranke folgt aus dem folgenden Lemma:<br />

Lemma 2.2.6. Sei (G, T, c) eine Steinerbaum-Instanz <strong>und</strong> seien BOPT <strong>und</strong> b wie in<br />

Satz 2.2.5. Weiter sei BT ein MST in GT (vgl. KMB-Algorithmus 2.2.3). Dann gilt<br />

Beweis (korrigierte Fassung):<br />

c(BKMB) o.k.<br />

≤ ℓT (BT ) z.z.!<br />

�<br />

≤ 2 ·<br />

1 − 1<br />

b<br />

�<br />

· c(BOPT).<br />

– Betrachte in G eine Tour (einen geschlossenen Weg) R, der BOPT einmal „umläuft“<br />

<strong>und</strong> in einem Blatt startet (siehe rote Tour im Bild; Terminale sind als Quadrate<br />

dargestellt).<br />

Offenbar gilt<br />

c(R) = 2 · c(BOPT). (∗)<br />

B. Langfeld, A. Srivstav: <strong>Kombinatorische</strong> <strong>Optimierung</strong> (CAU, SoSe 2009) 10

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!