183 research outputs found

### A Sidetrack-Based Algorithm for Finding the k Shortest Simple Paths in a Directed Graph

We present an algorithm for the k shortest simple path problem on weighted
directed graphs (kSSP) that is based on Eppstein's algorithm for a similar
problem in which paths are allowed to contain cycles. In contrast to most other
algorithms for kSSP, ours is not based on Yen's algorithm and does not solve
replacement path problems. Its worst-case running time is on par with
state-of-the-art algorithms for kSSP. Using our algorithm, one may find O(m)
simple paths with a single shortest path tree computation and O(n + m)
additional time per path in well-behaved cases, where n is the number of nodes
and m is the number of edges. Our computational results show that on random
graphs and large road networks, these well-behaved cases are quite common and
our algorithm is faster than existing algorithms by an order of magnitude.
Further, the running time is far better predictable due to very small
dispersion

### A fast 0(n) Embedding Algorithm, based on the Hopcroft-Tarjan Planary Test

The embedding problem for a planar undirected graph G = (V,E) consists of constructing adjacency lists A(v) for each node v in V, in which all the neighbors of v appear in clockwise order with respect to a planar drawing of G. Such a set of adjacency lists is called a (combinatorial) embedding of G. Chiba presented a linear time algorithm based on the 'vertex-addition' planarity testing algorithm of Lempel, Even and Cederbaum using a PQ-tree. It is very complicated to implement this data structure. He also pointed out that it is fairly complicated to modify the linear 'path-addition' planarity testing algorithm of Hopcroft and Tarjan, such that it produces an embedding. We present a straightforward extension of the Hopcroft and Tarjan planarity testing algorithm which is easy to implement. Our method runs in linear time and performs very efficiently in practice

### Faster Algorithms for the Maximum Common Subtree Isomorphism Problem

The maximum common subtree isomorphism problem asks for the largest possible
isomorphism between subtrees of two given input trees. This problem is a
natural restriction of the maximum common subgraph problem, which is ${\sf
NP}$-hard in general graphs. Confining to trees renders polynomial time
algorithms possible and is of fundamental importance for approaches on more
general graph classes. Various variants of this problem in trees have been
intensively studied. We consider the general case, where trees are neither
rooted nor ordered and the isomorphism is maximum w.r.t. a weight function on
the mapped vertices and edges. For trees of order $n$ and maximum degree
$\Delta$ our algorithm achieves a running time of $\mathcal{O}(n^2\Delta)$ by
exploiting the structure of the matching instances arising as subproblems. Thus
our algorithm outperforms the best previously known approaches. No faster
algorithm is possible for trees of bounded degree and for trees of unbounded
degree we show that a further reduction of the running time would directly
improve the best known approach to the assignment problem. Combining a
polynomial-delay algorithm for the enumeration of all maximum common subtree
isomorphisms with central ideas of our new algorithm leads to an improvement of
its running time from $\mathcal{O}(n^6+Tn^2)$ to $\mathcal{O}(n^3+Tn\Delta)$,
where $n$ is the order of the larger tree, $T$ is the number of different
solutions, and $\Delta$ is the minimum of the maximum degrees of the input
trees. Our theoretical results are supplemented by an experimental evaluation
on synthetic and real-world instances

### Automatisches Layout von Diagrammen

Wir geben eine Einführung in das Gebiet des automatischen Zeichnens von Diagrammen und zeigen auf, wie mathematische und algorithmische Methoden des Operations Research dazu beitragen, qualitativ hochwertige Layouts praktisch effizient zu erzeugen

- …