Source author record

Pankaj K. Agarwal

Explore this author’s publications, collaborators and research topics. This catalog record has not been claimed by its author.

ResearcherUnclaimed source record

Catalog footprint

Research overview

18works
5topics
4close collaborators

Published work

18 publications

preprint2022arXiv

Deterministic, Near-Linear ε\varepsilon-Approximation Algorithm for Geometric Bipartite Matching

Given point sets AA and BB in Rd\mathbb{R}^d where AA and BB have equal size nn for some constant dimension dd and a parameter ε>0\varepsilon>0, we present the first deterministic algorithm that computes, in n⋅(ε−1log⁡n)O(d)n\cdot(\varepsilon^{-1} \log n)^{O(d)} time, a perfect matching between AA and BB whose cost is within a (1+ε)(1+\varepsilon) factor of the optimal under any ℓp\smash{\ell_p}-norm. Although a Monte-Carlo algorithm with a similar running time is proposed by Raghvendra and Agarwal [J. ACM 2020], the best-known deterministic ε\varepsilon-approximation algorithm takes Ω(n3/2)Ω(n^{3/2}) time. Our algorithm constructs a (refinement of a) tree cover of Rd\mathbb{R}^d, and we develop several new tools to apply a tree-cover based approach to compute an ε\varepsilon-approximate perfect matching.

preprint2021arXiv

An Efficient Algorithm for Generalized Polynomial Partitioning and Its Applications

In 2015, Guth proved that if SS is a collection of nn gg-dimensional semi-algebraic sets in Rd\mathbb{R}^d and if D≥1D\geq 1 is an integer, then there is a dd-variate polynomial PP of degree at most DD so that each connected component of Rd∖Z(P)\mathbb{R}^d\setminus Z(P) intersects O(n/Dd−g)O(n/D^{d-g}) sets from SS. Such a polynomial is called a generalized partitioning polynomial. We present a randomized algorithm that computes such polynomials efficiently -- the expected running time of our algorithm is linear in ∣S∣|S|. Our approach exploits the technique of quantifier elimination combined with that of εε-samples. We also present an extension of our construction to multi-level polynomial partitioning for semi-algebraic sets in Rd\mathbb{R}^d. We present five applications of our result. The first is a data structure for answering point-enclosure queries among a family of semi-algebraic sets in Rd\mathbb{R}^d in O(log⁡n)O(\log n) time, with storage complexity and expected preprocessing time of O(nd+ε)O(n^{d+ε}). The second is a data structure for answering range-searching queries with semi-algebraic ranges in Rd\mathbb{R}^d in O(log⁡n)O(\log n) time, with O(nt+ε)O(n^{t+ε}) storage and expected preprocessing time, where t>0t > 0 is an integer that depends on dd and the description complexity of the ranges. The third is a data structure for answering vertical ray-shooting queries among semi-algebraic sets in Rd\mathbb{R}^{d} in O(log⁡2n)O(\log^2 n) time, with O(nd+ε)O(n^{d+ε}) storage and expected preprocessing time. The fourth is an efficient algorithm for cutting algebraic curves in R2\mathbb{R}^2 into pseudo-segments. The fifth application is for eliminating depth cycles among triangles in R3\mathbb{R}^3, where we show a nearly-optimal algorithm to cut nn pairwise disjoint non-vertical triangles in R3\mathbb{R}^3 into pieces that form a depth order.

preprint2020arXiv

1D and 2D Flow Routing on a Terrain

An important problem in terrain analysis is modeling how water flows across a terrain creating floods by forming channels and filling depressions. In this paper we study a number of \emph{flow-query} related problems: Given a terrain ΣΣ, represented as a triangulated xyxy-monotone surface with nn vertices, a rain distribution RR which may vary over time, determine how much water is flowing over a given edge as a function of time. We develop internal-memory as well as I/O-efficient algorithms for flow queries. This paper contains four main results: (i) We present an internal-memory algorithm that preprocesses ΣΣ into a linear-size data structure that for a (possibly time varying) rain distribution RR can return the flow-rate functions of all edges of ΣΣ in O(ρk+∣ϕ∣log⁡n)O(ρk+|ϕ| \log n) time, where ρρ is the number of sinks in ΣΣ, kk is the number of times the rain distribution changes, and ∣ϕ∣|ϕ| is the total complexity of the flow-rate functions that have non-zero values; (ii) We also present an I/O-efficient algorithm for preprocessing ΣΣ into a linear-size data structure so that for a rain distribution RR, it can compute the flow-rate function of all edges using O(Sort(∣ϕ∣))O(\text{Sort}(|ϕ|)) I/Os and O(∣ϕ∣log⁡∣ϕ∣)O(|ϕ| \log |ϕ|) internal computation time. (iii) ΣΣ can be preprocessed into a linear-size data structure so that for a given rain distribution RR, the flow-rate function of an edge (q,r)∈Σ(q,r) \in Σ under the single-flow direction (SFD) model can be computed more efficiently. (iv) We present an algorithm for computing the two-dimensional channel along which water flows using Manning's equation; a widely used empirical equation that relates the flow-rate of water in an open channel to the geometry of the channel along with the height of water in the channel.

