Acquaintance Time of a Graph
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 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 ≤ n1.5 there exists an n-vertex graph G such that AC(G) =(k). We also prove that for all n-vertex connected graphs G we have AC(G) = O(n2(n)/(n)), 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 ≥ 1 the problem of deciding that a given graph G has AC(G) ≤ t or AC(G) ≥ 2t is NP-complete. That is, AC(G) is 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 n/c-rounds strategy for acquaintance in time nc+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((n))-rounds strategy for acquaintance.
Turn this paper into a lesson
ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.