English

Self-stabilizing Graph Exploration by a Single Agent

Distributed, Parallel, and Cluster Computing 2025-04-15 v4

Abstract

In this paper, we present two self-stabilizing algorithms that enable a single (mobile) agent to explore graphs. Starting from any initial configuration, \ie regardless of the initial states of the agent and all nodes, as well as the initial location of the agent, the algorithms ensure the agent visits all nodes. We evaluate the algorithms based on two metrics: the \emph{cover time}, defined as the number of moves required to visit all nodes, and \emph{memory usage}, defined as the storage needed for maintaining the states of the agent and each node. The first algorithm is randomized. Given an integer c=Ω(n)c = \Omega(n), its cover time is optimal, \ie O(m)O(m) in expectation, and its memory requirements are O(logc)O(\log c) bits for the agent and O(log(c+δv))O(\log (c+\delta_v)) bits for each node vv, where nn and mm are the numbers of nodes and edges, respectively, and δv\delta_v is the degree of node vv. For general c2c \ge 2, its cover time is O(mmin(D,nc+1,Dc+logn))O( m \cdot \min(D, \frac{n}{c}+1, \frac{D}{c} + \log n)), where DD is the diameter of a graph. The second algorithm is deterministic. It requires an input integer kmax(D,\dmax)k \ge \max(D, \dmax), where \dmax\dmax is the maximum degree of the graph. The cover time of this algorithm is O(m+nD)O(m + nD), and it uses O(logk)O(\log k) bits of memory for both the agent and each node.

Keywords

Cite

@article{arxiv.2010.08929,
  title  = {Self-stabilizing Graph Exploration by a Single Agent},
  author = {Yuichi Sudo and Fukuhito Ooshita and Sayaka Kamei},
  journal= {arXiv preprint arXiv:2010.08929},
  year   = {2025}
}