Skip to main content
Log in

The canonical amoebot model: algorithms and concurrency control

  • Published:
Distributed Computing Aims and scope Submit manuscript

Abstract

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 at 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. We first establish a set of sufficient conditions for algorithm correctness under any concurrent execution, embedding concurrency control directly in algorithm design. We then present a concurrency control framework 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. As a case study, we demonstrate both approaches using a simple algorithm for hexagon formation. Together, the canonical amoebot model and these complementary approaches to concurrent algorithm design open new directions for distributed computing research on programmable matter.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Notes

  1. As we discuss in Sect. 5, designing fault tolerant algorithms is an important research direction for programmable matter. We leave the formalization of different fault models under the canonical amoebot model for future work.

  2. Observe that any amoebot algorithm could directly implement this assumption by replacing each guard \(g_i\) of action \(\alpha _i\) with the guard \(g_i \wedge \bigwedge _{j=1}^{i-1} (\lnot g_j)\).

  3. For the sake of clarity and brevity, we abuse \(\textsc {Connected}\), \(\textsc {Read}\), and \(\textsc {Write}\) notation slightly by referring directly to the neighboring amoebots and not to the ports which they are connected to.

  4. An event occurs with high probability (w.h.p.) if it occurs with probability at least \(1 - 1/n^c\), where n is the number of amoebots in the system and \(c > 0\) is a constant.

