Gathering
Robots must meet at a single point that is not fixed in advance, and stay there.
Problem statement and measurescollapse
\(n\) robots start at distinct points and must all reach the same point in finite time and remain there. For \(n = 2\) the problem is called rendezvous. Time is counted in rounds (FSYNC, SSYNC) or in epochs (ASYNC: intervals in which every robot completes at least one full Look–Compute–Move cycle); colours count light colours.
Measures: Time, rounds (FSYNC, SSYNC) or epochs (ASYNC) until the task is done; "finite" when only solvability is known; Colours, colours of the light per robot (0 for oblivious robots).
A first look
the basic problem, a simple algorithm and why some things cannot be done, for a newcomer
Imagine robots scattered over a field that must all meet at one spot, although nobody has said where. There are \(n\) robots, points in the plane at distinct places; their positions form the configuration. Each robot repeats a Look–Compute–Move cycle: it takes a snapshot of where the other robots are (Look), decides on a destination point (Compute) and moves towards it (Move). They are identical, silent and oblivious (they remember nothing from one cycle to the next), and each uses its own local coordinate system (origin, axes, unit of length and handedness), so they agree on no direction. An adversary, the scheduler, decides the activation of robots, that is, when each performs a cycle: in SSYNC time runs in rounds and in each round it activates some of the robots; in ASYNC every phase may take any finite time. The robots must all reach the same point in finite time and stay there (for \(n = 2\) this is called rendezvous). In the standard version \(n \ge 3\), the scheduler is ASYNC, and robots have weak multiplicity detection: they can tell whether a point holds one robot or several (a multiplicity), but not how many.
- If exactly one point is a multiplicity, walk straight to it.
- Otherwise, look at the shape of the configuration and choose a point that every robot identifies in the same way despite their different local coordinate systems (for example the centre of a symmetric configuration), and move so that exactly one multiplicity appears.
- From then on every robot follows rule 1, along paths that never create a second multiplicity.
Why it matters. It shows how a tiny sensing ability, telling one robot from several, makes an unsolvable problem solvable.
Take two robots, \(A\) and \(B\), and look at the round in which they would finally meet.
(a) If both moved in that round, the scheduler could have activated only one: it lands where the other was heading, not where the other is, so they miss.
(b) If only \(A\) moved and landed on \(B\), the scheduler could have activated both; unless \(B\)'s rule tells it to stay put, \(B\) moves away and they miss again.
So meeting needs a situation in which, when both are activated, one robot jumps onto the other while the other stays. (c) But the robots are identical and agree on no direction, so the adversary can give them local coordinate systems in which each sees the other at the same spot, say one unit to its east. Identical robots with identical snapshots make the same choice: both stay or both move. The lopsided situation never occurs, and they never meet.
Why it matters. It is the founding impossibility of the field: the scheduler keeps identical robots symmetric, and most later assumptions (multiplicity detection, lights, compasses) are ways to break that symmetry.
Suppose the robots stand on only two points, say \(n-1\) robots on \(p\) and one robot on \(q\). A robot that cannot detect multiplicities sees just two occupied points, exactly what it would see if there were only two robots. The robots are thrown back into the two-robot situation above, and the scheduler, by activating only some of the robots on a point, can move groups around so that they never all stand together. Prencipe shows that against any algorithm the scheduler can first drive the robots into such special configurations and then keep them from ever gathering; the full proof is a longer case analysis.
Why it matters. It explains why weak multiplicity detection became the standard assumption for gathering.
Now each robot sees only the robots within distance \(V\) (its visibility radius), but all robots agree on north and east (a common compass).
- If you see a robot to your left, or above you on your own vertical line, do nothing.
- If you see robots only below you on your vertical line, move down towards the nearest one.
- If you see robots only to your right, move horizontally to the vertical line of the nearest one.
- If you see robots both below you and to your right, make a diagonal move right and down, chosen so that you lose sight of nobody.
Why it matters. It shows how a shared direction can replace global vision: robots that see little can still agree where to go.
What is known
The best upper bound against the best lower bound in each catalogued setting. Open a setting for its results, proofs and notes, or see the progress map with the branch points.
Open questions 16
Rendezvous, internal light (FSTA), SSYNC, non-rigid
- Rendezvous with internal lights in non-rigid SSYNC when \(\delta\) is unknown.
Gathering, internal light (FSTA), SSYNC, non-rigid
- Gathering with internal lights in SSYNC from every start, with more than 2 colours, and in ASYNC Otaka et al. 2026.
Gathering, external light (FCOM), SSYNC, rigid
- Gathering with external lights in ASYNC Otaka et al. 2026.
Homonymous robots, SSYNC
- What is the minimum number of identifiers for Byzantine-tolerant gathering? Asahiro & Yamashita 2025
Gathering, full lights, SSYNC, no multiplicity detection
- Gathering with lights without chirality Terai et al. 2023.
Gathering, full lights, ASYNC, no multiplicity detection
- Is 3 the minimum number of colours for ASYNC gathering with lights, and can chirality be dropped Nakai et al. 2021?
- Self-stabilizing gathering of \(n\) robots with lights Heriban et al. 2018.
Rendezvous, external light (FCOM), ASYNC, non-rigid
- Rendezvous with external lights in non-rigid ASYNC when \(\delta\) is unknown Flocchini et al. 2016 Masuzawa et al. 2026.
Rendezvous, external light (FCOM), ASYNC, rigid
- Close the gap between 3 and 6 colours Masuzawa et al. 2026.
ASYNC with weak multiplicity detection
- How many epochs does oblivious ASYNC gathering with weak multiplicity detection need?
Rendezvous, internal light (FSTA), ASYNC
- Can robots with internal lights solve rendezvous in ASYNC Flocchini et al. 2016 Masuzawa et al. 2026?
Crash faults, SSYNC
- "The maximum number of faults under which a solution is still feasible, for gathering and other tasks, has yet to be established" Agmon & Peleg 2006, in particular in ASYNC.
Limited visibility, FSYNC, disoriented
- Is \(\Omega(\Delta_0^2)\) necessary for every protocol, not only local convex-hull ones?
Fat robots, few robots, no common orientation
- Gathering any number of fat robots without chirality Agathangelou et al. 2013.
Fat robots, chirality, any number
- Remove the chirality assumption Agathangelou et al. 2013.
Transparent fat robots, no chirality
- Gathering transparent fat robots from symmetric starts; the paper proves no general impossibility Chaudhuri & Mukhopadhyaya 2015.
What the community started looking at
Gathering started with an impossibility: two oblivious robots cannot meet in SSYNC Suzuki & Yamashita 1999. The community's main question became the weakest set of capabilities that makes gathering solvable: multiplicity detection Cieliebak et al. 2012, a compass under limited visibility Flocchini et al. 2005, lights for two robots Das et al. 2016 Flocchini et al. 2016 Heriban et al. 2018, and how many faulty robots can be tolerated Agmon & Peleg 2006 Pattanayak et al. 2019. Running time (rounds, epochs) became a measure mainly for limited visibility Degener et al. 2011 Castenow et al. 2022.
Special case of k-grouping
Gathering is \(k\)-grouping with \(k = 1\), a single group of all \(n\) robots, that is, point formation: the pattern consisting of one point of multiplicity \(n\) Flocchini et al. 2017 Flocchini et al. 2026. General pattern formation algorithms usually exclude it, because multiplicity points need detection Bramas & Tixeuil 2016.
Derived problems
Near-gathering: Gathering requires a common point; near-gathering only requires being close, but forbids collisions. It is used as a first phase before forming patterns.
Related problems
Convergence: Every gathering algorithm solves convergence, but not conversely: two oblivious robots in SSYNC cannot gather, while "two oblivious robots can converge to a point with a naive algorithm" Izumi et al. 2012. In ASYNC the centre-of-gravity algorithm converges for any \(n\) Cohen & Peleg 2005, whereas gathering needs extra assumptions such as multiplicity detection.
Scattering: Scattering is the opposite task: gathering creates a multiplicity point, scattering removes all of them. Pattern formation from configurations with multiplicities needs scattering first Bramas & Tixeuil 2016.
Perspectives
- Why compute by moving The atlas collects four models that grew out of four different wishes: software that travels through a network, swarms of robots that are as weak as possible, searchers that must find something at an unknown place, and matter that reshapes itself. They share an adversary, locality and symmetry; they differ in what they count.
- Symmetry is the adversary Identical agents running the same deterministic program can be kept in lockstep forever. Across graphs, the plane and programmable matter, the papers break this symmetry with identifiers, with randomness, with asymmetric starts, or with the scheduler, and leader election keeps reappearing as the common core.
- Meeting at one place Rendezvous and gathering on graphs, gathering and convergence in the plane, and evacuation through an unknown exit all ask entities to end at one point. The papers give the same reasons for meeting, but each model makes a different part of it hard: symmetry and exploration on graphs, capability in the plane, information in continuous search.
- Weak robots in the plane Why the theory of robots in the plane starts from oblivious, anonymous, disoriented points; how formation problems became its testbed and the scheduler its adversary; and how a light with a few colours turned into memory, communication and a measure.
- When agents fail A node that destroys visitors, a robot that stops, an agent that lies, a searcher that misses the target: the papers motivate each fault by the hardware or the network, and each kind of fault changes a different measure, from team size to feasibility to an exact constant.
- What forces the bounds Every lower bound in the atlas names the resource the adversary exploits. Read side by side, a few bottlenecks (distance, symmetry, missing information, an adversary that acts) explain most tight results, and the open entries cluster where no bottleneck beyond distance is known.
- The most consequential open problems Ten open questions ranked by how far a solution would propagate through the atlas, with the chain of problems each one feeds.
All settings
The assumption tree (26 settings, 13 branch points)
The root assumes nothing. Going down, each edge adds the assumptions on its chips (+blue); a grey chip names the branch that leaves that axis unassumed while a sibling assumes something. Solid nodes are catalogued variants with their status per measure (Time, Colours); dashed nodes are branch points with no catalogued variant, named after the axis on which their branches differ. Axis order: Body › Visibility › Opacity › Faults › Scheduler › Lights (persistent memory) › Agreement on coordinates › Movement › Multiplicity detection › Randomness › Identifiers › Number of robots.
-
No assumptions · 2 branches by body
Nothing is assumed on any axis.
-
+pointVisibility · 2 branches
-
+unlimited visibility+transparentFaults · 4 branches
-
+no faultsScheduler · 6 branches
-
+SSYNCLights (persistent memory) · 6 branches
-
+internal light (FSTA)Agreement on coordinates · 3 branches
-
disorientednon-rigid+\(n = 2\)Rendezvous, internal light (FSTA), SSYNC, non-rigid A light only its owner sees, that is constant memory, lets two robots meet in SSYNC with 3 colours if they know \(\delta\); 2 colours are impossible.
-
disoriented+rigid+\(n = 2\)Rendezvous, internal light (FSTA), SSYNC, rigid With rigid moves, robots with internal lights meet in SSYNC with exactly 3 colours.
-
+chirality+\(n \ge 3\)Gathering, internal light (FSTA), SSYNC, non-rigid With internal lights, 2 colours gather \(n \ge 3\) robots in SSYNC only from restricted starts; 2 colours do not suffice in general, and whether more do is open.
-
-
+external light (FCOM)Agreement on coordinates · 2 branches
-
disorientednon-rigid+\(n = 2\)Rendezvous, external light (FCOM), SSYNC With a light only the other robot sees, two robots meet in SSYNC with 3 colours, and 2 colours are impossible.
-
+chirality+rigid+\(n \ge 3\)Gathering, external light (FCOM), SSYNC, rigid With external lights, \(n \ge 3\) robots gather in rigid SSYNC with 3 colours, which is optimal; 2 suffice if a robot sees who shares its point.
-
-
obliviousdisorientedanonymous+\(n \ge 3\)No multiplicity detection, SSYNC Without multiplicity detection, deterministic oblivious robots cannot gather, for any \(n \ge 2\), in SSYNC or ASYNC.
-
obliviousdisorientedanonymous+\(n = 2\)Two robots, SSYNC Two oblivious robots without a common orientation cannot meet in SSYNC: rendezvous needs extra power.
-
obliviousdisoriented+homonymousHomonymous robots, SSYNC Two distinct identifiers (two different algorithms) are necessary and sufficient for gathering in SSYNC.
-
+lights (LUMI)+chirality+\(n \ge 3\)Gathering, full lights, SSYNC, no multiplicity detection With lights and chirality, \(n \ge 3\) robots that cannot detect multiplicities gather in SSYNC with 2 colours, which is optimal.
-
-
ASYNC+lights (LUMI)Agreement on coordinates · 2 branches
-
disoriented+\(n = 2\)Rendezvous, full lights (LUMI), ASYNC, non-rigid Two robots whose lights both can see meet in ASYNC with non-rigid moves using 2 colours, which is optimal, from any initial colours.
-
+chirality+\(n \ge 3\)Gathering, full lights, ASYNC, no multiplicity detection With lights and chirality, \(n \ge 3\) robots gather in ASYNC with non-rigid moves and no multiplicity detection using 3 colours; whether 2 suffice is open.
-
-
ASYNC+external light (FCOM)Movement · 2 branches
-
non-rigid+\(n = 2\)Rendezvous, external light (FCOM), ASYNC, non-rigid In ASYNC with non-rigid moves, robots with external lights meet with 3 colours if they know the minimum move \(\delta\); without \(\delta\) the question is open, and colour-only algorithms cannot work.
-
+rigid+\(n = 2\)Rendezvous, external light (FCOM), ASYNC, rigid With rigid moves, robots with external lights meet in ASYNC; the best count is 6 colours against a lower bound of 3.
-
-
ASYNCoblivious+weak multiplicity+\(n \ge 3\)ASYNC with weak multiplicity detection standard setting With weak multiplicity detection, \(n \ge 3\) oblivious, disoriented, asynchronous robots gather from any initial configuration.
-
ASYNC+internal light (FSTA)+\(n = 2\)Rendezvous, internal light (FSTA), ASYNC Whether robots with internal lights can meet in ASYNC is open.
-
+sequential+external light (FCOM)+\(n \ge 3\)Gathering, external light, sequential scheduler If one robot moves per round, 2 external colours gather \(n \ge 3\) robots, self-stabilizing, without chirality; oblivious robots cannot.
-
-
+crash faults+SSYNCLights (persistent memory) · 2 branches
-
obliviousdisorientednon-rigid+weak multiplicity+\(n \ge 3\)Crash faults, SSYNC With weak multiplicity detection and no common orientation, the correct robots gather despite up to \(n-1\) crashes.
-
+lights (LUMI)+compass+rigid+\(n = 2\)Rendezvous, full lights, a crash, SSYNC If the correct robot must reach a crashed one, two robots cannot meet in SSYNC, even with unboundedly many colours, rigid moves and a common coordinate system.
-
-
Byzantine+SSYNC+\(n \ge 3\)Byzantine faults, SSYNC Three robots with one Byzantine robot can neither gather nor converge in SSYNC.
-
Byzantine+FSYNC+\(n \ge 3\)Byzantine faults, FSYNC In FSYNC, gathering tolerates \(f\) Byzantine robots when \(n \ge 3f+1\).
-
-
limited visibility+transparent+no faultsScheduler · 3 branches
-
ASYNC+compassLimited visibility with a compass, ASYNC With a common compass, asynchronous robots with limited visibility gather in finite time.
-
ASYNC+one axisLimited visibility, one common axis, ASYNC With one common axis, asynchronous robots with limited visibility gather in time linear in the initial diameter, which is optimal.
-
+FSYNCLimited visibility, FSYNC, disoriented Disoriented robots with limited visibility gather in \(O(\Delta_0^2)\) synchronous rounds, \(\Delta_0\) the initial diameter.
-
-
-
fat+unlimited visibilityOpacity · 2 branches
-
opaque+no faultsAgreement on coordinates · 2 branches
-
disoriented+\(n \ge 3\)Fat robots, few robots, no common orientation Three and four oblivious fat robots, which block each other's view and motion, gather in ASYNC without any common orientation.
-
+chirality+\(n \ge 3\)Fat robots, chirality, any number With chirality and known \(n\), any number of opaque fat robots gather in ASYNC with non-rigid moves.
-
-
+transparent+no faults+\(n \ge 3\)Transparent fat robots, no chirality Transparent fat robots without chirality gather into a layered pattern from every start whose robots can be ordered, which is exactly the asymmetric starts.
-
-
Assumptions specific to this problem
Number of robots
Suzuki and Yamashita Suzuki & Yamashita 1999 showed that two oblivious robots cannot gather deterministically in SSYNC, although the task is trivial in FSYNC; rendezvous thus became the first separator between the two schedulers Flocchini et al. 2023 Heriban et al. 2018. For \(n \ge 3\) robots the situation differs: with multiplicity detection, oblivious disoriented robots gather from any configuration even in ASYNC Cieliebak et al. 2012, because a multiplicity point, once formed, can be kept unique and serve as the target Bandettini et al. 2011. As Flocchini, Santoro, Viglietta and Yamashita put it, "Rendezvous is very different from the Gathering problem of having \(k \geqslant 3\) robots meet" Flocchini et al. 2016 (their \(k\) is \(n\) here). Two robots cannot create such an asymmetry, so the two-robot case became the test bed for each new capability: unreliable compasses Izumi et al. 2012, persistent memory Suzuki & Yamashita 1999, lights Viglietta 2013 Heriban et al. 2018 Okumura et al. 2023, and finite-state or finite-communication robots Flocchini et al. 2016. The catalogue therefore splits gathering by team size: any \(n \ge 2\), exactly two (rendezvous), and \(n \ge 3\).
Formal definitions
- 0any \(n\)
- Any number \(n\ge 2\) of robots.
- 1\(n = 2\)
- Exactly two robots (rendezvous).
- 1\(n \ge 3\)
- \(n\ge 3\) robots.
Know a better result, or found a mistake? Suggest a result · Report an error. Accepted contributions are acknowledged.