SearcharxivSearch

arXiv subjects

Paul Seiferth

Publications and source records attributed to Paul Seiferth.

12 recordsLinked to original sources

Dynamic Connectivity in Disk Graphs

Let $S$ be a set of $n$ sites in the plane, so that every site $s \in S$ has an associated radius $r_s > 0$. Let $\mathcal{D}(S)$ be the disk intersection graph defined by $S$, i.e., the graph with vertex set $S$ and an edge between two distinct sites $s, t \in S$ if and only if the disks with centers $s$, $t$ and radii $r_s$, $r_t$ intersect.Our goal is to design data structures that maintain the connectivity structure of $\mathcal{D}(S)$ as sites are inserted and/or deleted in $S$.

cs.CG

Stabbing Pairwise Intersecting Disks by Five Points

Suppose we are given a set $\mathcal{D}$ of $n$ pairwise intersecting disks in the plane. A planar point set $P$ stabs $\mathcal{D}$ if and only if each disk in $\mathcal{D}$ contains at least one point from $P$. We present a deterministic algorithm that takes $O(n)$ time to find five points that stab $\mathcal{D}$. Furthermore, we give a simple example of 13 pairwise intersecting disks that cannot be stabbed by three points. Moreover, we present a simple argument showing that eight disks can be stabbed by at most three points. This provides a simple-albeit slightly weaker-algorithmic version of a classical result by Danzer that such a set $\mathcal{D}$ can always be stabbed by four points.

cs.CG

Time-Space Trade-offs for Triangulations and Voronoi Diagrams

Let $S$ be a planar $n$-point set. A triangulation for $S$ is a maximal plane straight-line graph with vertex set $S$. The Voronoi diagram for $S$ is the subdivision of the plane into cells such that all points in a cell have the same nearest neighbor in $S$. Classically, both structures can be computed in $O(n \log n)$ time and $O(n)$ space. We study the situation when the available workspace is limited: given a parameter $s \in \{1, \dots, n\}$, an $s$-workspace algorithm has read-only access to an input array with the points from $S$ in arbitrary order, and it may use only $O(s)$ additional words of $Θ(\log n)$ bits for reading and writing intermediate data. The output should then be written to a write-only structure. We describe a deterministic $s$-workspace algorithm for computing an arbitrary triangulation of $S$ in time $O(n^2/s + n \log n \log s )$ and a randomized $s$-workspace algorithm for finding the Voronoi diagram of $S$ in expected time $O((n^2/s) \log s + n \log s \log^*s)$.

cs.CG

Spanners for Directed Transmission Graphs

Let $P \subset \mathbb{R}^2$ be a planar $n$-point set such that each point $p \in P$ has an associated radius $r_p > 0$. The transmission graph $G$ for $P$ is the directed graph with vertex set $P$ such that for any $p, q \in P$, there is an edge from $p$ to $q$ if and only if $d(p, q) \leq r_p$. Let $t > 1$ be a constant. A $t$-spanner for $G$ is a subgraph $H \subseteq G$ with vertex set $P$ so that for any two vertices $p,q \in P$, we have $d_H(p, q) \leq t d_G(p, q)$, where $d_H$ and $d_G$ denote the shortest path distance in $H$ and $G$, respectively (with Euclidean edge lengths). We show how to compute a $t$-spanner for $G$ with $O(n)$ edges in $O(n (\log n + \log Ψ))$ time, where $Ψ$ is the ratio of the largest and smallest radius of a point in $P$. Using more advanced data structures, we obtain a construction that runs in $O(n \log^5 n)$ time, independent of $Ψ$. We give two applications for our spanners. First, we show how to use our spanner to find a BFS tree in $G$ from any given start vertex in $O(n \log n)$ time (in addition to the time it takes to build the spanner). Second, we show how to use our spanner to extend a reachability oracle to answer geometric reachability queries. In a geometric reachability query we ask whether a vertex $p$ in $G$ can "reach" a target $q$ which is an arbitrary point in the plane (rather than restricted to be another vertex $q$ of $G$ in a standard reachability query). Our spanner allows the reachability oracle to answer geometric reachability queries with an additive overhead of $O(\log n\log Ψ)$ to the query time and $O(n \log Ψ)$ to the space.

cs.CG

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

Reachability Oracles for Directed Transmission Graphs

