Betriebswirtschaftliche Optimierung

Ähnliche Dokumente
Betriebliche Optimierung

Theoretische Informatik 1

Theoretische Informatik 1

Algorithmische Graphentheorie

3 Klassifikation wichtiger Optimierungsprobleme

Algorithmische Graphentheorie

Graphentheorie. Kardinalitätsmatchings. Kardinalitätsmatchings. Kardinalitätsmatchings. Rainer Schrader. 11. Dezember 2007

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem

Bemerkung: Der vollständige Graph K n hat n(n 1)

Bäume und Wälder. Definition 1

1.Aufgabe: Minimal aufspannender Baum

Ü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

Bäume und Wälder. Definition 1

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

Kombinatorische Optimierung

Algorithmische Graphentheorie

\ 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.

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008

Nachbarschaft, Grad, regulär, Inzidenz

9 Minimum Spanning Trees

Datenstrukturen und Algorithmen

Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist:

Minimal spannender Baum

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza)

Kapitel IV Minimale Spannbäume

Algorithmische Methoden für schwere Optimierungsprobleme

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

Übung zur Vorlesung Diskrete Strukturen I

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

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Mayr)

Richtig oder falsch? Richtig oder falsch? Richtig oder falsch? Mit dynamischer Programmierung ist das Knapsack- Problem in Polynomialzeit lösbar.

Übung 2 Algorithmen II

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

Algorithmen für Planare Graphen

Das Problem des minimalen Steiner-Baumes

Datenstrukturen und Algorithmen (SS 2013)

Übung zur Vorlesung Diskrete Strukturen I

3. Musterlösung. Problem 1: Boruvka MST

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Zentralübung zur Vorlesung Diskrete Strukturen

Diskrete Mathematik 1 WS 2008/09

Vorlesung Datenstrukturen

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Lösungen zu Kapitel 5

Approximierbarkeit. Definition. Ein Optimierungsproblem P ist gegeben durch ein Quadrupel. P = (I, Sol, m, goal), wobei:

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

durch Einfügen von Knoten konstruiert werden kann.

Rundreiseproblem und Stabilität von Approximationsalg.

6. Übung zur Linearen Optimierung SS08

Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,...

Das Steinerbaumproblem

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008

Literatur für diese VO. Überblick. Kap. 5: Approximationsalgorithmen für kombinatorische Optimierungsprobleme

3.2 Generischer minimaler Spannbaum-Algorithmus

Das Heiratsproblem. Definition Matching

Proseminar Graphentheorie Vortrag 3 Matching. Inhalt: 1. Grundlagen 2. Matchings in bipatiten Graphen 3. Matchings in allgemeinen Graphen

Diskrete Mathematik Graphentheorie (Übersicht)

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Freie Bäume und Wälder

Kap. 5: Approximationsalgorithmen für kombinatorische Optimierungsprobleme

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

KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN

5. Bäume und Minimalgerüste

Graphen. Definitionen

Algorithmen II Vorlesung am

Informatik II, SS 2014

4. Kreis- und Wegeprobleme

Betriebliche Optimierung

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

= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2

Betriebswirtschaftliche Optimierung

Algorithmen und Datenstrukturen 2-1. Seminar -

Euler und Hamiltonkreise

Algorithmen & Komplexität

ADS: Algorithmen und Datenstrukturen 2

Das EM-Modell. Vorlesung 3: Lubys Algorithmus. Graphenalgorithmen und lineare Algebra Hand in Hand

Das Briefträgerproblem

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

Näherungsalgorithmen (Approximationsalgorithmen) WiSe 2008/09 in Trier. Henning Fernau Universität Trier

Diskrete Mathematik. Sebastian Iwanowski FH Wedel. Kap. 6: Graphentheorie

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.

Naiver Algorithmus für Hamiltonkreis

Bipartite Graphen. Beispiele

Kapitel IV Minimale Spannbäume

Algorithmische Graphentheorie

Graphalgorithmen II. Werner Sembach Werner Sembach Graphalgorithmen II / 22

Minimal spannende Bäume

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

