TY - THES A1 - Zink, Johannes T1 - Algorithms for Drawing Graphs and Polylines with Straight-Line Segments T1 - Algorithmen zum Zeichnen von Graphen und Polygonzügen mittels Strecken N2 - Graphs provide a key means to model relationships between entities. They consist of vertices representing the entities, and edges representing relationships between pairs of entities. To make people conceive the structure of a graph, it is almost inevitable to visualize the graph. We call such a visualization a graph drawing. Moreover, we have a straight-line graph drawing if each vertex is represented as a point (or a small geometric object, e.g., a rectangle) and each edge is represented as a line segment between its two vertices. A polyline is a very simple straight-line graph drawing, where the vertices form a sequence according to which the vertices are connected by edges. An example of a polyline in practice is a GPS trajectory. The underlying road network, in turn, can be modeled as a graph. This book addresses problems that arise when working with straight-line graph drawings and polylines. In particular, we study algorithms for recognizing certain graphs representable with line segments, for generating straight-line graph drawings, and for abstracting polylines. In the first part, we first examine, how and in which time we can decide whether a given graph is a stick graph, that is, whether its vertices can be represented as vertical and horizontal line segments on a diagonal line, which intersect if and only if there is an edge between them. We then consider the visual complexity of graphs. Specifically, we investigate, for certain classes of graphs, how many line segments are necessary for any straight-line graph drawing, and whether three (or more) different slopes of the line segments are sufficient to draw all edges. Last, we study the question, how to assign (ordered) colors to the vertices of a graph with both directed and undirected edges such that no neighboring vertices get the same color and colors are ascending along directed edges. Here, the special property of the considered graph is that the vertices can be represented as intervals that overlap if and only if there is an edge between them. The latter problem is motivated by an application in automated drawing of cable plans with vertical and horizontal line segments, which we cover in the second part. We describe an algorithm that gets the abstract description of a cable plan as input, and generates a drawing that takes into account the special properties of these cable plans, like plugs and groups of wires. We then experimentally evaluate the quality of the resulting drawings. In the third part, we study the problem of abstracting (or simplifying) a single polyline and a bundle of polylines. In this problem, the objective is to remove as many vertices as possible from the given polyline(s) while keeping each resulting polyline sufficiently similar to its original course (according to a given similarity measure). N2 - Graphen stellen ein wichtiges Mittel dar, um Beziehungen zwischen Objekten zu modellieren. Sie bestehen aus Knoten, die die Objekte repräsentieren, und Kanten, die Beziehungen zwischen Paaren von Objekten abbilden. Um Menschen die Struktur eines Graphen zu vermitteln, ist es nahezu unumgänglich den Graphen zu visualisieren. Eine solche Visualisierung nennen wir Graphzeichnung. Eine Graphzeichnung ist geradlinig, wenn jeder Knoten als ein Punkt (oder ein kleines geometrisches Objekt, z. B. ein Rechteck) und jede Kante als eine Strecke zwischen ihren beiden Knoten dargestellt ist. Eine sehr einfache geradlinige Graphzeichnung, bei der alle Knoten eine Folge bilden, entlang der die Knoten durch Kanten verbunden sind, nennen wir Polylinie. Ein Beispiel für eine Polylinie in der Praxis ist eine GPS-Trajektorie. Das zugrundeliegende Straßennetzwerk wiederum kann als Graph repräsentiert werden. In diesem Buch befassen wir uns mit Fragen, die sich bei der Arbeit mit geradlinigen Graphzeichnungen und Polylinien stellen. Insbesondere untersuchen wir Algorithmen zum Erkennen von bestimmten mit Strecken darstellbaren Graphen, zum Generieren von geradlinigen Graphzeichnungen und zum Abstrahieren von Polylinien. Im ersten Teil schauen wir uns zunächst an, wie und in welcher Zeit wir entscheiden können, ob ein gegebener Graph ein Stickgraph ist, das heißt, ob sich seine Knoten als vertikale und horizontale Strecken auf einer diagonalen Geraden darstellen lassen, die sich genau dann schneiden, wenn zwischen ihnen eine Kante liegt. Anschließend betrachten wir die visuelle Komplexität von Graphen. Konkret untersuchen wir für bestimmte Graphklassen, wie viele Strecken für jede geradlinige Graphzeichnung notwendig sind, und, ob drei (oder mehr) verschiedene Streckensteigungen ausreichend sind, um alle Kanten zu zeichnen. Zuletzt beschäftigen wir uns mit der Frage, wie wir den Knoten eines Graphen mit gerichteten und ungerichteten Kanten (geordnete) Farben zuweisen können, sodass keine benachbarten Knoten dieselbe Farbe haben und Farben entlang gerichteter Kanten aufsteigend sind. Hierbei ist die spezielle Eigenschaft der betrachteten Graphen, dass sich die Knoten als Intervalle darstellen lassen, die sich genau dann überschneiden, wenn eine Kanten zwischen ihnen verläuft. Das letztgenannte Problem ist motiviert von einer Anwendung beim automatisierten Zeichnen von Kabelplänen mit vertikalen und horizontalen Streckenverläufen, womit wir uns im zweiten Teil befassen. Wir beschreiben einen Algorithmus, welcher die abstrakte Beschreibung eines Kabelplans entgegennimmt und daraus eine Zeichnung generiert, welche die speziellen Eigenschaften dieser Kabelpläne, wie Stecker und Gruppen von zusammengehörigen Drähten, berücksichtigt. Anschließend evaluieren wir die Qualität der so erzeugten Zeichnungen experimentell. Im dritten Teil befassen wir uns mit dem Abstrahieren bzw. Vereinfachen einer einzelnen Polylinie und eines Bündels von Polylinien. Bei diesem Problem sollen aus einer oder mehreren gegebenen Polylinie(n) so viele Knoten wie möglich entfernt werden, wobei jede resultierende Polylinie ihrem ursprünglichen Verlauf (nach einem gegeben Maß) hinreichend ähnlich bleiben muss. KW - Graphenzeichnen KW - Algorithmische Geometrie KW - Algorithmus KW - Algorithmik KW - Polygonzüge KW - graph drawing KW - complexity KW - algorithms KW - straight-line segments KW - polylines KW - graphs KW - Strecken KW - Graphen Y1 - 2024 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-354756 ER - TY - THES A1 - Fleszar, Krzysztof T1 - Network-Design Problems in Graphs and on the Plane T1 - Netzwerk-Design-Probleme in Graphen und auf der Ebene N2 - A network design problem defines an infinite set whose elements, called instances, describe relationships and network constraints. It asks for an algorithm that, given an instance of this set, designs a network that respects the given constraints and at the same time optimizes some given criterion. In my thesis, I develop algorithms whose solutions are optimum or close to an optimum value within some guaranteed bound. I also examine the computational complexity of these problems. Problems from two vast areas are considered: graphs and the Euclidean plane. In the Maximum Edge Disjoint Paths problem, we are given a graph and a subset of vertex pairs that are called terminal pairs. We are asked for a set of paths where the endpoints of each path form a terminal pair. The constraint is that any two paths share at most one inner vertex. The optimization criterion is to maximize the cardinality of the set. In the hard-capacitated k-Facility Location problem, we are given an integer k and a complete graph where the distances obey a given metric and where each node has two numerical values: a capacity and an opening cost. We are asked for a subset of k nodes, called facilities, and an assignment of all the nodes, called clients, to the facilities. The constraint is that the number of clients assigned to a facility cannot exceed the facility's capacity value. The optimization criterion is to minimize the total cost which consists of the total opening cost of the facilities and the total distance between the clients and the facilities they are assigned to. In the Stabbing problem, we are given a set of axis-aligned rectangles in the plane. We are asked for a set of horizontal line segments such that, for every rectangle, there is a line segment crossing its left and right edge. The optimization criterion is to minimize the total length of the line segments. In the k-Colored Non-Crossing Euclidean Steiner Forest problem, we are given an integer k and a finite set of points in the plane where each point has one of k colors. For every color, we are asked for a drawing that connects all the points of the same color. The constraint is that drawings of different colors are not allowed to cross each other. The optimization criterion is to minimize the total length of the drawings. In the Minimum Rectilinear Polygon for Given Angle Sequence problem, we are given an angle sequence of left (+90°) turns and right (-90°) turns. We are asked for an axis-parallel simple polygon where the angles of the vertices yield the given sequence when walking around the polygon in counter-clockwise manner. The optimization criteria considered are to minimize the perimeter, the area, and the size of the axis-parallel bounding box of the polygon. N2 - Ein Netzwerk-Design-Problem definiert eine unendliche Menge, deren Elemente, als Instanzen bezeichnet, Beziehungen und Beschränkungen in einem Netzwerk beschreiben. Die Lösung eines solchen Problems besteht aus einem Algorithmus, der auf die Eingabe einer beliebigen Instanz dieser Menge ein Netzwerk entwirft, welches die gegebenen Beschränkungen einhält und gleichzeitig ein gegebenes Kriterium optimiert. In meiner Dissertation habe ich Algorithmen entwickelt, deren Netzwerke stets optimal sind oder nachweisbar nahe am Optimum liegen. Zusätzlich habe ich die Berechnungskomplexität dieser Probleme untersucht. Dabei wurden Probleme aus zwei weiten Gebieten betrachtet: Graphen und der Euklidische Ebene. Im Maximum-Edge-Disjoint-Paths-Problem besteht die Eingabe aus einem Graphen und einer Teilmenge von Knotenpaaren, die wir mit Terminalpaare bezeichnen. Gesucht ist eine Menge von Pfaden, die Terminalpaare verbinden. Die Beschränkung ist, dass keine zwei Pfade einen gleichen inneren Knoten haben dürfen. Das Optimierungskriterium ist die Maximierung der Kardinalität dieser Menge. Im Hard-Capacitated-k-Facility-Location-Problem besteht die Eingabe aus einer Ganzzahl k und einem vollständigen Graphen, in welchem die Distanzen einer gegebenen Metrik unterliegen und in welchem jedem Knoten sowohl eine numerische Kapazität als auch ein Eröffnungskostenwert zugeschrieben ist. Gesucht ist eine Teilmenge von k Knoten, Facilities genannt, und eine Zuweisung aller Knoten, Clients genannt, zu den Facilities. Die Beschränkung ist, dass die Anzahl der Clients, die einer Facility zugewiesen sind, nicht deren Kapazität überschreiten darf. Das Optimierungskriterium ist die Minimierung der Gesamtkosten bestehend aus den Gesamteröffnungskosten der Facilities sowie der Gesamtdistanz zwischen den Clients und den ihnen zugewiesenen Facilities. Im Stabbing-Problem besteht die Eingabe aus einer Menge von achsenparallelen Rechtecken in der Ebene. Gesucht ist eine Menge von horizontalen Geradenstücken mit der Randbedingung, dass die linke und rechte Seite eines jeden Rechtecks von einem Geradenstück verbunden ist. Das Optimierungskriterium ist die Minimierung der Gesamtlänge aller Geradenstücke. Im k-Colored-Non-Crossing-Euclidean-Steiner-Forest-Problem besteht die Eingabe aus einer Ganzzahl k und einer endlichen Menge von Punkten in der Ebene, wobei jeder Punkt in einer von k Farben gefärbt ist. Gesucht ist für jede Farbe eine Zeichnung, in welcher alle Punkte der Farbe verbunden sind. Die Beschränkung ist, dass Zeichnungen verschiedener Farben sich nicht kreuzen dürfen. Das Optimierungskriterium ist die Minimierung des Gesamtintenverbrauchs, das heißt, der Gesamtlänge der Zeichnungen. Im Minimum-Rectilinear-Polygon-for-Given-Angle-Sequence-Problem besteht die Eingabe aus einer Folge von Links- (+90°) und Rechtsabbiegungen (-90°). Gesucht ist ein achsenparalleles Polygon dessen Eckpunkte die gegebene Folge ergeben, wenn man das Polygon gegen den Uhrzeigersinn entlangläuft. Die Optimierungskriterien sind die Minimierung des Umfangs und der inneren Fläche des Polygons sowie der Größe des notwendigen Zeichenblattes, d.h., des kleinsten Rechteckes, das das Polygon einschließt. N2 - Given points in the plane, connect them using minimum ink. Though the task seems simple, it turns out to be very time consuming. In fact, scientists believe that computers cannot efficiently solve it. So, do we have to resign? This book examines such NP-hard network-design problems, from connectivity problems in graphs to polygonal drawing problems on the plane. First, we observe why it is so hard to optimally solve these problems. Then, we go over to attack them anyway. We develop fast algorithms that find approximate solutions that are very close to the optimal ones. Hence, connecting points with slightly more ink is not hard. KW - Euklidische Ebene KW - Algorithmus KW - Komplexität KW - NP-schweres Problem KW - Graph KW - approximation algorithm KW - hardness KW - optimization KW - graphs KW - network KW - Optimierungsproblem KW - Approximationsalgorithmus KW - complexity KW - Euclidean plane Y1 - 2018 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-154904 SN - 978-3-95826-076-4 (Print) SN - 978-3-95826-077-1 (Online) N1 - Parallel erschienen als Druckausgabe in Würzburg University Press, ISBN 978-3-95826-076-4, 28,90 EUR. PB - Würzburg University Press CY - Würzburg ET - 1. Auflage ER -