Skip to main content
European Commission logo print header

Automatic Design of Robot Swarms

Periodic Reporting for period 4 - DEMIURGE (Automatic Design of Robot Swarms)

Reporting period: 2021-04-01 to 2022-09-30

The scope of the DEMIURGE project is the automatic design of robot swarms. Swarm robotics is an appealing approach to the coordination of large groups of robots. The project advanced the state of the art in swarm robotics by developing a novel approach to designing and realizing collective behaviors for robot swarms. In this approach, a mission to be performed is specified using a high-level specification language. The design problem is then automatically formulated as an optimization problem that is itself automatically solved based on simulations. All in all, this process automatically generates the control software of the individual robots that enables the swarm to successfully perform the mission at hand. The approach can be used to concurrently design, together with the control software, also the hardware of the robots. In the project, we studied several control software structures, optimization algorithms, ways to specify requirements, validation protocols, on-line adaptation mechanisms and techniques for generating solution strategies at run time.
We developed a language to specify requirements on a mission to be performed: control software can then be generated automatically. We also developed a method to specify requirements by examples and to automatically generate the desired control software.

We produced several modules and demonstrated that by combining them automatically into a modular architecture, a wide variety of collective behaviors can be produced. Among others, we produced modules for spatial organization; exploration; local communication/coordination using infrared signals, colored light, and virtual pheromone. Besides producing modules by hand, we have shown that they can be produced using artificial evolution. Concerning the architecture, we have illustrated the use of probabilistic finite-state machines and behavior trees. We studied the concurrent design of hardware and software under economic constraints and the emergence of communication semantics as a result of an automatic design process.

We implemented a local search approach that uses iterative improvement and simulated annealing to generate control software. We studied the possibility of using genetic programming and grammatical evolution to optimize behavior trees. We also studied further alternative optimization algorithms. In particular, we conceived a multi-objective optimization method to address missions expressed as compositions of tasks.

We developed a robot swarm that automatically conceives solution strategies online: it can autonomously sequence and perform actions whose correct order of execution is unknown at design time. As sequencing is a (simple) form of planning, this swarm is the first system in which the ability to plan emerges at the collective level from the interaction of reactive individuals. We designed a control algorithm that allows a subset of the robot swarm to arise, through a self-organized process, as a control entity over the rest of the swarm. This will allow us to move towards the automatic design of a self-aware robot swarm that will be able to assess its own performance. This will allow it to re-design itself at run-time to adapt to the possible changes in the environment.

We conducted studies on the applicability of complexity measures to robot swarm. These measures capture relevant features of the dynamics and to identify typical patterns in swarm behavior. We conjecture that these measures could be used to guide/constrain the design process and contribute to increasing the robustness to the reality gap. We studied the possibility to use off-policy evaluation and importance sampling to assess potential modifications to robot control software, eventually, guide the optimization process and make it more efficient.

We studied the nature of the reality gap and proposed methods to handle it and to measure its impact. We conducted a methodological study, with demonstrations and theoretical developments, on how to run experiments in the automatic design of robot swarms. We reconstructed the state of the art in the automatic design of robot swarms, and we performed an extensive empirical comparison of existing approaches. We developed tools to facilitate robot experiments. We implemented and shared as open-source packages several frameworks for the automatic design of robot swarms. Notably, we collected several reference models for the e-puck robot, and we developed implementations of the main approaches to the off-line automatic design. We started exploring the possibility of mapping unknown environments using a distributed swarm-based SLAM. To do so, we developed a new robotics platform, Mercator, which is based on the Sphero RVR. We created a ROS-ready operating system for the e-puck. We produced an integrated framework for AutoMoDe, an editor and visualization tool, and a platform-independent implementation. We developed an interactive arena for the e-pucks, and we created a hardware module for the e-puck to lay virtual pheromone. To investigate the application of automatic design to multi-robot construction, we designed a specialized robot and construction material. We also created models of these components in ARGoS.

Finally, we produced several papers in which we conceptually frame the automatic design of robot swarms, we discuss our vision, and we sketch perspectives.
We established the state of the art: although the first works on the automatic design of robot swarms (notably via artificial neuroevolution) were published more than three decades ago, no extensive and thorough evaluation/comparison of the method proposed had been performed. We empirically studied nine among the most popular variants of the neuroevolutionary approach and our modular method Chocolate. Our results clearly highlight that neuroevolution is particularly sensitive to the so-called reality gap, the possibly subtle but unavoidable differences between simulation and reality.

We have shown the flexibility of modular design by applying the approach to several different collective missions. We defined several modules that implement relevant low-level behaviors: exploration, attraction, repulsion, lattice formation, local communication, virtual pheromone laying and detection, phototaxis… We studied the possibility of automatically combining these modules in a probabilistic finite-state machine or in a behavior tree. We have studied various optimization algorithms that can drive the automatic design process.

We have shown that the same automatic design process, besides generating the control software, can also configure the hardware of the robot swarm. Specifically, we have shown that it can decide the size of the swarm and select among alternative hardware modules. We have integrated in the design process economic constraints—e.g. a cap on the cost of the hardware. This makes the process particularly realistic and close to the design problems that are encountered in practical applications.

We have demonstrated that an integrated design is possible that, starting from a mission specification expressed in a high-level textual language or via examples, automatically generates the control software of the robots.

Finally, we provided a novel conceptual framework to the problem of the automatic design of robot swarms, with a specific focus on off-line fully-automatic design.
Cover Image
Phormica: Robots can lay and detect virtual pheromone
Robots aggregate in a shelter: behavior designed automatically
World Cloud generated based on the scientific articles produced within the project
Phormica: Robots use virtual pheromone for local communication and coordination