PG 478 : OGDF Planarisierung

Werbung
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)
PG 478 : OGDF
Planarisierung
Inhalt
• Einführung
• Planarisierungmethode
• Experimentelle Ergebnisse
• Schlussfolgerung
Referent: Sebastian Sondern
2
PG 478 : OGDF
Planarisierung
Einführung
f
1
2
• planarer Graph
• Flächen / faces
• kombinatorische Einbettung
Knoten 1 : < 2 , 5 , 4 >
...
Knoten 5 : < 1 , 2 , 3 , 4 >
C
a
e
5
B
d
4
Referent: Sebastian Sondern
g
D
c
A
3
5
a
b
d
Fläche A : < f , e , d , c , g >
...
1
Fläche D : < b , g , c >
b
B
e
C
c
4 A 3
D
g
2
f
3
PG 478 : OGDF
Planarisierung
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
4
PG 478 : OGDF
Planarisierung
Planarisierungsmethode
( Batini, Talamo, Tamassia `84)
Aufteilung in einzelne Optimierungsprobleme
1. Maximum Planar Subgraph Problem (MPSP)
2. Edge Insertion Problem (EIP)
8
1
7
2
6
3
5
4
Referent: Sebastian Sondern

1
8
2
6
3
4
7
5
5
PG 478 : OGDF
Planarisierung
Planarisierungsmethode
( Batini, Talamo, Tamassia `84)
Aufteilung in einzelne Optimierungsprobleme
1. Maximum Planar Subgraph Problem (MPSP)
2. Edge Insertion Problem (EIP)
1
8
2
9
6
3
4
7
5
Referent: Sebastian Sondern

