Near-linear Time Dispersion of Mobile Agents
Yuichi Sudo, Masahiro Shibata, Junya Nakamura, Yonghwan Kim, Toshimitsu Masuzawa
TL;DR
This work tackles the dispersion of $k$ mobile agents on a graph with local communication and synchronous rounds, addressing rooted and general initial placements. It introduces HEO-DFS (Helping Each Other DFS), enabling parallel, exponentially faster exploration by coordinating settled agents to probe unvisited neighbors in $O(\log \tau)$ time, where $\tau = \min(k,\Delta)$. The authors achieve near time-optimal dispersion: rooted dispersion in $O(k \log \tau)=O(k \log k)$ time with $O(\log (k+\Delta))$ bits, general dispersion in $O(k \log k \cdot \log \tau)=O(k \log^2 k)$ time with $O(\log (k+\Delta))$ bits, and a time-optimal rooted $O(k)$-time algorithm with $O(\Delta + \log k)$ bits. The methods promise practical impact for distributed coordination tasks in anonymous graphs and may generalize to other fundamental problems like exploration and gathering under strict communication constraints.
Abstract
Consider that there are $k\le n$ agents in a simple, connected, and undirected graph $G=(V,E)$ with $n$ nodes and $m$ edges. The goal of the dispersion problem is to move these $k$ agents to mutually distinct nodes. Agents can communicate only when they are at the same node, and no other communication means, such as whiteboards, are available. We assume that the agents operate synchronously. We consider two scenarios: when all agents are initially located at a single node (rooted setting) and when they are initially distributed over one or more nodes (general setting). Kshemkalyani and Sharma presented a dispersion algorithm for the general setting, which uses $O(m_k)$ time and $\log(k + Δ)$ bits of memory per agent [OPODIS 2021], where $m_k$ is the maximum number of edges in any induced subgraph of $G$ with $k$ nodes, and $Δ$ is the maximum degree of $G$. This algorithm is currently the fastest in the literature, as no $o(m_k)$-time algorithm has been discovered, even for the rooted setting. In this paper, we present significantly faster algorithms for both the rooted and the general settings. First, we present an algorithm for the rooted setting that solves the dispersion problem in $O(k\log \min(k,Δ))=O(k\log k)$ time using $O(\log (k+Δ))$ bits of memory per agent. Next, we propose an algorithm for the general setting that achieves dispersion in $O(k \log k \cdot \log \min(k,Δ))=O(k \log^2 k)$ time using $O(\log (k+Δ))$ bits. Finally, for the rooted setting, we give a time-optimal (i.e.,~$O(k)$-time) algorithm with $O(Δ+\log k)$ bits of space per agent. All algorithms presented in this paper work only in the synchronous setting, while several algorithms in the literature, including the one given by Kshemkalyani and Sharma at OPODIS 2021, work in the asynchronous setting.
