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

21
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

Transcript of Planarit atstest f ur Multi-Level Graphenls11- · Der Vertex-Exchange GraphImplementierungPlanarit...

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

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

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

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

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

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

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

Beispiel Graph

Planaritatstest fur Multi-Level Graphen 3/17

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

Beispiel Vertex-Exchange Graph

Planaritatstest fur Multi-Level Graphen 4/17

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

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

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

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

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

DFS-Durchlauf

b ∈ minus, plus, unknown

Planaritatstest fur Multi-Level Graphen 9/17

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

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

Planaritatstest fur Multi-Level Graphen 11/17

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

Planaritatstest fur Multi-Level Graphen 12/17

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

Planaritatstest fur Multi-Level Graphen 13/17

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

Planaritatstest fur Multi-Level Graphen 14/17

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

Planaritatstest fur Multi-Level Graphen 15/17

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

Planaritatstest fur Multi-Level Graphen 16/17

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

Ende

Vielen Dank fur die Aufmerksamkeit

Planaritatstest fur Multi-Level Graphen 17/17