Das Problem des minimalen Steiner-Baumes

Ähnliche Dokumente
Algorithmische Methoden für schwere Optimierungsprobleme

Seminar. Das Steinerbaumproblem

Betriebswirtschaftliche Optimierung

Betriebliche Optimierung

Das Steinerbaumproblem

Approximationsalgorithmen

Rundreiseproblem und Stabilität von Approximationsalg.

Layout-Synthese - Globale Verdrahtung Peter Marwedel

Kombinatorische Optimierung

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016

Übung 2 Algorithmen II

Algorithmen II Vorlesung am

Approximationsalgorithmen

Theoretische Informatik 1

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

Vorlesung Theoretische Informatik (Info III)

ADS: Algorithmen und Datenstrukturen 2

Theoretische Grundlagen der Informatik

Theoretische Informatik 1

Datenstrukturen und Algorithmen (SS 2013)

ADS: Algorithmen und Datenstrukturen 2

Algorithmentechnik - U bung 3 4. Sitzung Tanja Hartmann 03. Dezember 2009

Grundlagen: Algorithmen und Datenstrukturen

Optimale Lösungen mit Greedy-Strategie erfordern Optimalität der Greedy-Wahl. Beispiele für optimale Greedy-Lösungen

WS 2013/14. Diskrete Strukturen

Algorithmische Methoden zur Netzwerkanalyse

\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E.

Minimal spannende Bäume

Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume)

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1

Datenstrukturen und Algorithmen

Kap. 6.5: Minimale Spannbäume

Algorithmen II Vorlesung am

Kapitel IV Minimale Spannbäume

1.Aufgabe: Minimal aufspannender Baum

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn

Einführung in das Seminar Algorithmentechnik

Effizienter Planaritätstest Vorlesung am

Algorithmische Graphentheorie

Theoretische Grundlagen der Informatik

Algorithmen für Planare Graphen

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

3. Minimale Spannbäume. Definition 99 T heißt minimaler Spannbaum (MSB, MST) von G, falls T Spannbaum von G ist und gilt:

Maximum and Minimum Satisfiability Problem

Approximationsschemata

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

ADS: Algorithmen und Datenstrukturen 2

1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2005/2006

Algorithmische Graphentheorie

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.

Informatik II, SS 2016

SCHNITTERHALTUNG (SPEKTRALE APPROXIMATION)

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Maximale s t-flüsse in Planaren Graphen

Übungsblatt 2 - Lösung

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Grundbegriffe der Informatik Tutorium 8

3 Klassifikation wichtiger Optimierungsprobleme

Steiner Bäume. Dipl.-Math. Maria Kandyba Lehrstuhl für Algorithm Engineering, LS VO 15. Januar 2007

Algorithmen I - Tutorium 28 Nr. 11

Algorithmen für Routenplanung 2. Sitzung, Sommersemester 2010 Thomas Pajor 26. April 2010

Einführung in Berechenbarkeit, Komplexität und Formale Sprachen

Informatik II: Algorithmen & Datenstrukturen. Blättern Sie nicht um bevor Sie dazu aufgefordert werden!

Algorithmen II Vorlesung am

Algorithmen und Datenstrukturen 1 VL Übungstest SS Juni 2009

Algorithmen und Datenstrukturen 2-1. Seminar -

Approximation mit relativer Gütegarantie Überblick und einführende Beispiele

Seien u, v V, u v. Da G zusammenhängend ist, muss mindestens ein Pfad zwischen u und v existieren.

Vorlesung Datenstrukturen

Informatik II, SS 2014

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering

Algorithmische Graphentheorie

Seminar Algorithmentechnik

Vorlesung Datenstrukturen

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Kapitel 9: Lineare Programmierung Gliederung

Graphalgorithmen Netzwerkalgorithmen. Laufzeit

Informatik II, SS 2014

Bipartites Matching. Gegeben: Ein bipartiter, ungerichteter Graph (V 1, V 2, E). Gesucht: Ein Matching (Paarung) maximaler Kardinalität.

12. Flächenrekonstruktion aus 3D-Punktwolken und generalisierte Voronoi-Diagramme

