Constraint Graph Drawing
Total Page:16
File Type:pdf, Size:1020Kb
Constrained Graph Drawing Dissertation zur Erlangung des akademischen Grades des Doktors der Naturwissenschaften vorgelegt von Barbara Pampel, geb. Schlieper an der Universit¨at Konstanz Mathematisch-Naturwissenschaftliche Sektion Fachbereich Informatik und Informationswissenschaft Tag der mundlichen¨ Prufung:¨ 14. Juli 2011 1. Referent: Prof. Dr. Ulrik Brandes 2. Referent: Prof. Dr. Michael Kaufmann II Teile dieser Arbeit basieren auf Ver¨offentlichungen, die aus der Zusammenar- beit mit anderen Wissenschaftlerinnen und Wissenschaftlern entstanden sind. Zu allen diesen Inhalten wurden wesentliche Beitr¨age geleistet. Kapitel 3 (Bachmaier, Brandes, and Schlieper, 2005; Brandes and Schlieper, 2009) Kapitel 4 (Brandes and Pampel, 2009) Kapitel 6 (Brandes, Cornelsen, Pampel, and Sallaberry, 2010b) Zusammenfassung Netzwerke werden in den unterschiedlichsten Forschungsgebieten zur Repr¨asenta- tion relationaler Daten genutzt. Durch geeignete mathematische Methoden kann man diese Netzwerke als Graphen darstellen. Ein Graph ist ein Gebilde aus Kno- ten und Kanten, welche die Knoten verbinden. Hierbei k¨onnen sowohl die Kan- ten als auch die Knoten weitere Informationen beinhalten. Diese Informationen k¨onnen den einzelnen Elementen zugeordnet sein, sich aber auch aus Anordnung und Verteilung der Elemente ergeben. Mit Algorithmen (strukturierten Reihen von Arbeitsanweisungen) aus dem Gebiet des Graphenzeichnens kann man die unterschiedlichsten Informationen aus verschiedenen Forschungsbereichen visualisieren. Graphische Darstellungen k¨onnen das Verst¨andnis von Datenmengen entscheidend unterstutzen¨ und bilden eine hervorragende Basis fur¨ weitere Untersuchungen und neue Erkenntnisse. Die Aussagekraft und der Informationsgehalt sowie die Verst¨andlichkeit solcher Graphen h¨angen von verschiedenen Gesichtspunkten ab. Dazu geh¨oren Knoten- verteilung, Planarit¨at (kreuzungsfreie Einbettung) und weitere ¨asthetische Ei- genschaften. Die besonderen Informationskonstellationen und Strukturmerkmale verschiedener Datenmengen erfordern Graphen, deren Darstellungsform der Pro- blemstellung angepasst ist. So ist es wichtig, effiziente Algorithmen zum Zeich- nen von Graphen zu finden und zu untersuchen, die aufgrund der Anforderungen konkreter Anwendungen spezielle geometrische Eigenschaften haben. Fur¨ einige Problemstellungen konnten im Rahmen dieser Arbeit Algorithmen zum automa- tisierten Zeichnen solcher Graphen entworfen werden. Bedingung fur¨ die entwi- ckelten Methoden war die korrekte Wiedergabe der Daten, Optimierungsziel ist die Lesbarkeit. Fur¨ andere Probleme konnte deren Zugeh¨origkeit zur Komple- xit¨atsklasse der -schweren Probleme bewiesen werden, was bedeutet, dass NP es kaum Hoffnung auf eine effiziente und exakte L¨osung gibt. Ist ein Problem als -schwer oder -vollst¨andig bekannt, rechtfertigt dies eine Lockerung NP NP der Vorgaben, motiviert die Suche nach Heuristiken und N¨aherungsverfahren sowie nach anderen Anforderungen an die Zeichnung, welche eventuell ¨ahnliche Vorteile fur¨ die Interpretation haben. IV Ergebnisse Winkel und Abst¨ande Zu entscheiden, ob ein allgemeiner Graph mit festgelegten Knotenabst¨anden oder Winkeln zwischen benachbarten Kanten kreuzungsfrei gezeichnet werden kann, ist als -schwer bekannt. Wir schr¨anken die Problemstellungen auf eine h¨aufig NP verwendete Teilklasse von Graphen ein: B¨aume sind zusammenh¨angende Gra- phen, bei denen es zwischen je zwei Knoten nur genau einen Weg im Graphen gibt. So werden Wegskizzen aufgrund ihrer Struktur mit Abzweigungen und We- gen als B¨aume dargestellt. Bedingungen an den Verlauf der Kanten helfen dem Nutzer bei der Interpretation. Ahnliche¨ Problemstellungen tauchen auch in an- deren Anwendungen auf. Phylogenetische B¨aume repr¨asentieren zum Beispiel Verwandtschaftsverh¨altnisse zwischen verschiedenen Tieren oder Pflanzen, wo- bei jeder Knoten eine Spezies repr¨asentiert und die L¨ange eines Weges zwischen zwei solchen Knoten die evolution¨are Distanz dieser Spezies widerspiegeln soll. Phylogenetische B¨aume haben also festgelegte, aber m¨oglicherweise unterschied- liche Kantenl¨angen. In Kapitel 3 wurden nun Linearzeit-Algorithmen zum kreuzungsfreien Zeich- nen von B¨aumen entwickelt, fur¨ welche die geometrischen Abst¨ande je zweier durch eine Kante miteinander verbundenen Knoten, die Winkel zwischen be- nachbarten Kanten oder beides vorgegeben sind. Reihenfolge Oft erleichtert eine schematisierte Darstellung eines Graphen seine Interpretati- on. Fur¨ den Betrachter wichtige Eigenschaften des ursprunglichen¨ Layouts, wie zum Beispiel die relative Lage der Knoten bei der Ver¨anderung geographischer Netzwerke, sollten bei der Schematisierung erhalten bleiben. (Misue, Eades, Lai, and Sugiyama, 1995) diskutierten, wie wichtig die Erhaltung einer soge- nannten "mental map"bei der Ver¨anderung von Graphen ist. Eines der Modelle ist die Erhaltung der orthogonalen Reihenfolge der Knoten, ihrer senkrechten und waagrechten Anordnung. In Kapitel 4 wurde fur¨ drei typische Anforderungen an eine schematisierte Zeichnung untersucht, ob sie unter der Bedingungen, die orthogonale Reihen- folge der Knoten einzuhalten, effizient erfullt¨ werden k¨onnen. Eine M¨oglichkeit die Zeichnung eines Graphen zu vereinfachen ist, fur¨ die Kanten nur bestimmte Richtungen - zun¨achst nur waagrecht und senkrecht - zu erlauben. Da der Stil, in dem U-Bahnpl¨ane typischerweise gezeichnet werden, von Betrachtern als beson- ders ubersichtlich¨ und leicht verst¨andlich empfunden wird, ist das Schematisieren von Pfaden, so dass alle Kanten entweder waagrecht, senkrecht oder diagonal im V Winkel von 45◦ gezeichnet werden, besonders interessant. Eine weitere m¨ogliche Einschr¨ankung ist, die L¨ange der Kanten festzulegen. Hier wurde das Problem betrachtet, einen Pfad zu schematisieren, so dass alle Kanten dieselbe L¨ange haben. Es konnte bewiesen werden, dass das Problem, zu entscheiden, ob ein Graph nach einer dieser Vorgaben schematisierbar ist, ohne Kantenkreuzungen oder Kanten der L¨ange null einzufuhren,¨ unter Erhaltung der orthogonalen Kno- tenreihenfolge -schwer ist. NP Richtungen Gegeben sei eine Menge von Knoten und eine Menge von Pfaden, wobei jeder Pfad eine Sequenz von Knoten ist. Beim Zeichnen der Pfade bekommt jeder Kno- ten Koordinaten zugewiesen. Eine Problemstellung ist nun, die Koordinaten der Knoten so zu w¨ahlen, dass alle Pfade streng monoton wachsend in eine Richtung sind. Hier kann weiter unterschieden werden, ob eine solche Monotonie-Richtung parallel zu einer der Dimensions-Achsen sein soll, oder beliebig ist. Solche Pfa- de auf einer Knotenmenge k¨onnten unter anderem zur Veranschaulichung von Karrieren genutzt werden, zum Beispiel von Trainern, die zwischen den Mann- schaften einer Liga wechseln. Ein verwandtes Problem ist das betweennes-Problem. Gegeben ist eine Menge von Punkten und eine Menge von betweennes-Beziehungen, in dem Sinne, dass fur¨ zwei Punkte ein dritter angegeben wird, der in mindestens einer der Dimen- sionen zwischen den beiden anderen liegen muss. Die betweennes-Beziehungen k¨onnen also durch Pfade der L¨ange 2 beschrieben werden, die in Richtung einer der Dimensionen streng monoton sein mussen.¨ Die Frage ist also, ob man in d- Dimensionen den Punkten so Koordinaten zuweisen kann, dass alle betwenness- Beziehungen erfullt¨ sind. Das Problem ist im eindimensionalen als -schwer bekannt. NP In Kaptitel 5 konnte sowohl fur¨ das betweennes-Problem, als auch das Ent- scheidungsproblem fur¨ streng monotone Trajektorien das -schwere-Resultat NP in den 2- und in den 3-dimensionalen Raum ubertragen¨ werden, ebenso wie das Entscheidungsproblem fur¨ streng monotone Trajektorien in den d-dimensionalen Raum. Form W¨ahrend in einem Graphen jede Kante genau zwei Endknoten hat, sind Hy- pergraphen allgemeiner definiert. Eine Hyperkante ist eine Teilmenge der Kno- tenmenge. Damit k¨onnen Hypergraphen uberall¨ dort Verwendung finden, wo eine Menge von Elementen weiter aufgeteilt wird, zum Beispiel bei Datenbank- systemen oder sozialen Netzwerken. Eine M¨oglichkeit solche Hypergraphen zu VI zeichnen sind Tr¨ager. Ein Tr¨ager eines Hypergraphen ist ein Graph, in dem jeder durch eine Hyperkante induzierte (d.h. alle Knoten der Hyperkante enthaltende) Teilgraph zusammenh¨angend ist. Motiviert durch die Ubersichtlichkeit¨ von U- Bahn-Pl¨anen wurde in Kapitel 6 die Anforderung untersucht, dass jeder durch die Hyperkante induzierte Teilgraph ein Pfad ist. Neben einigen Ergebnissen zu monotonen, minimalen und planaren pfadbasierten Tr¨agern ist unser zentra- les Resultat eine Charakterisierung der Hypergraphen, die einen pfadbasierten Baumtr¨ager haben und ein Algorithmus, um einen solchen effizient zu berechnen, falls er existiert. Acknowledgements I am so glad that my dream of achieving a PhD in computer science has come true, even though I have not been a typical PhD-student. While following my husband's employments through the world and especially after the birth of my daughter Sophia, I had to count on the flexibility and the support of so many people and I am deeply grateful for all the help I have received! First and foremost I would like to thank Ulrik Brandes for being a great advisor. His enthusiasm and his knowledge are impressing and inspiring. I am grateful for his encouragement, his patience, and for making it possible to continue my work while following my family. I thank all my colleagues from the algorithmics research group at the Uni- versity of Konstanz and especially our secretary, Christine Agorastos, for being my link to Konstanz by helping me with whatever