Table of Contents
Fetching ...

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.

Near-linear Time Dispersion of Mobile Agents

TL;DR

This work tackles the dispersion of 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 time, where . The authors achieve near time-optimal dispersion: rooted dispersion in time with bits, general dispersion in time with bits, and a time-optimal rooted -time algorithm with 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 agents in a simple, connected, and undirected graph with nodes and edges. The goal of the dispersion problem is to move these 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 time and bits of memory per agent [OPODIS 2021], where is the maximum number of edges in any induced subgraph of with nodes, and is the maximum degree of . This algorithm is currently the fastest in the literature, as no -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 time using bits of memory per agent. Next, we propose an algorithm for the general setting that achieves dispersion in time using bits. Finally, for the rooted setting, we give a time-optimal (i.e.,~-time) algorithm with 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.
Paper Structure (14 sections, 10 theorems, 3 equations, 2 figures, 2 tables, 6 algorithms)

This paper contains 14 sections, 10 theorems, 3 equations, 2 figures, 2 tables, 6 algorithms.

Key Result

Lemma 1

Each time $\mathtt{Probe}()$ is invoked on node $w\in V$, $\mathtt{Probe}()$ finishes in $O(\log \tau)$ time. At the end of $\mathtt{Probe}()$, it is guaranteed that: (i) if there exists an unsettled node in $N(w)$, then $N(w,\psi(w).\mathtt{next})$ is unsettled, and (ii) if there are no unsettled n

Figures (2)

  • Figure 1: The behavior of the agents when the leader $a_{\mathrm{max}}$ invokes $\mathtt{Probe}()$ at the center node $w$ in $\mathbf{RootedDisp}$. A black circle, triangle, and rectangle represent a leader ($a_{\mathrm{max}}$), a non-leader explorer, and a settler, respectively. The integers in the leftmost figure represents port numbers. In every two time steps, the number of agents on $w$ excluding $\psi(w)$ doubles ( i.e., $2 \to 4 \to 8$) until some agent detects an unsettled neighbor of $w$. After that, $a_{\mathrm{max}}$ lets the helping settlers go back to their homes.
  • Figure 2: The behavior of explorers when their leader invokes $\mathtt{Probe}()$ at the center node $w$ in $\mathbf{GeneralDisp}$. A black circle, triangle, and rectangle represent a leader, a zombie, and a settler, respectively. The integers in the top left figure represents port numbers.

Theorems & Definitions (20)

  • Definition 1: Dispersion Problem
  • Remark 1
  • Lemma 1
  • Lemma 2
  • proof
  • Theorem 1
  • proof
  • Lemma 3
  • proof
  • Theorem 2
  • ...and 10 more