Search arXiv⌕ Search

arXiv subjects

Liam Roditty

Publications and source records attributed to Liam Roditty.

At least 37 records · Page 2Linked 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↗

Insertion-Only Dynamic Connectivity in General Disk Graphs

Let $S \subseteq \mathbb{R}^2$ be a set of $n$ \emph{sites} in the plane, so that every site $s \in S$ has an \emph{associated radius} $r_s > 0$. Let $D(S)$ be the \emph{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 $D(S)$ as $S$ changes dynamically over time. We consider the incremental case, where new sites can be inserted into $S$. While previous work focuses on data structures whose running time depends on the ratio between the smallest and the largest site in $S$, we present a data structure with $O(α(n))$ amortized query time and $O(\log^6 n)$ expected amortized insertion time.

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↗

Towards Tight Approximation Bounds for Graph Diameter and Eccentricities

Among the most important graph parameters is the Diameter, the largest distance between any two vertices. There are no known very efficient algorithms for computing the Diameter exactly. Thus, much research has been devoted to how fast this parameter can be approximated. Chechik et al. showed that the diameter can be approximated within a multiplicative factor of $3/2$ in $\tilde{O}(m^{3/2})$ time. Furthermore, Roditty and Vassilevska W. showed that unless the Strong Exponential Time Hypothesis (SETH) fails, no $O(n^{2-ε})$ time algorithm can achieve an approximation factor better than $3/2$ in sparse graphs. Thus the above algorithm is essentially optimal for sparse graphs for approximation factors less than $3/2$. It was, however, completely plausible that a $3/2$-approximation is possible in linear time. In this work we conditionally rule out such a possibility by showing that unless SETH fails no $O(m^{3/2-ε})$ time algorithm can achieve an approximation factor better than $5/3$. Another fundamental set of graph parameters are the Eccentricities. The Eccentricity of a vertex $v$ is the distance between $v$ and the farthest vertex from $v$. Chechik et al. showed that the Eccentricities of all vertices can be approximated within a factor of $5/3$ in $\tilde{O}(m^{3/2})$ time and Abboud et al. showed that no $O(n^{2-ε})$ algorithm can achieve better than $5/3$ approximation in sparse graphs. We show that the runtime of the $5/3$ approximation algorithm is also optimal under SETH. We also show that no near-linear time algorithm can achieve a better than $2$ approximation for the Eccentricities and that this is essentially tight: we give an algorithm that approximates Eccentricities within a $2+δ$ factor in $\tilde{O}(m/δ)$ time for any $0<δ<1$. This beats all Eccentricity algorithms in Cairo et al.

cs.DS↗

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↗

Algorithms and Hardness for Diameter in Dynamic Graphs

The diameter, radius and eccentricities are natural graph parameters. While these problems have been studied extensively, there are no known dynamic algorithms for them beyond the ones that follow from trivial recomputation after each update or from solving dynamic All-Pairs Shortest Paths (APSP), which is very computationally intensive. This is the situation for dynamic approximation algorithms as well, and even if only edge insertions or edge deletions need to be supported. This paper provides a comprehensive study of the dynamic approximation of Diameter, Radius and Eccentricities, providing both conditional lower bounds, and new algorithms whose bounds are optimal under popular hypotheses in fine-grained complexity. Some of the highlights include: - Under popular hardness hypotheses, there can be no significantly better fully dynamic approximation algorithms than recomputing the answer after each update, or maintaining full APSP. - Nearly optimal partially dynamic (incremental/decremental) algorithms can be achieved via efficient reductions to (incremental/decremental) maintenance of Single-Source Shortest Paths. For instance, a nearly $(3/2+ε)$-approximation to Diameter in directed or undirected graphs can be maintained decrementally in total time $m^{1+o(1)}\sqrt{n}/ε^2$. This nearly matches the static $3/2$-approximation algorithm for the problem that is known to be conditionally optimal.

cs.DS↗

$\{-1,0,1\}$-APSP and (min,max)-Product Problems

In the $\{-1,0,1\}$-APSP problem the goal is to compute all-pairs shortest paths (APSP) on a directed graph whose edge weights are all from $\{-1,0,1\}$. In the (min,max)-product problem the input is two $n\times n$ matrices $A$ and $B$, and the goal is to output the (min,max)-product of $A$ and $B$. This paper provides a new algorithm for the $\{-1,0,1\}$-APSP problem via a simple reduction to the target-(min,max)-product problem where the input is three $n\times n$ matrices $A,B$, and $T$, and the goal is to output a Boolean $n\times n$ matrix $C$ such that the $(i,j)$ entry of $C$ is 1 if and only if the $(i,j)$ entry of the (min,max)-product of $A$ and $B$ is exactly the $(i,j)$ entry of the target matrix $T$. If (min,max)-product can be solved in $T_{MM}(n) = Ω(n^2)$ time then it is straightforward to solve target-(min,max)-product in $O(T_{MM}(n))$ time. Thus, given the recent result of Bringmann, Künnemann, and Wegrzycki [STOC 2019], the $\{-1,0,1\}$-APSP problem can be solved in the same time needed for solving approximate APSP on graphs with positive weights. Moreover, we design a simple algorithm for target-(min,max)-product when the inputs are restricted to the family of inputs generated by our reduction. Using fast rectangular matrix multiplication, the new algorithm is faster than the current best known algorithm for (min,max)-product.

cs.DS↗

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↗

Approximating Cycles in Directed Graphs: Fast Algorithms for Girth and Roundtrip Spanners

The girth of a graph, i.e. the length of its shortest cycle, is a fundamental graph parameter. Unfortunately all known algorithms for computing, even approximately, the girth and girth-related structures in directed weighted $m$-edge and $n$-node graphs require $Ω(\min\{n^ω, mn\})$ time (for $2\leqω<2.373$). In this paper, we drastically improve these runtimes as follows: * Multiplicative Approximations in Nearly Linear Time: We give an algorithm that in $\widetilde{O}(m)$ time computes an $\widetilde{O}(1)$-multiplicative approximation of the girth as well as an $\widetilde{O}(1)$-multiplicative roundtrip spanner with $\widetilde{O}(n)$ edges with high probability (w.h.p). * Nearly Tight Additive Approximations: For unweighted graphs and any $α\in (0,1)$ we give an algorithm that in $\widetilde{O}(mn^{1 - α})$ time computes an $O(n^α)$-additive approximation of the girth w.h.p, and partially derandomize it. We show that the runtime of our algorithm cannot be significantly improved without a breakthrough in combinatorial Boolean matrix multiplication. Our main technical contribution to achieve these results is the first nearly linear time algorithm for computing roundtrip covers, a directed graph decomposition concept key to previous roundtrip spanner constructions. Previously it was not known how to compute these significantly faster than $Ω(\min\{n^ω, mn\})$ time. Given the traditional difficulty in efficiently processing directed graphs, we hope our techniques may find further applications.

cs.DS↗

An efficient strongly connected components algorithm in the fault tolerant model

In this paper we study the problem of maintaining the strongly connected components of a graph in the presence of failures. In particular, we show that given a directed graph $G=(V,E)$ with $n=|V|$ and $m=|E|$, and an integer value $k\geq 1$, there is an algorithm that computes in $O(2^{k}n\log^2 n)$ time for any set $F$ of size at most $k$ the strongly connected components of the graph $G\setminus F$. The running time of our algorithm is almost optimal since the time for outputting the SCCs of $G\setminus F$ is at least $Ω(n)$. The algorithm uses a data structure that is computed in a preprocessing phase in polynomial time and is of size $O(2^{k} n^2)$. Our result is obtained using a new observation on the relation between strongly connected components (SCCs) and reachability. More specifically, one of the main building blocks in our result is a restricted variant of the problem in which we only compute strongly connected components that intersect a certain path. Restricting our attention to a path allows us to implicitly compute reachability between the path vertices and the rest of the graph in time that depends logarithmically rather than linearly in the size of the path. This new observation alone, however, is not enough, since we need to find an efficient way to represent the strongly connected components using paths. For this purpose we use a mixture of old and classical techniques such as the heavy path decomposition of Sleator and Tarjan and the classical Depth-First-Search algorithm. Although, these are by now standard techniques, we are not aware of any usage of them in the context of dynamic maintenance of SCCs. Therefore, we expect that our new insights and mixture of new and old techniques will be of independent interest.

cs.DS↗

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↗

New routing techniques and their applications

Let $G=(V,E)$ be an undirected graph with $n$ vertices and $m$ edges. We obtain the following new routing schemes: - A routing scheme for unweighted graphs that uses $\tilde O(\frac{1}ε n^{2/3})$ space at each vertex and $\tilde O(1/ε)$-bit headers, to route a message between any pair of vertices $u,v\in V$ on a $(2 + ε,1)$-stretch path, i.e., a path of length at most $(2+ε)\cdot d(u,v)+1$. This should be compared to the $(2,1)$-stretch and $\tilde O(n^{5/3})$ space distance oracle of Patrascu and Roditty [FOCS'10 and SIAM J. Comput. 2014] and to the $(2,1)$-stretch routing scheme of Abraham and Gavoille [DISC'11] that uses $\tilde O( n^{3/4})$ space at each vertex. - A routing scheme for weighted graphs with normalized diameter $D$, that uses $\tilde O(\frac{1}ε n^{1/3}\log D)$ space at each vertex and $\tilde O(\frac{1}ε\log D)$-bit headers, to route a message between any pair of vertices on a $(5+ε)$-stretch path. This should be compared to the $5$-stretch and $\tilde O(n^{4/3})$ space distance oracle of Thorup and Zwick [STOC'01 and J. ACM. 2005] and to the $7$-stretch routing scheme of Thorup and Zwick [SPAA'01] that uses $\tilde O( n^{1/3})$ space at each vertex. Since a $5$-stretch routing scheme must use tables of $Ω( n^{1/3})$ space our result is almost tight. - For an integer $\ell>1$, a routing scheme for unweighted graphs that uses $\tilde O(\ell\frac{1}ε n^{\ell/(2\ell \pm 1)})$ space at each vertex and $\tilde O(\frac{1}ε)$-bit headers, to route a message between any pair of vertices on a $(3\pm2/\ell+ε,2)$-stretch path. - A routing scheme for weighted graphs, that uses $\tilde O(\frac{1}εn^{1/k}\log D)$ space at each vertex and $\tilde O(\frac{1}ε\log D)$-bit headers, to route a message between any pair of vertices on a $(4k-7+ε)$-stretch path.

cs.DS↗

A Labeling Approach to Incremental Cycle Detection

In the \emph{incremental cycle detection} problem arcs are added to a directed acyclic graph and the algorithm has to report if the new arc closes a cycle. One seeks to minimize the total time to process the entire sequence of arc insertions, or until a cycle appears. In a recent breakthrough, Bender, Fineman, Gilbert and Tarjan \cite{BeFiGiTa11} presented two different algorithms, with time complexity $O(n^2 \log n)$ and $O(m \cdot \min \{m^{1/2}, n^{2/3} \})$, respectively. In this paper we introduce a new technique for incremental cycle detection that allows us to obtain both bounds (up to a logarithmic factor). Furthermore, our approach seems more amiable for distributed implementation.

cs.DS↗

Finding the Minimum-Weight k-Path

Given a weighted $n$-vertex graph $G$ with integer edge-weights taken from a range $[-M,M]$, we show that the minimum-weight simple path visiting $k$ vertices can be found in time $\tilde{O}(2^k \poly(k) M n^ω) = O^*(2^k M)$. If the weights are reals in $[1,M]$, we provide a $(1+\varepsilon)$-approximation which has a running time of $\tilde{O}(2^k \poly(k) n^ω(\log\log M + 1/\varepsilon))$. For the more general problem of $k$-tree, in which we wish to find a minimum-weight copy of a $k$-node tree $T$ in a given weighted graph $G$, under the same restrictions on edge weights respectively, we give an exact solution of running time $\tilde{O}(2^k \poly(k) M n^3) $ and a $(1+\varepsilon)$-approximate solution of running time $\tilde{O}(2^k \poly(k) n^3(\log\log M + 1/\varepsilon))$. All of the above algorithms are randomized with a polynomially-small error probability.

cs.DS↗

Approximating the diameter of a graph

In this paper we consider the fundamental problem of approximating the diameter $D$ of directed or undirected graphs. In a seminal paper, Aingworth, Chekuri, Indyk and Motwani [SIAM J. Comput. 1999] presented an algorithm that computes in $\Ot(m\sqrt n + n^2)$ time an estimate $\hat{D}$ for the diameter of an $n$-node, $m$-edge graph, such that $\lfloor 2/3 D \rfloor \leq \hat{D} \leq D$. In this paper we present an algorithm that produces the same estimate in $\Ot(m\sqrt n)$ expected running time. We then provide strong evidence that a better approximation may be hard to obtain if we insist on an $O(m^{2-\eps})$ running time. In particular, we show that if there is some constant $\eps>0$ so that there is an algorithm for undirected unweighted graphs that runs in $O(m^{2-\eps})$ time and produces an approximation $\hat{D}$ such that $ (2/3+\eps) D \leq \hat{D} \leq D$, then SAT for CNF formulas on $n$ variables can be solved in $O^{*}((2-δ)^{n})$ time for some constant $δ>0$, and the strong exponential time hypothesis of [Impagliazzo, Paturi, Zane JCSS'01] is false. Motivated by this somewhat negative result, we study whether it is possible to obtain a better approximation for specific cases. For unweighted directed or undirected graphs, we show that if $D=3h+z$, where $h\geq 0$ and $z\in {0,1,2}$, then it is possible to report in $\tilde{O}(\min{m^{2/3} n^{4/3},m^{2-1/(2h+3)}})$ time an estimate $\hat{D}$ such that $2h+z \leq \hat{D}\leq D$, thus giving a better than 3/2 approximation whenever $z\neq 0$. This is significant for constant values of $D$ which is exactly when the diameter approximation problem is hardest to solve. For the case of unweighted undirected graphs we present an $\tilde{O}(m^{2/3} n^{4/3})$ time algorithm that reports an estimate $\hat{D}$ such that $\lfloor 4D/5\rfloor \leq \hat{D}\leq D$.

cs.DS↗

Minimum Weight Cycles and Triangles: Equivalences and Algorithms

We consider the fundamental algorithmic problem of finding a cycle of minimum weight in a weighted graph. In particular, we show that the minimum weight cycle problem in an undirected n-node graph with edge weights in {1,...,M} or in a directed n-node graph with edge weights in {-M,..., M} and no negative cycles can be efficiently reduced to finding a minimum weight triangle in an Theta(n)-node undirected graph with weights in {1,...,O(M)}. Roughly speaking, our reductions imply the following surprising phenomenon: a minimum cycle with an arbitrary number of weighted edges can be "encoded" using only three edges within roughly the same weight interval! This resolves a longstanding open problem posed by Itai and Rodeh [SIAM J. Computing 1978 and STOC'77]. A direct consequence of our efficient reductions are O (Mn^{omega})-time algorithms using fast matrix multiplication (FMM) for finding a minimum weight cycle in both undirected graphs with integral weights from the interval [1,M] and directed graphs with integral weights from the interval [-M,M]. The latter seems to reveal a strong separation between the all pairs shortest paths (APSP) problem and the minimum weight cycle problem in directed graphs as the fastest known APSP algorithm has a running time of O(M^{0.681}n^{2.575}) by Zwick [J. ACM 2002]. In contrast, when only combinatorial algorithms are allowed (that is, without FMM) the only known solution to minimum weight cycle is by computing APSP. Interestingly, any separation between the two problems in this case would be an amazing breakthrough as by a recent paper by Vassilevska W. and Williams [FOCS'10], any O(n^{3-eps})-time algorithm (eps>0) for minimum weight cycle immediately implies a O(n^{3-delta})-time algorithm (delta>0) for APSP.

cs.DS↗