Searcharxiv⌕ Search

arXiv subjects

Micha Sharir

Publications and source records attributed to Micha Sharir.

At least 37 records · Page 2Linked to original sources

Throwing a Sofa Through the Window

We study several variants of the problem of moving a convex polytope $K$, with $n$ edges, in three dimensions through a flat rectangular (and sometimes more general) window. Specifically: $\bullet$ We study variants where the motion is restricted to translations only, discuss situations where such a motion can be reduced to sliding (translation in a fixed direction), and present efficient algorithms for those variants, which run in time close to $O(n^{8/3})$. $\bullet$ We consider the case of a `gate' (an unbounded window with two parallel infinite edges), and show that $K$ can pass through such a window, by any collision-free rigid motion, if and only if it can slide through it. $\bullet$ We consider arbitrary compact convex windows, and show that if $K$ can pass through such a window $W$ (by any motion) then $K$ can slide through a gate of width equal to the diameter of $W$. $\bullet$ We study the case of a circular window $W$, and show that, for the regular tetrahedron $K$ of edge length $1$, there are two thresholds $1 > δ_1\approx 0.901388 > δ_2\approx 0.895611$, such that (a) $K$ can slide through $W$ if the diameter $d$ of $W$ is $\ge 1$, (b) $K$ cannot slide through $W$ but can pass through it by a purely translational motion when $δ_1\le d < 1$, (c) $K$ cannot pass through $W$ by a purely translational motion but can do it when rotations are allowed when $δ_2 \le d < δ_1$, and (d) $K$ cannot pass through $W$ at all when $d < δ_2$. $\bullet$ Finally, we explore the general setup, where we want to plan a general motion (with all six degrees of freedom) for $K$ through a rectangular window $W$, and present an efficient algorithm for this problem, with running time close to $O(n^4)$.

cs.CG↗

On Ray Shooting for Triangles in 3-Space and Related Problems

We consider several problems that involve lines in three dimensions, and present improved algorithms for solving them. The problems include (i) ray shooting amid triangles in $R^3$, (ii) reporting intersections between query lines (segments, or rays) and input triangles, as well as approximately counting the number of such intersections, (iii) computing the intersection of two nonconvex polyhedra, (iv) detecting, counting, or reporting intersections in a set of lines in $R^3$, and (v) output-sensitive construction of an arrangement of triangles in three dimensions. Our approach is based on the polynomial partitioning technique. For example, our ray-shooting algorithm processes a set of $n$ triangles in $R^3$ into a data structure for answering ray shooting queries amid the given triangles, which uses $O(n^{3/2+\varepsilon})$ storage and preprocessing, and answers a query in $O(n^{1/2+\varepsilon})$ time, for any $\varepsilon>0$. This is a significant improvement over known results, obtained more than 25 years ago, in which, with this amount of storage, the query time bound is roughly $n^{5/8}$. The algorithms for the other problems have similar performance bounds, with similar improvements over previous results. We also derive a nontrivial improved tradeoff between storage and query time. Using it, we obtain algorithms that answer $m$ queries on $n$ objects in \[ \max \left\{ O(m^{2/3}n^{5/6+\varepsilon} + n^{1+\varepsilon}),\; O(m^{5/6+\varepsilon}n^{2/3} + m^{1+\varepsilon}) \right\} \] time, for any $\varepsilon>0$, again an improvement over the earlier bounds.

cs.CG↗

On rich lenses in planar arrangements of circles and related problems

We show that the maximum number of pairwise non-overlapping $k$-rich lenses (lenses formed by at least $k$ circles) in an arrangement of $n$ circles in the plane is $O\left(\frac{n^{3/2}\log{(n/k^3)}}{k^{5/2}} + \frac{n}{k} \right)$, and the sum of the degrees of the lenses of such a family (where the degree of a lens is the number of circles that form it) is $O\left(\frac{n^{3/2}\log{(n/k^3)}}{k^{3/2}} + n\right)$. Two independent proofs of these bounds are given, each interesting in its own right (so we believe). We then show that these bounds lead to the known bound of Agarwal et al. (JACM 2004) and Marcus and Tardos (JCTA 2006) on the number of point-circle incidences in the plane. Extensions to families of more general algebraic curves and some other related problems are also considered.

math.CO↗

Dynamic Planar Voronoi Diagrams for General Distance Functions and their Algorithmic Applications

We describe a new data structure for dynamic nearest neighbor queries in the plane with respect to a general family of distance functions. These include $L_p$-norms and additively weighted Euclidean distances. Our data structure supports general (convex, pairwise disjoint) sites that have constant description complexity (e.g., points, line segments, disks, etc.). Our structure uses $O(n \log^3 n)$ storage, and requires polylogarithmic update and query time, improving an earlier data structure of Agarwal, Efrat and Sharir that required $O(n^\varepsilon)$ time for an update and $O(\log n)$ time for a query [SICOMP, 1999]. Our data structure has numerous applications. In all of them, it gives faster algorithms, typically reducing an $O(n^\varepsilon)$ factor in the previous bounds to polylogarithmic. In addition, we give here two new applications: an efficient construction of a spanner in a disk intersection graph, and a data structure for efficient connectivity queries in a dynamic disk graph.

cs.CG↗

Testing Polynomials for Vanishing on Cartesian Products of Planar Point Sets: Collinearity Testing and Related Problems

We present subquadratic algorithms, in the algebraic decision-tree model of computation, for detecting whether there exists a triple of points, belonging to three respective sets $A$, $B$, and $C$ of points in the plane, that satisfy a certain polynomial equation or two equations. The best known instance of such a problem is testing for the existence of a collinear triple of points in $A\times B\times C$, a classical 3SUM-hard problem that has so far defied any attempt to obtain a subquadratic solution, whether in the (uniform) real RAM model, or in the algebraic decision-tree model. While we are still unable to solve this problem, in full generality, in subquadratic time, we obtain such a solution, in the algebraic decision-tree model, that uses only roughly $O(n^{28/15})$ constant-degree polynomial sign tests, for the special case where two of the sets lie on two respective one-dimensional curves and the third is placed arbitrarily in the plane. Our technique is fairly general, and applies to many other problems where we seek a triple that satisfies a single polynomial equation, e.g., determining whether $A\times B\times C$ contains a triple spanning a unit-area triangle. This result extends recent work by Barba \etal~(2017) and by Chan (2018), where all three sets $A$,~$B$, and~$C$ are assumed to be one-dimensional. As a second application of our technique, we again have three $n$-point sets $A$, $B$, and $C$ in the plane, and we want to determine whether there exists a triple $(a,b,c) \in A\times B\times C$ that simultaneously satisfies two independent real polynomial equations. For example, this is the setup when testing for collinearity in the complex plane, when each of the sets $A$, $B$, $C$ lies on some constant-degree algebraic curve. We show that problems of this kind can be solved with roughly $O(n^{24/13})$ constant-degree polynomial sign tests.

cs.CG↗

Space-Aware Reconfiguration

We consider the problem of reconfiguring a set of physical objects into a desired target configuration, a typical (sub)task in robotics and automation, arising in product assembly, packaging, stocking store shelves, and more. In this paper we address a variant, which we call space-aware reconfiguration, where the goal is to minimize the physical space needed for the reconfiguration, while obeying constraints on the allowable collision-free motions of the objects. Since for given start and target configurations, reconfiguration may be impossible, we translate the entire target configuration rigidly into a location that admits a valid sequence of moves, where each object moves in turn just once, along a straight line, from its starting to its target location, so that the overall physical space required by the start, all intermediate, and target configurations for all the objects is minimized. We investigate two variants of space-aware reconfiguration for the often examined setting of $n$ unit discs in the plane, depending on whether the discs are distinguishable (labeled) or indistinguishable (unlabeled). For the labeled case, we propose a representation of size $O(n^4)$ of the space of all feasible initial rigid translations, and use it to find, in $O(n^6)$ time, a shortest valid translation, or one that minimizes the enclosing disc or axis-aligned rectangle of both the start and target configurations. For the significantly harder unlabeled case, we show that for almost every direction, there exists a translation in this direction that makes the problem feasible. We use this to devise heuristic solutions, where we optimize the translation under stricter notions of feasibility. We present an implementation of such a heuristic, which solves unlabeled instances with hundreds of discs in seconds.

cs.CG↗

Incidences with curves in three dimensions

We study incidence problems involving points and curves in $R^3$. The current (and in fact only viable) approach to such problems, pioneered by Guth and Katz, requires a variety of tools from algebraic geometry, most notably (i) the polynomial partitioning technique, and (ii) the study of algebraic surfaces that are ruled by lines or, in more recent studies, by algebraic curves of some constant degree. By exploiting and refining these tools, we obtain new and improved bounds for point-curve incidence problems in $R^3$. Incidences of this kind have been considered in several previous studies, starting with Guth and Katz's work on points and lines. Our results, which are based on the work of Guth and Zahl concerning surfaces that are doubly ruled by curves, provide a grand generalization of most of the previous results. We reconstruct the bound for points and lines, and improve, in certain significant ways, recent bounds involving points and circles (in Sharir, Sheffer and Zahl), and points and arbitrary constant-degree algebraic curves (in Sharir, Sheffer and Solomon). While in these latter instances the bounds are not known (and are strongly suspected not) to be tight, our bounds are, in a certain sense, the best that can be obtained with this approach, given the current state of knowledge. As an application of our point-curve incidence bound, we show that the number of triangles spanned by a set of $n$ points in $R^3$ and similar to a given triangle is $O(n^{15/7})$, which improves the bound of Agarwal et al. Our results are also related to a study by Guth et al.~(work in progress), and have been recently applied in Sharir, Solomon and Zlydenko to related incidence problems in three dimensions.

math.CO↗

Voronoi diagrams on planar graphs, and computing the diameter in deterministic $\tilde{O}(n^{5/3})$ time

We present an explicit and efficient construction of additively weighted Voronoi diagrams on planar graphs. Let $G$ be a planar graph with $n$ vertices and $b$ sites that lie on a constant number of faces. We show how to preprocess $G$ in $\tilde O(nb^2)$ time (footnote: The $\tilde O$ notation hides polylogarithmic factors.) so that one can compute any additively weighted Voronoi diagram for these sites in $\tilde O(b)$ time. We use this construction to compute the diameter of a directed planar graph with real arc lengths in $\tilde{O}(n^{5/3})$ time. This improves the recent breakthrough result of Cabello (SODA'17), both by improving the running time (from $\tilde{O}(n^{11/6})$), and by providing a deterministic algorithm. It is in fact the first truly subquadratic {\em deterministic} algorithm for this problem. Our use of Voronoi diagrams to compute the diameter follows that of Cabello, but he used abstract Voronoi diagrams, which makes his diameter algorithm more involved, more expensive, and randomized. As in Cabello's work, our algorithm can compute, for every vertex $v$, both the farthest vertex from $v$ (i.e., the eccentricity of $v$), and the sum of distances from $v$ to all other vertices. Hence, our algorithm can also compute the radius, median, and Wiener index (sum of all pairwise distances) of a planar graph within the same time bounds. Our construction of Voronoi diagrams for planar graphs is of independent interest.

cs.DS↗

Incidences between points and curves with almost two degrees of freedom

We study incidences between points and algebraic curves in three dimensions, taken from a family $C$ of curves that have almost two degrees of freedom, meaning that every pair of curves intersect in $O(1)$ points, for any pair of points $p$, $q$, there are only $O(1)$ curves of $C$ that pass through both points, and a pair $p$, $q$ of points admit a curve of $C$ that passes through both of them iff $F(p,q)=0$ for some polynomial $F$. We study two specific instances, one involving unit circles in $R^3$ that pass through some fixed point (so called anchored unit circles), and the other involving tangencies between directed points (points and directions) and circles in the plane; a directed point is tangent to a circle if the point lies on the circle and the direction is the tangent direction. A lifting transformation of Ellenberg et al. maps these tangencies to incidences between points and curves in three dimensions. In both instances the curves in $R^3$ have almost two degrees of freedom. We show that the number of incidences between $m$ points and $n$ anchored unit circles in $R^3$, as well as the number of tangencies between $m$ directed points and $n$ arbitrary circles in the plane, is $O(m^{3/5}n^{3/5}+m+n)$. We derive a similar incidence bound, with a few additional terms, for more general families of curves in $R^3$ with almost two degrees of freedom. The proofs follow standard techniques, based on polynomial partitioning, but face a novel issue involving surfaces that are infinitely ruled by the respective family of curves, as well as surfaces in a dual 3D space that are infinitely ruled by the respective family of suitably defined dual curves. The general bound that we obtain is $O(m^{3/5}n^{3/5}+m+n)$ plus additional terms that depend on how many curves or dual curves can lie on an infinitely-ruled surface.

cs.CG↗

Duality-based approximation algorithms for depth queries and maximum depth

We design an efficient data structure for computing a suitably defined approximate depth of any query point in the arrangement $\mathcal{A}(S)$ of a collection $S$ of $n$ halfplanes or triangles in the plane or of halfspaces or simplices in higher dimensions. We then use this structure to find a point of an approximate maximum depth in $\mathcal{A}(S)$. Specifically, given an error parameter $ε>0$, we compute, for any query point $q$, an underestimate $d^-(q)$ of the depth of $q$, that counts only objects containing $q$, but is allowed to exclude objects when $q$ is $ε$-close to their boundary. Similarly, we compute an overestimate $d^+(q)$ that counts all objects containing $q$ but may also count objects that do not contain $q$ but $q$ is $ε$-close to their boundary. Our algorithms for halfplanes and halfspaces are linear in the number of input objects and in the number of queries, and the dependence of their running time on $ε$ is considerably better than that of earlier techniques. Our improvements are particularly substantial for triangles and in higher dimensions.

cs.CG↗

Output sensitive algorithms for approximate incidences and their applications

An $ε$-approximate incidence between a point and some geometric object (line, circle, plane, sphere) occurs when the point and the object lie at distance at most $ε$ from each other. Given a set of points and a set of objects, computing the approximate incidences between them is a major step in many database and web-based applications in computer vision and graphics, including robust model fitting, approximate point pattern matching, and estimating the fundamental matrix in epipolar (stereo) geometry. In a typical approximate incidence problem of this sort, we are given a set $P$ of $m$ points in two or three dimensions, a set $S$ of $n$ objects (lines, circles, planes, spheres), and an error parameter $ε>0$, and our goal is to report all pairs $(p,s)\in P\times S$ that lie at distance at most $ε$ from one another. We present efficient output-sensitive approximation algorithms for quite a few cases, including points and lines or circles in the plane, and points and planes, spheres, lines, or circles in three dimensions. Several of these cases arise in the applications mentioned above.

cs.CG↗

On Radial Isotropic Position: Theory and Algorithms

We review the theory of, and develop algorithms for transforming a finite point set in ${\bf R}^d$ into a set in \emph{radial isotropic position} by a nonsingular linear transformation followed by rescaling each image point to the unit sphere. This problem arises in a wide spectrum of applications in computer science and mathematics. Our algorithms use gradient descent methods for a particular convex function $f$ whose minimum defines the transformation, and our main focus is on analyzing their performance. Although the minimum can be computed exactly, by expensive symbolic algebra techniques, gradient descent only approximates the desired minimum to any desired level of accuracy. We show that computing the gradient of $f$ amounts to computing the Singular Value Decomposition (SVD) of a certain matrix associated with the input set, making it simple to implement. We believe it to be superior to other approximate techniques (mainly the ellipsoid algorithm) used previously to find this transformation, and it should run much faster in practice. We prove that $f$ is smooth, which yields convergence rate proportional to $1/ε$, where $ε$ is the desired approximation accuracy. To complete the analysis, we provide upper bounds on the norm of the optimal solution which depend on new parameters measuring "the degeneracy" in our input. We believe that our parameters capture degeneracy better than other, seemingly weaker, parameters used in previous works. We next analyze the strong convexity of $f$, and present two worst-case lower bounds on the smallest eigenvalue of its Hessian. This gives another worst-case bound on the convergence rate of another variant of gradient decent that depends only logarithmically on $1/ε$.

cs.CG↗

How to Find a Point in the Convex Hull Privately

We study the question of how to compute a point in the convex hull of an input set $S$ of $n$ points in ${\mathbb R}^d$ in a differentially private manner. This question, which is trivial non-privately, turns out to be quite deep when imposing differential privacy. In particular, it is known that the input points must reside on a fixed finite subset $G\subseteq{\mathbb R}^d$, and furthermore, the size of $S$ must grow with the size of $G$. Previous works focused on understanding how $n$ needs to grow with $|G|$, and showed that $n=O\left(d^{2.5}\cdot8^{\log^*|G|}\right)$ suffices (so $n$ does not have to grow significantly with $|G|$). However, the available constructions exhibit running time at least $|G|^{d^2}$, where typically $|G|=X^d$ for some (large) discretization parameter $X$, so the running time is in fact $Ω(X^{d^3})$. In this paper we give a differentially private algorithm that runs in $O(n^d)$ time, assuming that $n=Ω(d^4\log X)$. To get this result we study and exploit some structural properties of the Tukey levels (the regions $D_{\ge k}$ consisting of points whose Tukey depth is at least $k$, for $k=0,1,...$). In particular, we derive lower bounds on their volumes for point sets $S$ in general position, and develop a rather subtle mechanism for handling point sets $S$ in degenerate position (where the deep Tukey regions have zero volume). A naive approach to the construction of the Tukey regions requires $n^{O(d^2)}$ time. To reduce the cost to $O(n^d)$, we use an approximation scheme for estimating the volumes of the Tukey regions (within their affine spans in case of degeneracy), and for sampling a point from such a region, a scheme that is based on the volume estimation framework of Lovász and Vempala (FOCS 2003) and of Cousins and Vempala (STOC 2015). Making this framework differentially private raises a set of technical challenges that we address.

cs.DS↗

The Maximum-Level Vertex in an Arrangement of Lines

Let $L$ be a set of $n$ lines in the plane, not necessarily in general position. We present an efficient algorithm for finding all the vertices of the arrangement $A(L)$ of maximum level, where the level of a vertex $v$ is the number of lines of $L$ that pass strictly below $v$. The problem, posed in Exercise~8.13 in de Berg etal [BCKO08], appears to be much harder than it seems, as this vertex might not be on the upper envelope of the lines. We first assume that all the lines of $L$ are distinct, and distinguish between two cases, depending on whether or not the upper envelope of $L$ contains a bounded edge. In the former case, we show that the number of lines of $L$ that pass above any maximum level vertex $v_0$ is only $O(\log n)$. In the latter case, we establish a similar property that holds after we remove some of the lines that are incident to the single vertex of the upper envelope. We present algorithms that run, in both cases, in optimal $O(n\log n)$ time. We then consider the case where the lines of $L$ are not necessarily distinct. This setup is more challenging, and the best we have is an algorithm that computes all the maximum-level vertices in time $O(n^{4/3}\log^{3}n)$. Finally, we consider a related combinatorial question for degenerate arrangements, where many lines may intersect in a single point, but all the lines are distinct: We bound the complexity of the weighted $k$-level in such an arrangement, where the weight of a vertex is the number of lines that pass through the vertex. We show that the bound in this case is $O(n^{4/3})$, which matches the corresponding bound for non-degenerate arrangements, and we use this bound in the analysis of one of our algorithms.

cs.CG↗

Dynamic Time Warping and Geometric Edit Distance: Breaking the Quadratic Barrier

Dynamic Time Warping (DTW) and Geometric Edit Distance (GED) are basic similarity measures between curves or general temporal sequences (e.g., time series) that are represented as sequences of points in some metric space $(X, \mathrm{dist})$. The DTW and GED measures are massively used in various fields of computer science, computational biology, and engineering. Consequently, the tasks of computing these measures are among the core problems in P. Despite extensive efforts to find more efficient algorithms, the best-known algorithms for computing the DTW or GED between two sequences of points in $X = \mathbb{R}^d$ are long-standing dynamic programming algorithms that require quadratic runtime, even for the one-dimensional case $d = 1$, which is perhaps one of the most used in practice. In this paper, we break the nearly 50 years old quadratic time bound for computing DTW or GED between two sequences of $n$ points in $\mathbb{R}$, by presenting deterministic algorithms that run in $O\left( n^2 / \log\log n \right)$ time. Our algorithms can be extended to work also for higher dimensional spaces $\mathbb{R}^d$, for any constant $d$, when the underlying distance-metric $\mathrm{dist}$ is polyhedral (e.g., $L_1, L_\infty$).

cs.DS↗

Triangles and Girth in Disk Graphs and Transmission Graphs

Let $S \subset \mathbb{R}^2$ be a set of $n$ sites, where each $s \in S$ has an associated radius $r_s > 0$. The disk graph $D(S)$ is the undirected graph with vertex set $S$ and an undirected edge between two sites $s, t \in S$ if and only if $|st| \leq r_s + r_t$, i.e., if the disks with centers $s$ and $t$ and respective radii $r_s$ and $r_t$ intersect. Disk graphs are used to model sensor networks. Similarly, the transmission graph $T(S)$ is the directed graph with vertex set $S$ and a directed edge from a site $s$ to a site $t$ if and only if $|st| \leq r_s$, i.e., if $t$ lies in the disk with center $s$ and radius $r_s$. We provide algorithms for detecting (directed) triangles and, more generally, computing the length of a shortest cycle (the girth) in $D(S)$ and in $T(S)$. These problems are notoriously hard in general, but better solutions exist for special graph classes such as planar graphs. We obtain similarly efficient results for disk graphs and for transmission graphs. More precisely, we show that a shortest (Euclidean) triangle in $D(S)$ and in $T(S)$ can be found in $O(n \log n)$ expected time, and that the (weighted) girth of $D(S)$ can be found in $O(n \log n)$ expected time. For this, we develop new tools for batched range searching that may be of independent interest.

cs.CG↗

General techniques for approximate incidences and their application to the camera posing problem

We consider the classical camera pose estimation problem that arises in many computer vision applications, in which we are given n 2D-3D correspondences between points in the scene and points in the camera image (some of which are incorrect associations), and where we aim to determine the camera pose (the position and orientation of the camera in the scene) from this data. We demonstrate that this posing problem can be reduced to the problem of computing ε-approximate incidences between two-dimensional surfaces (derived from the input correspondences) and points (on a grid) in a four-dimensional pose space. Similar reductions can be applied to other camera pose problems, as well as to similar problems in related application areas. We describe and analyze three techniques for solving the resulting ε-approximate incidences problem in the context of our camera posing application. The first is a straightforward assignment of surfaces to the cells of a grid (of side-length ε) that they intersect. The second is a variant of a primal-dual technique, recently introduced by a subset of the authors [2] for different (and simpler) applications. The third is a non-trivial generalization of a data structure Fonseca and Mount [3], originally designed for the case of hyperplanes. We present and analyze this technique in full generality, and then apply it to the camera posing problem at hand. We compare our methods experimentally on real and synthetic data. Our experiments show that for the typical values of n and ε, the primal-dual method is the fastest, also in practice.

cs.CG↗

Eliminating Depth Cycles among Triangles in Three Dimensions

Given $n$ pairwise openly disjoint triangles in 3-space, their vertical depth relation may contain cycles. We show that, for any $\varepsilon>0$, the triangles can be cut into $O(n^{3/2+\varepsilon})$ connected semi-algebraic pieces, whose description complexity depends only on the choice of $\varepsilon$, such that the depth relation among these pieces is now a proper partial order. This bound is nearly tight in the worst case. We are not aware of any previous study of this problem, in this full generality, with a subquadratic bound on the number of pieces. This work extends the recent study by two of the authors (Aronov, Sharir~2018) on eliminating depth cycles among lines in 3-space. Our approach is again algebraic, and makes use of a recent variant of the polynomial partitioning technique, due to Guth, which leads to a recursive procedure for cutting the triangles. In contrast to the case of lines, our analysis here is considerably more involved, due to the two-dimensional nature of the objects being cut, so additional tools, from topology and algebra, need to be brought to bear. Our result essentially settles a 35-year-old open problem in computational geometry, motivated by hidden-surface removal in computer graphics.

cs.CG↗