Approximationsalgorithmen. 19. Dezember / 28

Mustererkennung: Graphentheorie

Das Rundreiseproblem und Stabilität von Approximationsalgorithmen

Algorithmische Methoden zur Netzwerkanalyse

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2016/2017

Betriebswirtschaftliche Optimierung

3. Musterlösung. Problem 1: Boruvka MST

Betriebliche Optimierung

Algorithmische Methoden zur Netzwerkanalyse

Laufzeit. Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode.

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Datenstrukturen und Algorithmen SS07

Seminar im WS 2006/07 Zerlegen und Clustern von Graphen. Correlation Clustering Minimizing Disagreements on Arbitrary Weighted Graphs

Effiziente Algorithmen I

2. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2006/ April 2007

Transkript:

Das Problem des minimalen Steiner-Baumes Ein polynomieller Approximationsalgorithmus Benedikt Wagner 4.05.208 INSTITUT FU R THEORETISCHE INFORMATIK, LEHRSTUHL ALGORITHMIK KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft www.kit.edu

Gliederung Problemstellung Motivation Formale Definition Beispiele 2 Andere Arbeiten 3 Approximationsalgorithmus Definition des Algorithmus von Kou, Markowsky und Berman 4 Analyse Laufzeit Relative Gütegarantie 5 Zusammenfassung Benedikt Wagner Steiner-Baum-Approximation 4.05.208 2/27

Motivation Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Motivation 3 2 2 0 2 3 6 8 2 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 4/27

Definition Steiner-Baum-Problem Gegeben: Ungerichteter gewichteter zusammenhängender Graph G = (V, E, d), E {{u, v} V V u v}, d : E R + 0 Steinerpunkte S V Gesucht: Baum T = (V, E ) sodass v S v V (Steinerbaum) wobei d(e) minimal e E Das Steiner-Baum-Problem ist N P-schwer Benedikt Wagner Steiner-Baum-Approximation 4.05.208 5/27

Definition Steiner-Baum-Problem Gegeben: Ungerichteter gewichteter zusammenhängender Graph G = (V, E, d), E {{u, v} V V u v}, d : E R + 0 Steinerpunkte S V Gesucht: Baum T = (V, E ) sodass v S v V (Steinerbaum) wobei d(e) minimal e E Das Steiner-Baum-Problem ist N P-schwer Benedikt Wagner Steiner-Baum-Approximation 4.05.208 5/27

Beispiele 2 3 2 Minimaler Spannbaum entspricht nicht dem minimalen Steinerbaum 2 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 6/27

Beispiele 2 3 2 Minimaler Spannbaum entspricht nicht dem minimalen Steinerbaum 2 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 6/27

Beispiele 7 2 2 Knoten, die nicht markiert sind, können nicht einfach entfernt werden 5 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 7/27

Beispiele 7 2 2 Knoten, die nicht markiert sind, können nicht einfach entfernt werden 5 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 7/27

Andere Arbeiten eines von Karps 2 N P-vollständigen Problemen [Kar72] diverse Approximationsalgorithmen z.b. [Meh88] [RZ00] Gröpl, Hougardy, Nierhoff, Prömel zeigen: P N P es gibt kein PTAS für das Steinerbaumproblem [GHNP73] Benedikt Wagner Steiner-Baum-Approximation 4.05.208 8/27

aus [Kar72] Benedikt Wagner Steiner-Baum-Approximation 4.05.208 9/27

EXACT-COVER Gegeben: Endliche Menge M = {u,... u n }, Teilmengen X = {S,..., S m } Gefragt: Gibt es eine Auswahl {S i, S j,..., S k } X, sodass S i, S j,..., S k disjunkt S X S = M Benedikt Wagner Steiner-Baum-Approximation 4.05.208 0/27

EXACT-COVER Gegeben: Endliche Menge M = {u,... u n }, Teilmengen X = {S,..., S m } Gefragt: Gibt es eine Auswahl {S i, S j,..., S k } X, sodass S i, S j,..., S k disjunkt S X S = M Benedikt Wagner Steiner-Baum-Approximation 4.05.208 0/27