ADS: Algorithmen und Datenstrukturen 2

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

8. Übung Algorithmen I

Minimale Spannbäume. Evangelia Tsiouprou. LMU Proseminar Computer Unplugged WS 2004/05

Graphen. Leonhard Euler ( )

Bemerkung: Es gibt Algorithmen für minimale Spannbäume der Komplexität O(m + n log n) und, für dünnbesetzte Graphen, der Komplexität O(m log n), wobei

Überblick. Kap. 1.4: Minimum Weight Perfect Matching. 1.3 Blüten-Schrumpf Algorithmus für Maximum Matching

Lösungsskizzen zu den Klausuraufgaben zum Kurs 1142 Algorithmische Mathematik

WS 2009/10. Diskrete Strukturen

Transkript:

Institut für Statistik und OR Uni Graz

1 Approximationsalgorithmen auf metrischen Instanzen

Minimum Spanning Tree Definition (Spannbaum) Ein Spannbaum in einem Graphen G = (V,E) ist ein kreisfreier Teilgraph T = (V,E ) mit n 1 Kanten ( E = V 1).

Minimum Spanning Tree Definition (Spannbaum) Ein Spannbaum in einem Graphen G = (V,E) ist ein kreisfreier Teilgraph T = (V,E ) mit n 1 Kanten ( E = V 1). Definition (Minimum Spanning Tree) Ein minimaler Spannbaum in einem gewichteten Graphen G = (V,E) mit Kantengewichten w e ist ein Spannbaum T = (V,E ) mit minimaler Kantengewichtssumme w(t ) := e E w e. Anwendungen Zentrales Problem der Netzwerkplanung: n Orte werden möglichst kostengünstig an einen Versorger angeschlossen. Basis für Klasse von Approximationsalgorithmen für TSP

Approximationsalgorithmen auf metrischen Instanzen Minimum Spanning Tree

MST Algorithmus Definition (Inzident / Adjazent) Zwei Kanten sind zueinander inzident, falls sie einen gemeinsamen Knoten als Endpunkt haben. Zwei Knoten u und v sind adjazent falls (u,v) E. Eine Kante und ein Knoten sind zueinander inzident, falls der Knoten Endpunkt der Kante ist.

MST Algorithmus Definition (Inzident / Adjazent) Zwei Kanten sind zueinander inzident, falls sie einen gemeinsamen Knoten als Endpunkt haben. Zwei Knoten u und v sind adjazent falls (u,v) E. Eine Kante und ein Knoten sind zueinander inzident, falls der Knoten Endpunkt der Kante ist. Algorithmus von Prim Starte mit T =. Wähle Kante e mit minimalem Gewicht in G. a) T = T e b) Wähle jene Kante e in G die inzident zu einer Kante aus T ist und folgende Punkte erfüllt:

MST Algorithmus Definition (Inzident / Adjazent) Zwei Kanten sind zueinander inzident, falls sie einen gemeinsamen Knoten als Endpunkt haben. Zwei Knoten u und v sind adjazent falls (u,v) E. Eine Kante und ein Knoten sind zueinander inzident, falls der Knoten Endpunkt der Kante ist. Algorithmus von Prim Starte mit T =. Wähle Kante e mit minimalem Gewicht in G. a) T = T e b) Wähle jene Kante e in G die inzident zu einer Kante aus T ist und folgende Punkte erfüllt: 1) T e ist kreisfrei. 2) Unter allen Kanten die das erfüllen, hat e minimales Gewicht. c) Iteriere Punkt a) mit e in der Rolle von e.

Prim Beispiel 3 8 3 2 14 11 12 11 11 1 7 11 5 3 1 7 11 4 5 3 6

Algorithmus von Prim Beweis durch Widerspruch Sei T der Baum vom Algorithmus von Prim und T ein MST mit w(t ) < w(t). Sei T k der Teilbaum der im k-ten Schritt von Prims Algorithmus entsteht. Wähle k als minimalen Index sodass T k T. Das bedeutet, dass die Kante e k = (a,b), die im k-ten Schritt hinzugefügt wird, nicht in T enthalten ist. O.B.D.A. sei a jener Knoten, der in T k 1 enthalten ist. Da T ein Baum ist, existiert ein eindeutiger Pfad P in T von a nach b und dieser enthält eine Kante f, die T k 1 mit dem Rest verbindet.

