Skip to main content
Log in

AutoMoDe-Cedrata: Automatic Design of Behavior Trees for Controlling a Swarm of Robots with Communication Capabilities

  • Original Research
  • Published:
SN Computer Science Aims and scope Submit manuscript

Abstract

Behavior trees are a control architecture that has gained recent attention in AI and robotics. Previous research on the use of behavior trees in swarm robotics has shown the necessity for the behaviors to have proper return values, instead of running indefinitely. This work extends our previous work in which we defined AutoMoDe-Cedrata, an automatic modular design that makes use of modules that have been explicitly defined for behavior trees. While the search space is sufficiently large to include well-performing solutions, Cedrata had problems discovering communication-based strategies. In this work, we extend Cedrata by introducing Cedrata-GP and Cedrata-GE which are based on genetic programming and grammatical evolution, respectively. We test these design methods on two missions and compare the performance of the automatic design methods against the performance of solutions created by human designers. The results show that the structure of Cedrata allows for well-performing solutions that are reliably found by human designers. However, the automatic design methods fail to discover the same communication strategies as the human designers.

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

Similar content being viewed by others

References

  1. Rubenstein M, Cornejo A, Nagpal R. Programmable self-assembly in a thousand-robot swarm. Science. 2014;345(6198):795–9. https://doi.org/10.1126/science.1254295.

    Article  Google Scholar 

  2. Werfel J, Petersen K, Nagpal R. Designing collective behavior in a termite-inspired robot construction team. Science. 2014;343(6172):754–8. https://doi.org/10.1126/science.1245842.

    Article  Google Scholar 

  3. Yang GZ, Bellingham J, Dupont PE, Fischer P, Floridi L, Full R, Jacobstein N, Kumar V, McNutt M, Merrifield R, Nelson BJ, Scassellati B, Taddeo M, Taylor R, Veloso M, Wang ZL, Wood R. The grand challenges of science robotics. Sci Robot. 2018;3(14):eaar7650. https://doi.org/10.1126/scirobotics.aar7650.

    Article  Google Scholar 

  4. Garattoni L, Birattari M. Autonomous task sequencing in a robot swarm. Sci Robot. 2018;3(20):eaat0430. https://doi.org/10.1126/scirobotics.aat0430.

    Article  Google Scholar 

  5. Slavkov I, Carrillo-Zapata D, Carranza N, Diego X, Jansson F, Kaandorp J, Hauert S, Sharpe J. Morphogenesis in robot swarms. Sci Robot. 2018;3(25):eaau9178. https://doi.org/10.1126/scirobotics.aau9178.

    Article  Google Scholar 

  6. Yu J, Wang B, Du X, Wang Q, Zhang L. Ultra-extensible ribbon-like magnetic microswarm. Nat Commun. 2018;9(1):3260. https://doi.org/10.1038/s41467-018-05749-6.

    Article  Google Scholar 

  7. Li S, Batra R, Brown D, Chang HD, Ranganathan N, Hoberman C, Rus D, Lipson H. Particle robotics based on statistical mechanics of loosely coupled components. Nature. 2019;567(7748):361–5. https://doi.org/10.1038/s41586-019-1022-9.

    Article  Google Scholar 

  8. 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. 2019;4(28):eaav8006. https://doi.org/10.1126/scirobotics.aav8006.

    Article  Google Scholar 

  9. Dorigo M, Theraulaz G, Trianni V. Reflections on the future of swarm robotics. Sci Robot. 2020;5:eabe4385. https://doi.org/10.1126/scirobotics.abe4385.

    Article  Google Scholar 

  10. Birattari M, Ligot A, Hasselmann K. Disentangling automatic and semi-automatic approaches to the optimization-based design of control software for robot swarms. Nat Mach Intell. 2020;2(9):494–9. https://doi.org/10.1038/s42256-020-0215-0.

    Article  Google Scholar 

  11. Hasselmann K, Ligot A, Ruddick J, Birattari M. Empirical assessment and comparison of neuro-evolutionary methods for the automatic off-line design of robot swarms. Nat Commun. 2021;12:4345. https://doi.org/10.1038/s41467-021-24642-3.

    Article  Google Scholar 

  12. Dorigo M, Birattari M, Brambilla M. Swarm robotics. Scholarpedia. 2014;9(1):1463. https://doi.org/10.4249/scholarpedia.1463.

    Article  Google Scholar 

  13. Birattari M, Ligot A, Bozhinoski D, Brambilla M, Francesca G, Garattoni L, Garzón Ramos D, Hasselmann K, Kegeleirs M, Kuckling J, Pagnozzi F, Roli A, Salman M, Stützle T. Automatic off-line design of robot swarms: a manifesto. Front Robot AI. 2019;6:59. https://doi.org/10.3389/frobt.2019.00059.

    Article  Google Scholar 

  14. Hamann H, Wörn H. A framework of space-time continuous models for algorithm design in swarm robotics. Swarm Intell. 2008;2(2–4):209–39. https://doi.org/10.1007/s11721-008-0015-3.

    Article  Google Scholar 

  15. Kazadi S. Model independence in swarm robotics. Int J Intell Comput Cybern. 2009;2(4):672–94. https://doi.org/10.1108/17563780911005836.

    Article  MathSciNet  MATH  Google Scholar 

  16. Berman S, Kumar V, Nagpal R. Design of control policies for spatially inhomogeneous robot swarms with application to commercial pollination. In: 2011 IEEE international conference on robotics and automation (ICRA). Piscataway: IEEE; 2011. pp. 378–385. https://doi.org/10.1109/ICRA.2011.5980440

  17. Beal J, Dulman S, Usbeck K, Viroli M, Correll N. Organizing the aggregate: languages for spatial computing. In: Marjan M, editor. Formal and practical aspects of domain-specific languages: recent developments. Hershey: IGI Global; 2012. pp. 436–501. https://doi.org/10.4018/978-1-4666-2092-6.ch016

  18. Brambilla M, Brutschy A, Dorigo M, Birattari M. Property-driven design for swarm robotics: a design method based on prescriptive modeling and model checking. ACM Trans Auton Adapt Syst. 2014;9(4):17:1-17:28. https://doi.org/10.1145/2700318.

    Article  Google Scholar 

  19. Reina A, Valentini G, Fernández-Oto C, Dorigo M, Trianni V. A design pattern for decentralised decision making. PLOS ONE. 2015;10(10): e0140950. https://doi.org/10.1371/journal.pone.0140950.

    Article  Google Scholar 

  20. Lopes YK, Trenkwalder SM, Leal AB, Dodd TJ, Groß R. Supervisory control theory applied to swarm robotics. Swarm Intell. 2016;10(1):65–97. https://doi.org/10.1007/s11721-016-0119-0.

    Article  Google Scholar 

  21. Pinciroli C, Beltrame G. Buzz: a programming language for robot swarms. IEEE Softw. 2016;33(4):97–100. https://doi.org/10.1109/MS.2016.95.

    Article  Google Scholar 

  22. Hamann H. Swarm robotics: a formal approach. Cham, Switzerland: Springer; 2018. https://doi.org/10.1007/978-3-319-74528-2.

    Book  Google Scholar 

  23. Brambilla M, Ferrante E, Birattari M, Dorigo M. Swarm robotics: a review from the swarm engineering perspective. Swarm Intell. 2013;7(1):1–41. https://doi.org/10.1007/s11721-012-0075-2.

    Article  Google Scholar 

  24. Francesca G, Birattari M. Automatic design of robot swarms: achievements and challenges. Front Robot AI. 2016;3(29):1–9. https://doi.org/10.3389/frobt.2016.00029.

    Article  Google Scholar 

  25. Ligot A, Birattari M. Simulation-only experiments to mimic the effects of the reality gap in the automatic design of robot swarms. Swarm Intell. 2019. https://doi.org/10.1007/s11721-019-00175-w.

    Article  Google Scholar 

  26. Francesca G, Brambilla M, Brutschy A, Trianni V, Birattari M. AutoMoDe: a novel approach to the automatic design of control software for robot swarms. Swarm Intell. 2014;8(2):89–112. https://doi.org/10.1007/s11721-014-0092-4.

    Article  Google Scholar 

  27. López-Ibáñez M, Dubois-Lacoste J, Pérez Cáceres L, Birattari M, Stützle T. The irace package: iterated racing for automatic algorithm configuration. Oper Res Perspect. 2016;3:43–58. https://doi.org/10.1016/j.orp.2016.09.002.

    Article  MathSciNet  Google Scholar 

  28. Francesca G, Brambilla M, Brutschy A, Garattoni L, Miletitch R, Podevijn G, Reina A, Soleymani T, Salvaro M, Pinciroli C, Mascia F, Trianni V, Birattari M. AutoMoDe-Chocolate: automatic design of control software for robot swarms. Swarm Intell. 2015;9(2–3):125–52. https://doi.org/10.1007/s11721-015-0107-9.

    Article  Google Scholar 

  29. Hasselmann K, Birattari M. Modular automatic design of collective behaviors for robots endowed with local communication capabilities. PeerJ Comput Sci. 2020. https://doi.org/10.7717/peerj-cs.291.

    Article  Google Scholar 

  30. Garzón Ramos D, Birattari M. Automatic design of collective behaviors for robots that can display and perceive colors. Appl Sci. 2020;10(13):4654. https://doi.org/10.3390/app10134654.

    Article  Google Scholar 

  31. Ligot A, Hasselmann K, Birattari M. AutoMoDe-Arlequin: neural networks as behavioral modules for the automatic design of probabilistic finite state machines. In: Dorigo M, Stützle T, Blesa MJ, Blum C, Hamann H, Heinrich MK, Strobel V, editors. Swarm intelligence: 12th international conference, ANTS 2020, Lecture Notes in Computer Science, vol. 12421. Cham: Springer; 2020. pp. 109–122. https://doi.org/10.1007/978-3-030-60376-2_21

  32. Salman M, Ligot A, Birattari M. Concurrent design of control software and configuration of hardware for robot swarms under economic constraints. PeerJ Comput Sci. 2019;5:e221. https://doi.org/10.7717/peerj-cs.221.

    Article  Google Scholar 

  33. Kuckling J, Ubeda Arriaza K, Birattari M. AutoMoDe-IcePop: automatic modular design of control software for robot swarms using simulated annealing. In: Bogaerts B, Bontempi G, Geurts P, Harley N, Lebichot B, Lenaerts T, Louppe G, editors. Artificial Intelligence and Machine Learning: BNAIC 2019, BENELEARN 2019, Communications in Computer and Information Science, vol. 1196. Cham, Switzerland: Springer; 2020. p. 3–17.

    Chapter  Google Scholar 

  34. Ligot A, Kuckling J, Bozhinoski D, Birattari M. Automatic modular design of robot swarms using behavior trees as a control architecture. PeerJ Comput Sci. 2020;6:e314. https://doi.org/10.7717/peerj-cs.314.

    Article  Google Scholar 

  35. Kuckling J, van Pelt V, Birattari M. Automatic modular design of behavior trees for robot swarms with communication capabilities. In: Castillo PA, Jiménez Laredo JL, editors. Applications of evolutionary computation: 24th international conference, EvoApplications 2021, Lecture Notes in Computer Science, vol. 12694. Cham: Springer; 2021. pp. 130–145.

  36. Marzinotto A, Colledanchise M, Smith C, Ögren P. Towards a unified behavior trees framework for robot control. In: 2014 IEEE international conference on robotics and automation (ICRA), Piscataway: IEEE; 2014. pp. 5420–5427. https://doi.org/10.1109/ICRA.2014.6907656

  37. Koza JR. Genetic programming: on the programming of computers by means of natural selection, first edn. MIT Press, Cambridge, MA, USA. 1992. A Bradford Book

  38. O’Neill M, Ryan C. Grammatical evolution: evolutionary automatic programming in an arbitrary language, 1st ed. Genetic programming series. Boston: Springer; 2003. https://doi.org/10.1007/978-1-4615-0447-4

  39. Isla D. Handling complexity in the Halo 2 AI. In: Game developers conference, GDC 2005, vol. 12. London: Game Developers Conference (GDC). 2005.

  40. Colledanchise M, Ögren P. Behavior trees in robotics and AI: an introduction, 1st ed. In: Chapman & Hall/CRC artificial intelligence and robotics series. Boca Raton: CRC Press; 2018. https://doi.org/10.1201/9780429489105

  41. Nolfi S, Floreano D. Evolutionary robotics: the biology, intelligence, and technology of self-organizing machines, 1st ed. A Bradford Book. Cambridge: MIT Press. 2000.

  42. Trianni V, Labella Thomas H, Dorigo M. Evolution of direct communication for a swarm-bot performing hole avoidance. In: Dorigo M, Birattari M, Blum C, Gambardella LM, Mondada F, Stützle T, editors. Ant colony optimization and swarm intelligence: 4th international workshop, ANTS 2004, Lecture Notes in Computer Science, vol. 3172. Berlin: Springer; 2004. pp. 130–141. https://doi.org/10.1007/978-3-540-28646-2_12

  43. Jones C, Matarić MJ. Automatic synthesis of communication-based coordinated multi-robot systems. In: 2004 IEEE/RSJ international conference on intelligent robots and systems (IROS), vol. 1. Piscataway: IEEE; 2004. pp. 381–387. https://doi.org/10.1109/IROS.2004.1389382

  44. Wischmann S, Pasemann F. The emergence of communication by evolving dynamical systems. In: Nolfi S, Baldassarre G, Calabretta R, Hallam J, Marocco D, Meyer JA, Miglino O, Parisi D, editors. From animals to animats 9: 9th international conference on simulation of adaptive behavior, SAB 2006, Lecture Notes in Computer Science, vol. 4095. Berlin: Springer; 2006. pp. 777–788. https://doi.org/10.1007/11840541_64

  45. Marocco D, Nolfi S. Self-organization of communication in evolving robots. In: Rocha LM, Yaeger LS, Bedau MA, Floreano D, Goldstone RL, Vespignani A, editors. Artificial life X: proceedings of the tenth international conference on the simulation and synthesis of living systems, complex adaptive systems. Cambridge: MIT Press; 2006.

  46. Wischmann S, Floreano D, Keller L. Historical contingency affects signaling strategies and competitive abilities in evolving populations of simulated robots. Proc Natl Acad Sci USA. 2012;109(3):864–8. https://doi.org/10.1073/pnas.1104267109.

    Article  Google Scholar 

  47. Uno R, Marocco D, Nolfi S, Ikegami T. Emergence of protosentences in artificial communicating systems. IEEE Trans Auton Mental Dev. 2011;3(2):146–53. https://doi.org/10.1109/TAMD.2011.2120608.

    Article  Google Scholar 

  48. Jones S, Studley M, Hauert S, Winfield A. Evolving behaviour trees for swarm robotics. In: Groß R, Kolling A, Berman S, Frazzoli E, Martinoli A, Matsuno F, Gauci M, editors. Distributed autonomous robotic systems: the 13th international symposium, Springer Proceedings in Advanced Robotics, vol. 6. Cham; Springer; 2018. pp. 487–501. https://doi.org/10.1007/978-3-319-73008-0_34

  49. Jones S, Winfield A, Hauert S, Studley M. Onboard evolution of understandable swarm behaviors. Adv Intell Syst. 2019;1(6):1900031. https://doi.org/10.1002/aisy.201900031.

    Article  Google Scholar 

  50. Neupane A, Goodrich M. Learning swarm behaviors using grammatical evolution and behavior trees. In: Kraus S, editor. Proceedings of the twenty-eighth international joint conference on artificial intelligence, IJCAI-19. CA, USA; IJCAI Organization; 2019; pp. 513–520. https://doi.org/10.24963/ijcai.2019/73

  51. Ferrante E, Duéñez-Guzmán EA, Turgut AE, Wenseleers T. GESwarm: grammatical evolution for the automatic synthesis of collective behaviors in swarm robotics. In: Blum C, editor. GECCO’13: proceedings of the 15th annual conference on genetic and evolutionary computation. New York: ACM; 2013. pp. 17–24. https://doi.org/10.1145/2463372.2463385

  52. Hasselmann K, Ligot A, Francesca G, Garzón Ramos D, Salman M, Kuckling J, Mendiburu FJ, Birattari M. Reference models for AutoMoDe. Tech. Rep. TR/IRIDIA/2018-002, IRIDIA, Brussels. 2018.

  53. Kuckling J, Ligot A, Bozhinoski D, Birattari M. Search space for AutoMoDe-Chocolate and AutoMoDe-Maple. Tech. Rep. TR/IRIDIA/2018-012, IRIDIA, Brussels. 2018.

  54. Maron O, Moore AW. The Racing Algorithm: model selection for lazy learners. Artif Intell Rev. 1997;11(1–5):193–225. https://doi.org/10.1023/A:1006556606079.

    Article  Google Scholar 

  55. Fortin FA, De Rainville FM, Gardner MA, Parizeau M, Gagné C. DEAP: evolutionary algorithms made easy. J Mach Learn Res. 2012;13:2171–5.

    MathSciNet  Google Scholar 

  56. Fenton M, McDermott J, Fagan D, Forstenlechner S, Hemberg E, O’Neill M. PonyGE2: grammatical evolution in Python. arxiv:1703.08535. 2017.

  57. Kuckling J, van Pelt V, Birattari M. AutoMoDe-Cedrata: automatic design of behavior trees for controlling a swarm of robots with communication capabilities: supplementary material. http://iridia.ulb.ac.be/supp/IridiaSupp2021-004/. 2021.

  58. Kuckling J, Hasselmann K, van Pelt V, Kiere C, Birattari M. AutoMoDe Editor: a visualization tool for AutoMoDe. Tech. Rep. TR/IRIDIA/2021-009, IRIDIA, Brussels. 2021.

  59. Pinciroli C, Trianni V, O’Grady R, Pini G, Brutschy A, Brambilla M, Mathews N, Ferrante E, Di Caro GA, Ducatelle F, Birattari M, Gambardella LM, Dorigo M. ARGoS: a modular, parallel, multi-engine simulator for multi-robot systems. Swarm Intell. 2012;6(4):271–95. https://doi.org/10.1007/s11721-012-0072-5.

    Article  Google Scholar 