preprint2020arXiv

Dynamic geometric set cover and hitting set

We investigate dynamic versions of geometric set cover and hitting set where points and ranges may be inserted or deleted, and we want to efficiently maintain an (approximately) optimal solution for the current problem instance. While their static versions have been extensively studied in the past, surprisingly little is known about dynamic geometric set cover and hitting set. For instance, even for the most basic case of one-dimensional interval set cover and hitting set, no nontrivial results were known. The main contribution of our paper are two frameworks that lead to efficient data structures for dynamically maintaining set covers and hitting sets in R1\mathbb{R}^1 and R2\mathbb{R}^2. The first framework uses bootstrapping and gives a (1+ε)(1+\varepsilon)-approximate data structure for dynamic interval set cover in R1\mathbb{R}^1 with O(nα/ε)O(n^α/\varepsilon) amortized update time for any constant α>0α> 0; in R2\mathbb{R}^2, this method gives O(1)O(1)-approximate data structures for unit-square (and quadrant) set cover and hitting set with O(n1/2+α)O(n^{1/2+α}) amortized update time. The second framework uses local modification, and leads to a (1+ε)(1+\varepsilon)-approximate data structure for dynamic interval hitting set in R1\mathbb{R}^1 with O~(1/ε)\widetilde{O}(1/\varepsilon) amortized update time; in R2\mathbb{R}^2, it gives O(1)O(1)-approximate data structures for unit-square (and quadrant) set cover and hitting set in the \textit{partially} dynamic settings with O~(1)\widetilde{O}(1) amortized update time.

preprint2016arXiv

Approximating Dynamic Time Warping and Edit Distance for a Pair of Point Sequences

We give the first subquadratic-time approximation schemes for dynamic time warping (DTW) and edit distance (ED) of several natural families of point sequences in Rd\mathbb{R}^d, for any fixed d≥1d \ge 1. In particular, our algorithms compute (1+ε)(1+\varepsilon)-approximations of DTW and ED in time near-linear for point sequences drawn from k-packed or k-bounded curves, and subquadratic for backbone sequences. Roughly speaking, a curve is κκ-packed if the length of its intersection with any ball of radius rr is at most κ⋅rκ\cdot r, and a curve is κκ-bounded if the sub-curve between two curve points does not go too far from the two points compared to the distance between the two points. In backbone sequences, consecutive points are spaced at approximately equal distances apart, and no two points lie very close together. Recent results suggest that a subquadratic algorithm for DTW or ED is unlikely for an arbitrary pair of point sequences even for d=1d=1. Our algorithms work by constructing a small set of rectangular regions that cover the entries of the dynamic programming table commonly used for these distance measures. The weights of entries inside each rectangle are roughly the same, so we are able to use efficient procedures to approximately compute the cheapest paths through these rectangles.

preprint2016arXiv

Nearest-Neighbor Searching Under Uncertainty II

Nearest-neighbor search, which returns the nearest neighbor of a query point in a set of points, is an important and widely studied problem in many fields, and it has wide range of applications. In many of them, such as sensor databases, location-based services, face recognition, and mobile data, the location of data is imprecise. We therefore study nearest-neighbor queries in a probabilistic framework in which the location of each input point is specified as a probability distribution function. We present efficient algorithms for - computing all points that are nearest neighbors of a query point with nonzero probability; and - estimating the probability of a point being the nearest neighbor of a query point, either exactly or within a specified additive error.

preprint2015arXiv

Stable Delaunay Graphs