References

  1. Altisen, K., Devismes, S., Dubois, S., Petit, F.: Introduction to Distributed Self-Stabilizing Algorithms, volume 8 of Synthesis Lectures on Distributed Computing Theory. Morgan & Claypool Publishers (2019). https://doi.org/10.2200/S00908ED1V01Y201903DCT015

  2. Andrés Arroyo, M., Cannon, S., Daymude, J.J., Randall, D., Richa, A.W.: A stochastic approach to shortcut bridging in programmable matter. Nat. Comput. 17(4), 723–741 (2018). https://doi.org/10.1007/s11047-018-9714-x

    Article  MathSciNet  MATH  Google Scholar 

  3. Angluin, D., Aspnes, J., Diamadi, Z., Fischer, M.J., Peralta, R.: Computation in networks of passively mobile finite-state sensors. Distrib. Comput. 18(4), 235–253 (2006). https://doi.org/10.1007/s00446-005-0138-3

    Article  MATH  Google Scholar 

  4. Barrameda, E.M., Das, S., Santoro, N.: Deployment of asynchronous robotic sensors in unknown orthogonal environments. In: Algorithmic Aspects of Wireless Sensor Networks, volume 5389 of Lecture Notes in Computer Science, pp 125–140 (2008). https://doi.org/10.1007/978-3-540-92862-1_11

  5. Bazzi, R.A., Briones, J.L.: Stationary and deterministic leader election in self-organizing particle systems. In: Stabilization, Safety, and Security of Distributed Systems, volume 11914 of Lecture Notes in Computer Science, pp 22–37 (2019). https://doi.org/10.1007/978-3-030-34992-9_3

  6. Bender, M.A., Farach-Colton, M., He, S., Kuszmaul, B.C., Leiserson, C.E.: Adversarial contention resolution for simple channels. In: Proceedings of the Seventeenth Annual ACM Symposium on Parallelism in Algorithms and Architectures, pp 325–332 (2005). https://doi.org/10.1145/1073970.1074023

  7. Blackiston, D., Lederer, E., Kriegman, S., Garnier, S., Bongard, J., Levin, M.: A cellular platform for the development of synthetic living machines. Sci. Robot. 6(52), eabf1571 (2021). https://doi.org/10.1126/scirobotics.abf1571

    Article  Google Scholar 

  8. Cali, F., Conti, M., Gregori, E.: IEEE 802.11 protocol: design and performance evaluation of an adaptive backoff mechanism. IEEE J. Sel. Areas Commun. 18(9), 1774–1786 (2000). https://doi.org/10.1109/49.872963

    Article  Google Scholar 

  9. Cannon, S., Daymude, J.J., Gökmen, C., Randall, D., Richa, A.W.: A Local stochastic algorithm for separation in heterogeneous self-organizing particle systems. In: Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques (APPROX/RANDOM 2019), volume 145 of Leibniz International Proceedings in Informatics (LIPIcs), pp 54:1–54:22 (2019). https://doi.org/10.4230/LIPIcs.APPROX-RANDOM.2019.54

  10. Cannon, S., Daymude, J.J., Randall, D., Richa, A.W.: A Markov chain algorithm for compression in self-organizing particle systems. In: Proceedings of the 2016 ACM Symposium on Principles of Distributed Computing, pp 279–288 (2016). https://doi.org/10.1145/2933057.2933107

  11. Capetanakis, J.: Tree algorithms for packet broadcast channels. IEEE Trans. Inform. Theory 25(5), 505–515 (1979). https://doi.org/10.1109/TIT.1979.1056093

  12. Chalk, C., Luchsinger, A., Martinez, E., Schweller, R., Winslow, A., Wylie, T.: Freezing simulates non-freezing tile automata. DNA Comput. Mol. Programm. 11145, 155–172 (2018). https://doi.org/10.1007/978-3-030-00030-1_10

    Article  MathSciNet  MATH  Google Scholar 

  13. Chirikjian, G.S.: Kinematics of a metamorphic robotic system. In: Proceedings of the 1994 IEEE International Conference on Robotics and Automation, pp 449–455 (1994). https://doi.org/10.1109/ROBOT.1994.351256

  14. D’Angelo, G., D’Emidio, M., Das, S., Navarra, A., Prencipe, G.: Asynchronous silent programmable matter achieves leader election and compaction. IEEE Access 8, 207619–207634 (2020). https://doi.org/10.1109/ACCESS.2020.3038174

    Article  Google Scholar 

  15. Das, S., Flocchini, P., Prencipe, G., Santoro, N., Yamashita, M.: The power of lights: synchronizing asynchronous robots using visible bits. In: 2012 IEEE 32nd International Conference on Distributed Computing Systems, pages 506–515, (2012). https://doi.org/10.1109/ICDCS.2012.71

  16. Das, S., Flocchini, P., Prencipe, G., Santoro, N., Yamashita, M.: Autonomous Mobile Robots with Lights. Theoret. Comput. Sci. 609(1), 171–184 (2016). https://doi.org/10.1016/j.tcs.2015.09.018

    Article  MathSciNet  MATH  Google Scholar 

  17. Daymude, J.J., Derakhshandeh, Z., Gmyr, R., Porter, A., Richa, A.W., Scheideler, C., Strothmann, T.: On the runtime of universal coating for programmable matter. Nat. Comput. 17(1), 81–96 (2018). https://doi.org/10.1007/s11047-017-9658-6

    Article  MathSciNet  MATH  Google Scholar 

  18. Daymude, J.J., Gmyr, R., Hinnenthal, K., Kostitsyna, I., Scheideler, C., Richa, A.W.: Convex Hull Formation for Programmable Matter. In: Proceedings of the 21st International Conference on Distributed Computing and Networking, pp 2:1–2:10 (2020). https://doi.org/10.1145/3369740.3372916

  19. Daymude, J.J., Gmyr, R., Richa, A.W., Scheideler, C., Strothmann, T.: Improved leader election for self-organizing programmable matter. In: Algorithms for Sensor Systems, volume 10718 of Lecture Notes in Computer Science, pp 127–140 (2017). https://doi.org/10.1007/978-3-319-72751-6_10

  20. Daymude, J.J., Hinnenthal, K., Richa, A.W., Scheideler, C.: Computing by Programmable Particles. In: Flocchini, P., Prencipe, G., Santoro, N., (eds.) Distributed computing by mobile entities, volume 11340 of Lecture Notes in Computer Science, pp 615–681. Springer International Publishing, Cham (2019). https://doi.org/10.1007/978-3-030-11072-7_22

  21. Daymude, J.J., Richa, A.W., Scheideler, C.: The canonical amoebot model: algorithms and concurrency control. In: 35th International Symposium on Distributed Computing (DISC 2021), volume 209 of Leibniz International Proceedings in Informatics (LIPIcs), pages 20:1–20:19. Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2021). https://doi.org/10.4230/LIPIcs.DISC.2021.20

  22. Daymude, J.J., Richa, A.W., Scheideler, C.: Local mutual exclusion for dynamic, anonymous, bounded memory message passing systems. In: 1st Symposium on Algorithmic Foundations of Dynamic Networks (SAND 2022), volume 221 of Leibniz International Proceedings in Informatics (LIPIcs), pages 12:1–12:19. Schloss Dagstuhl—Leibniz-Zentrum für Informatik (2022). https://doi.org/10.4230/LIPIcs.SAND.2022.12

  23. Daymude, J.J., Richa, A.W., Weber, J.W.: Bio-inspired energy distribution for programmable matter. In: International Conference on Distributed Computing and Networking 2021, pages 86–95 (2021). https://doi.org/10.1145/3427796.3427835

  24. Derakhshandeh, Z., Dolev, S., Gmyr, R., Richa, A.W., Scheideler, C., Strothmann, T.: Amoebot: a new model for programmable matter. In: Proceedings of the 26th ACM Symposium on Parallelism in Algorithms and Architectures, pp 220–222, (2014). https://doi.org/10.1145/2612669.2612712

  25. Derakhshandeh, Z., Gmyr, R., Richa, A.W., Scheideler, C., Strothmann, T.: An algorithmic framework for shape formation problems in self-organizing particle systems. In: Proceedings of the Second Annual International Conference on Nanoscale Computing and Communication, pages 21:1–21:2 (2015). https://doi.org/10.1145/2800795.2800829

  26. Derakhshandeh, Z., Gmyr, R., Richa, A.W., Scheideler, C., Strothmann, T.: Universal shape formation for programmable matter. In: Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures, pp 289–299 (2016). https://doi.org/10.1145/2935764.2935784

  27. Derakhshandeh, Z., Gmyr, R., Richa, A.W., Scheideler, C., Strothmann, T.: Universal coating for programmable matter. Theoret. Comput. Sci. 671, 56–68 (2017). https://doi.org/10.1016/j.tcs.2016.02.039

    Article  MathSciNet  MATH  Google Scholar 

  28. Derakhshandeh, Z., Gmyr, R., Strothmann, T., Bazzi, R., Richa, A.W., Scheideler, C.: Leader election and shape formation with self-organizing programmable matter. In: DNA Computing and Molecular Programming, volume 9211 of Lecture Notes in Computer Science, pp 117–132 (2015). https://doi.org/10.1007/978-3-319-21999-8_8

  29. Di Luna, G.A., Flocchini, P., Gan Chaudhuri, S., Poloni, F., Santoro, N., Viglietta, G.: Mutual visibility by luminous robots without collisions. Inf. Comput. 254(3), 392–418 (2017). https://doi.org/10.1016/j.ic.2016.09.005

    Article  MathSciNet  MATH  Google Scholar 

  30. Di Luna, G.A., Flocchini, P., Prencipe, G., Santoro, N., Viglietta, G.: Line recovery by programmable particles. In: Proceedings of the 19th International Conference on Distributed Computing and Networking, pp 4:1–4:10 (2018). https://doi.org/10.1145/3154273.3154309

  31. Di Luna, G.A., Flocchini, P., Santoro, N., Viglietta, G., Yamauchi, Y.: Mobile RAM and shape formation by programmable particles. In: Euro-Par 2020: Parallel Processing, volume 12247 of Lecture Notes in Computer Science, pp 343–358 (2020). https://doi.org/10.1007/978-3-030-57675-2_22

  32. Di Luna, G.A., Flocchini, P., Santoro, N., Viglietta, G., Yamauchi, Y.: Shape formation by programmable particles. Distrib. Comput. 33(1), 69–101 (2020). https://doi.org/10.1007/s00446-019-00350-6

    Article  MathSciNet  MATH  Google Scholar 

  33. Dufoulon, F., Kutten, S., Moses Jr., W.K.: Efficient deterministic leader election for programmable matter. In: Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing, pp 103–113 (2021). https://doi.org/10.1145/3465084.3467900

  34. Emek, Y., Kutten, S., Lavi, R., Moses Jr, W.K.: Deterministic leader election in programmable matter. In: 46th International Colloquium on Automata, Languages, and Programming (ICALP 2019), Leibniz International Proceedings in Informatics (LIPIcs), pp 140:1–140:14 (2019). https://doi.org/10.4230/LIPICS.ICALP.2019.140

  35. Flocchini, P., Prencipe, G., Santoro, N., (eds.): Distributed Computing by Mobile Entities: Current Research in Moving and Computing, volume 11340 of Lecture Notes in Computer Science. Springer, Cham, (2019). https://doi.org/10.1007/978-3-030-11072-7

  36. Flocchini, P., Santoro, N., Viglietta, G., Yamashita, M.: Rendezvous with constant memory. Theor. Comput. Sci. 621, 57–72 (2016). https://doi.org/10.1016/j.tcs.2016.01.025

    Article  MathSciNet  MATH  Google Scholar 

  37. Gastineau, N., Abdou, W., Mbarek, N., Togni, O.: Distributed leader election and computation of local identifiers for programmable matter. In: Algorithms for Sensor Systems, volume 11410 of Lecture Notes in Computer Science, pp 159–179 (2019). https://doi.org/10.1007/978-3-030-14094-6_11

  38. Gastineau, N., Abdou, W., Mbarek, N., Togni, O.: Leader election and local identifiers for three-dimensional programmable matter. Concurr. Comput. Pract. Exp. (2020). https://doi.org/10.1002/cpe.6067

    Article  Google Scholar 

  39. Hines, L., Petersen, K., Lum, G.Z., Sitti, M.: Soft actuators for small-scale robotics. Adv. Mater. 29(13), 1603483 (2017). https://doi.org/10.1002/adma.201603483

    Article  Google Scholar 

  40. Kriegman, S., Blackiston, D., Levin, M., Bongard, J.: A scalable pipeline for designing reconfigurable organisms. Proc. Natl. Acad. Sci. 117(4), 1853–1859 (2020). https://doi.org/10.1073/pnas.1910837117

    Article  Google Scholar 

  41. Liu, A.T., Yang, J.F., LeMar, L.N., Zhang, G., Pervan, A., Murphey, T.D., Strano, M.S.: Autoperforation of two-dimensional materials to generate colloidal state machines capable of locomotion. Faraday Discuss. 227, 213–232 (2021). https://doi.org/10.1039/D0FD00030B

    Article  Google Scholar 

  42. Michail, O., Spirakis, P.G.: Simple and efficient local codes for distributed stable network construction. Distrib. Comput. 29(3), 207–237 (2016). https://doi.org/10.1007/s00446-015-0257-4

    Article  MathSciNet  MATH  Google Scholar 

  43. Nokhanji, N., Santoro, N.: Line Reconfiguration by programmable particles maintaining connectivity. In: Theory and Practice of Natural Computing, volume 12494 of Lecture Notes in Computer Science, pp 157–169 (2020). https://doi.org/10.1007/978-3-030-63000-3_13

  44. Patitz, M.J.: An introduction to tile-based self-assembly and a survey of recent results. Nat. Comput. 13(2), 195–224 (2014). https://doi.org/10.1007/s11047-013-9379-4

    Article  MathSciNet  MATH  Google Scholar 

  45. Piranda, B., Bourgeois, J.: Designing a quasi-spherical module for a huge modular robot to create programmable matter. Auton. Robot. 42, 1619–1633 (2018). https://doi.org/10.1007/s10514-018-9710-0

    Article  Google Scholar 

  46. Toffoli, T., Margolus, N.: Programmable matter: concepts and realization. Phys. D 47(1–2), 263–272 (1991). https://doi.org/10.1016/0167-2789(91)90296-L

    Article  MathSciNet  Google Scholar 

  47. Woods, D., Chen, H.-L., Goodfriend, S., Dabby, N., Winfree, E., Yin, P.: Active self-assembly of algorithmic shapes and patterns in polylogarithmic time. In: Proceedings of the 4th Conference on Innovations in Theoretical Computer Science, pp 353–354, (2013). https://doi.org/10.1145/2422436.2422476

  48. Xie, H., Sun, M., Fan, X., Lin, Z., Chen, W., Wang, L., Dong, L., He, Q.: Reconfigurable magnetic microrobot swarm: multimode transformation, locomotion, and manipulation. Sci. Robot. 4(28), eaav8006 (2019). https://doi.org/10.1126/scirobotics.aav8006

    Article  Google Scholar 

  49. Yang, J.F., Liu, P., Koman, V.B., Liu, A.T., Strano, M.S.: Synthetic cells: colloidal-sized state machines. In: Walsh, S.M., Strano, M.S. (eds.) Robotic Systems and Autonomous Platforms, Woodhead Publishing in Materials, pp. 361–386. Woodhead Publishing (2019). https://doi.org/10.1016/B978-0-08-102260-3.00015-9

    Chapter  Google Scholar 