1
8
2
6
3
4
7
5
6
PG 478 : OGDF
Planarisierung
Planarisierungsmethode
Ergebnis:
Graph mit max. |Vd| - vielen Überkreuzungen
in jeder planaren Zeichnung
2 Möglichkeiten für jeden Dummy d :
d
Referent: Sebastian Sondern
d
7
PG 478 : OGDF
Planarisierung
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
8
PG 478 : OGDF
Planarisierung
Planarisierungsmethode
Beispiel :
u2
u1
Referent: Sebastian Sondern
u1
v2
v1
u2
v1
v2
9
PG 478 : OGDF
Planarisierung
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
10
PG 478 : OGDF
Planarisierung
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
11
PG 478 : OGDF
Planarisierung
Edge Re-Insertion Problem
1.
Einzelne Kanten nacheinander einfügen
a. fixe Einbettung
b. variable Einbettung
2.
Nachbearbeitung
3.
Permutation
Referent: Sebastian Sondern
12
PG 478 : OGDF
Planarisierung
Edge Re-Insertion Problem
1.
Einzelne Kanten nacheinander einfügen
a. fixe Einbettung gegeben:
FIX
Kante e kreuzt andere Kante 
e benutzt Kante im geometrischen dualen Graphen
Referent: Sebastian Sondern
13
PG 478 : OGDF
Planarisierung
Edge Re-Insertion Problem
extended dual graph:
w
Referent: Sebastian Sondern
v
14
PG 478 : OGDF
Planarisierung
Edge Re-Insertion Problem
1.
Einzelne Kanten nacheinander einfügen
a.
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
15
PG 478 : OGDF
Planarisierung
Edge Re-Insertion Problem
Beispiel:
2
1
8
2
3
6
1
8
3
6
7
7
5
9
Referent: Sebastian Sondern
4
5
4
9
16
PG 478 : OGDF
Planarisierung
Edge Re-Insertion Problem
3-fach
Zusammenhangskomponenten
8
Cut vertex
z.B.:
9
7
1
4
3
2
6
5
2-fach Zusammenhangskomponenten
(Blöcke)
Referent: Sebastian Sondern
17
PG 478 : OGDF
Planarisierung
Qb
SPQR-Bäume
1
e
R
5
a
f
Qa Qh
d
Qc Qg
g
4
2
h
b
3
c
Skelette:
Q
Kante im Graphen
S
serielle Anordnung
Referent: Sebastian Sondern
P
Parallele Anordnung
R
3-fach Zshgk (rigid)
18
PG 478 : OGDF
Planarisierung
Qb
SPQR-Bäume
1
e
R
5
a
f
P
Qa Qh
d
Qc Qg
g
4
Qf
2
h
b
3
c
Skelette:
Q
Kante im Graphen
S
serielle Anordnung
Referent: Sebastian Sondern
P
Parallele Anordnung
R
3-fach Zshgk (rigid)
19
PG 478 : OGDF
Planarisierung
Qb
SPQR-Bäume
1
e
R
R
5
a
f
P
Qa Qh
Qc Qg
d
P
g
4
S
Qf
2
h
b
3
c
S
Qe
Qd
Skelette:
Q
Kante im Graphen
S
serielle Anordnung
Referent: Sebastian Sondern
P
Parallele Anordnung
R
3-fach Zshgk (rigid)
20
PG 478 : OGDF
Planarisierung
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
21
PG 478 : OGDF
Planarisierung
Berechnung eines optimalen Pfades
R3
3
R4
R5
R1
P
R2
SPQR-Baum
2
12
4
4
1
2
5
9
10
1
11
2
7
8
Referent: Sebastian Sondern
6
7
22
PG 478 : OGDF
Planarisierung
Berechnung eines optimalen Pfades
R3
3
R4
R5
R1
P
R2
SPQR-Baum
2
12
4
4
1
12
2
5
1
11
2
13
9
10
7
8
Referent: Sebastian Sondern
6
7
23
PG 478 : OGDF
Planarisierung
Berechnung eines optimalen Pfades
R3
3
R4
R5
R1
P
R2
SPQR-Baum
14
15
16
4
4
17
1
12
2
5
1
11
2
13
9
7
v
10
8
Referent: Sebastian Sondern
6
7
24
PG 478 : OGDF
Planarisierung
Berechnung eines optimalen Pfades
3
14
15
2
1
12
16
4
18
19
20
21
R3
R4
R5
R1
P
SPQR-Baum
17
11
3
5
13
14
9
15
16
4
7
19
10
R2
8
6
17
18
2
11
1
12
21
5
20
13
9
10
Referent: Sebastian Sondern
7
8
6
25
PG 478 : OGDF
Planarisierung
Edge Re-Insertion Problem
2. 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
26
PG 478 : OGDF
Planarisierung
Edge Re-Insertion Problem
3.
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
27
PG 478 : OGDF
Planarisierung
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
PQ1
19
PQ10
16
PQ50
15
PQ100
15
Referent: Sebastian Sondern
Laufzeit / sec
0.002
0.34
28
PG 478 : OGDF
Planarisierung
Experimentelle Ergebnisse
FIX
vs.
VAR
Referent: Sebastian Sondern
29
PG 478 : OGDF
Planarisierung
Experimentelle Ergebnisse
Nachbearbeitung
Referent: Sebastian Sondern
30
PG 478 : OGDF
Planarisierung
Experimentelle Ergebnisse
Permutation
Referent: Sebastian Sondern
31
PG 478 : OGDF
Planarisierung
Experimentelle Ergebnisse
PQ1
vs.
PQ100
Referent: Sebastian Sondern
32
PG 478 : OGDF
Planarisierung
Experimentelle Ergebnisse
Vergleich:
FIX / VAR
und
NONE / ALL
Referent: Sebastian Sondern
33
PG 478 : OGDF
Planarisierung
Experimentelle Ergebnisse
Laufzeit
Referent: Sebastian Sondern
34
PG 478 : OGDF
Planarisierung
Platz Kreuzungen Laufzeit /sec MPSP Einbettung
Nachbe.
Perm
1
28,56
8,778
PQ100
VAR
ALL
PERM20
2
28,61
8,563
PQ100
VAR
MOST100
PERM20
3
28,66
5,902
PQ100
VAR
MOST25
PERM20
4
29,09
4,359
PQ100
VAR
MOST100
PERM10
5
29,35
3,060
PQ100
VAR
MOST25
PERM10
6
30,01
0,259
PQ100
FIX
MOST100
PERM20
7
30,43
0,258
PQ100
FIX
ALL
PERM20
8
30,62
0,130
PQ100
FIX
MOST100
PERM10
9
31,11
0,128
PQ100
FIX
ALL
PERM10
10
31,64
0,112
PQ100
FIX
MOST25
PERM10
11
33,16
0,054
PQ100
FIX
MOST100
PERM2
...
...
...
...
...
...
...
18
46,98
0,036
PQ100
FIX
NONE
PERM1
19
60,32
0,002
PQ1
FIX
NONE
PERM1
Referent: Sebastian Sondern
35
PG 478 : OGDF
Planarisierung
Experimentelle Ergebnisse
Vergleich:
Referent: Sebastian Sondern
36
PG 478 : OGDF
Planarisierung
Schlussfolgerung
1.
2.
3.
4.
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
37
PG 478 : OGDF
Planarisierung
Ende
Referent: Sebastian Sondern
38
PG 478 : OGDF
Planarisierung
Experimentelle Ergebnisse
Referent: Sebastian Sondern
39
Herunterladen