This paper addresses the problem of finding shortest paths homotopic to a given disjoint set of paths that wind amongst point obstacles in the plane. We present a faster algorithm than previously known.
IntroductionFinding Euclidean shortest paths in simple polygons is a well-studied problem. The funnel algorithm of Chazelle [3] and Lee and Preparata [10] finds the shortest path between two points in a simple polygon. Hershberger and Snoeyink [9] unify earlier results for computing shortest paths in polygons. They optimize a given path among obstacles in the plane under the Euclidean and link metrics and under polygonal convex distance functions. Related work has been done in addressing a classic VLSI problem, the continuous homotopic routing problem [4,11]. For this problem it is required to route wires with fixed terminals among fixed obstacles when a sketch of the wires is given, i.e., each wire is given a specified homotopy class. If the wiring sketch is not given or the terminals are not fixed, the problem is NP-hard [12,15,16].Some of the early work on continuous homotopic routing was done by Cole and Siegel [4] and Leiserson and Maley [11]. They show that in the L ∞ norm a solution can be found in O(k 3 log n) time and O(k 3 ) space, where n is the number of wires and k is the maximum of the input and output complexities of the wiring. Maley [13] shows how to extend the distance metric to arbitrary polygonal distance functions (including Euclidean distance) and presents a O(k 4 log n) time and O(k 4 ) space algorithm. The best result so far is due to Gao et al. [8] who present a O(kn 2 log(kn)) time and O(kn 2 ) space algorithm. Duncan et al. [6] and Efrat et al. [7] present an O(kn + n 3 ) algorithm for the related fat edge drawing problem: given a planar weighted graph G with maximum degree 1 and an embedding for G, find a planar drawing such that all the edges are drawn as thick as possible and proportional to the corresponding edge weights.The topological notion of homotopy formally captures the notion of deforming paths. Let α, β : [0, 1] −→ R 2 be two continuous curves parameterized by arc-length. Then α and β are homotopic with respect to a set of obstacles V ⊆ R 2 if α can be continuously deformed into β while avoiding the obstacles; more formally, if there exists a continuous function h : [0, 1] × [0, 1] → R 2 with the following three properties: 1