Let PP be a set of nn points in R2\mathrm{R}^2, and let DT(P)\mathrm{DT}(P) denote its Euclidean Delaunay triangulation. We introduce the notion of an edge of DT(P)\mathrm{DT}(P) being {\it stable}. Defined in terms of a parameter α>0α>0, a Delaunay edge pqpq is called αα-stable, if the (equal) angles at which pp and qq see the corresponding Voronoi edge epqe_{pq} are at least αα. A subgraph GG of DT(P)\mathrm{DT}(P) is called {\it (cα,α)(cα, α)-stable Delaunay graph} (SDG\mathrm{SDG} in short), for some constant c≥1c \ge 1, if every edge in GG is αα-stable and every cαcα-stable of DT(P)\mathrm{DT}(P) is in GG. We show that if an edge is stable in the Euclidean Delaunay triangulation of PP, then it is also a stable edge, though for a different value of αα, in the Delaunay triangulation of PP under any convex distance function that is sufficiently close to the Euclidean norm, and vice-versa. In particular, a 6α6α-stable edge in DT(P)\mathrm{DT}(P) is αα-stable in the Delaunay triangulation under the distance function induced by a regular kk-gon for k≥2π/αk \ge 2π/α, and vice-versa. Exploiting this relationship and the analysis in~\cite{polydel}, we present a linear-size kinetic data structure (KDS) for maintaining an (8α,α)(8α,α)-SDG\mathrm{SDG} as the points of PP move. If the points move along algebraic trajectories of bounded degree, the KDS processes nearly quadratic events during the motion, each of which can processed in O(log⁡n)O(\log n) time. Finally, we show that a number of useful properties of DT(P)\mathrm{DT}(P) are retained by SDG\mathrm{SDG} of PP.

preprint2014arXiv

Convex Hulls under Uncertainty

We study the convex-hull problem in a probabilistic setting, motivated by the need to handle data uncertainty inherent in many applications, including sensor databases, location-based services and computer vision. In our framework, the uncertainty of each input site is described by a probability distribution over a finite number of possible locations including a \emph{null} location to account for non-existence of the point. Our results include both exact and approximation algorithms for computing the probability of a query point lying inside the convex hull of the input, time-space tradeoffs for the membership queries, a connection between Tukey depth and membership queries, as well as a new notion of $\some$-hull that may be a useful representation of uncertain hulls.

preprint2014arXiv

Kinetic Voronoi Diagrams and Delaunay Triangulations under Polygonal Distance Functions

Let PP be a set of nn points and QQ a convex kk-gon in R2{\mathbb R}^2. We analyze in detail the topological (or discrete) changes in the structure of the Voronoi diagram and the Delaunay triangulation of PP, under the convex distance function defined by QQ, as the points of PP move along prespecified continuous trajectories. Assuming that each point of PP moves along an algebraic trajectory of bounded degree, we establish an upper bound of O(k4nλr(n))O(k^4nλ_r(n)) on the number of topological changes experienced by the diagrams throughout the motion; here λr(n)λ_r(n) is the maximum length of an (n,r)(n,r)-Davenport-Schinzel sequence, and rr is a constant depending on the algebraic degree of the motion of the points. Finally, we describe an algorithm for efficiently maintaining the above structures, using the kinetic data structure (KDS) framework.

preprint2014arXiv

Maintaining Contour Trees of Dynamic Terrains

We consider maintaining the contour tree T\mathbb{T} of a piecewise-linear triangulation M\mathbb{M} that is the graph of a time varying height function h:R2→Rh: \mathbb{R}^2 \rightarrow \mathbb{R}. We carefully describe the combinatorial change in T\mathbb{T} that happen as hh varies over time and how these changes relate to topological changes in M\mathbb{M}. We present a kinetic data structure that maintains the contour tree of hh over time. Our data structure maintains certificates that fail only when h(v)=h(u)h(v)=h(u) for two adjacent vertices vv and uu in M\mathbb{M}, or when two saddle vertices lie on the same contour of M\mathbb{M}. A certificate failure is handled in O(log⁡(n))O(\log(n)) time. We also show how our data structure can be extended to handle a set of general update operations on M\mathbb{M} and how it can be applied to maintain topological persistence pairs of time varying functions.

preprint2013arXiv

Computing Similarity between a Pair of Trajectories

