Referent: Sebastian Sondern

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen für das Erfüllbarkeitsproblem SAT
Advertisements

Matrixmultiplikation
Christian Scheideler SS 2009
Grundlagen des A*-Algorithmus und Anwendung in der Routenplanung
Christian Scheideler SS 2009
Man bestimme den „minimalen aufspannenden Baum“ des Graphen.
Minimum Spanning Tree: MST
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.
Martin Böhmer/Dennis Treder/Marina Schwacke Übungen zu Automatisches Zeichnen von Graphen Ausgabe: Besprechung: Gruppe 2 - Übungsblatt.
Automatisches Zeichnen Ausgabe: — Besprechung:
Claudio Moraga; Gisbert Dittrich
Kapitel 6: Klassifizierung von Sortiertechniken
5. Sortier-Algorithmen Vorbemerkungen:
Wie lösen wir ILPs exakt?
Simulated Annealing Marco Block & Miguel Domingo Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002.
Marco Barz Seminar über Algorithmen SoSe2007
The Dynamic Single File Allocation Problem
Algorithmen und Komplexität
Klaus Volbert 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Sommersemester 2004.
Anwendung und Visual Basic
Sortierverfahren Richard Göbel.
Sortierverfahren Richard Göbel.
WS 03/04 Algorithmentheorie 03 - Randomisierung Prof. Dr. S. Albers Prof. Dr. Th. Ottmann.
Dynamische Programmierung (2) Matrixkettenprodukt
WS Algorithmentheorie 08 – Dynamische Programmierung (2) Matrixkettenprodukt Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Seminar parallele Programmierung SS 2003
R-tree, R*-tree und R+-tree
Präsentation zu Milestone 1: Planaritätstest, Planarisierierung und Orthogonalisierung Gruppenmitglieder: cku, ocl, pdo, bra.
Martin Böhmer/Dennis Treder/Marina Schwacke Übungen zu Automatisches Zeichnen von Graphen Ausgabe: Besprechung: Gruppe 2 - Übungsblatt.
Constraints in orthogonal Graph Drawing
PG 478 – Open Graph Drawing Framework Thema: Compounds & Force-Directed Francois Bertault & Mirka Miller – An Algorithm for Drawing Compound Graphs [1999]
Planarisierung von Cluster Graphen
Compound Graphen und hierarchisches Layout
Graph Drawing by Force-directed Placement
Algorithmen und Komplexität
Minimum Spanning Tree: MST
B.Goetze, GFaI Berlin Stralsund, C A S Planarisierung von Graphen und Netzwerken.
Brückenschaltung 1.
Effiziente Algorithmen
Flüsse, Schnitte, bipartite Graphen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Prof. Dr. Petra Mutzel Animation Planarisierungsverfahren Lehrstuhl für Algorithm Engineering LS11 Universität Dortmund Automatisches Zeichnen von Graphen.
K-SAT: Ein heuristischer Algorithmen- Vergleich Kann man den Brute Force Search Algorithmus schlagen?
Das Traveling Salesman Problem (TSP)
Algorithmen für das Erfüllbarkeitsproblem SAT
Analyse der Laufzeit von Algorithmen
Minimal spannende Bäume
Stefan Nolting Andreas Goebels Larissa Timajev
Optimierungs- Algorithmen
Gliederung der Vorlesung
Institut für Informationssysteme Technische Universität Braunschweig Institut für Informationssysteme Technische Universität Braunschweig Verdrängung von.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Einführung in die Informationsverarbeitung Teil Thaller Stunde V: Wege und warum man sie geht Graphen. Köln 14. Januar 2016.
Computing orthogonal drawings with the minimum number of bends
 Präsentation transkript:

Referent: Sebastian Sondern PG – 478: Open Graph Drawing Framework PG - Vortrag Planarisierung Referent: Sebastian Sondern basierend auf: Crossings and Planarization (Mutzel, Jünger, Gutwenger, Buchheim, Ebner `04) An experimental Study of Crossing Minimization Heuristics (Gutwenger, Mutzel `03)

Inhalt Einführung Planarisierungmethode Experimentelle Ergebnisse Schlussfolgerung Referent: Sebastian Sondern

Einführung planarer Graph Flächen / faces kombinatorische Einbettung 1 5 4 3 2 a b c d f e g planarer Graph A B C D kombinatorische Einbettung Knoten 1 : < 2 , 5 , 4 > ... Knoten 5 : < 1 , 2 , 3 , 4 > Fläche A : < f , e , d , c , g > Fläche D : < b , g , c > Flächen / faces c d f e g 4 5 1 2 3 C D B A a b Referent: Sebastian Sondern

