Results 1  10
of
20
Geometric Shortest Paths and Network Optimization
 Handbook of Computational Geometry
, 1998
"... Introduction A natural and wellstudied problem in algorithmic graph theory and network optimization is that of computing a "shortest path" between two nodes, s and t, in a graph whose edges have "weights" associated with them, and we consider the "length" of a path to be the sum of the weights of t ..."
Abstract

Cited by 149 (13 self)
 Add to MetaCart
Introduction A natural and wellstudied problem in algorithmic graph theory and network optimization is that of computing a "shortest path" between two nodes, s and t, in a graph whose edges have "weights" associated with them, and we consider the "length" of a path to be the sum of the weights of the edges that comprise it. Efficient algorithms are well known for this problem, as briefly summarized below. The shortest path problem takes on a new dimension when considered in a geometric domain. In contrast to graphs, where the encoding of edges is explicit, a geometric instance of a shortest path problem is usually specified by giving geometric objects that implicitly encode the graph and its edge weights. Our goal in devising efficient geometric algorithms is generally to avoid explicit construction of the entire underlying graph, since the full induced graph may be very large (even exponential in the input size, or infinite). Computing an optimal
Approximation Algorithms for Disjoint Paths Problems
, 1996
"... The construction of disjoint paths in a network is a basic issue in combinatorial optimization: given a network, and specified pairs of nodes in it, we are interested in finding disjoint paths between as many of these pairs as possible. This leads to a variety of classical NPcomplete problems for w ..."
Abstract

Cited by 139 (0 self)
 Add to MetaCart
The construction of disjoint paths in a network is a basic issue in combinatorial optimization: given a network, and specified pairs of nodes in it, we are interested in finding disjoint paths between as many of these pairs as possible. This leads to a variety of classical NPcomplete problems for which very little is known from the point of view of approximation algorithms. It has recently been brought into focus in work on problems such as VLSI layout and routing in highspeed networks; in these settings, the current lack of understanding of the disjoint paths problem is often an obstacle to the design of practical heuristics.
Computing Minimum Length Paths of a Given Homotopy Class
 Comput. Geom. Theory Appl
, 1991
"... In this paper, we show that the universal covering space of a surface can be used to unify previous results on computing paths in a simple polygon. We optimize a given path among obstacles in the plane under the Euclidean and link metrics and under polygonal convex distance functions. Besides reveal ..."
Abstract

Cited by 74 (7 self)
 Add to MetaCart
In this paper, we show that the universal covering space of a surface can be used to unify previous results on computing paths in a simple polygon. We optimize a given path among obstacles in the plane under the Euclidean and link metrics and under polygonal convex distance functions. Besides revealing connections between the minimum paths under these three distance functions, the framework provided by the universal cover leads to simplified lineartime algorithms for shortest path trees, for minimumlink paths in simple polygons, and for paths restricted to c given orientations. 1 Introduction If a wire, a pipe, or a robot must traverse a path among obstacles in the plane, then one might ask what is the best route to take. For the wire, perhaps the shortest distance is best; for the pipe, perhaps the fewest straightline segments. For the robot, either might be best depending on the relative costs of turning and moving. In this paper, we find shortest paths and shortest closed curve...
Computing Homotopic Shortest Paths Efficiently
"... We give algorithms to find shortest paths homotopic to given disjoint paths that wind amongst n point obstacles in the plane. Our deterministic algorithm runs in time O(k log n+n √n), and the randomized version in time O(k log n+n(log n)1(1+ε)), where k is the input plus output sizes o ..."
Abstract

Cited by 24 (2 self)
 Add to MetaCart
We give algorithms to find shortest paths homotopic to given disjoint paths that wind amongst n point obstacles in the plane. Our deterministic algorithm runs in time O(k log n+n √n), and the randomized version in time O(k log n+n(log n)1(1+ε)), where k is the input plus output sizes of the paths.
Drawing with Fat Edges
 INTERNATIONAL JOURNAL OF FOUNDATIONS OF COMPUTER SCIENCE
"... Traditionally, graph drawing algorithms represent vertices as circles and edges as curves connecting the vertices. We introduce the problem of drawing with “fat ” edges, i.e., with edges of variable thickness. The thickness of an edge is often used as a visualization cue, to indicate importance, or ..."
Abstract

Cited by 21 (7 self)
 Add to MetaCart
Traditionally, graph drawing algorithms represent vertices as circles and edges as curves connecting the vertices. We introduce the problem of drawing with “fat ” edges, i.e., with edges of variable thickness. The thickness of an edge is often used as a visualization cue, to indicate importance, or to convey some additional information. We present a model for drawing with fat edges and a corresponding polynomial time algorithm that uses the model. We focus on a restricted class of graphs that occur in VLSI wire routing and show how to extend the algorithm to general planar graphs. We show how to convert an arbitrary wire routing into a homotopically equivalent routing that maximizes the distance between any two wires. Among such, we obtain the routing with minimum total wire length. A homotopically equivalent routing that maximizes the distance between any two wires yields a graph drawing which maximizes edge thickness. Finally, our algorithm also allows for different edge weights, that is, the requirement for unit wire thickness can be removed.
Purely Functional RandomAccess Lists
 In Functional Programming Languages and Computer Architecture