Download references

Funding

Funding was provided by National Science Foundation under grand number CCF-1733680, Army Research Office under grand number MURI W911NF-19-1-0233, ASU Biodesign Institute, Momental Foundation under grand number Mistletoe Research Fellowship, Deutsche Forschungsgemeinschaft under grand number SCHE 1592/6-1.

Author information

Authors and Affiliations

Authors

Contributions

All authors contributed equally to the model design and formulation, algorithm design and analysis, and manuscript writing and review.

Corresponding author

Correspondence to Joshua J. Daymude.

Ethics declarations

Conflict of interest

The authors declare no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A: Amoebot operation pseudocode

In this appendix, we give formal distributed pseudocode for the amoebot operations. Algorithm 5 details the communication operations (Sect. 2.2.1) and Algorithms 6 and 7 detail the movement operations (Sect. 2.2.2). One possible implementation of the concurrency control operations (Sect. 2.2.3) is given in [22].

figure e
figure f
figure g

Appendix B: Expansion contention resolution

Recall that when an amoebot’s expansion collides with another movement, it must perform contention resolution such that exactly one contending amoebot succeeds in its expansion while all others fail. In this appendix, we detail and analyze one possible implementation of such a contention resolution scheme inspired by randomized backoff mechanisms for contention resolution in wireless networks [6, 8, 11]. We need one additional assumption: all amoebots know an upper bound T on the time required for an amoebot to complete any movement. For simplicity, we will assume geometric space (i.e., the triangular lattice \(G_{\Delta }\)), though this mechanism would generalize to any bounded degree graph.

