Refine
Has Fulltext
- yes (9)
Is part of the Bibliography
- yes (9)
Document Type
- Doctoral Thesis (9)
Language
- English (9)
Keywords
- Graphenzeichnen (5)
- graph drawing (4)
- Algorithmus (3)
- Algorithmische Geometrie (2)
- Graph (2)
- Komplexität (2)
- Kreuzung (2)
- complexity (2)
- crossing minimization (2)
- graphs (2)
Institute
Graphs are a frequently used tool to model relationships among entities. A graph is a binary relation between objects, that is, it consists of a set of objects (vertices) and a set of pairs of objects (edges).
Networks are common examples of modeling data as a graph. For example, relationships between persons in a social network, or network links between computers in a telecommunication network can be represented by a graph.
The clearest way to illustrate the modeled data is to visualize the graphs. The field of Graph Drawing deals with the problem of finding algorithms to automatically generate graph visualizations. The task is to find a "good" drawing, which can be measured by different criteria such as number of crossings between edges or the used area. In this thesis, we study Angular Schematization in Graph Drawing. By this, we mean drawings
with large angles (for example, between the edges at common vertices or at crossing points).
The thesis consists of three parts. First, we deal with the placement of boxes. Boxes are axis-parallel rectangles that can, for example, contain text.
They can be placed on a map to label important sites, or can be used to describe semantic relationships between words in a word network. In the second part of the thesis, we consider graph drawings visually guide the
viewer. These drawings generally induce large angles between edges that meet at a vertex. Furthermore, the edges are drawn crossing-free and in a way that
makes them easy to follow for the human eye. The third and final part is devoted to crossings with large angles. In drawings with crossings, it is important to have large angles between edges at their crossing point, preferably right angles.
A graph is an abstract network that represents a set of objects, called vertices, and relations between these objects, called edges. Graphs can model various networks. For example, a social network where the vertices correspond to users of the network and the edges represent relations between the users. To better see the structure of a graph it is helpful to visualize it. A standard visualization is a node-link diagram in the Euclidean plane. In such a representation the vertices are drawn as points in the plane and edges are drawn as Jordan curves between every two vertices connected by an edge. Edge crossings decrease the readability of a drawing, therefore, Crossing Optimization is a fundamental problem in Computer Science. This book explores the research frontiers and introduces novel approaches in Crossing Optimization.
The general map-labeling problem is as follows: given a set of geometric objects to be labeled, or features, in the plane, and for each feature a set of label positions, maximize the number of placed labels such that there is at most one label per feature and no two labels overlap. There are three types of features in a map: point, line, and area features. Unfortunately, one cannot expect to find efficient algorithms that solve the labeling problem optimally.
Interactive maps are digital maps that only show a small part of the entire map whereas the user can manipulate the shown part, the view, by continuously panning, zooming, rotating, and tilting (that is, changing the perspective between a top and a bird view). An example for the application of interactive maps is in navigational devices. Interactive maps are challenging in that the labeling must be updated whenever labels leave the view and, while zooming, the label size must be constant on the screen (which either makes space for further labels or makes labels overlap when zooming in or out, respectively). These updates must be computed in real time, that is, the computation must be so fast that the user does not notice that we spend time on the computation. Additionally, labels must not jump or flicker, that is, labels must not suddenly change their positions or, while zooming out, a vanished label must not appear again.
In this thesis, we present efficient algorithms that dynamically label point and line features in interactive maps. We try to label as many features as possible while we prohibit labels that overlap, jump, and flicker. We have implemented all our approaches and tested them on real-world data. We conclude that our algorithms are indeed real-time capable.
In many cases, problems, data, or information can be modeled as graphs. Graphs can be used as a tool for modeling in any case where connections between distinguishable objects occur. Any graph consists of a set of objects, called vertices, and a set of connections, called edges, such that any edge connects a pair of vertices. For example, a social network can be modeled by a graph by
transforming the users of the network into vertices and friendship relations between users into edges. Also physical networks like computer networks or transportation networks, for example, the metro network of a city, can be seen as graphs.
For making graphs and, thereby, the data that is modeled, well-understandable for users, we need a visualization. Graph drawing deals with algorithms for visualizing graphs. In this thesis, especially the use of crossings and curves is investigated for graph drawing problems under additional constraints. The constraints that occur in the problems investigated in this thesis especially restrict the positions of (a part of) the vertices; this is done either as a hard constraint or as an optimization criterion.
Maps are the main tool to represent geographical information. Users often zoom in and out to access maps at different scales. Continuous map generalization tries to make the changes between different scales smooth, which is essential to provide users with comfortable zooming experience.
In order to achieve continuous map generalization with high quality, we optimize some important aspects of maps. In this book, we have used optimization in the generalization of land-cover areas, administrative boundaries, buildings, and coastlines. According to our experiments, continuous map generalization indeed benefits from optimization.
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.
Constraining graph layouts - that is, restricting the placement of vertices and the routing of edges to obey certain constraints - is common practice in graph drawing.
In this book, we discuss algorithmic results on two different restriction types:
placing vertices on the outer face and on the integer grid.
For the first type, we look into the outer k-planar and outer k-quasi-planar graphs, as well as giving a linear-time algorithm to recognize full and closed outer k-planar graphs Monadic Second-order Logic.
For the second type, we consider the problem of transferring a given planar drawing onto the integer grid while perserving the original drawings topology;
we also generalize a variant of Cauchy's rigidity theorem for orthogonal polyhedra of genus 0 to those of arbitrary genus.
Historical maps are fascinating documents and a valuable source of information for scientists of various disciplines. Many of these maps are available as scanned bitmap images, but in order to make them searchable in useful ways, a structured representation of the contained information is desirable.
This book deals with the extraction of spatial information from historical maps. This cannot be expected to be solved fully automatically (since it involves difficult semantics), but is also too tedious to be done manually at scale.
The methodology used in this book combines the strengths of both computers and humans: it describes efficient algorithms to largely automate information extraction tasks and pairs these algorithms with smart user interactions to handle what is not understood by the algorithm. The effectiveness of this approach is shown for various kinds of spatial documents from the 16th to the early 20th century.
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).