, 1995
"... We present a new data structure, called a randomaccess list, that supports array lookup and update operations in O(log n) time, while simultaneously providing O(1) time list operations (cons, head, tail). A closer analysis of the array operations improves the bound to O(minfi; log ng) in the wor ..."
Abstract

Cited by 17 (2 self)
 Add to MetaCart
We present a new data structure, called a randomaccess list, that supports array lookup and update operations in O(log n) time, while simultaneously providing O(1) time list operations (cons, head, tail). A closer analysis of the array operations improves the bound to O(minfi; log ng) in the worst case and O(log i) in the expected case, where i is the index of the desired element. Empirical evidence suggests that this data structure should be quite efficient in practice. 1 Introduction Lists are the primary data structure in every functional programmer 's toolbox. They are simple, convenient, and usually quite efficient. The main drawback of lists is that accessing the ith element requires O(i) time. In such situations, functional programmers often find themselves longing for the efficient random access of arrays. Unfortunately, arrays can be quite awkward to implement in a functional setting, where previous versions of the array must be available even after an update. Since arra...
Data Structural Bootstrapping, Linear Path Compression, and Catenable Heap Ordered Double Ended Queues
 SIAM Journal on Computing
, 1992
"... A deque with heap order is a linear list of elements with realvalued keys which allows insertions and deletions of elements at both ends of the list. It also allows the findmin (equivalently findmax) operation, which returns the element of least (greatest) key, but it does not allow a general delet ..."
Abstract

Cited by 15 (7 self)
 Add to MetaCart
A deque with heap order is a linear list of elements with realvalued keys which allows insertions and deletions of elements at both ends of the list. It also allows the findmin (equivalently findmax) operation, which returns the element of least (greatest) key, but it does not allow a general deletemin (deletemax) operation. Such a data structure is also called a mindeque (maxdeque) . Whereas implementing mindeques in constant time per operation is a solved problem, catenating mindeques in sublogarithmic time has until now remained open. This paper provides an efficient implementation of catenable mindeques, yielding constant amortized time per operation. The important algorithmic technique employed is an idea which is best described as data structural bootstrapping: We abstract mindeques so that their elements represent other mindeques, effecting catenation while preserving heap order. The efficiency of the resulting data structure depends upon the complexity of a special case of pa...
On continuous homotopic one layer routing
 In Proceedings of the 4th Annual Symposium on Computational Geometry
, 1988
"... Abstract: We give an O(n slog n) time and O(n s) space algorithm for the continuous homotopic one layer routing problem. The main contribution is an extension of the sweep paradigm to a universal cover space of the plane. 1. Problem Definition An input of the continuous homotopic one layer routin ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
Abstract: We give an O(n slog n) time and O(n s) space algorithm for the continuous homotopic one layer routing problem. The main contribution is an extension of the sweep paradigm to a universal cover space of the plane. 1. Problem Definition An input of the continuous homotopic one layer routing problem (CHRP) consists of a set W = {wl,..., wt} of paths (also called wires) and a set O C_ R 2 of obstacles. A path is a continuous curve. We assume that wires do not intersect and that they are disjoint from all obstacles. A solution to a CHRP is a set P = {Pl,...,pl} of paths which is obtained by a homotopic shift (precise definition below) from W such that U(p~):= {z;dist(z, pi) < 1/2} is a simply connected region of the plane, U(pi) N U(pj) = 0 for i # j and U(pi) N U(O) = 0 Vi. Here dist denotes the Euclidian distance. An output to a CHRP is either a solution or the indication that no solution exists. Figure 1 gives an example of a CHRP. Let us now give precise definitions. Supported by DFG, SFB 124, TP B2. Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission.
SURF: Rubberband Routing System for Multichip Modules
 IEEE Design and Test of Computers
, 1993
"... This paper describes SURFa new routing system designed specifically to meet these challenges. The strength of the SURF system is derived from its extremely flexible rubberband data representation. The rubberband model is an ideal framework for performancedriven and costdriven routing and natu ..."
Abstract

Cited by 9 (5 self)
 Add to MetaCart
This paper describes SURFa new routing system designed specifically to meet these challenges. The strength of the SURF system is derived from its extremely flexible rubberband data representation. The rubberband model is an ideal framework for performancedriven and costdriven routing and naturally supports: rectilinear, octilinear, and "allangle" wiring patterns; oneandahalflayer routing; even wiring distribution; and powerful manual editing. 1 Introduction Current advances in packaging technology are placing new demands on today's CAD systems. In particular, the challenges of designing interconnect networks for thinfilm multichip modules (MCMs) strain existing routing system to or beyond their limits. A multichip module has several bare chips mounted and interconnected on a multilayer substrate, which functions as a single integrated circuit. The difficulties in routing MCM substrates stem from the scale of the problem and from the need to design high performance and/or low cost substrates. An MCM design may consist of hundreds or thousands of nets. Because most thinfilm MCMs have a fine pitch and few routing layers, the complexity of a single layer is much higher than a typical printed circuit board. Performance and cost goals may also impose constraints on the routing geometry that are difficult to satisfy with existing systems. Some of these include: relaxation of onelayer onedirection, arbitrary angle routing, variable width and spacing, and evenly distributed wiring. In addition it is also important to support an incremental design style. In reality, a design never progresses from the initial 2. SURF 2 specification to the final product without undergoing several revisions. So, it is important to localize small changes in order to minimize their ...