Beweis durch Widerspruch Somit hätte Prim zur Iteration k 1 die Möglichkeit gehabt f zu wählen. Daraus folgt, dass w(f) w(e k ) ist. Bilde einen Baum T = e k (T \f). Somit ist w(t ) minimal da: w(t ) = w(t )+w(e k ) w(f) Wiederhole das Argument mit T.

Metrisches TSP MST-Heuristik Sei T min ein MST in G = (V,E). Idee: Verwende T min um eine TSP Lösung zu konstruieren, die einer Gütegarantie von 1 2 genügt. Sei O der optimale Zielfunktionswert einer TSP-Instanz in G mit Tour T. Es gilt: O w(t min )

Metrisches TSP MST-Heuristik Sei T min ein MST in G = (V,E). Idee: Verwende T min um eine TSP Lösung zu konstruieren, die einer Gütegarantie von 1 2 genügt. Sei O der optimale Zielfunktionswert einer TSP-Instanz in G mit Tour T. Es gilt: Beweis: O w(t min ) Für jede Kante e in der optimalen Tour T gilt, T \e ist ein Spannbaum.

Metrisches TSP Definition (Eulerscher Kreis und Graph) Ein Eulerscher Kreis in G = (V,E) ist ein Kreis der jede Kante aus E genau einmal durchläuft. Ein Eulerscher Graph ist ein Graph mit Eulerschem Kreis. Graphen sind Eulersch genau dann wenn jeder Knoten eine gerade Anzahl an Nachbarn hat.

Metrisches TSP Definition (Eulerscher Kreis und Graph) Ein Eulerscher Kreis in G = (V,E) ist ein Kreis der jede Kante aus E genau einmal durchläuft. Ein Eulerscher Graph ist ein Graph mit Eulerschem Kreis. Graphen sind Eulersch genau dann wenn jeder Knoten eine gerade Anzahl an Nachbarn hat. MST-Heuristik a) Konstruiere einen MST T min. b) Verdopple Kanten von T min und bilde Eulerschen Graphen T.

Metrisches TSP Definition (Eulerscher Kreis und Graph) Ein Eulerscher Kreis in G = (V,E) ist ein Kreis der jede Kante aus E genau einmal durchläuft. Ein Eulerscher Graph ist ein Graph mit Eulerschem Kreis. Graphen sind Eulersch genau dann wenn jeder Knoten eine gerade Anzahl an Nachbarn hat. MST-Heuristik a) Konstruiere einen MST T min. b) Verdopple Kanten von T min und bilde Eulerschen Graphen T. c) Starte bei beliebigen Knoten von T und folge den Kanten im Sinne eines Eulerschen Kreises konstruiere Tour T MST mit T MST = zu Beginn. Markiere einen Knoten v, der zum ersten Mal besucht wird als besucht und setzte T MST = T MST v.

Approximationsalgorithmen auf metrischen Instanzen Beispiel

1 2 -Approximation 1 2-Approximation auf metrischen Instanzen Behauptung: w(t MST ) 2 w(t min ) Beweis Sei (v i,v j ) eine Kante aus T MST und P der zugehörige Pfade in T zwischen v i und v j. Die Dreiecksungleichung liefert d(v i,v j ) e Pd(e) Der Algorithmus durchläuft aber jede Kante von T genau 2 mal und jede Kante aus T MST ist einem eindeutigen (bezüglich der verdoppelten Kanten) Pfad aus P zugeordnet.

Christofides Heuristik Definition (Knotengrad deg(v)) Der Grad eines Knotens v in G = (V,E) ist definiert als: deg(v) := N G (v) Definition (k-regulär) Ein Graph G = (V,E) heißt k-regulär, falls deg(v) = k für alle v V. Definition (Matching) Ein Matching in G = (V,E) ist ein 1-regulärer Subgraph G von G.