Let $P \subset \mathbb{R}^d$ be a set of $n$ points in $d$ dimensions such that each point $p \in P$ has an associated radius $r_p > 0$. The transmission graph $G$ for $P$ is the directed graph with vertex set $P$ such that there is an edge from $p$ to $q$ if and only if $|pq| \leq r_p$, for any $p, q \in P$. A reachability oracle is a data structure that decides for any two vertices $p, q \in G$ whether $G$ has a path from $p$ to $q$. The quality of the oracle is measured by the space requirement $S(n)$, the query time $Q(n)$, and the preprocessing time. For transmission graphs of one-dimensional point sets, we can construct in $O(n \log n)$ time an oracle with $Q(n) = O(1)$ and $S(n) = O(n)$. For planar point sets, the ratio $Ψ$ between the largest and the smallest associated radius turns out to be an important parameter. We present three data structures whose quality depends on $Ψ$: the first works only for $Ψ< \sqrt{3}$ and achieves $Q(n) = O(1)$ with $S(n) = O(n)$ and preprocessing time $O(n\log n)$; the second data structure gives $Q(n) = O(Ψ^3 \sqrt{n})$ and $S(n) = O(Ψ^3 n^{3/2})$; the third data structure is randomized with $Q(n) = O(n^{2/3}\log^{1/3} Ψ\log^{2/3} n)$ and $S(n) = O(n^{5/3}\log^{1/3} Ψ\log^{2/3} n)$ and answers queries correctly with high probability.

cs.CG

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

Improved Time-Space Trade-offs for Computing Voronoi Diagrams

Let $P$ be a planar set of $n$ sites in general position. For $k\in\{1,\dots,n-1\}$, the Voronoi diagram of order $k$ for $P$ is obtained by subdividing the plane into cells such that points in the same cell have the same set of nearest $k$ neighbors in $P$. The (nearest site) Voronoi diagram (NVD) and the farthest site Voronoi diagram (FVD) are the particular cases of $k=1$ and $k=n-1$, respectively. For any given $K\in\{1,\dots,n-1\}$, the family of all higher-order Voronoi diagrams of order $k=1,\dots,K$ for $P$ can be computed in total time $O(nK^2+ n\log n)$ using $O(K^2(n-K))$ space [Aggarwal et al., DCG'89; Lee, TC'82]. Moreover, NVD and FVD for $P$ can be computed in $O(n\log n)$ time using $O(n)$ space [Preparata, Shamos, Springer'85]. For $s\in\{1,\dots,n\}$, an $s$-workspace algorithm has random access to a read-only array with the sites of $P$ in arbitrary order. Additionally, the algorithm may use $O(s)$ words, of $Θ(\log n)$ bits each, for reading and writing intermediate data. The output can be written only once and cannot be accessed or modified afterwards. We describe a deterministic $s$-workspace algorithm for computing NVD and FVD for $P$ that runs in $O((n^2/s)\log s)$ time. Moreover, we generalize our $s$-workspace algorithm so that for any given $K\in O(\sqrt{s})$, we compute the family of all higher-order Voronoi diagrams of order $k=1,\dots,K$ for $P$ in total expected time $O (\frac{n^2 K^5}{s}(\log s+K2^{O(\log^* K)}))$ or in total deterministic time $O(\frac{n^2 K^5}{s}(\log s+K\log K))$. Previously, for Voronoi diagrams, the only known $s$-workspace algorithm runs in expected time $O\bigl((n^2/s)\log s+n\log s\log^* s)$ [Korman et al., WADS'15] and only works for NVD (i.e., $k=1$). Unlike the previous algorithm, our new method is very simple and does not rely on advanced data structures or random sampling techniques.

cs.CG

Routing in Polygonal Domains

We consider the problem of routing a data packet through the visibility graph of a polygonal domain $P$ with $n$ vertices and $h$ holes. We may preprocess $P$ to obtain a label and a routing table for each vertex of $P$. Then, we must be able to route a data packet between any two vertices $p$ and $q$ of $P$, where each step must use only the label of the target node $q$ and the routing table of the current node. For any fixed $\varepsilon > 0$, we present a routing scheme that always achieves a routing path whose length exceeds the shortest path by a factor of at most $1 + \varepsilon$. The labels have $O(\log n)$ bits, and the routing tables are of size $O((\varepsilon^{-1}+h)\log n)$. The preprocessing time is $O(n^2\log n)$. It can be improved to $O(n^2)$ for simple polygons.

