The Canonical Amoebot Model: Algorithms and Concurrency Control

05/06/2021
by   Joshua J. Daymude, et al.
0

The amoebot model abstracts active programmable matter as a collection of simple computational elements called amoebots that interact locally to collectively achieve tasks of coordination and movement. Since its introduction (SPAA 2014), a growing body of literature has adapted its assumptions for a variety of problems; however, without a standardized hierarchy of assumptions, precise systematic comparison of results under the amoebot model is difficult. We propose the canonical amoebot model, an updated formalization that distinguishes between core model features and families of assumption variants. A key improvement addressed by the canonical amoebot model is concurrency. Much of the existing literature implicitly assumes amoebot actions are isolated and reliable, reducing analysis to the sequential setting where at most one amoebot is active at a time. However, real programmable matter systems are concurrent. The canonical amoebot model formalizes all amoebot communication as message passing, leveraging adversarial activation models of concurrent executions. Under this granular treatment of time, we take two complementary approaches to concurrent algorithm design. In the first, using hexagon formation as a case study, we establish a set of sufficient conditions that guarantee an algorithm's correctness under any concurrent execution, embedding concurrency control directly in algorithm design. In the second, we present a concurrency control protocol that uses locks to convert amoebot algorithms that terminate in the sequential setting and satisfy certain conventions into algorithms that exhibit equivalent behavior in the concurrent setting. These complementary approaches to concurrent algorithm design under the canonical amoebot model open new directions for distributed computing research on programmable matter and form a rigorous foundation for connections to related literature.

READ FULL TEXT

page 5

page 10

page 17

page 19

page 21

page 25

page 31

page 33

research
09/09/2023

Energy-Constrained Programmable Matter Under Unfair Adversaries

Individual modules of programmable matter participate in their system's ...
research
07/31/2023

Asynchronous Silent Programmable Matter: Line Formation

Programmable Matter (PM) has been widely investigated in recent years. I...
research
02/23/2022

Fast Reconfiguration for Programmable Matter

The concept of programmable matter envisions a very large number of tiny...
research
12/14/2018

Mastering Concurrent Computing Through Sequential Thinking: A Half-century Evolution

Concurrency, the art of doing many things at the same time is slowly bec...
research
10/09/2020

CAMP: Cost-Aware Multiparty Session Protocols

This paper presents CAMP, a new static performance analysis framework fo...
research
08/23/2022

Survey of Persistent Memory Correctness Conditions

The study of concurrent persistent programs has seen a surge of activity...
research
07/08/2020

Bio-Inspired Energy Distribution for Programmable Matter

In systems of active programmable matter, individual modules require a c...

Please sign up or login with your details

Forgot password? Click here to reset