Einführung Warum Planarität ?  Lesbarkeit steigt mit weniger Kreuzungen  VLSI - Design Motivation:  zeichne gegebenen Graphen in der Ebene und minimiere die Anzahl von Kantenkreuzungen  NP-hard  Referent: Sebastian Sondern

Planarisierungsmethode ( Batini, Talamo, Tamassia `84) Aufteilung in einzelne Optimierungsprobleme 1. Maximum Planar Subgraph Problem (MPSP) 2. Edge Insertion Problem (EIP) 6 5 7 4 3 2 1 8 1 2 3 4 6 8 5 7  Referent: Sebastian Sondern

Planarisierungsmethode ( Batini, Talamo, Tamassia `84) Aufteilung in einzelne Optimierungsprobleme 1. Maximum Planar Subgraph Problem (MPSP) 2. Edge Insertion Problem (EIP)  1 2 3 4 6 8 5 7 9 1 2 3 4 6 8 5 7 Referent: Sebastian Sondern

Planarisierungsmethode Ergebnis: Graph mit max. |Vd| - vielen Überkreuzungen in jeder planaren Zeichnung 2 Möglichkeiten für jeden Dummy d : d d Referent: Sebastian Sondern

Planarisierungsmethode MPSP und EIP auch einzeln NP-hard  heuristische Lösung optimale Lösungen für die jeweiligen Teilprobleme ergeben zusammen nicht unbedingt die optimale Lösung für den Graphen Aber: in der Praxis gute Ergebnisse Referent: Sebastian Sondern

Planarisierungsmethode Beispiel : u2 v1 v2 u1 u2 v2 u1 v1 Referent: Sebastian Sondern

Maximum Planar Subgraph Problem Branch & Cut - Algorithmus (Jünger & Mutzel `96) # zu entfernende Kanten < 10 : optimale Lösung möglich schnell zu berechnen sonst: zu langsam für praktischen Einsatz Alternative: berechne maximal planar subgraph beginne mit Graphen ohne Kanten füge Kanten nacheinander hinzu, wenn möglich (Planaritätstest) Referent: Sebastian Sondern

Maximal Planar Subgraph Problem besser: PQ-Baum basierter Algo (Jayakumar et al. `89) worst-case Laufzeit quadratisch garantiert keinen maximal planaren Teilgraphen in der Praxis weit besser randomisiert und wiederholt (wg.: Wahl der 1. Kante) hier: PQ1, PQ10, PQ50, PQ100 Referent: Sebastian Sondern

Edge Re-Insertion Problem Einzelne Kanten nacheinander einfügen fixe Einbettung variable Einbettung Nachbearbeitung Permutation Referent: Sebastian Sondern

Edge Re-Insertion Problem Einzelne Kanten nacheinander einfügen fixe Einbettung gegeben: FIX Kante e kreuzt andere Kante  e benutzt Kante im geometrischen dualen Graphen Referent: Sebastian Sondern

Edge Re-Insertion Problem extended dual graph: w v Referent: Sebastian Sondern

Edge Re-Insertion Problem Einzelne Kanten nacheinander einfügen fixe Einbettung gegeben: FIX Kante e kreuzt andere Kante  e benutzt Kante im geometrischen dualen Graphen also: kürzesten Weg berechnen aber: die Anzahl der Kantenüberkreuzungen hängt stark von der fixen Einbettung ab Referent: Sebastian Sondern

Edge Re-Insertion Problem Beispiel: 8 9 6 7 5 3 1 2 4 8 9 6 7 5 3 1 2 4 Referent: Sebastian Sondern

Edge Re-Insertion Problem 3-fach Zusammenhangs- komponenten z.B.: 2-fach Zusammenhangskomponenten (Blöcke) 2 1 3 9 4 7 8 5 6 Cut vertex Referent: Sebastian Sondern

SPQR-Bäume Qb R 1 2 3 4 5 Qa Qh Qc Qg Skelette: Q S P R f d e Qa Qh Qc Qg Skelette: Kante im Graphen Q serielle Anordnung S Parallele Anordnung P 3-fach Zshgk (rigid) R Referent: Sebastian Sondern

SPQR-Bäume Qb R 1 2 3 4 5 P Qa Qh Qc Qg Qf Skelette: Q S P R d e P Qa Qh Qc Qg Qf Skelette: Kante im Graphen Q serielle Anordnung S Parallele Anordnung P 3-fach Zshgk (rigid) R Referent: Sebastian Sondern

SPQR-Bäume R P S Qb R 1 2 3 4 5 P Qa Qh Qc Qg Qf S Qe Qd Skelette: Q S Kante im Graphen Q serielle Anordnung S Parallele Anordnung P 3-fach Zshgk (rigid) R Referent: Sebastian Sondern

