Mobility Matters
Home›Mobile agents on graphs›Exploration›Graph exploration by a single agent›Collision-free exploration

Collision-free exploration

Agents start at distinct nodes of a graph and must explore it so that no two agents are ever at the same node; how long does it take, and what must the agents sense of each other?

Problem statement and measuresexpand

\(k \ge 2\) agents start at distinct nodes of a connected undirected graph \(G\) with \(n\) nodes and move in synchronous rounds: in each round an agent stays or crosses one edge. A collision is two agents at the same node in the same round; two agents that cross one edge in opposite directions do not collide and do not notice it. Exploration is collision-free if no collision ever happens, also with an agent that an adversary has not yet woken up. Unless a setting says otherwise, every agent must visit every node and then stop. The agents run the same deterministic algorithm, cannot mark nodes and send no messages; what they perceive of each other (their vision) and what they know of \(G\) are fixed by the setting, and in some settings an oracle places coloured pebbles on nodes before the start. Time is the number of rounds from the wake-up of the later agent until every agent has stopped. \(X(n)\) is the time of a single-agent exploration procedure for graphs with at most \(n\) nodes, used as a building block (polynomial in \(n\), for instance with a universal exploration sequence).

Measures: Time, rounds from the wake-up of the later agent until all agents have stopped; Colours, number of pebble colours the oracle needs, when pebbles are used.

Labelled graphs, with a map, any number of agents

verified
Time: tightColours: tight

With a map, collision-free exploration of a graph takes \(\Theta(n\Delta^*)\) rounds, where \(\Delta^*\) is the smallest maximum degree of a spanning tree; computing the exact optimum is NP-hard.

Assumed (added on the last edge are outlined)

+Graph dynamicsstatic graph+Edge directionundirected+Node identifierslabelled nodes (an agent can recognise a node it has visited)+Timingsynchronous rounds+Knowledge of the grapha map with their own position+Startsimultaneous start

Not assumed

Number of agentsany number of agentsWhat must be visitedevery agent visits every nodeVision of the other agentsnone: agents never perceive each otherHelp from an oracleno helpTopologyarbitrary connected graph
Formal definitions of this setting
Graph dynamics: static graph
\(G_t=G\) for all \(t\): the edge set never changes.
Edge direction: undirected
\(G=(V,E)\) with \(E\subseteq\binom V2\); every edge can be traversed in both directions.
Node identifiers: labelled nodes
Each node \(v\) carries a distinct identifier that agents at \(v\) can read; hence an agent can recognise a node it has visited.
Timing: synchronous
Time proceeds in rounds \(t=1,2,\dots\); in every round every agent communicates, computes and moves (at most one edge) simultaneously.
Number of agents: any \(k\)
Any number \(k\) of agents, \(2 \le k \le n\), which they do not know.
What must be visited: every agent
Every agent must visit every node and stop (in Czyzowicz et al. 2017a also return to its start node).
Knowledge of the graph: map
Every agent knows \(G\) and its own start node in it, but not the number or the start nodes of the other agents.
Vision of the other agents: no vision
An agent never perceives another agent.
Help from an oracle: no help
Nothing is placed on the nodes.
Start: simultaneous start
All agents start in the same round.
Topology: any topology
\(G\) is any connected graph in the class allowed by the other axes.

Statement for this variant

As in the setting on trees. \(\Delta^*\) is the smallest maximum degree of a spanning tree of \(G\).

What is known

Time · rounds from the wake-up of the later agent until all agents have stopped
tight
\(\Theta(n\Delta^*)\) for every graph.
lower bound
\(\Omega(n\Delta^*)\) Czyzowicz et al. 2017a
bottleneckcongestion at a node
holds when
  • \(n\) agents, one on every node
  • the fractional relaxation of the linear program for a spanning tree of minimum degree bounds the number of rounds (Theorem 3.4)
introductory—
current best
\(O(n\Delta^*)\)
Colours · number of pebble colours the oracle needs, when pebbles are used
tight
No pebbles.
lower boundnone known
introductory—
current best—

Results, in order of publication

Time \(O(n\Delta^*)\)

Introductory and current best (Proposition 3.3, Theorem 3.4): explore a spanning tree of minimum degree as on trees. That tree is NP-hard to compute; one of degree at most \(\Delta^*+1\), computable in polynomial time, gives \(n(\Delta^*+1)\) rounds. Deciding whether the optimal time is at most a given number is NP-complete (Proposition 3.5).

Open questions

None recorded for this variant.

Notes

Checked against the full text (the 2012 report on HAL).

What carries over from neighbouring settings

Read off the order of assumptions, not checked case by case: results may carry extra assumptions (shown on their pages), and asynchronous time is measured in epochs.

Algorithms from weaker settings work here

Lower bounds from stronger settings hold here

Branches from here

Know a better result for this setting, or found a mistake? Suggest a result · Report an error. Accepted contributions are acknowledged.