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 trees, with a map, any number of agents
verifiedAgents that know the tree and their position explore it without collisions in exactly \(n\Delta\) rounds, using a colouring of the edges with \(\Delta\) colours.
Assumed (added on the last edge are outlined)
Not assumed
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: tree
- \(G\) is connected and acyclic: \(|E|=n-1\).
Statement for this variant
Nodes carry the distinct identifiers \(1, \dots, n\), and an agent sees those of its node and of the neighbours. Every agent must return to its start node.
What is known
- \(n\) agents, one on every node
- a node \(u\) of degree \(\Delta\): in every round at most one agent enters \(u\), and every agent enters \(u\) at least \(\Delta\) times because its route is closed and \(G\) is a tree (Theorem 3.2)
Results, in order of publication
Introductory and current best (Proposition 3.1, Theorem 3.2): from a colouring of the edges with \(\Delta\) colours, in each round the agents cross the edges of one colour class, which form a matching, so no two agents meet.
Open questions
None recorded for this variant.
Notes
Up to constant factors the bounds also hold if agents need not return to their start nodes Czyzowicz et al. 2017a. Checked against the full text (the 2012 report on HAL; theorem numbers refer to it).
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
No catalogued stronger setting.
Know a better result for this setting, or found a mistake? Suggest a result · Report an error. Accepted contributions are acknowledged.