figure h

The execution flow of our contention resolution mechanism is shown in Fig. 7 and its pseudocode is given in Algorithm 8. When A detects a collision, it retracts to its original node and retries its expansion after waiting for a delay chosen uniformly at random from [5T, 10T], where T is an upper bound on the time required for an amoebot to complete an expansion or retraction. In the remainder of this section, we verify the following claim.

Lemma 23

Suppose a set of amoebots are contending to expand into the same node of \(G_{\Delta }\). If each amoebot waits for a delay chosen uniformly at random from [5T, 10T] before its expansion attempt, then exactly one contender succeeds in \({\mathcal {O}}({\log n})\) attempts w.h.p.Footnote 4

Fig. 7
figure 7

Execution flow of the \(\textsc {Expand}\) operation with contention resolution for the calling amoebot A

Proof

We first bound the probability that two amoebots \(A_1\) and \(A_2\) collide in their respective expansion attempts into the same node. For each amoebot \(A_i \in \{A_1, A_2\}\), let \(t_i\) denote the start of its expansion attempt, \(d_i\) denote its random delay, and \(e_i\) denote the duration of its expansion if it were to succeed. The start time \(t_i\) and expansion duration \(e_i\) are fixed a priori by the adversary while the delay \(d_i\) is chosen uniformly at random from the interval [5TcT], where \(c > 5\) is a constant. So, in summary, amoebot \(A_i \in \{A_1, A_2\}\) is waiting in the time interval \([t_i, t_i + d_i)\) and is expanding in the interval \([t_i + d_i, t_i + d_i + e_i]\). Thus, the expansions of amoebots \(A_1\) and \(A_2\) collide if and only if:

