Self-stabilizing Graph Exploration by a Single Agent
摘要
In this paper, we present two self-stabilizing algorithms enabling a single (mobile) agent to explore graphs. Starting from any initial configuration, i.e., 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 cover time, defined as the number of moves required to visit all nodes, and 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 = \varOmega (n)\) , its cover time is optimal, i.e., O(m) in expectation, and its memory requirements are \(O(\log c)\) bits for the agent and \(O(\log (c+\delta _v))\) bits for each node v, where n and m are the number of nodes and edges, respectively, and \(\delta _v\) is the degree of node v. The second algorithm is deterministic. It requires an input integer \(k \ge \max (D, \delta _{\textrm{max}})\) , where D and \(\delta _{\textrm{max}}\) are the diameter and maximum degree of the graph, respectively. The cover time of this algorithm is \(O(m + nD)\) , and it uses \(O(\log k)\) bits of memory for both the agent and each node.