Terminating Distributed Construction of Shapes and Patterns in a Fair Solution of Automata

In this work, we consider a solution of automata similar to Population Protocols and Network Constructors. The automata, also called nodes, move passively in a well-mixed solution and can cooperate by interacting in pairs. During every such interaction, the nodes, apart from updating their states, may also choose to connect to each other in order to start forming some required structure. The model introduced here is a more applied version of Network Constructors, imposing geometrical constraints on the permissible connections. Each node can connect to other nodes only via a very limited number of local ports, which implies that at any given time it has only a bounded number of neighbors. Connections are always made at unit distance and are perpendicular to connections of neighboring ports. Though this variation can no longer form abstract networks, it is still capable of forming very practical 2D or 3D shapes. We develop new techniques for determining the computational and constructive capabilities of our model. One of the main novelties, concerns our attempt to overcome the inherent inability of such systems to terminate. In particular, exploiting the assumptions that the system is well-mixed and has a unique leader, we give terminating protocols that are correct with high probability (w.h.p.). This allows us to develop terminating subroutines that can be sequentially composed to form larger modular protocols. One of our main results is a terminating protocol counting the size n of the system w.h.p.. We then use this protocol as a subroutine in order to develop our universal constructors, establishing that it is possible for the nodes to self-organize w.h.p. into arbitrarily complex shapes and additionally always terminate.

[1]  William Feller,et al.  An Introduction to Probability Theory and Its Applications , 1967 .

[2]  Erik Winfree,et al.  Active self-assembly of algorithmic shapes and patterns in polylogarithmic time , 2013, ITCS '13.

[3]  Radhika Nagpal,et al.  Programmable self-assembly in a thousand-robot swarm , 2014, Science.

[4]  David Eisenstat,et al.  Fast computation by population protocols with a leader , 2006, Distributed Computing.

[5]  Paul G. Spirakis,et al.  Mediated population protocols , 2011, Theor. Comput. Sci..

[6]  Seth Copen Goldstein,et al.  Programmable Matter , 2005, Computer.

[7]  Paul G. Spirakis,et al.  New Models for Population Protocols , 2011, Synthesis Lectures on Distributed Computing Theory.

[8]  Paul G. Spirakis,et al.  Terminating population protocols via some minimal global knowledge assumptions , 2012, J. Parallel Distributed Comput..

[9]  M. Kac Random Walk and the Theory of Brownian Motion , 1947 .

[10]  Paul G. Spirakis,et al.  Simple and efficient local codes for distributed stable network construction , 2014, PODC '14.

[11]  James Aspnes,et al.  An Introduction to Population Protocols , 2007, Bull. EATCS.

[12]  David Doty,et al.  Timing in chemical reaction networks , 2013, SODA.

[13]  Rachid Guerraoui,et al.  Names Trump Malice: Tiny Mobile Agents Can Tolerate Byzantine Failures , 2009, ICALP.

[14]  Michael J. Fischer,et al.  Computation in networks of passively mobile finite-state sensors , 2004, PODC '04.

[15]  P. Rothemund Folding DNA to create nanoscale shapes and patterns , 2006, Nature.