Mobility Matters
Home›Mobile robots in the plane›Formation problems›Pattern formation›k-grouping›Gathering

Gathering

Robots must meet at a single point that is not fixed in advance, and stay there.

Problem statement and measuresexpand

\(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).

Limited visibility with a compass, rigid, ASYNC

verified
Time: tightColours: tight

With a common compass and rigid moves, asynchronous robots with limited visibility gather at a point in time linear in the initial diameter, which is optimal.

Assumed (added on the last edge are outlined)

+Bodypoint robots+Opacitytransparent: every robot sees every robot within range+Faultsno faults+Agreement on coordinatesagreement on both axes (common compass)+Movementrigid: every move reaches its destination

Not assumed

Visibilitylimited: robots see only within a fixed radiusSchedulerasynchronous (ASYNC)Lights (persistent memory)oblivious, no light (OBLOT)Multiplicity detectionnone: a point with several robots looks like one robotRandomnessdeterministicIdentifiersanonymous: all robots are identicalNumber of robotsany \(n\)Initial configurationsevery solvable initial configuration
Formal definitions of this setting
Body: point
Each robot is a point of the plane: several robots may share a point (multiplicity), and a robot hides only what lies exactly behind it on a line of sight.
Visibility: limited visibility
A robot sees exactly the robots within Euclidean distance \(V\) of its position, for a fixed radius \(V>0\).
Opacity: transparent
Robots do not obstruct each other's view.
Faults: no faults
All robots follow the algorithm forever.
Scheduler: ASYNC
ASYNC: each robot's Look, Compute and Move phases take finite but unbounded, adversarially chosen time; a robot may look while others move, and compute on an outdated snapshot. Time is counted in epochs: an epoch is an interval of time in which every robot completes at least one full Look–Compute–Move cycle; it need not be the shortest such interval. The execution is divided into consecutive epochs, and a bound of \(X\) epochs holds for every such division. In FSYNC and SSYNC time is counted in rounds. Called Corda by Prencipe Prencipe 2007. Intermediate variants restrict interleavings: LC-atomic (no Look by another robot between a robot's Look and its Compute), Move-atomic (no Look during another robot's Move) and CM-atomic Flocchini et al. 2023.
Lights (persistent memory): oblivious
OBLOT: a robot's computation depends only on the current snapshot; nothing persists across cycles.
Agreement on coordinates: compass
All robots agree on the directions and orientations of both axes (a common compass); they may still disagree on origin and unit. Called full compass by Efrima and Peleg, who also use half compass (both axis directions, the positive sense of one axis, no chirality), direction-only and axes-only Efrima & Peleg 2009. Agreement on one axis together with common chirality is equivalent: the orientation of the second axis then follows from handedness.
Movement: rigid
Every Move phase ends at the computed destination.
Multiplicity detection: no multiplicity detection
A snapshot is a set of points: a point occupied by several robots looks like a single robot.
Randomness: deterministic
The destination computed in a cycle is a function of the snapshot (and the light, if any).
Identifiers: anonymous
Robots are indistinguishable and run the same algorithm.
Number of robots: any \(n\)
Any number \(n\ge 2\) of robots.
Initial configurations: any start
The algorithm must gather from every initial configuration from which gathering is possible at all in the setting; configurations proved unsolvable there (for example bivalent ones, or several multiplicities with weak detection and crashes) are excluded by the problem, not by the algorithm.

What is known

Time · rounds (FSYNC, SSYNC) or epochs (ASYNC) until the task is done; "finite" when only solvability is known
tight
\(\Theta(\Delta_0)\) epochs.
lower bound
\(\Omega(\Delta_0)\) Poudel & Sharma 2021
bottleneckdistance
holds when
  • \(\Delta_0\) = Euclidean diameter of the initial configuration
  • called the trivial lower bound in Poudel & Sharma 2021: a robot moves at most a constant distance per cycle, inside its axis-aligned \(2 \times 2\) square
introductory—
current best
\(O(\Delta_0)\)
visibility radius \(V = \sqrt{10}\)two robots are joined when each lies in the axis-aligned \(2 \times 2\) square centred at the other; the initial graph is connected
Colours · colours of the light per robot (0 for oblivious robots)
tight
No colours.
lower boundnone known
introductory—
current best
\(0\)
visibility radius \(V = \sqrt{10}\)two robots are joined when each lies in the axis-aligned \(2 \times 2\) square centred at the other; the initial graph is connected

Results, in order of publication

Time \(O(\Delta_0)\)Colours \(0\)
visibility radius \(V = \sqrt{10}\)two robots are joined when each lies in the axis-aligned \(2 \times 2\) square centred at the other; the initial graph is connected

Current best (Theorem 3): all robots gather at one point in \(O(\Delta_0)\) epochs; robots that occupy one point are not merged. Finite-time gathering in this setting already follows from the non-rigid algorithm of Flocchini et al. 2005.

Open questions

  1. Does \(O(\Delta_0)\)-epoch gathering need rigid moves, or a visibility radius larger than the connectivity range Poudel & Sharma 2021?

Notes

Poudel and Sharma conjecture that with viewing and connectivity ranges of 1 no \(O(\Delta_0)\) algorithm exists, even with a compass. Checked against the full text of Poudel & Sharma 2021 (Information 2021; Theorems 2 and 3, model in Section 2).

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

Limited visibility with a compass, ASYNC
Time \(\text{finite}\)Colours \(0\)
Limited visibility, one common axis, rigid, ASYNC
Time \(O(\Delta_0)\)Colours \(0\)

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.