Gathering by oblivious robots on graphs
Oblivious Look–Compute–Move robots must all reach one node of a graph and stay there; which starts can be gathered depends on the symmetries of the graph, on multiplicity detection and on the scheduler.
Problem statement and measuresexpand
\(k \ge 2\) anonymous, oblivious robots stand on the nodes of a connected anonymous graph \(G\) with \(n\) nodes, which every robot sees whole. A robot runs Look–Compute–Move cycles: in a Look it takes a snapshot of the graph with its occupied nodes, it computes from that snapshot only, and it stays or moves to a neighbour; moves are instantaneous, so robots are always seen on nodes. A node with two or more robots is a tower. With multiplicity detection a snapshot shows which nodes are towers (weak) or how many robots each node holds (strong); without it a tower looks like one robot. The robots must reach a configuration in which all of them are on one node and none moves again. A setting fixes the scheduler, the multiplicity detection, whether towers may exist at the start, and the graph class; an algorithm must gather from every start of the setting except the starts listed as unsolvable. Under round robin the scheduler activates one robot at a time in a fixed cyclic order. Time is counted in epochs: an epoch is an interval in which every robot completes at least one cycle (under round robin, \(k\) consecutive activations).
Measures: Time, epochs until all robots are on one node and no robot moves again.
Rings, round robin, one robot per node at the start
verifiedWith one robot per node at the start, only three robots on three consecutive nodes and the full 4-node and 5-node rings cannot be gathered; every other start is gathered in at most \(n-3\) epochs.
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.
- Faults: no faults
- All agents follow the algorithm forever.
- Network: ring
- An anonymous, unoriented ring of \(n\) nodes.
- Multiplicity detection: no multiplicity detection
- A snapshot shows which nodes are occupied, not how many robots each holds.
- Initial configuration: dispersed start
- Every initially occupied node holds exactly one agent (\(\ell=k\)). Also called a scattered start, notably in black hole search.
- Scheduler: sequential
- Sequential: an SSYNC scheduler that activates exactly one robot per round, fairly; which robot is the adversary's choice unless the activation order is fixed (see the order axis).
- Activation order: round robin
- With the sequential scheduler: the robots are activated one per round in a cyclic order that the adversary fixes at the start, that the robots do not know, and that repeats forever; an epoch is \(k\) consecutive rounds, one activation per robot.
Statement for this variant
Every node holds at most one robot at the start; towers formed later are invisible. Navarra & Piselli 2025 call this distinct gathering.
What is known
- three robots on three consecutive nodes, for every \(n\) (Theorem III.2)
- the 4-node and 5-node rings with every node occupied (Lemmas III.2, III.3)
- the adversary chooses the cyclic order
- the fully occupied ring with \(n \ge 6\): whatever the gathering node, some robot is at distance \(\lfloor n/2 \rfloor\) from it (Section V)
- a robot moves at most one edge per epoch
Results, in order of publication
Introductory and current best as far as found: at most \(n-3\) epochs (Theorem V.1), with the algorithm of the setting that allows towers at the start.
Open questions
None recorded for this variant.
Notes
Allowing towers at the start adds two adjacent occupied nodes, every node occupied and two kinds of starts on the 5-node ring to the unsolvable starts, since hidden towers can sit anywhere. Checked against the full text of Navarra & Piselli 2025 (arXiv v2).
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.