Swarm Intelligence

, Volume 11, Issue 3–4, pp 243–270 | Cite as

Automatic synthesis of rulesets for programmable stochastic self-assembly of rotationally symmetric robotic modules



Programmable stochastic self-assembly of modular robots provides promising means to formation of structures at different scales. One way to address the design of dedicated control rulesets for self-assembling robotic modules is to leverage formalisms based on graph grammar. While these tools are powerful and allow for formal analysis of the resulting controllers, expressing the embodiment of the robotic modules and therefore the physical structure of assemblies of such modules is not readily possible with such formalisms. This typically results in inefficient representation of ruleset controllers and poses limitations on automatizing ruleset synthesis methods, requiring manual design or tuning of the rules before deployment on the robotic modules. In this work, we consider robotic modules endowed with identical latching connectors arranged in a rotationally symmetric configuration. We extend a grammar formalism based on graphs and propose a new encoding of the modules’ internal states. This allows for formulating formal methods capable of automatically deriving the rules based on the morphology of the robotic modules, in particular their number of connectors. The derived rules are directly applicable to robotic modules with no further tuning. In addition, we show that our method allows for a reduced complexity in the rulesets, a particularly welcome feature in the case of limited on-board storage, computation, and communication resources. In order to illustrate the application of our method, we extend two synthesis algorithms from the literature, namely Singleton and Linchpin, to automatically synthesize rules applicable to our resource-constrained robotic modules. In order to increase the prototyping speed and the thoroughness of the validation for the synthesis algorithms, we leverage two complementary simulation frameworks capturing the system at different levels of abstraction. Finally, employing the generated rulesets, we conduct experiments with our robotic platform to demonstrate several assemblies.


Programmable stochastic self-assembly Modular robots Graph grammar Ruleset controller 