EXACT-COVER K STEINER TREE S 0 u Gegeben: M = {u,... u n }, m Teilmengen S i M EXACT-COVER Instanz ist Ja- Instanz Graph hat Steinerbaum mit Gewicht kleiner gleich k v 0 js j js m j k = n S m 0 u n Benedikt Wagner Steiner-Baum-Approximation 4.05.208 /27

Der Approximationsalgorithmus von Kou, Markowsky und Berman Benedikt Wagner Steiner-Baum-Approximation 4.05.208 2/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) v 2 0 v 7 8 v v 8 0.5 v 6 0.5 2 G 2 v9 v 5 9 v 4 v 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) v 2 0 v 7 8 v v 8 0.5 v 6 0.5 2 G 2 v9 v 5 9 v 4 v 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) v v 4 4 4 4 4 G 4 4 v 2 v 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) T v 4 v 4 4 4 v 2 v 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V v G S Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) v 2 v 7 v 8 0.5 v 6 0.5 2 2 v9 v 5 v 3 v 4 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V v T S Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) v 2 v 7 v 8 0.5 v 6 0.5 2 2 v9 v 5 v 3 v 4 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V v T H Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) v 2 v 6 2 2 v 9 v 5 v 3 v 4 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) 3 3 3 3 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) 3 3 3 3 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) 3 3 3 3 3 3 3 3 3 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) 3 3 3 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) 3 3 3 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) 3 3 3 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) 3 3 3 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Der Approximationsalgorithmus [KMB8] Eingabe: G = (V, E, d), S V Vollständiger Graph G = (S, E, d ) d ({u, v}) = d(shortestpath(g, u, v)) 2 T MST (G ) 3 Packe kürzeste Wege in T aus erhalte G S 4 T S MST (G S ) 5 T H T S ohne unnötige Zweige Ausgabe: T H (wobei MST (G) einen minimalen Spannbaum in G berechnet) 3 3 3 3 3 Benedikt Wagner Steiner-Baum-Approximation 4.05.208 3/27

Worst-Case Laufzeit im RAM-Modell Konstruktion von G aus kürzesten Wegen: O( S V 2 ) 2 Minimaler Spannbaum in G : O( S 2 ) 3 Konstruktion von G S : O( V 2 ) 4 Minimaler Spannbaum in G S : O( V 2 ) 5 Unnötige Blätter entfernen: O( V ) Gesamt: O( S V 2 ) Benedikt Wagner Steiner-Baum-Approximation 4.05.208 4/27

Laufzeit von Schritt 3 Schritt 3: Konstruiere aus T S den Graphen G S Kanten durch kürzeste Wege ersetzen Step 3 could be done in O( V ) time [KMB8] Benedikt Wagner Steiner-Baum-Approximation 4.05.208 5/27

Laufzeit von Schritt 3 Schritt 3: Konstruiere aus T S den Graphen G S Kanten durch kürzeste Wege ersetzen Step 3 could be done in O( V ) time [KMB8] 0 0 0 0 0 0 0 0 Kantengewichte dürfen 0 sein Wahl der kürzesten Wege ist beliebig Benedikt Wagner Steiner-Baum-Approximation 4.05.208 5/27

Notation T H : Steinerbaum, erzeugt vom Approximationsalgorithmus [KMB8] D H : Summe der Kantengewichte in T H T MIN : minimaler Steinerbaum D MIN : Summe der Kantengewichte in T MIN b: Anzahl der Blätter in T MIN d(p): Länge eines einfachen Pfades/Zyklus P Benedikt Wagner Steiner-Baum-Approximation 4.05.208 6/27

Relative Gütegarantie Theorem Sei mit G = (V, E, d) und S eine beliebige Eingabe für den Algorithmus [KMB8] gegeben. Dann gilt: D H /D MIN 2( b ) Benedikt Wagner Steiner-Baum-Approximation 4.05.208 7/27

Baumtraversierung Lemma Sei T ein Baum mit m Kanten. Dann gibt es einen Zyklus C = (u 0,...u 2m ) in T wobei gilt: i jede Kante aus T kommt genau zwei mal in C vor ii jedes Blatt aus T kommt genau einmal in C vor iii wenn u i und u j Blätter in C sind und kein anderes Blatt dazwischen ist, ist (u i, u i+,..., u j ) ein einfacher Pfad. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 8/27

