We study models and algorithms for Programmable Matter (PM), that is matter with the ability to change its physical properties (e.g., shape or optical properties) in a programmable fashion. PM… Click to show full abstract
We study models and algorithms for Programmable Matter (PM), that is matter with the ability to change its physical properties (e.g., shape or optical properties) in a programmable fashion. PM can be implemented by assembling a system of weak self-organizing computational elements, called particles, that can be programmed via distributed algorithms to collectively achieve some global task. Recent advances in the production of nanotechnologies have rendered such systems increasingly possible in practice, thus triggering research interests from many areas of computer science. The most established models for PM assume that particles: are modeled as finite state automata; are all identical, executing the same algorithm based on local observation of the surroundings; live and operate in the cells of a hexagonal grid; can move from one cell to another by repeatedly alternating between a contracted state (a particle occupies one cell) and an expanded state (a particle occupies two neighboring cells). Given these elementary features, it is rather hard to design distributed algorithms even for basic tasks and, in fact, all existing solutions to solve fundamental problems via PM have resorted to endowing PM systems with various capabilities to overcome such hardness, thus assuming quite unrealistic features. In this paper, we move toward more realistic computational models for PM. Specifically, we first introduce ${\sf SILBOT}$ , a new modeling approach that relaxes several assumptions used in previous ones. Second, we present a distributed algorithm to solve, in the ${\sf SILBOT}$ model, a foundational primitive for PM, namely Leader Election. This algorithm works in $O(n)$ rounds for all initial configurations of $n$ particles that are both connected (i.e. particles induce a connected graph) and compact (i.e. without holes, that is no empty cells surrounded by particles occur). As usual in asynchronous contexts, a round is intended as the time within which all particles have been activated at least once. Third, we show that, if the initial configuration admits holes, it is impossible to achieve leader election while preserving connectivity. Finally, by slightly empowering the robots, we design an algorithm to handle initial configurations admitting holes that in $O(n^{2})$ rounds solves the leader election problem while obtaining also compaction.