Brief Announcement: Fault-Tolerant 3D Leader Election in the Amoebot Model
Abstract
We study leader election for programmable matter in the amoebot model when particles operate on a lattice graph and may experience crash-recovery failures. We propose a lattice-group view that captures both the classical 2D triangular grid and the 3D face-centered cubic (FCC) grid, including configurations with holes and the full lattice symmetry group. To the best of our knowledge, this is the first leader-election framework for 3D amoebot systems that simultaneously handles holes, the full lattice symmetry group including reflections, and crash-recovery faults. We outline (i) a randomized fault-tolerant leader election algorithm based on Borůvka-style merging of candidate-rooted trees combined with a coordinate-based solitude-verification, and (ii) a deterministic approach for assorted local orientations that simulates a virtual instance for each possible orientation in the symmetry group and breaks residual symmetries via a centroid-guided movement phase. Logarithmic-size coordinates are streamed or stored distributively, preserving constant local memory, while crashes are handled by rerooting so failures partition trees without destroying the global competition structure.
Keywords and phrases:
Programmable matter, amoebot model, leader election, fault tolerance, 3D lattices, symmetry groupsCopyright and License:
2012 ACM Subject Classification:
Theory of computation Distributed algorithms ; Theory of computation Randomness, geometry and discrete structures ; Computer systems organization Robotic componentsEditors:
George B. Mertzios and Andréa W. RichaSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Leader election is a core primitive for programmable matter. In the amoebot model [5], particles have constant-size memory, communicate locally, and move by expansions and contractions on an underlying grid. While leader election is well studied in 2D, 3D settings, assorted local orientations, configurations with holes, and crash-recovery faults create additional challenges and expose modeling gaps between different variants [3, 1, 7, 6, 8, 2].
Contribution
We provide a lattice-group formalization of assorted orientation that unifies common 2D and 3D amoebot settings. Instead of defining orientation separately for each lattice, we fix a finite symmetry group acting on the local neighborhood and assume only that neighbors can translate information between their local frames. This lets the same primitives operate on the 2D triangular lattice with and on the 3D FCC lattice with the full octahedral symmetry group . Algorithmically, the backbone is a fault-tolerant Borůvka-style merging process on candidate-rooted trees, run alongside a strengthened solitude verification primitive that also yields deterministic boundary comparisons. Deterministically, we reduce the number of remaining candidates to at most without movement and then select a unique leader by a centroid-guided symmetry-breaking movement phase.
2 Model and Problem Statement
2.1 Lattice graphs and symmetry groups
Let be a regular lattice graph of dimension , where is an embedded lattice and edges connect lattice-adjacent points. We write for the degree of . We assume a finite group of lattice symmetries that acts faithfully on the set of directed incident edges at any node, capturing the admissible rotations and reflections of the local neighborhood.
On the 2D triangular lattice we have and , the dihedral group of order . On the 3D FCC lattice we have and , the full octahedral group of order . This choice intentionally includes orientation-reversing symmetries as well as the rotation-preserving symmetries usually considered in 3D geometric amoebot work [2].
2.2 Amoebots, ports, and relative orientation
A system consists initially of identical contracted amoebots occupying distinct nodes of and forming a connected, not necessarily simply connected, subgraph. Throughout the computation, each amoebot is either contracted (occupies one node) or expanded (occupies two adjacent nodes), as in the canonical model [5, 4]. For each node occupied by a particle, the particle provides ports, one for each incident edge of that node. An expanded particle occupies two adjacent nodes (head and tail); both head and tail have their own ports.
Assorted orientations via group elements
Each particle has a private local frame, which we call its orientation; its relation to a global reference frame is represented by an element . Particles do not know , and in an assorted system different particles may have different orientations. We assume two local capabilities:
-
(i)
For each port, a particle knows the corresponding direction vector in its local coordinates.
-
(ii)
For adjacent particles and , each can compute the relative orientation , i.e., the group element mapping ’s frame to ’s frame.
Thus directional and coordinate information can be translated across an edge without a shared compass: if sends a direction expressed in ’s local frame, can reinterpret it in its own frame by applying . Whenever an -bit coordinate, count, or sum is used below, it is represented as a stream or distributed over particles; no particle stores more than a constant number of bits.
2.3 Scheduler and crash-recovery faults
We assume the standard sequential adversarial scheduler: each atomic activation selects one particle to read local states, update its memory, and optionally perform one expansion or contraction move. Faults follow the crash-recovery model of [9]: on a crash, the particle’s memory resets and it enters a detectable Crashed state, enabling explicit recovery rules once it becomes active again. Correctness is required for every execution with finitely many crashes; the stated progress bounds are measured after the last crash.
2.4 Leader election
Initially, every particle is a leader candidate. A leader election algorithm must eventually make exactly one particle irreversibly declare itself leader and all other particles non-leaders, under the scheduler and fault model above. Conceptually, we separate two tasks: attrition, which reduces the number of candidates, and solitude verification, which detects that only one candidate remains.
3 Algorithmic Overview
Our algorithms maintain a spanning forest of the occupied nodes, with one leader candidate at each tree root. Phases merge trees while solitude verification runs as a continuous predicate.
3.1 A fault-tolerant Borůvka-style merging backbone
At any time the occupied nodes are partitioned into a forest . Each tree has a distinguished root representing its current candidate. Merges are executed along boundary edges between neighboring trees and orient the new edge toward the winning root.
Why this is robust to crashes
The core invariant is that a crashed particle becomes a root upon recovery. Intuitively, this turns a crash into a controlled cut: the tree containing the crash is partitioned into smaller rooted trees, and all of them continue the leader competition. This follows the principle underlying fault-tolerant shape formation [9]. Two design choices matter here: (i) parent/child relations are stored by the particles incident to a tree edge and can be checked and repaired locally after a crash, and (ii) progress is measured in terms of candidate roots, so crash-induced partitions may delay termination but do not invalidate correctness.
Solitude verification
For each rooted tree, particles repeatedly compute their root-relative coordinates in the root’s frame by a distributed prefix-sum procedure over the tree. The computation is performed bit by bit over phases. Adjacent particles then compare their translated coordinates and the lattice edge between them. If the coordinates or root orientations are inconsistent, the edge crosses a tree boundary; if no particle observes such an edge, connectedness implies that the forest consists of a single tree and its root is the unique candidate. The same comparison primitive is used below to order neighboring roots deterministically.
3.2 Randomized leader election
The randomized variant proceeds in merge phases following a coin-flipping rule. Each tree root independently generates a random bit. Trees whose root obtains become active, while trees whose root obtains become passive. Passive trees attempt to attach to a neighboring active tree; if several such neighbors exist, any one locally detected boundary edge suffices. Active trees accept any number of incoming merges during the phase.
With constant probability, a non-solitary tree is passive and has an active neighboring tree, so a constant fraction of candidates disappears in expectation in each phase, and phases suffice with high probability. Using the solitude verification primitive described above, the randomized competition can certify that only one candidate root remains. This yields an runtime bound with high probability after the last crash. Crash-induced components are re-rooted and join the next merging phases. If another crash occurs before certification, the resulting new tree boundaries are detected by the same primitive, and the competition continues.
3.3 Deterministic leader election under assorted orientations
Without random bits, merges require a deterministic priority that is comparable across the system. A natural priority is lexicographic order on root coordinates, but coordinates are meaningful only once a frame of reference is fixed.
Warm-up: shared orientation
Assume all particles share a common orientation. The solitude verification computation then gives each particle a bitwise representation of its position in a common coordinate system. When two adjacent particles belong to different trees, they bit by bit compare the bitwise coordinate encodings obtained from the solitude-verification computation, after accounting for the offset of their common edge, and identify the first differing bit; in effect, this compares the two roots in the common coordinate system. This boundary comparison decides which root is lexicographically larger and directs the merge toward that root.
Attrition by deterministic comparisons
In one phase, each tree determines the maximum root coordinate among its neighboring trees and merges to that maximum, unless solitude verification already certifies that it is alone. The boundary-comparison primitive can be pipelined with the prefix-sum computation, so the stationary attrition layer uses merge phases and coordinate-bit phases per merge phase. With activations per bit phase, the stationary attrition and solitude verification layer finishes after rounds after the last crash, before any centroid movement is needed.
Removing the shared-orientation assumption via virtual instances
In the actual model, particles have assorted unknown orientations. To regain comparability deterministically, we exploit that is finite. Each particle conceptually maintains virtual instances, one per hypothetical global alignment . Neighboring particles translate messages between their virtual instances using so that, within each virtual layer, computations are consistent as if all particles were aligned according to that layer. Since is a lattice constant, this still costs only constant local memory. Running the deterministic merging procedure in all layers in parallel yields at most candidate roots overall, one per surviving symmetry layer.
This is essentially optimal without movement in the presence of symmetries: there exist stationary configurations whose symmetry cannot be broken deterministically by local computation alone. Therefore, if more than one candidate remains, we add a final movement phase that breaks symmetry geometrically.
3.4 Move-to-centroid symmetry breaking
Assume we end with candidates. We select a unique leader by moving toward a common centroid target.
Centroid agreement despite assorted frames
Each candidate tree aggregates coordinate information, such as sums of position vectors and the node count, to compute a centroid point. The sums and counts are again streamed or stored distributively. Although coordinates are expressed in local frames, relative orientations allow consistent translation of these aggregates. Thus, the centroid computed in different candidate trees refers to the same global point; when expressed back in each tree’s local coordinates, the target is consistent. On the triangular lattice, the centroid may coincide with a lattice point, lie on an edge, or fall inside a face; analogous discretization cases exist in FCC. Once the centroid is reached, or, if it is not a lattice node, once the lattice nodes surrounding it are occupied in the required pattern, the sequential scheduler deterministically breaks the remaining tie among the particles at these positions.
Two implementation options
-
Option 1 (connectivity-preserving, fault-tolerant): Candidates coordinate moves that monotonically reduce distance to the centroid while preserving global connectivity. This keeps the system coherent and is compatible with crash-recovery faults, at the cost of higher move complexity.
-
Option 2 (faster, may disconnect, not fault-tolerant): The system is partitioned into trees rooted at the remaining candidates. These trees are compared by their encodings and merged whenever such a comparison breaks symmetry. Only symmetric trees proceed to the movement phase, where each moves independently toward the computed centroid. This reduces coordination overhead, but independent motion may temporarily disconnect the system; once disconnected, crash recovery is no longer guaranteed.
4 Related Work
Leader election for programmable matter has been developed along several axes: dimension, assumptions on a shared global reference frame, the topology of the occupied shape, in particular whether holes are allowed, fault tolerance, and whether particles are allowed to move. Our notion of orientation is slightly broader than the classical 2D terminology: it is the full correspondence between a particle’s local frame and the lattice, represented by an element of the symmetry group , and therefore subsumes both orientation and chirality. In 2D, randomized leader election with common chirality was improved by Daymude et al. [3]. Stationary deterministic leader election was studied by Bazzi and Briones [1]; without movement, symmetry may force multiple co-leaders. Emek et al. [7] showed how movement can break such symmetries even in shapes with holes, and Dufoulon et al. [6] obtained faster deterministic algorithms by allowing disconnection and reconnection under stronger scheduling assumptions.
In 3D, Gastineau et al. [8] study deterministic leader election and local identifiers on the FCC lattice under additional orientation/shape assumptions. Briones et al. [2] formalize the 3D geometric amoebot model on the FCC lattice and give an asynchronous deterministic leader election algorithm for connected, contractible 2D or 3D systems. Our setting is different in three respects: the occupied subgraph may have holes, the orientation model uses the full group rather than only the rotation-preserving subgroup, and particles may suffer crash-recovery faults.
Orthogonal to these results, crash-recovery fault tolerance for amoebots was developed for shape formation [9]. Our contribution is to combine this recovery principle with leader election and with a lattice-group abstraction that applies uniformly to the triangular lattice, the FCC lattice, and potentially other regular lattices. The main message is that the primitives used for solitude verification, deterministic boundary comparison, and centroid agreement do not rely on a planar outer boundary; consequently, holes and full 3D symmetries can be handled within the same framework.
References
- [1] Rida A. Bazzi and Joseph L. Briones. Stationary and Deterministic Leader Election in Self-Organizing Particle Systems. In Stabilization, Safety, and Security of Distributed Systems (SSS 2019), volume 11914 of Lecture Notes in Computer Science, pages 22–37. Springer, 2019. doi:10.1007/978-3-030-34992-9_3.
- [2] Joseph L. Briones, Tishya Chhabra, Joshua J. Daymude, and Andréa W. Richa. Invited Paper: Asynchronous Deterministic Leader Election in Three-Dimensional Programmable Matter. In International Conference on Distributed Computing and Networking (ICDCN 2023), pages 110–116. ACM, 2023. doi:10.1145/3571306.3571389.
- [3] Joshua J. Daymude, Robert Gmyr, Andréa W. Richa, Christian Scheideler, and Thim Strothmann. Improved Leader Election for Self-Organizing Programmable Matter. In Algorithms for Sensor Systems (ALGOSENSORS 2017), volume 10718 of Lecture Notes in Computer Science, pages 127–140. Springer, 2017. doi:10.1007/978-3-319-72751-6_10.
- [4] Joshua J. Daymude, Andréa W. Richa, and Christian Scheideler. The Canonical Amoebot Model: Algorithms and Concurrency Control. Distributed Computing, 36:159–192, 2023. doi:10.1007/s00446-023-00443-3.
- [5] Zahra Derakhshandeh, Shlomi Dolev, Robert Gmyr, Andréa W. Richa, Christian Scheideler, and Thim Strothmann. Brief Announcement: Amoebot – A New Model for Programmable Matter. In Proceedings of the 26th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pages 220–222. ACM, 2014. doi:10.1145/2612669.2612712.
- [6] Fabien Dufoulon, Shay Kutten, and William K. Moses Jr. Efficient Deterministic Leader Election for Programmable Matter. In Proceedings of the ACM Symposium on Principles of Distributed Computing (PODC), pages 103–113. ACM, 2021. doi:10.1145/3465084.3467900.
- [7] Yuval Emek, Shay Kutten, Ron Lavi, and William K. Moses Jr. Deterministic Leader Election in Programmable Matter. In 46th International Colloquium on Automata, Languages, and Programming (ICALP 2019), volume 132 of Leibniz International Proceedings in Informatics (LIPIcs), pages 140:1–140:14. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2019. doi:10.4230/LIPIcs.ICALP.2019.140.
- [8] Nicolas Gastineau, Wahabou Abdou, Nader Mbarek, and Olivier Togni. Leader Election and Local Identifiers for Three-Dimensional Programmable Matter. Concurrency and Computation: Practice and Experience, 34(7):e6067, 2022. doi:10.1002/cpe.6067.
- [9] Irina Kostitsyna, Christian Scheideler, and Daniel Warner. Fault-Tolerant Shape Formation in the Amoebot Model. In 28th International Conference on DNA Computing and Molecular Programming (DNA 28), volume 238 of Leibniz International Proceedings in Informatics (LIPIcs), pages 9:1–9:22. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2022. doi:10.4230/LIPIcs.DNA.28.9.
