Top Banner
Der Vertex-Exchange Graph Implementierung Planarit¨ atstest f¨ ur Multi-Level Graphen Ergebnisse Planarit¨ atstest f¨ ur Multi-Level Graphen Marina Schwacke Martin B¨ ohmer Dennis Treder Dirk Ribbrock Nils Kriege Sophia Kardung TU Dortmund - LS 11 - Graphenzeichnen Dortmund, 5. Februar 2008 Planarit¨ atstest f¨ ur Multi-Level Graphen 1/17
21

Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Aug 29, 2019

Download

Documents

truongduong
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Planaritatstest fur Multi-Level Graphen

Marina Schwacke Martin Bohmer Dennis TrederDirk Ribbrock Nils Kriege Sophia Kardung

TU Dortmund - LS 11 - Graphenzeichnen

Dortmund, 5. Februar 2008

Planaritatstest fur Multi-Level Graphen 1/17

Page 2: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Definition Vertex-Exchange Graph

• Knotenmenge: V ′ = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp

• Kantenmenge: 2 Knoten v = (v1, v2) und w = (w1, w2) ∈ V ′

sind mit einer Kanten verbunden, wenn

• v1 und v2 (bzw. w1 und w2) auf dem selben Level imUrsprungsgraph liegen und

• entweder die beiden Kanten (v1, w1) und (v2, w2) oder diebeiden Kanten (v1, w1) und (v2, w2) im Urspungsgraphexistieren.

• Eine Kante bekommt das Label ”+”, falls sich die Kanten imUrsprungsgraph in entsprechender Reihenfolge kreuzen,sonst das Label ”−”.

Planaritatstest fur Multi-Level Graphen 2/17

Page 3: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Definition Vertex-Exchange Graph

• Knotenmenge: V ′ = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp

• Kantenmenge: 2 Knoten v = (v1, v2) und w = (w1, w2) ∈ V ′

sind mit einer Kanten verbunden, wenn

• v1 und v2 (bzw. w1 und w2) auf dem selben Level imUrsprungsgraph liegen und

• entweder die beiden Kanten (v1, w1) und (v2, w2) oder diebeiden Kanten (v1, w1) und (v2, w2) im Urspungsgraphexistieren.

• Eine Kante bekommt das Label ”+”, falls sich die Kanten imUrsprungsgraph in entsprechender Reihenfolge kreuzen,sonst das Label ”−”.

Planaritatstest fur Multi-Level Graphen 2/17

Page 4: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Definition Vertex-Exchange Graph

• Knotenmenge: V ′ = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp

• Kantenmenge: 2 Knoten v = (v1, v2) und w = (w1, w2) ∈ V ′

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 diebeiden Kanten (v1, w1) und (v2, w2) im Urspungsgraphexistieren.

• Eine Kante bekommt das Label ”+”, falls sich die Kanten imUrsprungsgraph in entsprechender Reihenfolge kreuzen,sonst das Label ”−”.

Planaritatstest fur Multi-Level Graphen 2/17

Page 5: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Definition Vertex-Exchange Graph

• Knotenmenge: V ′ = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp

• Kantenmenge: 2 Knoten v = (v1, v2) und w = (w1, w2) ∈ V ′

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 Urspungsgraphexistieren.

• Eine Kante bekommt das Label ”+”, falls sich die Kanten imUrsprungsgraph in entsprechender Reihenfolge kreuzen,sonst das Label ”−”.

Planaritatstest fur Multi-Level Graphen 2/17

Page 6: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Definition Vertex-Exchange Graph

• Knotenmenge: V ′ = V1 × V1 ∪ V2 × V2 ∪ ... ∪ Vp × Vp

• Kantenmenge: 2 Knoten v = (v1, v2) und w = (w1, w2) ∈ V ′

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 Urspungsgraphexistieren.

• Eine Kante bekommt das Label ”+”, falls sich die Kanten imUrsprungsgraph in entsprechender Reihenfolge kreuzen,sonst das Label ”−”.

Planaritatstest fur Multi-Level Graphen 2/17

Page 7: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Beispiel Graph

Planaritatstest fur Multi-Level Graphen 3/17

Page 8: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Beispiel Vertex-Exchange Graph

Planaritatstest fur Multi-Level Graphen 4/17

Page 9: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur 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 Anzahlan Kreuzungen hat. Sonst heißt er gerade-gelabelt.

Theorem

Ein Graph G ist genau dann level-planar wenn seinVertex-Exchange Graph keine ungerade-gelabelten Kreise besitzt.

Planaritatstest fur Multi-Level Graphen 5/17

Page 10: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Implementierung - Vertex Exchange Graph

Preprocessing

1 berechne Hierarchie (LongestPathRanking)

2 erstelle einfache Hierarchie (Einfugen von Dummyknoten auflangen Kanten)

Eingabe fur VertexExchangeGraph: Graph, rank

Planaritatstest fur Multi-Level Graphen 6/17

Page 11: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Erstellen des VEG

Erstellen der Knotenmenge

Fur i ∈ {1, ..., n}Fur alle Paare {u, v} ∈ Vi erzeuge Knoten

Erstellen der Kantenmenge

Fur i ∈ {1, ..., n − 1}Fur alle Paare {e = (u, s), f = (v , t)} ∈ Ei

Falls u 6= v und s 6= terzeuge Kante g = ({u, v}, {s, t})Falls index(u) < index(v) und index(s) < index(t)

label(g) = +sonst label(g) = −

Planaritatstest fur Multi-Level Graphen 7/17

Page 12: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Algorithmus - Planaritatstest

• Eigenes Modul, ahnlich PlanarModulebool VEGPlanarityModule:: isPlanar(VertexExchangeGraphveg)

• DFS-Durchlauf durch jede Zusammenhangskomponente(ZHK) des VEG

• Knoten werden erneut gelabelt• Suche nach Widerspruchen zu erstem Label

• VEG ungerichtet• Start der DFS mit beliebigem Knoten der ZHK• Startknoten bekommt beliebiges Label

Planaritatstest fur Multi-Level Graphen 8/17

Page 13: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

DFS-Durchlauf

b ∈ minus, plus, unknown

Planaritatstest fur Multi-Level Graphen 9/17

Page 14: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur 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

Planaritatstest fur Multi-Level Graphen 10/17

Page 15: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Planaritatstest fur Multi-Level Graphen 11/17

Page 16: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Planaritatstest fur Multi-Level Graphen 12/17

Page 17: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Planaritatstest fur Multi-Level Graphen 13/17

Page 18: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Planaritatstest fur Multi-Level Graphen 14/17

Page 19: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Planaritatstest fur Multi-Level Graphen 15/17

Page 20: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Planaritatstest fur Multi-Level Graphen 16/17

Page 21: Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit atstest f ur Multi-Level Graphen Ergebnisse Planarit atstest f ur Multi-Level Graphen

Der Vertex-Exchange Graph Implementierung Planaritatstest fur Multi-Level Graphen Ergebnisse

Ende

Vielen Dank fur die Aufmerksamkeit

Planaritatstest fur Multi-Level Graphen 17/17