Theoretische Informatik 1

Ähnliche Dokumente
Datenstrukturen und Algorithmen SS07

Das Briefträgerproblem

WS 2009/10. Diskrete Strukturen

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

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

Anmerkungen zur Übergangsprüfung

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

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

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

Graphen: Datenstrukturen und Algorithmen

4 Greedy-Algorithmen (gierige Algorithmen)

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Alles zu seiner Zeit Projektplanung heute

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling

Algorithmen und Datenstrukturen 2

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Vorlesung 3 MINIMALE SPANNBÄUME

WS 2013/14. Diskrete Strukturen

Der Approximationsalgorithmus von Christofides

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

16. All Pairs Shortest Path (ASPS)

Algorithmen und Datenstrukturen 2

Lange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege

8 Diskrete Optimierung

Algorithmen II Vorlesung am

Die Komplexitätsklassen P und NP

Statistische Untersuchungen zu endlichen Funktionsgraphen

Lineare Programmierung

Algorithmen und Datenstrukturen (WS 2007/08) 63

Approximations-Algorithmen

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

1 topologisches Sortieren

Algorithmentheorie Maximale Flüsse

Bäume und Wälder. Bäume und Wälder 1 / 37

Schwierige Probleme in der Informatik Informationen für die Lehrperson

Graphentheorie. Organisatorisches. Organisatorisches. Organisatorisches. Rainer Schrader. 23. Oktober 2007

Teil III: Routing - Inhalt I. Literatur. Geometric Routing. Voraussetzungen. Unit Disk Graph (UDG) Geometric Routing 29

Komplexitätstheorie Einführung und Überblick (Wiederholung)

EndTermTest PROGALGO WS1516 A

Periodische Fahrpläne und Kreise in Graphen

Das Lastverteilungsproblem

Maximizing the Spread of Influence through a Social Network

Information Systems Engineering Seminar

Kombinatorische Optimierung

Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Diplom/Master Informatik

Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung

Guten Morgen und Willkommen zur Saalübung!

Theoretische Grundlagen der Informatik

Computer Vision: 3D-Geometrie. D. Schlesinger () Computer Vision: 3D-Geometrie 1 / 17

Problem: Finde für Alphabet mit n Zeichen einen Binärcode, der die Gesamtlänge eines Textes (über diesem Alphabet) minimiert.

4. Woche Decodierung; Maximale, Perfekte und Optimale Codes. 4. Woche: Decodierung; Maximale, Perfekte und Optimale Codes 69/ 140

Zeichnen von Graphen. graph drawing

5. Verschiedene Repräsentanten

Wissensbasierte Systeme

Wasserfall-Ansätze zur Bildsegmentierung

Graphentheorie Mathe-Club Klasse 5/6

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen

Toleranzen in Helsgauns TSP-Heuristik

Verkehrsstauspiel: Wieviel Prozent der Autos fahren über blau/grün? Jörg Rambau

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm

Heuristiken im Kontext von Scheduling

Undirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time

Die Verbindung von Linearer Programmierung und Graphentheorie

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)

Kapiteltests zum Leitprogramm Binäre Suchbäume

Praktikum Algorithmische Anwendungen WS 2006/2007

IP=PSPACE. t Joachim Kneis t IP = PSPACE t 16. Dezember 2003 t

Verfahren zur Berechnung von Routen zur Gewährleistung von Ende-zu-Ende QoS

Das Falten-und-Schneiden Problem

Datenstrukturen & Algorithmen

Konzepte der Informatik

Fully dynamic algorithms for the single source shortest path problem.

Algorithmische Methoden zur Netzwerkanalyse

Randomisierte Algorithmen

Komplexität und Komplexitätsklassen

Theoretische Informatik II

Algorithmische Methoden der Netzwerkanalyse

Codierung, Codes (variabler Länge)

2.5. VERBINDUNGSNETZWERKE GESTALTUNGSKRITERIEN DER NETZWERKE TOPOLOGIE ALS GRAPH. Vorlesung 5 TOPOLOGIE: DEFINITIONEN : Sei G = (V, E) ein Graph mit:

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten

Graphen: Einführung. Vorlesung Mathematische Strukturen. Sommersemester 2011

6. Algorithmen der Computer-Geometrie

Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen:

Bestimmung einer ersten

Expander Graphen und Ihre Anwendungen

2. Lernen von Entscheidungsbäumen

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete

Efficient Parallel Algorithms for Edge Coloring Problems H. Karloff, D. Shmoys Journal of Algorithms 8, (1987)

