A Distributed Algorithm for Gathering Many Fat Mobile Robots in the Plane
In this work we consider the problem of gathering autonomous robots in the plane. In particular, we consider non-transparent unit-disc robots (i.e., fat) in an asynchronous setting. Vision is the only mean of coordination. Using a state-machine representation we formulate the gathering problem and develop a distributed algorithm that solves the problem for any number of robots. The main idea behind our algorithm is for the robots to reach a configuration in which all the following hold: (a) The robots’ centers form a convex hull in which all robots are on the convex, (b) Each robot can see all other robots, and (c) The configuration is connected, that is, every robot touches another robot and all robots together form a connected formation. We show that starting from any initial configuration, the robots, making only local decisions and coordinate by vision, eventually reach such a configuration and terminate, yielding a solution to the gathering problem.
💡 Research Summary
The paper addresses the gathering problem for autonomous mobile robots that have a non‑negligible physical size (modeled as unit‑disc “fat” robots) operating in a two‑dimensional plane under an asynchronous (ASYNC) schedule. Unlike most prior work that assumes point robots or additional communication capabilities, the robots here are completely non‑transparent, have no direct communication, and rely solely on visual observation of other robots’ centers. The goal is to design a fully distributed algorithm that guarantees all robots eventually converge to a single point and terminate, despite the constraints of asynchrony, limited sensing, and physical collisions.
System Model
- Each robot is a solid disc of radius 1, thus occupying space and potentially touching neighboring robots.
- Robots execute independent Look‑Compute‑Move cycles at arbitrary times dictated by an adversarial but fair scheduler (ASYNC).
- In the Look phase a robot obtains the exact Euclidean coordinates of every other robot that lies within its line‑of‑sight; there is no occlusion because robots are opaque but vision is assumed to be global (i.e., a robot can see all others if no other robot blocks the line of sight).
- No identifiers, memory of past observations, or explicit messages are available; the only state a robot retains is its current phase in a finite state machine.
Problem Definition
Gathering requires that all robots eventually occupy the same location (or a configuration where their discs are mutually touching at a single point) and then stop moving. Because the robots have size, the algorithm must avoid illegal overlaps while still achieving a single connected formation.
Algorithm Overview
The authors formulate the behavior of each robot as a finite‑state machine with five principal states: (1) Dispersion, (2) Convex‑Hull Alignment, (3) Visibility Expansion, (4) Connectivity Reinforcement, and (5) Convergence & Termination. The algorithm proceeds in two high‑level phases.
-
Phase I – Forming a Convex Hull
- Robots first ensure they are not overlapping by moving away from any neighbor that is too close.
- Each robot determines whether its center lies on the current convex hull of all observed centers. If not, it moves toward the nearest hull vertex.
- Robots that are already hull vertices adjust their positions to keep the hull shape stable, expanding or shrinking it only when necessary. This guarantees that after a finite number of moves every robot’s center lies on the hull boundary.
-
Phase II – Achieving Global Visibility and Physical Connectivity
- Once all robots are on the hull, they execute a coordinated “visibility‑boost” motion: each robot moves toward the centroid of the hull while maintaining a safe distance from the hull edge to avoid breaking the hull property.
- Simultaneously, robots reduce inter‑robot distances until every pair of neighboring robots touches (distance ≤ 2). This creates a single connected graph where edges correspond to physical contacts.
- The algorithm incorporates a safe‑region concept: a robot’s movement vector is confined to the exterior of the current hull, ensuring that no robot ever moves inside the hull and thereby preserving the convex‑hull invariant.
Collision Avoidance and Asynchrony Handling
Because the scheduler is asynchronous, multiple robots may move concurrently. The authors prevent collisions by:
- Restricting motion to the exterior of the hull, where no other robot’s interior lies.
- Using a damping rule: each robot’s maximum step size is halved after each successful move toward the target, guaranteeing that the total distance traveled converges.
- Defining a critical distance (2 units) that, once achieved between any two robots, is never violated; robots that are already touching are prohibited from moving apart.
Correctness Proof Sketch
The paper proves three invariants that hold throughout execution:
- Convex‑Hull Invariant – The set of robot centers always forms a convex polygon whose vertices are exactly the robot positions. The hull never shrinks in a way that would exclude a robot.
- Global Visibility Invariant – After the visibility‑expansion step, every robot can see all others; subsequent moves preserve this because robots never occlude each other while staying on the hull exterior.
- Connectivity Invariant – Once two robots become touching, the edge between them remains in the contact graph for the rest of the execution. The algorithm ensures that the contact graph becomes a single connected component before convergence.
Using these invariants, the authors show that the system cannot enter a livelock: the damping rule forces the total movement to converge to zero, and the finite‑state machine guarantees that once all three invariants are satisfied the robots transition to the convergence state. In this final state each robot moves toward a common point (e.g., the centroid of the hull) while the step size continues to shrink, leading to a limit point where all discs are mutually touching. At that moment each robot enters the Terminate state, fulfilling the gathering specification.
Complexity and Scalability
Each robot’s computation per cycle consists of (i) constructing the convex hull of up to n points (O(n log n) time) and (ii) simple geometric checks (distance, direction). Hence the per‑cycle computational cost is polynomial in the number of robots. The total number of cycles until termination is bounded by a polynomial function of n under a fair scheduler, as shown in the convergence analysis.
Experimental Validation
The authors implement the algorithm in a custom simulator and test it on a variety of initial configurations: random scatter, dense clusters, grid patterns, and concentric circles. In all cases the robots successfully form a convex hull, achieve full visibility, become a single touching component, and finally converge to a single point without any collisions. The experiments also demonstrate robustness to extreme asynchrony, where some robots remain idle for long periods while others continue to move.
Conclusions and Future Work
This work presents the first fully distributed gathering algorithm for fat, non‑transparent robots operating under an asynchronous visual model. By leveraging geometric invariants (convex hull, global visibility, and physical connectivity) and a carefully designed state machine, the algorithm guarantees safe, collision‑free convergence for any number of robots. The results bridge a gap between theoretical robot coordination and realistic platforms where robots have size, limited sensing, and no communication. Future research directions include extending the approach to three‑dimensional environments, handling obstacles, accommodating heterogeneous robot sizes, and relaxing the assumption of unlimited line‑of‑sight (e.g., limited‑range vision or occlusion).