With recent advances in sensing and tracking technology, trajectory data is becoming increasingly pervasive and analysis of trajectory data is becoming exceedingly important. A fundamental problem in analyzing trajectory data is that of identifying common patterns between pairs or among groups of trajectories. In this paper, we consider the problem of identifying similar portions between a pair of trajectories, each observed as a sequence of points sampled from it. We present new measures of trajectory similarity --- both local and global --- between a pair of trajectories to distinguish between similar and dissimilar portions. Our model is robust under noise and outliers, it does not make any assumptions on the sampling rates on either trajectory, and it works even if they are partially observed. Additionally, the model also yields a scalar similarity score which can be used to rank multiple pairs of trajectories according to similarity, e.g. in clustering applications. We also present efficient algorithms for computing the similarity under our measures; the worst-case running time is quadratic in the number of sample points. Finally, we present an extensive experimental study evaluating the effectiveness of our approach on real datasets, comparing with it with earlier approaches, and illustrating many issues that arise in trajectory data. Our experiments show that our approach is highly accurate in distinguishing similar and dissimilar portions as compared to earlier methods even with sparse sampling.

preprint2013arXiv

On Range Searching with Semialgebraic Sets II

Let PP be a set of nn points in Rd\R^d. We present a linear-size data structure for answering range queries on PP with constant-complexity semialgebraic sets as ranges, in time close to O(n1−1/d)O(n^{1-1/d}). It essentially matches the performance of similar structures for simplex range searching, and, for d≥5d\ge 5, significantly improves earlier solutions by the first two authors obtained in~1994. This almost settles a long-standing open problem in range searching. The data structure is based on the polynomial-partitioning technique of Guth and Katz [arXiv:1011.4105], which shows that for a parameter rr, 1<r≤n1 < r \le n, there exists a dd-variate polynomial ff of degree O(r1/d)O(r^{1/d}) such that each connected component of Rd∖Z(f)\R^d\setminus Z(f) contains at most n/rn/r points of PP, where Z(f)Z(f) is the zero set of ff. We present an efficient randomized algorithm for computing such a polynomial partition, which is of independent interest and is likely to have additional applications.

preprint2012arXiv

Computing the Discrete Fréchet Distance in Subquadratic Time

The Fréchet distance is a similarity measure between two curves AA and BB: Informally, it is the minimum length of a leash required to connect a dog, constrained to be on AA, and its owner, constrained to be on BB, as they walk without backtracking along their respective curves from one endpoint to the other. The advantage of this measure on other measures such as the Hausdorff distance is that it takes into account the ordering of the points along the curves. The discrete Fréchet distance replaces the dog and its owner by a pair of frogs that can only reside on nn and mm specific pebbles on the curves AA and BB, respectively. These frogs hop from a pebble to the next without backtracking. The discrete Fréchet distance can be computed by a rather straightforward quadratic dynamic programming algorithm. However, despite a considerable amount of work on this problem and its variations, there is no subquadratic algorithm known, even for approximation versions of the problem. In this paper we present a subquadratic algorithm for computing the discrete Fréchet distance between two sequences of points in the plane, of respective lengths m≤nm\le n. The algorithm runs in O(mnlog⁡log⁡nlog⁡n)O(\dfrac{mn\log\log n}{\log n}) time and uses O(n+m)O(n+m) storage. Our approach uses the geometry of the problem in a subtle way to encode legal positions of the frogs as states of a finite automata.

preprint2012arXiv

Sparsification of Motion-Planning Roadmaps by Edge Contraction

We present Roadmap Sparsification by Edge Contraction (RSEC), a simple and effective algorithm for reducing the size of a motion-planning roadmap. The algorithm exhibits minimal effect on the quality of paths that can be extracted from the new roadmap. The primitive operation used by RSEC is edge contraction - the contraction of a roadmap edge to a single vertex and the connection of the new vertex to the neighboring vertices of the contracted edge. For certain scenarios, we compress more than 98% of the edges and vertices at the cost of degradation of average shortest path length by at most 2%.

preprint2011arXiv

Kinetic Stable Delaunay Graphs