JÖRG RAMBAU. Neulich an der TU Berlin...

Theoretische Informatik 1

Wintersemester 2005/2006 Gedächtnisprotokoll der mündlichen Prüfung

Von optimaler Partnerwahl, minimalen Schnitten und maximalen Flüssen. Schülerwoche der Bonner Mathematik 2013

Algorithmen und Datenstrukturen. Große Übung vom Nils Schweer

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Approximationsalgorithmen

Heuristiken zur Ein-Depot-Tourenplanung. Barbara König

3. Das Auslastungsspiel

Transkript:

Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 10.06.2016

Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP Approximationen für TSP Nearest-Neighbor Heuristik MST Heuristik Algorithmus von Christofides Perfektes Matching Algorithmus von Christofides Zusammenfassung

Approximierbarkeit Sehr viele Probleme sind bekanntermaßen NP-Vollständig und damit (wahrscheinlich) nicht effizient lösbar. In vielen Fällen ist eine optimale Lösung oft gar nicht unbedingt notwendig. Oft ist es durch eine einfache Heuristik möglich sehr gute Lösungen zu finden. Beispiel: Das Problem des Handelsreisenden

Das Problem des Handelsreisenden (TSP)

Das Problem des Handelsreisenden... oder Travelling Salesman Problem (TSP) Definition (TSP) Gegeben: eine Zahl (Budget) k N sowie eine (symmetrische) Matrix M N N N von ganzzahligen Abständen zwischen Städten. Gesucht: Eine Rundreise π = {π 1... π N }, die jede Stadt genau einmal besucht und deren Gesamtlänge nicht größer als k ist. TSP = { < k, M > π : M πn,π 1 + N 1 i=1 M πi,π i+1 k }

TSP ist NP-vollständig Es gilt: Satz TSP ist NP-vollständig. Beweis... als Übung.

EUCLIDEAN-TSP Definition (EUCLIDEAN-TSP) Das EUCLIDEAN-TSP ist analog zum allgemeinen TSP definiert. Mit Ausnahme der Abstände zwischen den Städten M ij = d(x i, x j ). wobei: x i N 2 bezeichnet die Koordinaten der i-ten Stadt. d(x i, x j ) N bezeichnet den ganzzahligen Anteil der euklidischen Distanz zwischen Städten i und j. Das Problem lässt sich auf beliebige Metriken d(x i, x j ) verallgemeinern.

EUCLIDEAN-TSP ist NP-vollständig Satz EUCLIDEAN-TSP ist NP-vollständig. Beweis: Das EUCLIDEAN-TSP in NP liegt ist offensichtlich, da ein Spezialfall von TSP. Noch zu zeigen: EUCLIDEAN-TSP ist NP-Schwer. Wurde 1977 bewiesen 1 2 Christos H. Papadimitriou 1 siehe: Papadimitriou 1977, Theoretical Computer Science 2 Aus Wikipedia - die freie Enzyklopädie

Nearest-Neighbor Greedy Heuristik Einfache, sehr naive Heuristik (Greedy Ansatz). Idee: konsequente Wahl von lokal optimalen Teillösungen. Liefert oft sehr gute Ergebnisse. Die Lösung kann aber auch beliebig schlecht werden (Es existieren Beispiele für die die schlechtest mögliche Lösung gefunden wird!).

Nearest-Neighbor Greedy Heuristik 1 G hält die Menge der noch nicht besuchten Städte. Der Algorithmus startet bei Stadt 1. Pseudocode-Algorithmus: G {2... N}, π 1 1 für 2 j N: π j arg min i G G G \ π j M πj 1,i (Beispiel: siehe Tafel) 1 siehe: Johnson und McGeoch, 1997

Minimaler Spannbaum (MST) Heuristik Für das EUCLIDEAN-TSP kann eine Approximation in P angegeben werden, die eine Tour findet, welche max. doppelt so lang ist wie die optimale Tour. Nutze zwei Ergebnisse als Zwischenschritt, die bekanntermaßen in P gefunden werden können. Eulerkreisproblem (EULER-Circle) und Minimaler Spannbaum (MST).

Minimaler Spannbaum Ein Spannbaum ist ein Teilgraph eines Graphen G, der ein Baum ist und alle Knoten des Graphen G verbindet. Ein Spannbaum heißt minimal, wenn es keinen anderen Spannbaum in G gibt, dessen Kantensumme geringer ist. Wichtiges Optimierungsproblem aus der Graphentheorie, mit vielen Anwendungen (z.b. Verbindungsnetzwerke optimieren). Ist bewiesenermaßen in P enthalten (Algorithmus von Kruskal).

