Zusammenfassung und Ausblick

Werbung
Kapitel 5
Zusammenfassung und Ausblick
Dieser Arbeit liegt ein Algorithmus zugrunde, der für eine gegebene planare Darstellung eines Graphen mit maximalem Knotengrad vier eine regionenerhaltende
orthogonale Zeichnung produziert. Diese orthogonale Gittereinbettung weist die
minimale Anzahl von Knicken auf [Tam87]. Für viele Anwendungen zählen Orthogonalität und eine geringe Anzahl von Knicken zu den angestrebten ästhetischen
Kriterien, die an eine geometrische Darstellung eines planaren Graphen gestellt
werden. Weitere Kriterien wie Minimalität der Kantenlängen und des Platzverbrauchs werden durch diesen Algorithmus ebenfalls positiv beeinflußt.
Das Verfahren basiert auf einer Transformation der Eingabe in ein Netzwerk, aus
dem dann durch Berechnung des minimalen Kostenflusses eine Erweiterung der
planaren Darstellung abgeleitet wird. Diese sogenannte orthogonale Repräsentation stellt nun alle Informationen bereit, die nötig sind, um die Form einer orthogonalen Zeichnung des Eingabegraphen zu charakterisieren. Eine solche Darstellung
enthält für jede Kante einen Binärstring, der Aufschluß über die Anordnung der
– und –Knicke entlang der Kante gibt, und einen Winkel, der die Lage zur
Nachfolgerkante bestimmt.
Der Aufbau des Netzwerks geschieht dabei folgendermaßen: Jedem Knoten und
jeder Region des Eingabegraphen entspricht ein Knoten im Netzwerk. Ein Fluß
ist nur zwischen Knoten und ihren adjazenten Regionen sowie zwischen benachbarten Regionen möglich. Die Analogie zwischen Netzwerk und orthogonaler Re präsentation basiert auf der Tatsache, daß jede Flußeinheit einem Winkel von
entspricht. Ferner modellieren die Flußerhaltungsregeln an den Knoten genau die
Korrektheit einer solchen Darstellung; es wird gewährleistet, daß die Winkelsum beträgt und daß jede Region die Form eines rekme um die Knoten genau tilinearen Polygons erhält. Jeder Knoten produziert“ nun abhängig von seinem
”
Grad eine gewisse Anzahl von
–Winkeln, die eventuell von den Regionen ver”
braucht“ werden und andernfalls Kosten verursachen, indem sie an andere Regionen weitergegeben werden. Diese Kosten entsprechen den Knicken in der Zeichnung.
69
70
KAPITEL 5. ZUSAMMENFASSUNG UND AUSBLICK
Um die orthogonale Darstellung zu dimensionieren, werden den Kanten konsistente, ganzzahlige Längen zugewiesen. Dazu wird die orthogonale Darstellung normalisiert, d. h. in eine Repräsentation transformiert, in der alle innere Regionen die
Form eines Rechtecks haben und die Form der äußeren Region durch das Komplement eines Rechtecks gegeben ist. Dies geschieht durch das Einfügen künstlicher
Knoten und Kanten. Den Kanten der normalisierten Darstellung können nun mit
Hilfe zweier weiterer Netzwerke Längen zugewiesen werden; die Zuweisung für
horizontale und für vertikale Kantensegmente geschieht dabei getrennt. Die Flußerhaltungsregeln an den Knoten gewährleisten, daß gegenüberliegende Seiten einer
Region gleichlang gezeichnet werden; so erhält man eine dimensionierte normalisierte Repräsentation. Jetzt können die zusätzlichen Knoten und Kanten wieder
entfernt werden und der Eingabegraph kann gezeichnet werden.
Die Laufzeit des Algorithmus wird durch die Zeit zur Lösung der minimalen Kostenflußprobleme dominiert; alle anderen Schritte sind in Linearzeit durchführbar.
Mit dem Augmentierungsalgorithmus [Law76] erreicht man so eine Gesamtlaufzeit von , wobei die Anzahl der Knoten im eingegebenen Graphen
bezeichnet. Der Platzverbrauch der produzierten Zeichnung ist , allerdings
werden durch die Normalisierung viele Kanten länger als eigentlich nötig gezeichnet. Es wird eine Möglichkeit angegeben, wie der Platzverbrauch der Zeichnung
verringert werden kann: Dazu wird die Längenzuweisung durch mehrfache Berechnung eines Linearen Programms vorgenommen, das anfänglich nur Nebenbedingungen erhält, die sich direkt aus der orthogonalen Repräsentation ergeben.
Werden die Bedingungen für eine korrekte orthogonale Gittereinbettung verletzt,
so kommen neue Nebenbedingungen hinzu, die dieses Problem lokal beheben. Dieses Verfahren zur Längenzuweisung unterscheidet sich von allen bisher bekannten
Methoden.
Nach einer Einleitung in die Thematik (Kapitel 1) und der Angabe der mathematischen Grundlagen in Kapitel 2 beschäftigt sich das dritte Kapitel mit den einzelnen
Schritten des zitierten Verfahrens. Da dieses jedoch auf die Teilklasse der planaren
Graphen mit Maximalknotengrad vier (4–planare Graphen) eingeschränkt ist und
in vielen Anwendungen allgemeine planare oder planarisierte Graphen gezeichnet werden sollen, enthält Kapitel 4 eine Erweiterung des Algorithmus auf planare
Graphen mit unbeschränktem Knotengrad.
Es liegt nahe, den bekannten Algorithmus zu erweitern. Die Tatsache, daß Gittereinbettungen nur für 4–planare Graphen möglich sind, motiviert die Formulierung
einer neuen Anforderung an die produzierte Zeichnung; dies wird durch die Definiton der quasi–orthogonalen Gittereinbettung erreicht. Soweit es möglich ist,
bleiben die Kriterien einer reinen orthogonalen Einbettung bestehen: Knoten und
Knicke müssen weiterhin auf Gitterpunkte plaziert werden und Kanten dürfen nur
lokal diagonal verlaufen. Insbesondere müssen alle 4–planaren Untergraphen orthogonal eingebettet sein.
Um eine solche quasi–orthogonale Einbettung zu erreichen, wird ein allgemeiner
71
planarer Graph in einen 4–planaren Graphen transformiert, indem jeder Knoten mit durch eine Region mit adjazenten Knoten ersetzt wird. Diese
Region wird Käfig genannt, da ihre Ausmaße die spätere Plazierung des ersetzten Knotens begrenzen. Der stellvertretende 4–planare Graph kann nun gezeichnet
werden, wobei gewährleistet wird, daß die Käfige die Form eines Rechtecks annehmen. Dies wird durch eine geeignete Beschränkung der Kapazitäten des Netzwerks
erreicht, so daß innerhalb von Regionen weder –Winkel noch Knicke entstehen können.
Es wird gezeigt, daß die Modifikation des Netzwerks nicht die Konsistenz der
entsprechenden orthogonalen Darstellung verletzt: Der minimale Kostenfluß beschreibt eine knickminimale Darstellung des transformierten Graphen, unter der
Nebenbedingung, daß alle Käfige die Form eines Rechtecks haben. Nachdem eine
Gittereinbettung des 4–planaren Graphen gefunden wurde, kann die Transformation wieder rückgängig gemacht werden. Ein ursprünglicher Knoten mit Grad
! wird dazu auf einen Gitterpunkt innerhalb seines entsprechenden Käfigs
plaziert. Dieser Punkt wird so gewählt, daß eine maximale Anzahl von Kanten ohne
Knick zu diesem Knoten führt. Anschließend wird wieder mit seinen ehemaligen
Nachbarn verbunden, und eine quasi–orthogonale Einbettung ist realisiert.
Anhang A dieser Diplomarbeit enthält die vollständig dokumentierte Implementierung des beschriebenen Verfahrens im cweb–Format. Hierbei erfolgt die Längenzuweisung wahlweise mit der Netzwerkmethode oder mit einem Linearen Programm. Der Algorithmus ist in zwei Graphvisualisierungssysteme integriert und ist
Teil der Beta–Version der am Max–Planck–Institut für Informatik entwickelten Bibliothek effizienter Algorithmen und Datenstrukturen (LEDA). Anhang B enthält
einige Beispielzeichnungen, die mit dem Algorithmus erstellt wurden. Dabei zeigt
sich, daß das Verfahren besonders gut funktioniert, wenn der entsprechende Graph
nicht von Knoten mit hohem Grad dominiert wird. Es werden Beispiele aus der Praxis angegeben (Zustandsgraphen aus dem Bereich der Automatisierungstechnik),
die diese Bedingungen erfüllen und deren produzierte Zeichnungen gegenüber den
von Hand gezeichneten Originalen viele Vorteile aufweisen. Andere Beispiele zeigen aber das Hauptproblem der Methode auf: Es ist mit dem verfolgten Ansatz
nicht möglich, die Käfige in ihrer Dimension zu begrenzen. Dies hat zur Folge,
daß die Winkel an den Knoten mit hohem Grad sehr klein werden können, was die
Zeichnung unübersichtlich macht. Dieses Problem kann aber teilweise behoben
werden, indem für das Routing der Kanten innerhalb der Käfige bessere Strategien
verwendet werden. Ferner hat sich während der Implementierung des Verfahrens
herausgestellt, daß der Längenzuweisung eine große Bedeutung zukommt. Ideal wäre es, die dabei auftretenden zweidimensionalen Kompaktierungsprobleme
gleichberechtigt zur Knickminimierung zu betrachten, so daß sich diese Optimierungsziele gegenseitig beeinflussen können.
Die ästhetischen Kriterien, die durch die Definition der quasi–orthogonalen Gittereinbettung impliziert werden, sind durchaus anstrebenswert. Wenn es gelingt,
zusätzlich zu den geforderten Bedingungen, den kleinsten Winkel der Zeichnung
72
KAPITEL 5. ZUSAMMENFASSUNG UND AUSBLICK
zu maximieren, so weisen die produzierten Zeichnungen ein hohes Maß an Übersichtlichkeit und Klarheit auf.
Das beschriebene Verfahren eignet sich zudem besonders gut zum Zeichnen von
nicht–planaren Graphen, die mit Planarisierungsverfahren behandelt wurden. Die
nötigen Kreuzungen werden durch künstliche Knoten repräsentiert; da diese stets
den Grad vier haben, werden sie in der produzierten Zeichnung auch als Kreuz gezeichnet, was bei anderen Verfahren nicht gegeben ist (s. dazu z. B. Abb. B.10 auf
S. 115). Ferner ist es möglich, den vorgestellten Algorithmus auszubauen, so daß
auch Beschriftungsprobleme in die Berechnung der einzelnen Schritte integriert
werden können.
Herunterladen