cs.CG

Routing in Unit Disk Graphs

Let $S \subset \mathbb{R}^2$ be a set of $n$ sites. The unit disk graph $\text{UD}(S)$ on $S$ has vertex set $S$ and an edge between two distinct sites $s,t \in S$ if and only if $s$ and $t$ have Euclidean distance $|st| \leq 1$. A routing scheme $R$ for $\text{UD}(S)$ assigns to each site $s \in S$ a label $\ell(s)$ and a routing table $ρ(s)$. For any two sites $s, t \in S$, the scheme $R$ must be able to route a packet from $s$ to $t$ in the following way: given a current site $r$ (initially, $r = s$), a header $h$ (initially empty), and the label $\ell(t)$ of the target, the scheme $R$ consults the routing table $ρ(r)$ to compute a neighbor $r'$ of $r$, a new header $h'$, and the label $\ell(t')$ of an intermediate target $t'$. (The label of the original target may be stored at the header $h'$.) The packet is then routed to $r'$, and the procedure is repeated until the packet reaches $t$. The resulting sequence of sites is called the routing path. The stretch of $R$ is the maximum ratio of the (Euclidean) length of the routing path produced by $R$ and the shortest path in $\text{UD}(S)$, over all pairs of distinct sites in $S$. For any given $\varepsilon > 0$, we show how to construct a routing scheme for $\text{UD}(S)$ with stretch $1+\varepsilon$ using labels of $O(\log n)$ bits and routing tables of $O(\varepsilon^{-5}\log^2 n \log^2 D)$ bits, where $D$ is the (Euclidean) diameter of $\text{UD}(S)$. The header size is $O(\log n \log D)$ bits.

cs.CG

Approximate k-flat Nearest Neighbor Search

Let $k$ be a nonnegative integer. In the approximate $k$-flat nearest neighbor ($k$-ANN) problem, we are given a set $P \subset \mathbb{R}^d$ of $n$ points in $d$-dimensional space and a fixed approximation factor $c > 1$. Our goal is to preprocess $P$ so that we can efficiently answer approximate $k$-flat nearest neighbor queries: given a $k$-flat $F$, find a point in $P$ whose distance to $F$ is within a factor $c$ of the distance between $F$ and the closest point in $P$. The case $k = 0$ corresponds to the well-studied approximate nearest neighbor problem, for which a plethora of results are known, both in low and high dimensions. The case $k = 1$ is called approximate line nearest neighbor. In this case, we are aware of only one provably efficient data structure, due to Andoni, Indyk, Krauthgamer, and Nguyen. For $k \geq 2$, we know of no previous results. We present the first efficient data structure that can handle approximate nearest neighbor queries for arbitrary $k$. We use a data structure for $0$-ANN-queries as a black box, and the performance depends on the parameters of the $0$-ANN solution: suppose we have an $0$-ANN structure with query time $O(n^ρ)$ and space requirement $O(n^{1+σ})$, for $ρ, σ> 0$. Then we can answer $k$-ANN queries in time $O(n^{k/(k + 1 - ρ) + t})$ and space $O(n^{1+σk/(k + 1 - ρ)} + n\log^{O(1/t)} n)$. Here, $t > 0$ is an arbitrary constant and the $O$-notation hides exponential factors in $k$, $1/t$, and $c$ and polynomials in $d$. Our new data structures also give an improvement in the space requirement over the previous result for $1$-ANN: we can achieve near-linear space and sublinear query time, a further step towards practical applications where space constitutes the bottleneck.

cs.CG

Greedy is as Good as Delaunay (Almost)

Let S be a planar point set. Krznaric and Levcopoulos proved that given the Delaunay triangulation DT(S) for S, one can find the greedy triangulation GT(S) in linear time. We provide a (partial) converse of this result: given GT(S), it is possible to compute DT(S) in linear expected time. Thus, these structures are basically equivalent. To obtain our result, we generalize another algorithm by Krznaric and Levcopoulos to find a hierarchical clustering for S in linear time, once DT(S) is known. We show that their algorithm remains (almost) correct for any triangulation of bounded dilation, i.e., any triangulation in which the shortest path distance between any two points approximates their Euclidean distance. In general, however, the resulting running time may be superlinear. Nonetheless, we can show that the properties of the greedy triangulation suffice to guarantee a linear time bound.

cs.CG