The authors gratefully acknowledge the highly constructive and insightful assistance of the reviewers of this manuscript. This work has been sponsored by the Swiss National Science Foundation under the Grant Numbers 200021_137838/1 and 200020_157191/1.


  1. Asadpour, M., Ashtiani, M. H. Z., Sproewitz, A., & Ijspeert, A. (2009). Graph signature for self-reconfiguration planning of modules with symmetry. In IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 5295–5300). IEEE.Google Scholar
  2. Ayanian, N., White, P. J., Hálász, A., Yim, M., & Kumar, V. (2008). Stochastic control for self-assembly of xbots. In International design engineering technical conferences and computers and information in engineering conference (pp. 1169–1176). IEEE.Google Scholar
  3. Bhalla, N., Bentley, P. J., Jacob, C. (2010). Evolving physical self-assembling systems in two-dimensions. In International conference on evolvable systems (pp. 381–392). Springer.Google Scholar
  4. Bhalla, N., Bentley, P. J., Vize, P. D., & Jacob, C. (2012). Programming and evolving physical self-assembling systems in three dimensions. Natural Computing, 11(3), 475–498.MathSciNetCrossRefGoogle Scholar
  5. Bušev, M. (1994). Synergetics: Chaos, order, self organization. Singapore: World scientific.Google Scholar
  6. Di Mario, E., Mermoud, G., Mastrangeli, M., & Martinoli, A. (2011). A trajectory-based calibration method for stochastic motion models. In IEEE/RSJ international conference on intelligent robots and systems (IROS), pp. 4341–4347.Google Scholar
  7. Fox, M., & Shamma, J. (2015). Probabilistic performance guarantees for distributed self-assembly. IEEE Transactions on Automatic Control, 60(12), 3180–3194.MathSciNetCrossRefMATHGoogle Scholar
  8. Fox, M. J., & Shamma, J. S. (2010). Communication, convergence, and stochastic stability in self-assembly. In IEEE international conference on decision and control, pp. 7245–7250.Google Scholar
  9. Ganesan, V., & Chitre, M. (2016). On stochastic self-assembly of underwater robots. IEEE Robotics and Automation Letters, 1(1), 251–258.CrossRefGoogle Scholar
  10. Golestan, K., Asadpour, M., & Moradi, H. (2013). A new graph signature calculation method based on power centrality for modular robots. In International symposium distributed autonomous robotic systems (DARS), pp. 505–516.Google Scholar
  11. Haghighat, B., Droz, E., & Martinoli, A. (2015). Lily: A miniature floating robotic platform for programmable stochastic self-assembly. In IEEE international conference on robotics and automation (ICRA), pp. 1941–1948.Google Scholar
  12. Haghighat, B., & Martinolim, A. (2016a). Characterization and validation of a novel robotic system for fluid-mediated programmable stochastic self-assembly. In IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 2778–2783). IEEE.Google Scholar
  13. Haghighat, B., & Martinoli, A. (2016b). A rule synthesis algorithm for programmable stochastic self-assembly of robotic modules. In Proceedings of the international symposium on distributed autonomous robotic systems (DARS).Google Scholar
  14. Haghighat, B., Mastrangeli, M., Mermoud, G., Schill, F., & Martinoli, A. (2016a). Fluid-mediated stochastic self-assembly at centimetric and sub-millimetric scales: Design, modeling, and control. Micromachines, 7(8), 138.CrossRefGoogle Scholar
  15. Haghighat, B., Platerrier, B., Waegeli, L., & Martinoli, A. (2016b). Synthesizing rulesets for programmable robotic self-assembly: A case study using floating miniaturized robots. In International Conference on Swarm Intelligence (ANTS) (Vol. 9882, pp. 197–209). Springer.Google Scholar
  16. Klavins, E. (2002). Automatic synthesis of controllers for distributed assembly and formation forming. In IEEE international conference on robotics and automation (ICRA), pp. 3296–3302.Google Scholar
  17. Klavins, E. (2007). Programmable self-assembly. IEEE Control Systems, 27(4), 43–56.CrossRefGoogle Scholar
  18. Klavins, E., Burden, S., & Napp, N. (2006a). Optimal rules for programmed stochastic self-assembly. Self, 6(7), 4–3.Google Scholar
  19. Klavins, E., Ghrist, R., & Lipsky, D. (2006b). A grammatical approach to self-organizing robotic systems. IEEE Transactions on Automatic Control, 51(6), 949–962.MathSciNetCrossRefMATHGoogle Scholar
  20. Lathrop, J. I., Lutz, J. H., & Summers, S. M. (2009). Strict self-assembly of discrete Sierpinski triangles. Theoretical Computer Science, 410(4–5), 384–405.MathSciNetCrossRefMATHGoogle Scholar
  21. Lochmatter, T., Roduit, P., Cianci, C., Correll, N., Jacot, J., & Martinoli, A. (2008). Swistrack-a flexible open source tracking software for multi-agent systems. In IEEE/RSJ international conference on intelligent robots and systems (IROS), pp. 4004–4010.Google Scholar
  22. Matthey, L., Berman, S., & Kumar, V. (2009). Stochastic strategies for a swarm robotic assembly system. In IEEE international conference on robotics and automation (ICRA) (pp. 1953–1958). IEEE.Google Scholar
  23. Michel, O. (2004). WebotsTM: Professional mobile robot simulation. Advanced Robotic Systems, 1(1), 39–42.Google Scholar
  24. Napp, N., Burden, S., & Klavins, E. (2006). The statistical dynamics of programmed self-assembly. In IEEE international conference on robotics and automation (ICRA) (pp. 1469–1476). IEEE.Google Scholar
  25. O’Grady, R., Christensen, A. L., & Dorigo, M. (2009). SWARMORPH: Multirobot morphogenesis using directional self-assembly. IEEE Transactions on Robotics, 25(3), 738–743.CrossRefGoogle Scholar
  26. Rothemund, P. W. K. (2001). Theory and experiments in algorithmic self-assembly. University of Southern California.Google Scholar
  27. Rubenstein, M., Cornejo, A., & Nagpal, R. (2014). Programmable self-assembly in a thousand-robot swarm. Science, 345(6198), 795–799.CrossRefGoogle Scholar
  28. Salemi, B., Moll, M., & Shen, W.-M. (2006). SUPERBOT: A deployable, multi-functional, and modular self-reconfigurable robotic system. In IEEE/RSJ international conference on intelligent robots and systems (IROS), pp. 3636–3641.Google Scholar
  29. Tolley, M., & Lipson, H. (2010). Fluidic manipulation for scalable stochastic 3D assembly of modular robots. In IEEE international conference on robotics and automation (ICRA), pp. 2473–2478.Google Scholar
  30. Whitesides, G. M., & Grzybowski, B. (2002). Self-assembly at all scales. Science, 295(5564), 2418–2421.CrossRefGoogle Scholar
  31. Yan, H., Park, S. H., Finkelstein, G., Reif, J. H., & LaBean, T. H. (2003). DNA-templated self-assembly of protein arrays and highly conductive nanowires. Science, 301(5641), 1882–1884.CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2017

Authors and Affiliations

  1. 1.Distributed Intelligent Systems and Algorithms Laboratory, School of Architecture, Civil and Environmental EngineeringÉcole Polytechnique Fédérale de LausanneLausanneSwitzerland

Personalised recommendations