Baumtraversierung - Beweis des Lemmas Beweis. (Induktion über m) I.A. m = und T ist ein Baum T besteht aus zwei Knoten V = {u, v} C = (u, v, u) leistet i, ii, iii (u Wurzel) u v Benedikt Wagner Steiner-Baum-Approximation 4.05.208 9/27

Baumtraversierung - Beweis des Lemmas I.V. Es gelte die Behauptung für m = k I.S. Sei m = k +. Sei v p ein Blatt. Wende auf I.V. auf G v p := (V \ {v p }, {e E v p / e}) an Zyklus C = (u 0,..., u 2k ), der i, ii, iii in G v p erfüllt. Sei v q der Elternknoten von v p. Dann ersetze in C das erste v q durch v q, v p, v q. I.S. I.V. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 20/27

Baumtraversierung - Beweis des Lemmas I.V. Es gelte die Behauptung für m = k I.S. Sei m = k +. Sei v p ein Blatt. Wende auf I.V. auf G v p := (V \ {v p }, {e E v p / e}) an Zyklus C = (u 0,..., u 2k ), der i, ii, iii in G v p erfüllt. Sei v q der Elternknoten von v p. Dann ersetze in C das erste v q durch v q, v p, v q. I.S. v p I.V. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 20/27

Baumtraversierung - Beweis des Lemmas I.V. Es gelte die Behauptung für m = k I.S. Sei m = k +. Sei v p ein Blatt. Wende auf I.V. auf G v p := (V \ {v p }, {e E v p / e}) an Zyklus C = (u 0,..., u 2k ), der i, ii, iii in G v p erfüllt. Sei v q der Elternknoten von v p. Dann ersetze in C das erste v q durch v q, v p, v q. I.S. v q v p I.V. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 20/27

Relative Gütegarantie - Beweis Theorem Sei mit G = (V, E, d) und S eine beliebige Eingabe für den Algorithmus [KMB8] gegeben. Dann gilt: D H /D MIN 2( b ) Beweis. Wende Lemma auf T MIN an liefert Zyklus L in T MIN mit i jede Kante von T MIN genau zweimal in L d(l) = 2 D MIN ii jedes Blatt aus T MIN genau einmal in L iii wenn u i und u j Blätter in L sind und kein anderes Blatt dazwischen ist, ist (u i, u i+,..., u j ) ein einfacher Pfad. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 2/27

Relative Gütegarantie - Beweis Theorem Sei mit G = (V, E, d) und S eine beliebige Eingabe für den Algorithmus [KMB8] gegeben. Dann gilt: D H /D MIN 2( b ) Beweis. Wende Lemma auf T MIN an liefert Zyklus L in T MIN mit i jede Kante von T MIN genau zweimal in L d(l) = 2 D MIN ii jedes Blatt aus T MIN genau einmal in L iii wenn u i und u j Blätter in L sind und kein anderes Blatt dazwischen ist, ist (u i, u i+,..., u j ) ein einfacher Pfad. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 2/27

Relative Gütegarantie - Beweis Seien P,..., P b die Pfade, die die Blätter verbinden. Sei P MAX := argmax b i= d(p i) d(p MAX ) b d(l) Sei P := L P MAX der Zyklus L ohne Kanten aus P MAX d(p) ( b )d(l) = ( b ) 2 D MIN d(p) 2 ( b ) D MIN () Benedikt Wagner Steiner-Baum-Approximation 4.05.208 22/27

Relative Gütegarantie - Beweis d(p) 2 ( b ) D MIN () D H d(mst (G )) (Schritte 3-5 verlängern die Distanz nicht) v v 4 4 4 Seien w, w 2,... w k die Steinerpunkte, in dieser Reihenfolge in P vorkommend v 2 4 v 3 Sei T ein Spannbaum in G, der genau {w, w 2 },... {w k, w k } enthält. d(mst (G )) d(t ) Jede Kante aus T MIN mindestens einmal in P d(t ) d(p) Es folgt: D H d(p) (2) (),(2) Beh. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 23/27

