Acquaintance Time of a Graph (1302.2787v4)
Abstract: We define the following parameter of connected graphs. For a given graph $G$ we place one agent in each vertex of $G$. Every pair of agents sharing a common edge is declared to be acquainted. In each round we choose some matching of $G$ (not necessarily a maximal matching), and for each edge in the matching the agents on this edge swap places. After the swap, again, every pair of agents sharing a common edge become acquainted, and the process continues. We define the \emph{acquaintance time} of a graph $G$, denoted by $AC(G)$, to be the minimal number of rounds required until every two agents are acquainted. We first study the acquaintance time for some natural families of graphs including the path, expanders, the binary tree, and the complete bipartite graph. We also show that for all positive integers $n$ and $k \leq n{1.5}$ there exists an $n$-vertex graph $G$ such that $AC(G) =\Theta(k)$. We also prove that for all $n$-vertex connected graphs $G$ we have $AC(G) = O\left(\frac{n2}{\log(n)/\log\log(n)}\right)$, improving the $O(n2)$ trivial upper bound achieved by sequentially letting each agent perform depth-first search along a spanning tree of $G$. Studying the computational complexity of this problem, we prove that for any constant $t \geq 1$ the problem of deciding that a given graph $G$ has $AC(G) \leq t$ or $AC(G) \geq 2t$ is $\mathcal{NP}$-complete. That is, $AC(G)$ is $\mathcal{NP}$-hard to approximate within multiplicative factor of 2, as well as within any additive constant factor. On the algorithmic side, we give a deterministic algorithm that given a graph $G$ with $AC(G)=1$ finds a ${\lceil n/c\rceil}$-rounds strategy for acquaintance in time $n{c+O(1)}$. We also design a randomized polynomial time algorithm that given a graph $G$ with $AC(G)=1$ finds with high probability an $O(\log(n))$-rounds strategy for acquaintance.