Das Steiner Baum Problem

Werbung
Geschichtliches
Jacob Steiner, Universität Berlin, frühes 19tes Jahrhundert:
Das Steiner Baum
Problem
A-Dorf
René Weiskircher
Geschichtliches
„
Erste belegte Erwähnung:
… Pierre
Fermat (frühes 17. Jhd.): isogonisches
Zentrum eines Dreieckes
„
Erste belegte Lösung:
… Evangelista
Torricelli (ca. 1640)
Torricelli Punkt im Viereck
• Torricelli Punkt ist
Schnittpunkt der
Diagonalen
B-Dorf
Verbinde Dörfer durch
Straßensystem mit
minimaler
Gesamtlänge
Optimale Lösung
durch Hinzufügen
eines 4ten Punktes
C-Dorf
Position?
Torricelli Punkt im Dreieck
• Ist ein Winkel
mindestens 120 Grad,
ist die entsprechende
Ecke Lösung
• Sonst findet man
Punkt durch Aufbau
von gleichseitigen
Dreiecken auf SeitenTorricelli Punkt ist
dann Schnittpunkt der
Umkreise
Geometrisches Steiner Baum
Problem
Verallgemeinerung des Torricelli Problems
Gegeben n Punkte p1,…,pn
„ Verbinde alle Punkte so dass:
„
„
… Jeder
Punkt von jedem anderen erreichbar
… Gesamtlänge aller Verbindungen minimal
1
Steiner Baum Problem in
Netzwerken
Beispiel
Beispiel
Beispielanwendung
Beispielanwendung
Beispielanwendung
2
Spezialfälle
„
Komplexität
|K|=2:
„
… Shortest
Path Problem
… Lösung z.B. mit Dijkstra Algorithmus
„
Formulierung des Steiner Baum Problems
als Entscheidungsproblem:
K=V:
… Minimum
Spanning Tree Problem
… Lösung z.B. mit Prim oder Kruskal
Komplexität
„
Transformation
3SAT: NP-vollständiges Problem
Literal
Transformation
Klausel
Transformation
3
Komplexität
Exakte Algorithmen
Steiner Baum Problem ist NP-vollständig
„ Auch auf planaren Graphen bleibt das
Problem NP-vollständig (Beweis
schwieriger)
„ Exakte Algorithmen haben im Allgemeinen
exponentielle Laufzeit
„ Heuristiken?
„
„
Es gibt für einen endlichen Graphen nur
endlich viele mögliche Lösungen
„ Man kann das Problem exakt lösen, indem
man alle möglichen Lösungen aufzählt
„ Eine Lösung ist eine Teilmenge der
Kanten
„ Wie viele Mengen müssen wir aufzählen?
Dreyfus Wagner Algorithmus
„
„
Dynamische Programmierung
Berechnet minimalen Steinerbaum für K
aus minimalen Steinerbäumen für alle
Teilmengen von K
… Berechne
minimale Steinerbäume für alle 2elementigen Teilmengen
… Berechne daraus minimale Bäume für alle 3elementigen Teilmengen
… usw.
4
X’
X\X’
v
X
5
Herunterladen