Computer Science > Data Structures and Algorithms
[Submitted on 16 Jul 2012]
Title:Approximating the diameter of a graph
View PDFAbstract: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-\delta)^{n})$ time for some constant $\delta>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$.
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.