Algorithmus von Kruskal Pseudocode: für gegebenen ungerichteten Graphen G = (V, E) T = {} solange möglich: wähle die kürzeste Kante e in G wenn der Graph (V, e T ) keinen Kreis enthält entferne e aus G füge e zu T hinzu Greedy Algorithmus Läuft in polynomieller Zeit Liefert bewiesenermaßen das optimale Ergebnis

Eulerkreis Problem Ein Eulerkreis ist ein zyklischer Pfad in einem Graphen G, der jede Kante genau einmal enthält Wichtiges Problem aus der Graphentheorie Wurde bereits Mitte des 19ten Jahrhunderts gelöst (Carl Hierholzer) Ist bewiesenermaßen in P enthalten (Algorithmus von Hierholzer).

MST Heuristik Algorithmus: 1. Konstruiere den minimalen Spannbaum T aller Städte. 2. Verdopple alle Kanten. 3. Berechne den Eulerkreis für den so entstandenen Graphen. 4. Wandere entlang des Eulerkreises. Überspringe Städte im Kreis, die bereits besucht wurden. (Beispiel: siehe Tafel)

Satz MST Heuristik Die von der MST Heuristik gefundene Tour π ist maximal doppelt so lange wie die optimale Tour π. Beweis Die Länge von π ist niemals kürzer als der Spannbaum, i.e. T π. Der Eulerkreis hat die Länge 2 T (Verdopplung der Kanten). Durch überspringen von Knoten können sich die Kosten nur verringern (da die Dreiecksungleichung gilt). Daher gilt: π 2 T 2 π

Algorithmus von Christofides 1 Der Algorithmus von Christofides verbessert das Ergebnis der MST Heuristik noch weiter. Hier wird das Perfektes Matching als Zwischenschritt berechnet, welches ebenfalls bekanntermaßen in P gefunden werden kann. Der Algorithmus von Christofides findet garantiert Pfade mit maximal 3 2 der Länge des Optimums. 1 Christofides, 1976

Perfektes Matching Gegeben sei ein ungerichteter Graph G = (E, V ) Definition (Perfektes Matching) Als Matching M E bezeichnet man eine Teilmenge an Kanten, sodass keine zwei Kanten aus M einen gemeinsamen Knoten haben. M heißt perfektes Matching, wenn gilt: 2 M = V also jedem Knoten aus E ein Partner zugeordnet wurde. Optimierungsproblem aus der Graphentheorie P (erster Polynomialzeitalgorithmus Edmonds, 1965).

Algorithmus von Christofides Verwendet die selbe Idee wie die MST Heuristik. Durch weiteren zwischenschritt (Perfektes Matching) kann das Ergebnis verbessert werden. Perfektes Matching lässt sich effizient berechnen (Hungarian Algorithm, O(n 3 )). Satz Die vom Algorithmus von Christofides gefundene Tour π ist maximal 3 2 so lange wie die optimale Tour π.

Algorithmus: Algorithmus von Christofides 1. Konstruiere den minimalen Spannbaum T aller Städte. 2. Bestimme die Menge V aller Konten mit ungeradem Grad in T. 3. Berechne ein Perfektes Matching S mit minimalen Kosten auf V. 4. Finde einen Eulerkreis auf der Vereinigung von S und T. 5. Wandere entlang des Eulerkreises. Überspringe Städte im Kreis, die bereits besucht wurden. (Beispiel: siehe Tafel)

Beweis: π 3 2 π Algorithmus von Christofides Der Pfad lässt sich zerlegen in Segmente über den minimalen Spannbaum T und Segmente über das perfekte Matching S. Die Länge von π ist niemals kürzer als der Spannbaum, i.e. T π. Der optimale Pfad kann in zwei perfekten Matchings zerlegt werden, die jeweils aus jeder zweiten Kante aus π gebildet werden. In Schritt 3 des Algorithmus wird mit Sicherheit der Kleinere Teil gewählt, daher: S 1 2 π. Durch überspringen von Knoten können sich die Kosten nur verringern (da die Dreiecksungleichung gilt). Daher gilt: π T + 1 2 π 3 2 π

Zusammenfassung TSP ist NP-vollständig EUCLIDEAN-TSP ist NP-vollständig Approximationen für TSP und EUCLIDEAN-TSP MST Heuristik ist eine 2 Approximation für EUCLIDEAN-TSP. Algorithmus von Christofides ist eine 3 2 EUCLIDEAN-TSP Approximation für