$$\begin{aligned}&[t_1 + d_1, t_1 + d_1 + e_1] \cap [t_2 + d_2, t_2 + d_2 + e_2] \ne \emptyset \\&\quad \iff (t_1 + d_1 + e_1 \ge t_2 + d_2) \\&\qquad \wedge (t_1 + d_1 \le t_2 + d_2 + e_2) \\&\quad \iff t_2 - t_1 - e_1 \le d_1 - d_2 \le t_2 - t_1 + e_2 \end{aligned}$$

This implies:

$$\begin{aligned}&\text {Pr}\left[ {A_1\ \text {and}\ A_2\ \text {collide} \mid t_1, t_2, e_1, e_2}\right] \\&\quad = \text {Pr}\left[ {t_2 - t_1 - e_1 \le d_1 - d_2 \le t_2 - t_1 + e_2}\right] \\&\quad = \text {Pr}\left[ {d_1 - d_2 \le t_2 - t_1 + e_2}\right] \\&\qquad - \text {Pr}\left[ {d_1 - d_2 \le t_2 - t_1 - e_1}\right] \end{aligned}$$

Delays \(d_1\) and \(d_2\) are both uniform random variables over the interval [5TcT], so the difference \(d_1 - d_2\) follows the symmetric triangular distribution with lower bound \((5 - c)T\), upper bound \((c - 5)T\), and mode 0. W.l.o.g., suppose \(t_1 < t_2\). There are two cases: when \(t_2 - t_1 - e_1 \le 0\) and when \(t_2 - t_1 - e_1 > 0\). If we have \(t_2 - t_1 - e_1 \le 0\), then:

$$\begin{aligned}&\text {Pr}\left[ {d_1 - d_2 \le t_2 - t_1 + e_2}\right] \\&\qquad - \text {Pr}\left[ {d_1 - d_2 \le t_2 - t_1 - e_1}\right] \\&\quad = 1 - \frac{((c - 5)T - (t_2 - t_1 + e_2))^2}{((c - 5)T - (5 - c)T)((c - 5)T - 0)} \\&\qquad - \frac{(t_2 - t_1 - e_1 - (5 - c)T)^2}{((c - 5)T - (5 - c)T)(0 - (5 - c)T)} \\&\quad = \left[ 2(c - 5)^2T^2 - ((c - 5)T - t_2 + t_1 - e_2)^2\right. \\&\qquad \left. - ((c - 5)T + t_2 - t_1 - e_1)^2\right] / 2(c - 5)^2T^2 \\&\quad = \left[ 2(c - 5)^2T^2 - 2(c - 5)^2T^2 + 2(c - 5)Te_2\right. \\&\qquad + 2(c - 5)Te_1 - 2t_2^2 + 4t_2t_1 - 2t_2e_2 + 2t_2e_1 \\&\qquad \left. - 2t_1^2 + 2t_1e_2 - 2t_1e_1 - e_2^2 - e_1^2\right] / 2(c - 5)^2T^2 \\&\quad = \left[ 2(c - 5)T(e_1 + e_2) - 2(t_2 - t_1)(e_2 - e_1)\right. \\&\qquad \left. - 2(t_2 - t_1)^2 - e_1^2 - e_2^2\right] / 2(c - 5)^2T^2 \\&\quad < \left[ 4(c - 5)T^2 + 2(c + 1)T^2\right] / 2(c - 5)^2T^2 \\&\quad = 3(c - 3) / (c - 5)^2, \end{aligned}$$

which is a constant probability whenever \(c > \frac{13 + \sqrt{33}}{2} \approx 9.373\). The upper bound follows from:

  • Since T is the upper bound on the time required for an expansion, \(e_1 + e_2 \le 2T\).

  • We assumed that \(t_1 < t_2\), but we also have that if \(t_2 > t_1 + d_1 + e_1\), then there cannot be a collision. Thus, \(t_2 - t_1 \le d_1 + e_1 \le cT + T\) is a necessary condition for a collision. We also have that \(-T \le e_2 - e_1 \le T\), so we conclude that \(-2(t_2 - t_1)(e_2 - e_1) \le 2(c + 1)T^2\).

  • The last three numerator terms are all nonpositive, and thus can be upper bounded by 0.

In the second case, if we have \(t_2 - t_1 - e_1 > 0\), then:

$$\begin{aligned}&\text {Pr}\left[ {d_1 - d_2 \le t_2 - t_1 + e_2}\right] \\&\qquad - \text {Pr}\left[ {d_1 - d_2 \le t_2 - t_1 - e_1}\right] \\&\quad = 1 - \frac{((c - 5)T - (t_2 - t_1 + e_2))^2}{((c - 5)T - (5 - c)T)((c - 5)T - 0)} \\&\qquad - 1 + \frac{((c - 5)T - (t_2 - t_1 - e_1))^2}{((c - 5)T - (5 - c)T)((c - 5)T - 0)} \\&\quad = \left[ ((c - 5)T - t_2 + t_1 + e_1)^2 \right. \\&\qquad \left. - ((c - 5)T - t_2 + t_1 + e_2)^2\right] / 2(c - 5)^2T^2 \\&\quad = \left[ 2(c - 5)Te_1 - 2(c - 5)Te_2 - 2t_2e_1 + 2t_2e_2 \right. \\&\quad \left. + 2t_1e_1 - 2t_1e_2 + e_1^2 - e_2^2\right] / 2(c - 5)^2T^2 \\&\quad = \left[ 2(c - 5)T(e_1 - e_2) - 2(t_2 - t_1)(e_1 - e_2)\right. \\&\qquad \left. + e_1^2 - e_2^2\right] / 2(c - 5)^2T^2 \\&\quad < \left[ 2(c - 5)T^2 + 2(c + 1)T^2 + T^2\right] / 2(c - 5)^2T^2 \\&\quad = (4c - 7) / 2(c - 5)^2, \end{aligned}$$

