Results 1  10
of
45
Efficient algorithms for geometric optimization
 ACM Comput. Surv
, 1998
"... We review the recent progress in the design of efficient algorithms for various problems in geometric optimization. We present several techniques used to attack these problems, such as parametric searching, geometric alternatives to parametric searching, pruneandsearch techniques for linear progra ..."
Abstract

Cited by 94 (12 self)
 Add to MetaCart
We review the recent progress in the design of efficient algorithms for various problems in geometric optimization. We present several techniques used to attack these problems, such as parametric searching, geometric alternatives to parametric searching, pruneandsearch techniques for linear programming and related problems, and LPtype problems and their efficient solution. We then describe a variety of applications of these and other techniques to numerous problems in geometric optimization, including facility location, proximity problems, statistical estimators and metrology, placement and intersection of polygons and polyhedra, and ray shooting and other querytype problems.
Applications of parametric searching in geometric optimization
 J. Algorithms
, 1994
"... z Sivan Toledo x ..."
Computing envelopes in four dimensions with applications
 SIAM J. Comput
, 1997
"... Abstract. Let F be a collection of ndvariate, possibly partially defined, functions, all algebraic of some constant maximum degree. We present a randomized algorithm that computes the vertices, edges, and 2faces of the lower envelope (i.e., pointwise minimum) of F in expected time O(n d+ε) for any ..."
Abstract

Cited by 42 (19 self)
 Add to MetaCart
Abstract. Let F be a collection of ndvariate, possibly partially defined, functions, all algebraic of some constant maximum degree. We present a randomized algorithm that computes the vertices, edges, and 2faces of the lower envelope (i.e., pointwise minimum) of F in expected time O(n d+ε) for any ε>0. For d = 3, by combining this algorithm with the pointlocation technique of Preparata and Tamassia, we can compute, in randomized expected time O(n 3+ε), for any ε>0, a data structure of size O(n 3+ε) that, for any query point q, can determine in O(log 2 n) time the function(s) of F that attain the lower envelope at q. As a consequence, we obtain improved algorithmic solutions to several problems in computational geometry, including (a) computing the width of a point set in 3space, (b) computing the “biggest stick ” in a simple polygon in the plane, and (c) computing the smallestwidth annulus covering a planar point set. The solutions to these problems run in randomized expected time O(n 17/11+ε), for any ε>0, improving previous solutions that run in time O(n 8/5+ε). We also present data structures for (i) performing nearestneighbor and related queries for fairly general collections of objects in 3space and for collections of moving objects in the plane and (ii) performing rayshooting and related queries among n spheres or more general objects in 3space. Both of these data structures require O(n 3+ε) storage and preprocessing time, for any ε>0, and support polylogarithmictime queries. These structures improve previous solutions to these problems.
A Simple Trapezoid Sweep Algorithm for Reporting Red/Blue Segment Intersections
 In Proc. 6th Canad. Conf. Comput. Geom
, 1994
"... We present a new simple algorithm for computing all intersections between two collections of disjoint line segments. The algorithm runs in O(n log n + k) time and O(n) space, where n and k are the number of segments and intersections respectively. We also show that the algorithm can be extended to h ..."
Abstract

Cited by 31 (3 self)
 Add to MetaCart
We present a new simple algorithm for computing all intersections between two collections of disjoint line segments. The algorithm runs in O(n log n + k) time and O(n) space, where n and k are the number of segments and intersections respectively. We also show that the algorithm can be extended to handle singlevalued curve segments with the same time and space bound. 1 Introduction In this paper, we consider the red/blue segment intersection problem: Given a disjoint set of red line segments and a disjoint set of blue line segments in the plane, with a total of n segments, report all k intersections of red segments with blue segments. This is a special case of the general segment intersection problem of reporting all k pairwise intersections of a given set of n line segments in the plane. Although Chazelle and Edelsbrunner[4] gave an asymptotically timeoptimal algorithm for the general segment intersection problem which runs in O(n log n+k) time and uses O(n+k) space, simpler method...
Counting and Reporting Red/Blue Segment Intersections
 CVGIP: Graph. Models Image Process
, 1993
"... We simplify the red/blue segment intersection algorithm of Chazelle et al: Given sets of n disjoint red and n disjoint blue segments, we count red/blue intersections in O(n log n) time using O(n) space or report them in additional time proportional to their number. Our algorithm uses a plane swee ..."
Abstract

Cited by 28 (3 self)
 Add to MetaCart
We simplify the red/blue segment intersection algorithm of Chazelle et al: Given sets of n disjoint red and n disjoint blue segments, we count red/blue intersections in O(n log n) time using O(n) space or report them in additional time proportional to their number. Our algorithm uses a plane sweep to presort the segments; then it operates on a list of slabs that efficiently stores a single level of a segment tree. With no dynamic memory allocation, low pointer overhead, and mostly sequential memory reference, our algorithm performs well even with inadequate physical memory. 1 Introduction Geographic information systems frequently organize map data into various layers. Users can make custom maps by overlaying roads, political boundaries, soil types, or whatever features are of interest to them. The ARC/INFO system [8] is organized around this model; even a relatively inexpensive database like the Digital Chart of the World [9] contains seventeen layers, several with sublayers. A...
Robust Plane Sweep for Intersecting Segments
, 1997
"... In this paper, we reexamine in the framework of robust computation the BentleyOttmann algorithm for reporting intersecting pairs of segments in the plane. This algorithm has been reported as being very sensitive to numerical errors. Indeed, a simple analysis reveals that it involves predicates of d ..."
Abstract

