Scattering of particles
Particles must reach a configuration in which no two particles occupy neighbouring nodes.
Problem statement and measurescollapse
From any initial configuration of \(n\) contracted particles (each occupying one node of the triangular lattice), the particles must reach a configuration in which no two occupy neighbouring nodes (a scattered configuration), and stop.
Measures: Time, asynchronous rounds; Moves, total expansions and contractions (work).
A first look
the basic problem, a simple algorithm and why some things cannot be done, for a newcomer
Picture people standing in a crowded square who must spread out until nobody is standing right next to anyone else. The floor is the triangular lattice: the endless graph whose nodes are the corners of a tiling of the plane by equal triangles; each node is joined by an edge to six others, its neighbours. A particle occupies one node and moves in two actions: an expansion into an empty neighbouring node, after which it occupies both, then a contraction into one of the two; so one expansion and one contraction move it by one node. There are \(n\) particles, each occupying one node at the start; the set of occupied nodes is the configuration. The particles are oblivious (they remember nothing from one action to the next) and silent (they send no messages); each decides only from what it sees around it. The goal is to reach a scattered configuration, where no two particles occupy neighbouring nodes, and then stop moving. The basic question is whether this is possible at all, from every starting configuration.
The catalogue has not read the full paper, so only its setting is described here. As reported by Navarra & Piselli 2023, Navarra, Prencipe, Bonini and Tracolli Navarra et al. 2025 let each particle see only its six neighbouring nodes, and use event-driven activation: a particle is activated (it gets a turn to act, an activation) as soon as it has a neighbour, and only then.
- A particle with no neighbour is never activated, so it stays put.
- A particle with a neighbour is activated, looks at which of its six neighbouring nodes are occupied, and decides from this view alone whether and where to move.
- When no particle has a neighbour, no particle is activated again: the task is done and the particles have stopped.
Why it matters. It shows how much the choice of scheduler can replace memory: with event-driven activation, particles without memory can tell when to stop.
This simple counting argument is ours; the catalogue records no lower bound. In the triangular lattice every small triangle of three mutually neighbouring nodes can hold at most one particle of a scattered configuration. Counting triangles, a region with \(N\) nodes can hold at most about \(N/3\) scattered particles. Now start with the \(n\) particles packed into a full hexagon of radius \(r\) (it has about \(3r^2 = n\) nodes). The hexagon of radius \(1.5r\) around the same centre has about \(6.75r^2\) nodes, so it can hold only about \(2.25r^2 = 0.75n\) scattered particles.
Why it matters. It shows that scattering, unlike gathering, forces the occupied region to grow in area, which costs real movement.
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.
What the community started looking at
Scattering was posed for silent, oblivious particles, where the question is solvability without memory or messages Navarra et al. 2025.
Related problems
Scattering: Robots in the plane scatter to distinct points; particles must scatter so that no two are neighbours.
Perspectives
- From robots to particles Programmable matter re-asks the questions of robots in the plane on a lattice, with particles that touch, remember a little and stay connected; SILBOT takes memory and messages away again, and the stochastic approach replaces algorithms by a biased local rule.
All settings
The assumption tree (1 settings, 0 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, Moves); dashed nodes are branch points with no catalogued variant, named after the axis on which their branches differ. Axis order: Memory › Scheduler › Orientation › Randomness › Initial shape › Connectivity during execution.
Know a better result, or found a mistake? Suggest a result · Report an error. Accepted contributions are acknowledged.