Relative Gütegarantie - Beweis d(p) 2 ( b ) D MIN () D H d(mst (G )) (Schritte 3-5 verlängern die Distanz nicht) v v 4 4 4 Seien w, w 2,... w k die Steinerpunkte, in dieser Reihenfolge in P vorkommend v 2 4 v 3 Sei T ein Spannbaum in G, der genau {w, w 2 },... {w k, w k } enthält. d(mst (G )) d(t ) Jede Kante aus T MIN mindestens einmal in P d(t ) d(p) Es folgt: D H d(p) (2) (),(2) Beh. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 23/27

Relative Gütegarantie - Beweis d(p) 2 ( b ) D MIN () D H d(mst (G )) (Schritte 3-5 verlängern die Distanz nicht) v v 4 4 4 Seien w, w 2,... w k die Steinerpunkte, in dieser Reihenfolge in P vorkommend v 2 4 v 3 Sei T ein Spannbaum in G, der genau {w, w 2 },... {w k, w k } enthält. d(mst (G )) d(t ) Jede Kante aus T MIN mindestens einmal in P d(t ) d(p) Es folgt: D H d(p) (2) (),(2) Beh. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 23/27

Die Schranke ist scharf Theorem Sei b 2. Dann gibt es einen Graphen G = (V, E, d) und Steinerpunkte S V sodass T MIN b Blätter hat und im Worst-Case D H /D MIN = 2( b ) Beweis. Für b 2 betrachte: 2 2 b Knoten Benedikt Wagner Steiner-Baum-Approximation 4.05.208 24/27

vollständiger Graph { G := (V, E, d) V := {v, v 2,..., v b+ }, v i = v b+ v j = v b+ d({v i, v j }) =, S := V \ {v b+ } 2, sonst 2 2 b Knoten Benedikt Wagner Steiner-Baum-Approximation 4.05.208 25/27

vollständiger Graph { G := (V, E, d) V := {v, v 2,..., v b+ }, v i = v b+ v j = v b+ d({v i, v j }) =, S := V \ {v b+ } 2, sonst Optimaler Steinerbaum T MIN 2 2 b Knoten Benedikt Wagner Steiner-Baum-Approximation 4.05.208 25/27

vollständiger Graph { G := (V, E, d) V := {v, v 2,..., v b+ }, v i = v b+ v j = v b+ d({v i, v j }) =, S := V \ {v b+ } 2, sonst Steinerbaum T H 2 2 b Knoten D MIN = b und D H = 2(b ) D H /D MIN = 2(b )/b = 2( b ) Benedikt Wagner Steiner-Baum-Approximation 4.05.208 25/27

Zusammenfassung 3 2 2 0 2 3 6 8 2 Steiner-Baum-Problem ist N P-schwer Algorithmus, der Shortest Path und Mininum Spanning Tree nutzt Laufzeit: O( S V 2 ) Garantie: D H /D MIN 2( ) b Benedikt Wagner Steiner-Baum-Approximation 4.05.208 26/27

References I Clemens Gröpl, Stefan Hougardy, Till Nierhoff, and Hans Jürgen Prömel. Lower bounds for approximation algorithms for the steiner tree problem. Lecture Notes in Computer Science, page 27, 973. Richard M. Karp. Reducibility Among Combinatorial Problems. R. E. Miller und J. W. Thatcher (Hrsg.): Complexity of Computer Computations, pages 85 03, 972. L. Kou, G. Markowsky, and L. Berman. A Fast Algorithm for Steiner Trees. Acta Informatica, 5(2):4 45, Jun 98. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 27/27

References II K. Mehlhorn. A faster approximation algorithm for the steiner problem in graphs. Information Processing Letters, pages 25 28, 988. G. Robins and A. Zelikovsky. Improved steiner tree approximation in graphs. Proceedings of the Eleventh Annual ACM-SIAM Symposium on Discrete Algorithms., pages 770 779, 2000. Benedikt Wagner Steiner-Baum-Approximation 4.05.208 28/27