Cited by 25 (2 self)
 Add to MetaCart
In this paper, we reexamine in the framework of robust computation the BentleyOttmann algorithm for reporting intersecting pairs of segments in the plane. This algorithm has been reported as being very sensitive to numerical errors. Indeed, a simple analysis reveals that it involves predicates of degree 5, presumably never evaluated exactly in most implementation. Within the exactcomputation paradigm we introduce two models of computation aimed at replacing the conventional model of realnumber arithmetic. The first model (predicate arithmetic) assumes the exact evaluation of the signs of algebraic expressions of some degree, and the second model (exact arithmetic) assumes the exact computation of the value of...
Lines in Space: Combinatorics and Algorithms
, 1996
"... Questions about lines in space arise frequently as subproblems in threedimensional computational geometry. In this paper we study a number of fundamental combinatorial and algorithmic problems involving arrangements of n lines in threedimensional space. Our main results include: 1. A tight �(n2) b ..."
Abstract

Cited by 24 (4 self)
 Add to MetaCart
Questions about lines in space arise frequently as subproblems in threedimensional computational geometry. In this paper we study a number of fundamental combinatorial and algorithmic problems involving arrangements of n lines in threedimensional space. Our main results include: 1. A tight �(n2) bound on the maximum combinatorial description complexity of the set of all oriented lines that have specified orientations relative to the n given lines. 2. A similar bound of �(n3) for the complexity of the set of all lines passing above the n given lines. 3. A preprocessing procedure using O(n2+ε) time and storage, for anyε>0, that builds a structure supporting O(log n)time queries for testing if a line lies above all the given lines. 4. An algorithm that tests the “towering property ” in O(n4/3+ε) time, for any ε>0: do n given red lines lie all above n given blue lines? The tools used to obtain these and other results include Plücker coordinates for lines in space and εnets for various geometric range spaces.
Penetration Depth of Two Convex Polytopes in 3D
 Nordic J. Computing
, 2000
"... with m and n facets, respectively. The penetration depth of A and B, denoted as (A; B), is the minimum distance by which A has to be translated so that A and B do not intersect. We present a randomized algorithm that computes (A; B) in O(m + m ) expected time, for any constant " > 0. I ..."
Abstract

Cited by 24 (2 self)
 Add to MetaCart
with m and n facets, respectively. The penetration depth of A and B, denoted as (A; B), is the minimum distance by which A has to be translated so that A and B do not intersect. We present a randomized algorithm that computes (A; B) in O(m + m ) expected time, for any constant " > 0. It also computes a vector t such that ktk = (A; B) and int(A + t) \ B = ;. We show that if the Minkowski sum B ( A) has K facets, then the expected running time of our algorithm is O K , for any " > 0.
Computing Depth Orders and Related Problems
 IN PROC. 4TH SCAND. WORKSHOP ALGORITHM THEORY
, 1994
"... Let K be a set of n nonintersecting objects in 3space. A depth order of K, if exists, is a linear order ! of the objects in K such that if K;L 2 K and K lies vertically below L then K ! L. We present a new technique for computing depth orders, and apply it to several special classes of objects. ..."
Abstract

Cited by 22 (10 self)
 Add to MetaCart
Let K be a set of n nonintersecting objects in 3space. A depth order of K, if exists, is a linear order ! of the objects in K such that if K;L 2 K and K lies vertically below L then K ! L. We present a new technique for computing depth orders, and apply it to several special classes of objects. Our results include: (i) If K is a set of n triangles whose xyprojections are all `fat', then a depth order for K can be computed in time O(n log 5 n). (ii) If K is a set of n convex and simplyshaped objects whose xyprojections are all `fat' and their sizes are within a constant ratio from one another, then a depth order for K can be computed in time O(n 1=2 s (n) log 4 n), where s is the maximum number of intersections between the boundaries of the xyprojections of any pair of objects in K, and s (n) is the maximum length of (n; s) DavenportSchinzel sequences.
Reporting RedBlue Intersections Between Two Sets Of Connected Line Segments
 In Proc. 4th Annu. European Sympos. Algorithms, volume 1136 of Lecture Notes Comput. Sci
, 1996
"... . We present a new line sweep algorithm, HeapSweep, for reporting bichromatic (`purple') intersections between a red and a blue family of line segments. If the union of the segments in each family is connected as a point set, HeapSweep reports all k purple intersections in time O((n + k)ff(n) log 3 ..."
Abstract

Cited by 20 (3 self)
 Add to MetaCart
. We present a new line sweep algorithm, HeapSweep, for reporting bichromatic (`purple') intersections between a red and a blue family of line segments. If the union of the segments in each family is connected as a point set, HeapSweep reports all k purple intersections in time O((n + k)ff(n) log 3 n), where n is the total number of input segments and ff(n) is the familiar inverse Ackermann function. To achieve these bounds, the algorithm keeps only partial information about the vertical ordering between segments of the same color, using a new data structure called a kinetic queue. In order to analyze the running time of HeapSweep, we also show that a simple polygon containing a set of n line segments can be partitioned into monotone regions by lines cutting these segments \Theta(n log n) times. 1 Introduction The problem of finding and reporting all pairwise intersections in a set of line segments is among the first to have been studied in computational geometry; its solution es...