Download references

Acknowledgements

The authors would like to thank João Correia, David Garzón Ramos, Miquel Kegeleirs, Fernando Mendiburu, and Federico Pagnozzi for their participation in the experiments. The project has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (DEMIURGE Project, grant agreement No 681872); from Belgium’s Wallonia-Brussels Federation through the ARC Advanced Project GbO–Guaranteed by Optimization; and from the Belgian Fonds de la Recherche Scientifique–FNRS via the crédit d’équippement SwarmSim. JK and MB acknowledge support from the Belgian Fonds de la Recherche Scientifique–FNRS.

Author information

Authors and Affiliations

Authors

Contributions

The experiments were designed and performed by JK and VP. The paper was drafted by JK and edited by MB; all authors read and commented the final version. The research was directed by MB.

Corresponding author

Correspondence to Jonas Kuckling.

Ethics declarations

Conflict of interest

The authors declare that they have no conflict of interest.

Additional information

Publisher's Note

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

This article is part of the topical collection “Applications of bioinspired computing (to real world problems)” guest edited by Aniko Ekart, Pedro Castillo and Juanlu Jiménez-Laredo”.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kuckling, J., van Pelt, V. & Birattari, M. AutoMoDe-Cedrata: Automatic Design of Behavior Trees for Controlling a Swarm of Robots with Communication Capabilities. SN COMPUT. SCI. 3, 136 (2022). https://doi.org/10.1007/s42979-021-00988-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s42979-021-00988-9

Keywords

Navigation