Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
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)
2
Inhalt Einführung Planarisierungmethode Experimentelle Ergebnisse
Schlussfolgerung Referent: Sebastian Sondern
3
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
4
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
5
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
6
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
7
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
8
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
9
Planarisierungsmethode
Beispiel : u2 v1 v2 u1 u2 v2 u1 v1 Referent: Sebastian Sondern
10
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
11
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
12
Edge Re-Insertion Problem
Einzelne Kanten nacheinander einfügen fixe Einbettung variable Einbettung Nachbearbeitung Permutation Referent: Sebastian Sondern
13
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
14
Edge Re-Insertion Problem
extended dual graph: w v Referent: Sebastian Sondern
15
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
16
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
17
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
18
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
19
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
20
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
21
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
22
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
23
Berechnung eines optimalen Pfades
SPQR-Baum 1 8 6 3 12 4 5 7 9 2 11 10 13 Referent: Sebastian Sondern
24
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
25
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
26
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
27
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
28
Experimentelle Ergebnisse
Vorraussetzungen: - Benchmark: Rome library 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
29
Experimentelle Ergebnisse
FIX vs. VAR Referent: Sebastian Sondern
30
Experimentelle Ergebnisse
Nach- bearbeitung Referent: Sebastian Sondern
31
Experimentelle Ergebnisse
Permutation Referent: Sebastian Sondern
32
Experimentelle Ergebnisse
PQ1 vs. PQ100 Referent: Sebastian Sondern
33
Experimentelle Ergebnisse
Vergleich: FIX / VAR und NONE / ALL Referent: Sebastian Sondern
34
Experimentelle Ergebnisse
Laufzeit Referent: Sebastian Sondern
35
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
36
Experimentelle Ergebnisse
Vergleich: Referent: Sebastian Sondern
37
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
38
Ende Referent: Sebastian Sondern
39
Experimentelle Ergebnisse
Referent: Sebastian Sondern
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.