Approximationsalgorithmen auf metrischen Instanzen Beispiel Matching

Christofides Heuristik Fakten zum Matching Minimum Weight Matching in bipartiten Graphen: Ungarische Methode O(n 3 ) (H.W. Kuhn, D. König, J. Egervary [50er Jahre]) Minimum Weight Matching in allgemeinen Graphen: Blossom Algorithmus O(n 4 ) in Paths, Trees and Flowers by Jack Edmonds [1965] Minimum Weight Matching in allgemeinen Graphen: Schnellster Algorithmus O(m n) von S. Micali and V.V. Vazirani [1980]

Christofides Heuristik Die 2 3-Approximation von Christofides 1) Finde einen MST T min in G = (V,E). 2) Bestimme ein Minimum Weight Matching M in G zwischen allen Knoten die in T min ungeraden Grad haben - deren Anzahl ist gerade also ist M perfekt.

Christofides Heuristik Die 2 3-Approximation von Christofides 1) Finde einen MST T min in G = (V,E). 2) Bestimme ein Minimum Weight Matching M in G zwischen allen Knoten die in T min ungeraden Grad haben - deren Anzahl ist gerade also ist M perfekt. 3) Setzte T = T min M und nimm gegebenenfalls doppelte Kanten (T ist ein Eulerscher Graph). 4) Konstruiere eine Eulerschen Kreis E T in T.

Christofides Heuristik Die 2 3-Approximation von Christofides 1) Finde einen MST T min in G = (V,E). 2) Bestimme ein Minimum Weight Matching M in G zwischen allen Knoten die in T min ungeraden Grad haben - deren Anzahl ist gerade also ist M perfekt. 3) Setzte T = T min M und nimm gegebenenfalls doppelte Kanten (T ist ein Eulerscher Graph). 4) Konstruiere eine Eulerschen Kreis E T in T. 5) Konstruiere eine TSP Tour T C indem ausgehend von einem beliebigen Knoten E T abgefahren wird. Wird ein Knoten v zum ersten Mal besucht setzte T C = T C v.

Beispiel Christofides MSTT min Matching M in G T = T min M

Approximationsalgorithmen auf metrischen Instanzen Beispiel Christofides 9 10 8 6 5 1 2 3 7 4

2 3 -Approximation 2 3-Approximation auf metrischen Instanzen Behauptung: w(t C ) 3 2 O Beweis Wir wissen: : w(t C ) w(t min )+w(m) (Dreiecksungleichung) O w(t min ) Es bleibt zu zeigen, dass O 2w(M)

2 3 -Approximation 2 3-Approximation auf metrischen Instanzen Behauptung: w(t C ) 3 2 O Beweis Wir wissen: : w(t C ) w(t min )+w(m) (Dreiecksungleichung) O w(t min ) Es bleibt zu zeigen, dass O 2w(M) Sei nun T OPT eine optimale Tour in G mit w(t OPT ) = O und sei U die Menge aller Knoten für die im Christofides Algorithmus unter Punkt 2) ein Matching bestimmt wurde.

2 3 -Approximation Beweis Sortiere die Knoten in U in der Reihenfolge wie sie von T OPT durchlaufen werden als u 1,u 2...u 2k Betrachte nun eine Tour T U die nur durch U läuft und wie folgt konstruiert wird: entferne aus T OPT alle Kanten, die inzident zu Knoten aus V \U sind und füge die Kanten zwischen den verbleibenden Pfaden in der Reihenfolge wie die Tour durchlaufen wird hinzu. Wir wissen aufgrund der Dreiecksungleichung : w(t U ) w(t OPT ) Betrachte die Matchings M 1 = {(u 1,u 2 ),(u 3,u 4 ),...,(u 2k 1,u 2k )} und M 2 = {(u 2,u 3 ),(u 4,u 5 ),...,(u 2k,u 1 )}. Wir wissen T U = M 1 M 2 und w(m i ) w(m) und somit w(t U ) 2w(M).

Approximationsalgorithmen auf metrischen Instanzen Beispiel TOPT mitu TU M1 und M2