Algorithms for finding noncrossing paths with minimum total length in plane graphs (original) (raw)

Shortest Non-Crossing Walks in the Plane

Proceedings of the Twenty-Second Annual ACM-SIAM Symposium on Discrete Algorithms, 2011

Let G be an n-vertex plane graph with non-negative edge weights, and let k terminal pairs be specified on h face boundaries. We present an algorithm to find k non-crossing walks in G of minimum total length that connect all terminal pairs, if any such walks exist, in 2 O(h 2 ) n log k time. The computed walks may overlap but may not cross each other or themselves. Our algorithm generalizes a result of Takahashi, Suzuki, and Nishizeki [Algorithmica 1996] for the special case h ≤ 2. We also describe an algorithm for the corresponding geometric problem, where the terminal points lie on the boundary of h polygonal obstacles of total complexity n, again in 2 O(h 2 ) n time, generalizing an algorithm of Papadopoulou [Int. J. Comput. Geom. Appl. 1999] for the special case h ≤ 2. In both settings, shortest non-crossing walks can have complexity exponential in h. We also describe algorithms to determine in O(n) time whether the terminal pairs can be connected by any non-crossing walks.

Dynamic algorithms for shortest paths in planar graphs

Theoretical Computer Science, 1993

We propose data structures for maintaining shortest paths in planar graphs in which the weight of an edge is modified. Our data structures allow us to compute, after an update, the shortest-path tree rooted at an arbitrary query node in time O(n Jlog log n) and to perform an update in O((log r~)~). Our data structure can be applied also to the problem of maintaining the maximum flow problem in an s-t planar network.

A linear-time algorithm for edge-disjoint paths in planar graphs

Combinatorica, 1995

In this paper we discuss the problem of finding edge-disjoint paths in a planar, undirected graph such that each path connects two specified vertices on the boundary of the graph. We will focus on the "classical" case where an instance additionally fulfills the so-called evenness-condition. The fastest algorithm for this problem known from the literature requires O (nb/3(loglogn)l/3) time, where n denotes the number of vertices. In this paper now, we introduce a new approach to this problem, which results in an O(n) algorithm. The proof of correctness immediately yields an alternative proof of the Theorem of Okamura and Seymour, which states a necessary and sufficient condition for solvability.

Shortest non-crossing walks in the plane With Amir Nayyeri

Let G be an n-vertex plane graph with non-negative edge weights, and let k terminal pairs be specified on h face boundaries. We present an algorithm to find k non-crossing walks in G of minimum total length that connect all terminal pairs, if any such walks exist, in 2 O(h 2 ) n log k time. The computed walks may overlap but may not cross each other or themselves. Our algorithm generalizes a result of Takahashi, Suzuki, and Nishizeki [Algorithmica 1996] for the special case h ≤ 2. We also describe an algorithm for the corresponding geometric problem, where the terminal points lie on the boundary of h polygonal obstacles of total complexity n, again in 2 O(h 2 ) n time, generalizing an algorithm of Papadopoulou [Int. J. Comput. Geom. Appl. 1999] for the special case h ≤ 2. In both settings, shortest non-crossing walks can have complexity exponential in h. We also describe algorithms to determine in O(n) time whether the terminal pairs can be connected by any non-crossing walks.

Shortest Non-Crossing Rectilinear Paths in Plane Regions

International Journal of Computational Geometry & Applications, 1997

Let A be a plane region inside an outer rectangle with r rectangular obstacles, and let k terminal pairs lie on the boundaries of the outer rectangle and one of the obstacles. This paper presents an efficient algorithm which finds "non-crossing" rectilinear paths in the plane region A, each connecting a terminal pair without passing through any obstacles, and whose total length is minimum. Non-crossing paths may share common points or line segments but do not cross each other in the plane. The algorithm takes time O(n log n) where n = k + r.

Edge-disjoint paths in planar graphs

Journal of Combinatorial Theory, Series B, 1985

Given a planar graph G = (V, E), find k edge-disjoint paths in G connecting k pairs of terminals specified on the outer face of G. Generalizing earlier results of Okamura and Seymour (J. Combin. Theory Ser. B 31 (1981) 75-81) and of the author (Combinatorics 2, No. 4 (1982) 361-371) we solve this problem when each node of G not on the outer face has even degree. The solution involves a good characterization for the solvability and the proof gives rise to an algorithm of complexity 0(1 F'1310gl I'(). In particular, the integral multicommodity flow problem is proved to belong to the problem class P when the underlying graph is outerplanar.

A quick method for finding shortest pairs of disjoint paths

Networks, 1984

Let G be a directed graph containing n vertices, one of which is a distinguished source s, and m edges, each with a non-negative cost. We consider the problem of finding, for each possible sink vertex u, a pair of edge-disjoint paths from s to u of minimum total edge cost. Suurballe has given an O(n2 1ogn)-time algorithm for this problem. We give an implementation of Suurballe's algorithm that runs in O(m log(, +,+)n) time and O(m) space. Our algorithm builds an implicit representation of the n pairs of paths; given this representation, the time necessary to explicitly construct the pair of paths for any given sink is O(1) per edge on the paths.

A software package of algorithms and heuristics for disjoint paths in Planar Networks

Discrete Applied Mathematics, 1999

We present a package for algorithms on planar networks. This package comes with a graphical user interface, which may be used for demonstrating and animating algorithms. Our focus so far has been on disjoint path problems. However, the package is intended to serve as a general framework, wherein algorithms for various problems on planar networks may be integrated and visualized. For this aim, the structure of the package is designed so that integration of new algorithms and even new algorithmic problems amounts to applying a short "recipe." The package has been used to develop new variations of well-known disjoint path algorithms, which heuristically optimize additional NP-hard objectives such as the total length of all paths. We will prove that the problem of ÿnding edge-disjoint paths of minimum total length in a planar graph is NP-hard, even if all terminals lie on the outer face, the Eulerian condition is fulÿlled, and the maximum degree is four. Finally, as a demonstration how PlaNet can be used as a tool for developing new heuristics for NP-hard problems, we will report on results of experimental studies on e cient heuristics for this problem. ? @uni-konstanz.d, WWW http:== www.informatik.uni-konstanz.de/ {brandes, wagner,weihe} (U. Brandes, D. Wagner, K. Weihe), neyer@inf.ethz.ch, WWW http:==www.inf.ethz.ch= personal=neyer (G. Neyer), schlicke@ifor.math.ethz.ch, WWW, http:==www.ifor.math.ethz.ch=sta =schlicke (W. Schlickenrieder).

Min-Sum 2-Paths Problems

Theory of Computing Systems, 2014

An orientation of an undirected graph G is a directed graph obtained by replacing each edge {u, v} of G by exactly one of the arcs (u, v) or (v, u). In the min-sum k-paths orientation problem, the input is an undirected graph G and ordered pairs (s i , t i ), where i ∈ {1, 2, . . . , k}. The goal is to find an orientation of G that minimizes the sum over every i ∈ {1, 2, . . . , k} of the distance from s i to t i .