We consider the problem of maintaining the Euclidean Delaunay triangulation $\DT$ of a set PP of nn moving points in the plane, along algebraic trajectories of constant description complexity. Since the best known upper bound on the number of topological changes in the full $\DT$ is nearly cubic, we seek to maintain a suitable portion of it that is less volatile yet retains many useful properties. We introduce the notion of a stable Delaunay graph, which is a dynamic subgraph of the Delaunay triangulation. The stable Delaunay graph (a) is easy to define, (b) experiences only a nearly quadratic number of discrete changes, (c) is robust under small changes of the norm, and (d) possesses certain useful properties. The stable Delaunay graph ($\SDG$ in short) is defined in terms of a parameter α>0α>0, and consists of Delaunay edges pqpq for which the angles at which pp and qq see their Voronoi edge epqe_{pq} are at least αα. We show that (i) $\SDG$ always contains at least roughly one third of the Delaunay edges; (ii) it contains the ββ-skeleton of PP, for β=1+Ω(α2)β=1+Ω(α^2); (iii) it is stable, in the sense that its edges survive for long periods of time, as long as the orientations of the segments connecting (nearby) points of PP do not change by much; and (iv) stable Delaunay edges remain stable (with an appropriate redefinition of stability) if we replace the Euclidean norm by any sufficiently close norm. In particular, we can approximate the Euclidean norm by a polygonal norm (namely, a regular kk-gon, with k=Θ(1/α)k=Θ(1/α)), and keep track of a Euclidean $\SDG$ by maintaining the full Delaunay triangulation of PP under the polygonal norm. We describe two kinetic data structures for maintaining $\SDG$. Both structures use O∗(n)O^*(n) storage and process O∗(n2)O^*(n^2) events during the motion, each in O∗(1)O^*(1) time.

preprint2010arXiv

On Channel-Discontinuity-Constraint Routing in Wireless Networks

Multi-channel wireless networks are increasingly being employed as infrastructure networks, e.g. in metro areas. Nodes in these networks frequently employ directional antennas to improve spatial throughput. In such networks, given a source and destination, it is of interest to compute an optimal path and channel assignment on every link in the path such that the path bandwidth is the same as that of the link bandwidth and such a path satisfies the constraint that no two consecutive links on the path are assigned the same channel, referred to as "Channel Discontinuity Constraint" (CDC). CDC-paths are also quite useful for TDMA system, where preferably every consecutive links along a path are assigned different time slots. This paper contains several contributions. We first present an O(N2)O(N^{2}) distributed algorithm for discovering the shortest CDC-path between given source and destination. This improves the running time of the O(N3)O(N^{3}) centralized algorithm of Ahuja et al. for finding the minimum-weight CDC-path. Our second result is a generalized tt-spanner for CDC-path; For any θ>0θ>0 we show how to construct a sub-network containing only O(Nθ)O(\frac{N}θ) edges, such that that length of shortest CDC-paths between arbitrary sources and destinations increases by only a factor of at most (1−2sin⁡θ2)−2(1-2\sin{\tfracθ{2}})^{-2}. We propose a novel algorithm to compute the spanner in a distributed manner using only O(nlog⁡n)O(n\log{n}) messages. An important conclusion of this scheme is in the case of directional antennas are used. In this case, it is enough to consider only the two closest nodes in each cone.

preprint2010arXiv

Stability of epsilon-Kernels

Given a set P of n points in |R^d, an eps-kernel K subset P approximates the directional width of P in every direction within a relative (1-eps) factor. In this paper we study the stability of eps-kernels under dynamic insertion and deletion of points to P and by changing the approximation factor eps. In the first case, we say an algorithm for dynamically maintaining a eps-kernel is stable if at most O(1) points change in K as one point is inserted or deleted from P. We describe an algorithm to maintain an eps-kernel of size O(1/eps^{(d-1)/2}) in O(1/eps^{(d-1)/2} + log n) time per update. Not only does our algorithm maintain a stable eps-kernel, its update time is faster than any known algorithm that maintains an eps-kernel of size O(1/eps^{(d-1)/2}). Next, we show that if there is an eps-kernel of P of size k, which may be dramatically less than O(1/eps^{(d-1)/2}), then there is an (eps/2)-kernel of P of size O(min {1/eps^{(d-1)/2}, k^{floor(d/2)} log^{d-2} (1/eps)}). Moreover, there exists a point set P in |R^d and a parameter eps > 0 such that if every eps-kernel of P has size at least k, then any (eps/2)-kernel of P has size Omega(k^{floor(d/2)}).

preprint2010arXiv

The 2-Center Problem in Three Dimensions

Let P be a set of n points in R^3. The 2-center problem for P is to find two congruent balls of minimum radius whose union covers P. We present two randomized algorithms for computing a 2-center of P. The first algorithm runs in O(n^3 log^5 n) expected time, and the second algorithm runs in O((n^2 log^5 n) /(1-r*/r_0)^3) expected time, where r* is the radius of the 2-center balls of P and r_0 is the radius of the smallest enclosing ball of P. The second algorithm is faster than the first one as long as r* is not too close to r_0, which is equivalent to the condition that the centers of the two covering balls be not too close to each other.

Research graph

See the researcher in context

Open full explorer

Inspect adjacent papers, topics, institutions and collaborators without losing the researcher page.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.