828 research outputs found

    Relative Convex Hull Determination from Convex Hulls in the Plane

    Full text link
    A new algorithm for the determination of the relative convex hull in the plane of a simple polygon A with respect to another simple polygon B which contains A, is proposed. The relative convex hull is also known as geodesic convex hull, and the problem of its determination in the plane is equivalent to find the shortest curve among all Jordan curves lying in the difference set of B and A and encircling A. Algorithms solving this problem known from Computational Geometry are based on the triangulation or similar decomposition of that difference set. The algorithm presented here does not use such decomposition, but it supposes that A and B are given as ordered sequences of vertices. The algorithm is based on convex hull calculations of A and B and of smaller polygons and polylines, it produces the output list of vertices of the relative convex hull from the sequence of vertices of the convex hull of A.Comment: 15 pages, 4 figures, Conference paper published. We corrected two typing errors in Definition 2: ISI_S has to be defined based on OSO_S, and IEI_E has to be defined based on OEO_E (not just using OO). These errors appeared in the text of the original conference paper, which also contained the pseudocode of an algorithm where ISI_S and IEI_E appeared as correctly define

    Pruning Algorithms for Pretropisms of Newton Polytopes

    Full text link
    Pretropisms are candidates for the leading exponents of Puiseux series that represent solutions of polynomial systems. To find pretropisms, we propose an exact gift wrapping algorithm to prune the tree of edges of a tuple of Newton polytopes. We prefer exact arithmetic not only because of the exact input and the degrees of the output, but because of the often unpredictable growth of the coordinates in the face normals, even for polytopes in generic position. We provide experimental results with our preliminary implementation in Sage that compare favorably with the pruning method that relies only on cone intersections.Comment: exact, gift wrapping, Newton polytope, pretropism, tree pruning, accepted for presentation at Computer Algebra in Scientific Computing, CASC 201

    Approximate Data Structures with Applications

    Get PDF
    In this paper we introduce the notion of approximate data structures, in which a small amount of error is tolerated in the output. Approximate data structures trade error of approximation for faster operation, leading to theoretical and practical speedups for a wide variety of algorithms. We give approximate variants of the van Emde Boas data structure, which support the same dynamic operations as the standard van Emde Boas data structure [28, 201, except that answers to queries are approximate. The variants support all operations in constant time provided the error of approximation is l/polylog(n), and in O(loglog n) time provided the error is l/polynomial(n), for n elements in the data structure. We consider the tolerance of prototypical algorithms to approximate data structures. We study in particular Prim’s minimumspanning tree algorithm, Dijkstra’s single-source shortest paths algorithm, and an on-line variant of Graham’s convex hull algorithm. To obtain output which approximates the desired output with the error of approximation tending to zero, Prim’s algorithm requires only linear time, Dijkstra’s algorithm requires O(mloglogn) time, and the on-line variant of Graham’s algorithm requires constant amortized time per operation

    Output-Sensitive Tools for Range Searching in Higher Dimensions

    Full text link
    Let PP be a set of nn points in Rd{\mathbb R}^{d}. A point pPp \in P is kk\emph{-shallow} if it lies in a halfspace which contains at most kk points of PP (including pp). We show that if all points of PP are kk-shallow, then PP can be partitioned into Θ(n/k)\Theta(n/k) subsets, so that any hyperplane crosses at most O((n/k)11/(d1)log2/(d1)(n/k))O((n/k)^{1-1/(d-1)} \log^{2/(d-1)}(n/k)) subsets. Given such a partition, we can apply the standard construction of a spanning tree with small crossing number within each subset, to obtain a spanning tree for the point set PP, with crossing number O(n11/(d1)k1/d(d1)log2/(d1)(n/k))O(n^{1-1/(d-1)}k^{1/d(d-1)} \log^{2/(d-1)}(n/k)). This allows us to extend the construction of Har-Peled and Sharir \cite{hs11} to three and higher dimensions, to obtain, for any set of nn points in Rd{\mathbb R}^{d} (without the shallowness assumption), a spanning tree TT with {\em small relative crossing number}. That is, any hyperplane which contains wn/2w \leq n/2 points of PP on one side, crosses O(n11/(d1)w1/d(d1)log2/(d1)(n/w))O(n^{1-1/(d-1)}w^{1/d(d-1)} \log^{2/(d-1)}(n/w)) edges of TT. Using a similar mechanism, we also obtain a data structure for halfspace range counting, which uses O(nloglogn)O(n \log \log n) space (and somewhat higher preprocessing cost), and answers a query in time O(n11/(d1)k1/d(d1)(log(n/k))O(1))O(n^{1-1/(d-1)}k^{1/d(d-1)} (\log (n/k))^{O(1)}), where kk is the output size
    corecore