which is a constant probability whenever \(c > 6 + \sqrt{15/2} \approx 8.739\). Therefore, in any case, the probability that the expansions of \(A_1\) and \(A_2\) collide when their delays are drawn uniformly at random from the interval [5TcT] is at most a constant \(p \in (0, 1)\) when \(c > 9.373\).

Due to the structure of the triangular lattice \(G_{\Delta }\), at most six amoebots may be concurrently expanding into the same node. We now establish that pairwise collisions of any of these amoebots’ expansions are independent. Given each expansion attempt’s starting time and expansion duration—which are fixed by the asynchronous execution—the interval of expansion is entirely determined by the delay. Since each delay is drawn independently and uniformly from [5TcT], each pair of expansions’ time intervals and thus also their collision is independent. So, fixing an amoebot \(A_1\),

$$\begin{aligned}&\text {Pr}\left[ {\text {an expansion of}\ A_1\ \text {succeeds} \mid t_1, e_1}\right] \\&\quad = \text {Pr}\left[ {A_1\ \text {and}\ A_i\ \text {do not collide} \mid t_1, t_i, e_1, e_i, \forall i \ne 1}\right] \\&\quad = \prod _{i \ne 1} (1 - \text {Pr}\left[ {A_1\ \text {and}\ A_i\ \text {collide} \mid t_1, t_i, e_1, e_i}\right] ) \\&\quad > (1 - p)^5, \end{aligned}$$

which is a constant probability since p is a constant probability.

In order to amplify this success probability for the desired w.h.p. result, we must establish independence of expansion attempts. We have already shown that pairwise collisions of amoebots’ expansions are independent, but this is insufficient to establish the independence of subsequent expansion attempts. In particular, \(A_1\) and \(A_2\) may collide while concurrently attempting to expand, causing them both to retract before reattempting their expansions. A third amoebot \(A_3\) could then expand and collide with \(A_1\) or \(A_2\) while they are retracting, causing \(A_3\) to also retract; a fourth amoebot \(A_4\) could then expand and collide with \(A_3\) while it retracts, and so on. In the worst case, if the expansions of \(A_1\) and \(A_2\) collide at time t, these cascading expansion-retraction collisions can continue until time \(t + 5T\); this occurs if all retractions take the maximum time T and each amoebot \(A_i\) (for \(i = 3, \ldots , 6\), since there are at most six competing amoebots) collides with retracting amoebot \(A_{i-1}\) at the last possible moment. However, it is impossible for these cascading collisions to continue after \(t + 5T\): the earliest an amoebot could reattempt its expansion is after time \(t + 5T\) if \(A_1\) or \(A_2\) immediately retracted after colliding at time t and then sampled the minimum possible delay, 5T. Therefore, the expansion attempt of an amoebot \(A_i\) is independent of any of its previous attempts. So we have:

$$\begin{aligned}&\text {Pr}\left[ {\text {no amoebot successfully expands after}\ k\ \text {attempts}}\right] \\&\quad \le \text {Pr}\left[ {A_1\ \text {collides in all}\ k\ \text {expansion attempts}}\right] \\&\quad = \prod _{i=1}^k \left( 1 - \text {Pr}\left[ {A_1\text {'s}\ i\text {-th expansion attempt succeeds} \mid t_1^i, e_1^i}\right] \right) \\&\quad < \left( 1 - (1 - p)^5\right) ^k \end{aligned}$$

Setting \(k = \ln n / (1 - p)^5\), we have the probability that no amoebot successfully expands after k attempts is at most

$$\begin{aligned} \left( 1 - (1 - p)^5\right) ^k \le e^{-(1 - p)^5 \cdot \frac{\ln n}{(1 - p)^5}} = \frac{1}{n} \end{aligned}$$

Once an amoebot’s expansion succeeds, it connects to all its new neighbors causing any contending expansions to immediately fail. Therefore, we conclude that exactly one amoebot will successfully expand in at most \(\ln n = {\mathcal {O}}({\log n})\) attempts with high probability. \(\square \)

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Daymude, J.J., Richa, A.W. & Scheideler, C. The canonical amoebot model: algorithms and concurrency control. Distrib. Comput. 36, 159–192 (2023). https://doi.org/10.1007/s00446-023-00443-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00446-023-00443-3

Keywords

Navigation