Übungen zu automatisches zeichnen von graphen ausgabe: 28.11.2007 — besprechung: 11.12.2007
DESCRIPTION
- Übungsblatt 4 -. Übungen zu Automatisches Zeichnen von Graphen Ausgabe: 28.11.2007 — Besprechung: 11.12.2007 Gruppe 2. Aufgabe 3: Knotenpositionierung. Entwerfen Sie ein Verfahren Ihrer Wahl für die dritte Phase (Knotenpositionierung) des Sugiyama Algorithmus. - PowerPoint PPT PresentationTRANSCRIPT
Martin Böhmer/Dennis Treder/Marina Schwacke
Übungen zu Automatisches Zeichnen
von Graphen
Ausgabe: 28.11.2007 — Besprechung: 11.12.2007
Gruppe 2
- Übungsblatt 4 -
Martin Böhmer/Dennis Treder/Marina Schwacke
Aufgabe 3: Knotenpositionierung
Entwerfen Sie ein Verfahren Ihrer Wahl für die dritte Phase (Knotenpositionierung) des Sugiyama Algorithmus.
Implementieren Sie Ihr Verfahren in OGDF, so dass es in der Lage ist, die bisherigen Module für die dritte Phase zu ersetzen.
Evaluieren Sie Ihr Verfahren (anhand selbst gewählter qualitativer Kriterien) im Vergleich zu einem in OGDF enthaltenen Verfahren.Wählen Sie als Benchmark Graphen die AT&T Graphen sowie selbst erzeugte zufällige Graphen.
Martin Böhmer/Dennis Treder/Marina Schwacke
Gliederung
Vorstellung des Layoutverfahrens
Bewertung:
Bewertungskriterien
Vergleich der Verfahren an AT&T Graphen.
Vergleich der Verfahren an Zufallsgraphen
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren
“Normale” Ansätze:
Knoten haben Wunschposition (gemäß irgendeiner Heuristik) und bekommen
diese zugeteilt.
Die wichtigen Knoten zuerst!
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren
Idee: Relaxiation
Problem: Abstände zu klein
Schritt: 0
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren
Idee: Relaxiation
Problem: Abstände zu klein (aber besser)
Schritt: 1
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren
Idee: Relaxiation
Problem: Abstand zu groß
Schritt: 2
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren
Idee: Relaxiation
kein Problem: “eingependelt“
Schritt: 3
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren
=> RelaxHierarchyLayout
Zur Vereinfachzung: Y-Koordinaten Fest
Initial werden alle Konten gleichmäßig zentriert positioniert (x-Position)
Anhand irgendwelcher Gewichtungen schieben sich die Knoten hin und her, um
festgelegte Constraints zu erfüllen
Martin Böhmer/Dennis Treder/Marina Schwacke
GewichteVerfahren: Knoten kümmern sich um sich und ihren
Nachbarn, dann um Ihre Kinder
Knotenwichtigkeit:
Dummyknoten?
Nachbarknoten?
Normaler Knoten?
Child-Knoten
einzelnes Kind?
Dummy child?
Layoutverfahren
Constraint-Wichtigkeit:
Dummy untereinander?
Child-Nähe? (höhere Gewichtung bei nur
einem Child)
Nachbar Nähe (zu nah? Zu weit weg?)
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren
Das Herzstück des Verfahrens:
void howToMove(weight1, weight2, pos1, pos2, wantedDiff, importance,
&resultDiff1, &resultDiff2)
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
RandomSimpleGraph(G,10,11);Schritt: 0
Info: Veränderung pro Step gering (zum Gucken)
Gewichtungen (bei Weitem) noch nicht optimal
„Ausbruch nach rechts unten“
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
RandomSimpleGraph(G,10,11);Schritt: 1
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
RandomSimpleGraph(G,10,11);Schritt: 5
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
RandomSimpleGraph(G,10,11);Schritt: 10
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
RandomSimpleGraph(G,10,11);Letzer Schritt: „Ganzzahlige“ Positionen
Was konnte man sehen? Nach kurzer Zeit hat sich nicht mehr viel verändert
Es hätten also auch weniger Iterationen zu einem
ähnlichen Ergebnis geführt
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
RandomSimpleGraph(G,10,11);Zum Vergleich: FastHierarchyLayout
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
Noch ein Vergleich (diesmal schneller), diesmal an Julian
<--FHR
Relax-->
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
Vergleich: Iterationen vs. Zeit vs. Ergebnis(Nein, das ist nicht das Gleiche wie bei den vorherigen Beispielen)
Gemessen wird nur die Laufzeit des Layoutverfahrens (Sugi-Overhead egal)
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
FastHierarchyLayout RelaxHierarchyLayoutIterationen: 1
30 15
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
FastHierarchyLayout RelaxHierarchyLayoutIterationen: 5
30 30
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren zum Angucken
FastHierarchyLayout RelaxHierarchyLayoutIterationen: 20
30
125
Martin Böhmer/Dennis Treder/Marina Schwacke
Layoutverfahren
Was haben wir gesehen und was machen wir damit? Die Gewichtungen sind noch nicht gut gewählt (kann man aber ändern)
Spätestens wenn wir mehr als 3 bis 4 Iterationen haben, sind wir langsamer
als FastHierarchieLayout (denn das ist sehr schnell)
Laufzeit bei dichten Graphen besonders schlecht
IterationenAnzahl * KnotenAnzahl * AnzahlJeweiligerKinder
Spagetti! (Siehe Punkt 1)
Aber auch Gutes:
Layout wird nach wenigen Iterationen “stabil“
Es ist anschaulich, was passiert
Martin Böhmer/Dennis Treder/Marina Schwacke
Bewertungskriterien
Zeit
Größe des Gitters
Anzahl der Knicke in Kanten
Winkel von Kanten
Länge von Kanten
Martin Böhmer/Dennis Treder/Marina Schwacke
Bewertungskriterien - Winkel
0°
90° 90°
0°
α
α
Martin Böhmer/Dennis Treder/Marina Schwacke
AT&T Graphen - Allgemein
Anzahl Graphen: 1277
MaxKnoten: 100
MaxKanten: 241
Anzahl Planarer Graphen: 854
Martin Böhmer/Dennis Treder/Marina Schwacke
AT&T – Planare Graphen zu Graphen pro Knotenmenge
Martin Böhmer/Dennis Treder/Marina Schwacke
Vergleich: Gittergröße - AT&T
Martin Böhmer/Dennis Treder/Marina Schwacke
Vergleich: Anzahl Knicke - AT&T
Martin Böhmer/Dennis Treder/Marina Schwacke
Vergleich: Winkel von Kanten - AT&T
Martin Böhmer/Dennis Treder/Marina Schwacke
Vergleich: Kantenlänge - AT&T
Martin Böhmer/Dennis Treder/Marina Schwacke
Zufallsgraphen – Planare Graphen zu Graphen pro Knotenmenge
Martin Böhmer/Dennis Treder/Marina Schwacke
Vergleich: Gittergröße - Zufallsgraphen
Martin Böhmer/Dennis Treder/Marina Schwacke
Vergleich: Anzahl Knicke - Zufallsgraphen
Martin Böhmer/Dennis Treder/Marina Schwacke
Vergleich: Winkel von KantenZufallsgraphen
Martin Böhmer/Dennis Treder/Marina Schwacke
Vergleich: Kantenlänge - Zufallsgraphen
Martin Böhmer/Dennis Treder/Marina Schwacke
Ende
Vielen Dank für's Zuhören