Results 1 - 10
of
25
Low-Dimensional Linear Programming with Violations
- In Proc. 43th Annu. IEEE Sympos. Found. Comput. Sci
, 2002
"... Two decades ago, Megiddo and Dyer showed that linear programming in 2 and 3 dimensions (and subsequently, any constant number of dimensions) can be solved in linear time. In this paper, we consider linear programming with at most k violations: finding a point inside all but at most k of n given half ..."
Abstract
-
Cited by 43 (3 self)
- Add to MetaCart
Two decades ago, Megiddo and Dyer showed that linear programming in 2 and 3 dimensions (and subsequently, any constant number of dimensions) can be solved in linear time. In this paper, we consider linear programming with at most k violations: finding a point inside all but at most k of n given halfspaces. We give a simple algorithm in 2-d that runs in O((n + k ) log n) expected time; this is faster than earlier algorithms by Everett, Robert, and van Kreveld (1993) and Matousek (1994) and is probably nearoptimal for all k n=2. A (theoretical) extension of our algorithm in 3-d runs in near O(n + k ) expected time. Interestingly, the idea is based on concave-chain decompositions (or covers) of the ( k)-level, previously used in proving combinatorial k-level bounds.
Dynamic planar convex hull
- Proc. 43rd IEEE Sympos. Found. Comput. Sci
, 2002
"... In this paper we determine the amortized computational complexity of the dynamic convex hull problem in the planar case. We present a data structure that maintains a finite set of n points in the plane under insertion and deletion of points in amortized O(log n) time per operation. The space usage o ..."
Abstract
-
Cited by 42 (1 self)
- Add to MetaCart
In this paper we determine the amortized computational complexity of the dynamic convex hull problem in the planar case. We present a data structure that maintains a finite set of n points in the plane under insertion and deletion of points in amortized O(log n) time per operation. The space usage of the data structure is O(n). The data structure supports extreme point queries in a given direction, tangent queries through a given point, and queries for the neighboring points on the convex hull in O(log n) time. The extreme point queries can be used to decide whether or not a given line intersects the convex hull, and the tangent queries to determine whether a given point is inside the convex hull. We give a lower bound on the amortized asymptotic time complexity that matches the performance of this data structure.
Tight degree bounds for pseudo-triangulations of points
, 2003
"... We show that every set of n points in general position has a minimum pseudo-triangulation whose maximum vertex degree is five. In addition, we demonstrate that every point set in general position has a minimum pseudo-triangulation whose maximum face degree is four (i.e., each interior face of this p ..."
Abstract
-
Cited by 31 (10 self)
- Add to MetaCart
We show that every set of n points in general position has a minimum pseudo-triangulation whose maximum vertex degree is five. In addition, we demonstrate that every point set in general position has a minimum pseudo-triangulation whose maximum face degree is four (i.e., each interior face of this pseudo-triangulation has at most four vertices). Both degree bounds are tight. Minimum pseudo-triangulations realizing these bounds (individually but not jointly) can be constructed in O(n log n) time.
Random Sampling, Halfspace Range Reporting, and Construction of (≤k)-Levels in Three Dimensions
- SIAM J. COMPUT
, 1999
"... Given n points in three dimensions, we show how to answer halfspace range reporting queries in O(logn+k) expected time for an output size k. Our data structure can be preprocessed in optimal O(n log n) expected time. We apply this result to obtain the first optimal randomized algorithm for the co ..."
Abstract
-
Cited by 29 (6 self)
- Add to MetaCart
Given n points in three dimensions, we show how to answer halfspace range reporting queries in O(logn+k) expected time for an output size k. Our data structure can be preprocessed in optimal O(n log n) expected time. We apply this result to obtain the first optimal randomized algorithm for the construction of the ( k)-level in an arrangement of n planes in three dimensions. The algorithm runs in O(n log n+nk²) expected time. Our techniques are based on random sampling. Applications in two dimensions include an improved data structure for "k nearest neighbors" queries, and an algorithm that constructs the order-k Voronoi diagram in O(n log n + nk log k) expected time.
An experimental analysis of self-adjusting computation
- In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI
, 2006
"... Self-adjusting computation uses a combination of dynamic dependence graphs and memoization to efficiently update the output of a program as the input changes incrementally or dynamically over time. Related work showed various theoretical results, indicating that the approach can be effective for a r ..."
Abstract
-
Cited by 24 (11 self)
- Add to MetaCart
Self-adjusting computation uses a combination of dynamic dependence graphs and memoization to efficiently update the output of a program as the input changes incrementally or dynamically over time. Related work showed various theoretical results, indicating that the approach can be effective for a reasonably broad range of applications. In this article, we describe algorithms and implementation techniques to realize self-adjusting computation and present an experimental evaluation of the proposed approach on a variety of applications, ranging from simple list primitives to more sophisticated computational geometry algorithms. The results of the experiments show that the approach is effective in practice, often offering orders of magnitude speedup from recomputing the output from scratch. We believe this is the first experimental evidence that incremental computation of any type is effective in practice for a reasonably broad set of applications.
Taking a Walk in a Planar Arrangement
- SIAM J. Comput
, 1999
"... We present a new randomized algorithm for computing portions of an arrangement of n arcs in the plane, each pair of which intersect in at most t points. We use this algorithm to perform online walks inside such an arrangement (i.e., compute all the faces that a curve crosses, where the curve is g ..."
Abstract
-
Cited by 23 (6 self)
- Add to MetaCart
We present a new randomized algorithm for computing portions of an arrangement of n arcs in the plane, each pair of which intersect in at most t points. We use this algorithm to perform online walks inside such an arrangement (i.e., compute all the faces that a curve crosses, where the curve is given in an online manner), and to compute a level in an arrangement, both in an output-sensitive manner. The expected running time of the algorithm is O( t+2 (m+n) log n), where m is the number of intersections between the walk and the given arcs. No algorithm with similar performance is known for the general case of arcs. For the case of lines and segments, our algorithm improves the best known algorithm of [OvL81] by almost a logarithmic factor. 1 Introduction Let S be a set of n x-monotone arcs in the plane. Computing the whole (or parts of the) arrangement A( S), induced by the arcs of S, is one of the fundamental problems in computational geometry, and has received a lot o...
A dynamic data structure for 3-d convex hull and 2-d nearest neighbor queries
- In: Proceedings of the seventeenth ACM-SIAM symposium on Discrete algorithm
, 2006
"... We present a fully dynamic randomized data structure that can answer queries about the convex hull of a set of n points in three dimensions, where insertions take O(log 3 n) expected amortized time, deletions take O(log 6 n) expected amortized time, and extreme-point queries take O(log 2 n) worst-ca ..."
Abstract
-
Cited by 19 (5 self)
- Add to MetaCart
We present a fully dynamic randomized data structure that can answer queries about the convex hull of a set of n points in three dimensions, where insertions take O(log 3 n) expected amortized time, deletions take O(log 6 n) expected amortized time, and extreme-point queries take O(log 2 n) worst-case time. This is the first method that guarantees polylogarithmic update and query cost for arbitrary sequences of insertions and deletions, and improves the previous O(n ε)-time method by Agarwal and Matouˇsek a decade ago. As a consequence, we obtain similar results for nearest neighbor queries in two dimensions and improved results for numerous fundamental geometric problems (such as levels in three dimensions and dynamic Euclidean minimum spanning trees in the plane). 1
Remarks on k-Level Algorithms in the Plane
, 1999
"... In light of recent developments, this paper re-examines the fundamental geometric problem of how to construct the k-level in an arrangement of n lines in the plane. ffl The author's recent dynamic data structure for planar convex hulls improves a decade-old sweep-line algorithm by Edelsbrunner and ..."
Abstract
-
Cited by 12 (6 self)
- Add to MetaCart
In light of recent developments, this paper re-examines the fundamental geometric problem of how to construct the k-level in an arrangement of n lines in the plane. ffl The author's recent dynamic data structure for planar convex hulls improves a decade-old sweep-line algorithm by Edelsbrunner and Welzl, which now runs in O(n log m+m log 1+" n) deterministic time and O(n) space, where m is the output size and " is any positive constant. We discuss simplification of the data structure in this particular application, by viewing the problem kinetically. ffl Har-Peled recently announced a randomized algorithm with an expected running time of O((n + m)ff(n) log n). We observe that a version of an earlier randomized incremental algorithm by Agarwal, de Berg, Matousek, and Schwarzkopf yields almost the same result. ffl The current combinatorial bound by Dey shows that m = O(nk 1=3 ) in the worst case. We give an algorithm that guarantees O(n log n + nk 1=3 ) expected time. 1 Introd...
Dynamic Planar Convex Hull with Optimal Query Time and O(log n log log n) Update Time
"... The dynamic maintenance of the convex hull of a set of points in the plane is one of the most important problems in computational geometry. We present a data structure supporting point insertions in amortized O(log n log log log n) time, point deletions in amortized O(log n log log n) time, and vari ..."
Abstract
-
Cited by 11 (1 self)
- Add to MetaCart
The dynamic maintenance of the convex hull of a set of points in the plane is one of the most important problems in computational geometry. We present a data structure supporting point insertions in amortized O(log n log log log n) time, point deletions in amortized O(log n log log n) time, and various queries about the convex hull in optimal O(log n) worst-case time. The data structure requires O(n) space. Applications of the new dynamic convex hull data structure are improved deterministic algorithms for the k-level problem and the red--blue segment intersection problem where all red and all blue segments are connected.
Online Point Location in Planar Arrangements and Its Applications
- Geom
, 2002
"... Recently, Har-Peled [HP99b] presented a new randomized technique for online construction of the zone of a curve in a planar arrangement of arcs. In this paper, we present several applications of this technique, which yield improved solutions to a variety of problems. These applications include: ( ..."
Abstract
-
Cited by 9 (6 self)
- Add to MetaCart
Recently, Har-Peled [HP99b] presented a new randomized technique for online construction of the zone of a curve in a planar arrangement of arcs. In this paper, we present several applications of this technique, which yield improved solutions to a variety of problems. These applications include: (i) an ecient mechanism for performing online point location queries in an arrangement of arcs; (ii) an ecient algorithm for computing an approximation to the minimum-weight Steiner-tree of a set of points, where the weight is the number of intersections between the tree edges and a given collection of arcs; (iii) a subquadratic algorithm for cutting a set of pseudo-parabolas into pseudo-segments; (iv) an algorithm for cutting a set of line segments (`rods') in 3-space so as to eliminate all cycles in the vertical depth order; and (v) a near-optimal algorithm for reporting all bichromatic intersections between a set R of red arcs and a set B of blue arcs, where the unions of the arcs in each set are both connected.

