Planaritätstest für Multi-Level Graphen

Werbung
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Planaritätstest für Multi-Level Graphen
Marina Schwacke
Dirk Ribbrock
Martin Böhmer Dennis Treder
Nils Kriege Sophia Kardung
TU Dortmund - LS 11 - Graphenzeichnen
Dortmund, 5. Februar 2008
Planaritätstest für Multi-Level Graphen
1/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Definition Vertex-Exchange Graph
Planaritätstest für Multi-Level Graphen
2/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Definition Vertex-Exchange Graph
• Knotenmenge: V 0 = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp
Planaritätstest für Multi-Level Graphen
2/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Definition Vertex-Exchange Graph
• Knotenmenge: V 0 = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp
• Kantenmenge: 2 Knoten v = (v1 , v2 ) und w = (w1 , w2 ) ∈ V 0
sind mit einer Kanten verbunden, wenn
• v1 und v2 (bzw. w1 und w2 ) auf dem selben Level im
Ursprungsgraph liegen und
Planaritätstest für Multi-Level Graphen
2/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Definition Vertex-Exchange Graph
• Knotenmenge: V 0 = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp
• Kantenmenge: 2 Knoten v = (v1 , v2 ) und w = (w1 , w2 ) ∈ V 0
sind mit einer Kanten verbunden, wenn
• v1 und v2 (bzw. w1 und w2 ) auf dem selben Level im
Ursprungsgraph liegen und
• entweder die beiden Kanten (v1 , w1 ) und (v2 , w2 ) oder die
beiden Kanten (v1 , w1 ) und (v2 , w2 ) im Urspungsgraph
existieren.
Planaritätstest für Multi-Level Graphen
2/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Definition Vertex-Exchange Graph
• Knotenmenge: V 0 = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp
• Kantenmenge: 2 Knoten v = (v1 , v2 ) und w = (w1 , w2 ) ∈ V 0
sind mit einer Kanten verbunden, wenn
• v1 und v2 (bzw. w1 und w2 ) auf dem selben Level im
Ursprungsgraph liegen und
• entweder die beiden Kanten (v1 , w1 ) und (v2 , w2 ) oder die
beiden Kanten (v1 , w1 ) und (v2 , w2 ) im Urspungsgraph
existieren.
• Eine Kante bekommt das Label ”+”, falls sich die Kanten im
Ursprungsgraph in entsprechender Reihenfolge kreuzen,
sonst das Label ”−”.
Planaritätstest für Multi-Level Graphen
2/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Beispiel Graph
Planaritätstest für Multi-Level Graphen
3/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Beispiel Vertex-Exchange Graph
Planaritätstest für Multi-Level Graphen
4/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Eigenschaften des Vertex-Exchange Graphen
Definition
Ein Kreis C im Vertex-Exchange Graph heißt ungerade-gelabelt,
falls der Subgraph von C im Ursprungsgraph eine ungerade Anzahl
an Kreuzungen hat. Sonst heißt er gerade-gelabelt.
Theorem
Ein Graph G ist genau dann level-planar wenn sein
Vertex-Exchange Graph keine ungerade-gelabelten Kreise besitzt.
Planaritätstest für Multi-Level Graphen
5/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Implementierung - Vertex Exchange Graph
Preprocessing
1
berechne Hierarchie (LongestPathRanking)
2
erstelle einfache Hierarchie (Einfügen von Dummyknoten auf
langen Kanten)
Eingabe für VertexExchangeGraph: Graph, rank
Planaritätstest für Multi-Level Graphen
6/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Erstellen des VEG
Erstellen der Knotenmenge
Für i ∈ {1, ..., n}
Für alle Paare {u, v } ∈ Vi erzeuge Knoten
Erstellen der Kantenmenge
Für i ∈ {1, ..., n − 1}
Für alle Paare {e = (u, s), f = (v , t)} ∈ Ei
Falls u 6= v und s 6= t
erzeuge Kante g = ({u, v }, {s, t})
Falls index(u) < index(v ) und index(s) < index(t)
label(g ) = +
sonst label(g ) = −
Planaritätstest für Multi-Level Graphen
7/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Algorithmus - Planaritätstest
• Eigenes Modul, ähnlich PlanarModule
bool VEGPlanarityModule:: isPlanar(VertexExchangeGraph
veg)
• DFS-Durchlauf durch jede Zusammenhangskomponente
(ZHK) des VEG
• Knoten werden erneut gelabelt
• Suche nach Widersprüchen zu erstem Label
• VEG ungerichtet
• Start der DFS mit beliebigem Knoten der ZHK
• Startknoten bekommt beliebiges Label
Planaritätstest für Multi-Level Graphen
8/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
DFS-Durchlauf
b ∈ minus, plus, unknown
Planaritätstest für Multi-Level Graphen
9/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Ergebnisse
• Anzahl Graphen: 1277
• Summe aller Level: 13011
• Durchschnittliche Anzahl Level pro Graph: 10.19
• Summe aller Knoten: 41032
• Durschnittliche Anzahl Knoten pro Graph: 32.13
• Summe aller Kanten: 57578
• Durschnittliche Anzahl Kanten pro Graph: 45.09
• Maximaler Grad: 7.36 ; Minimaler Grad: 0.9
• Anzahl planarer Graphen: 845
• Anzahl levelplanarer Graphen: 567
Planaritätstest für Multi-Level Graphen
10/17
Der Vertex-Exchange Graph
Planaritätstest für Multi-Level Graphen
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
11/17
Der Vertex-Exchange Graph
Planaritätstest für Multi-Level Graphen
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
12/17
Der Vertex-Exchange Graph
Planaritätstest für Multi-Level Graphen
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
13/17
Der Vertex-Exchange Graph
Planaritätstest für Multi-Level Graphen
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
14/17
Der Vertex-Exchange Graph
Planaritätstest für Multi-Level Graphen
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
15/17
Der Vertex-Exchange Graph
Planaritätstest für Multi-Level Graphen
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
16/17
Der Vertex-Exchange Graph
Implementierung
Planaritätstest für Multi-Level Graphen
Ergebnisse
Ende
Vielen Dank für die Aufmerksamkeit
Planaritätstest für Multi-Level Graphen
17/17
Herunterladen