Edge Re-Insertion Problem Einfügen einer Kante in eine variable Einbettung VAR (Gutwenger, Mutzel, Weiskircher `01) Anzahl der verschiedenen Einbettungen exponentiell Einfügen der Kante mit Hilfe des SPQR-Baumes  min. Anzahl an Überkreuzungen über alle möglichen planaren Einbettungen Kernstück des Verfahrens: Berechnung eines optimalen Pfades zweier nicht-adjazenter Knoten in 2-fach Zshgk. Referent: Sebastian Sondern

Berechnung eines optimalen Pfades 1 2 10 8 6 3 12 4 5 7 9 SPQR-Baum 2 4 7 11 2 1 Referent: Sebastian Sondern

Berechnung eines optimalen Pfades SPQR-Baum 1 8 6 3 12 4 5 7 9 2 11 10 13 Referent: Sebastian Sondern

Berechnung eines optimalen Pfades v R3 R4 R1 P R2 R5 SPQR-Baum 1 8 6 3 15 7 9 2 4 11 14 10 13 12 5 16 17 Referent: Sebastian Sondern

Berechnung eines optimalen Pfades 1 8 6 3 15 7 9 14 10 13 12 4 5 16 17 R4 R5 R3 R1 R2 R1 P R2 11 21 19 18 20 2 SPQR-Baum 11 21 19 18 20 2 1 8 6 3 15 7 9 14 10 13 12 4 5 16 17 Referent: Sebastian Sondern

Edge Re-Insertion Problem Nachbearbeitung Idee: Kann eine Kante später evtl.“besser“ eingefügt werden ? Strategien, welche Kanten erneut eingefügt werden: NONE: keine Nachbearbeitung INS: die Kanten aus der MPSP-Optimierung ALL: alle Kanten MOST x%: x% aller Kanten MOST x% : nach jeder Iteration werden die Kanten ausgewählt, die an den meisten Überkreuzungen beteiligt sind Referent: Sebastian Sondern

Edge Re-Insertion Problem Permutation - erneutes Einfügen der aller gelöschten Kanten aus MPSP - Kantenreihenfolge permutieren - bestes Ergebnis behalten - hier: PERM1, Anzahl der Wiederholungen PERM2, PERM10, PERM20 Referent: Sebastian Sondern

Experimentelle Ergebnisse Vorraussetzungen: - Benchmark: Rome library 11.528 Graphen, 10 bis 100 Knoten Anzahl der gelöschten Kanten bei Graphen mit jeweils derselben Anzahl von Knoten Gelöschte Kanten Laufzeit / sec PQ1 19 0.002 PQ10 16 PQ50 15 PQ100 0.34 Referent: Sebastian Sondern

Experimentelle Ergebnisse FIX vs. VAR Referent: Sebastian Sondern

Experimentelle Ergebnisse Nach- bearbeitung Referent: Sebastian Sondern

Experimentelle Ergebnisse Permutation Referent: Sebastian Sondern

Experimentelle Ergebnisse PQ1 vs. PQ100 Referent: Sebastian Sondern

Experimentelle Ergebnisse Vergleich: FIX / VAR und NONE / ALL Referent: Sebastian Sondern

Experimentelle Ergebnisse Laufzeit Referent: Sebastian Sondern

Platz Kreuzungen Laufzeit /sec MPSP Einbettung Nachbe. Perm 1 28,56 8,778 PQ100 VAR ALL PERM20 2 28,61 8,563 MOST100 3 28,66 5,902 MOST25 4 29,09 4,359 PERM10 5 29,35 3,060 6 30,01 0,259 FIX 7 30,43 0,258 8 30,62 0,130 9 31,11 0,128 10 31,64 0,112 11 33,16 0,054 PERM2 ... 18 46,98 0,036 NONE PERM1 19 60,32 0,002 PQ1 Referent: Sebastian Sondern

Experimentelle Ergebnisse Vergleich: Referent: Sebastian Sondern

Schlussfolgerung Bei der Nachbearbeitung sollten alle Kanten mit einbezogen werden. Selbst 25% davon verbessern schon das Ergebnis. Randomisierung und Permutation helfen auch, aber nicht so stark wie die Nachbearbeitung. Ein guter planarer Teilgraph verkleinert nicht nur die Anzahl der Kreuzungen, sondern verbessert auch die Laufzeit. Selbst mit Nachbearbeitung bringt eine variable Einbettung noch Verbesserungen. Referent: Sebastian Sondern

Ende Referent: Sebastian Sondern

Experimentelle Ergebnisse Referent: Sebastian Sondern