AutoMoDe-Chocolate: automatic design
of control software for robot swarms

Gianpiero Francesca, Manuele Brambilla, Arne Brutschy, Lorenzo Garattoni, Roman Miletitch, Gaetan Podevijn, Andreagiovanni Reina, Touraj Soleymani, Mattia Salvaro, Carlo Pinciroli, Franco Mascia, Vito Trianni, and Mauro Birattari
November 2014


This page contains all supplementary information that was not possible to include in the published article.

Table of Contents
  1. Abstract
  2. Objective functions
  3. Original descriptions of the tasks
  4. On the adoption of PhD students as subjects
  5. Study A
    1. Videos
    2. Statistical data
    3. Boxplots with notches
  6. Study B
    1. Videos
    2. Statistical data
    3. Boxplots with notches

Abstract

We present two empirical studies on the design of robot swarms. In Study A, Vanilla and EvoStick, two previously published automatic methods, are compared with human designers. The comparison is performed on five new swarm robotics tasks, different from those on which Vanilla and Evostick have been previously tested. The results show that, under the experimental conditions considered, Vanilla performs better than EvoStick but it is not able to outperform human designers. The results indicate that Vanilla's weak element is the optimization algorithm employed to search the space of candidate designs.
To improve over Vanilla and with the final goal of obtaining an automatic design method that performs better than the human designer, we introduce Chocolate, which differs from Vanilla only in the fact that it adopts a more powerful optimization algorithm.
In Study B, we perform an assessment of Chocolate. The results show that, under the experimental conditions considered, Chocolate outperforms both Vanilla and the human designers.

Chocolate is the first automatic design method for robot swarms that, at least under specific experimental conditions, is shown to outperform a human designer.

Objective functions

The pseudocode of the objective functions is available for download: SCA, LCN, CFA, SPC, and AAC.

Original descriptions of the tasks

The descriptions of the tasks as they were produced by experts are available for download: SCA, LCN, CFA, SPC, and AAC.
These documents were not originally meant to be distributed. They are the document that were given to the experts as a description of the task to be solved. As they were not intended to be distributed, the language is not polished and the notation and terminology might differ from those adopted in the published article.

On the adoption of PhD students as subjects

It is our understanding that a large share of the robot swarms described in the domain literature have been programmed by PhD students. We do not have general data on this but we can nonetheless backup our statement with data extracted from the publication record of IRIDIA, our research group in Brussels.
In the last five years (2010-2014) , IRIDIA has produced 78 peer-reviewed articles in swarm robotics:
* 4 articles do not describe a specific robot swarms. They are literature reviews, and purely theoretical studies.
* 2 articles describe robot swarms that have been programmed by post-doctoral researchers.
* 72 articles describe robot swarms that have been programmed by PhD students.
We do not have formal data on other research groups but we expect that in many other groups the legwork of programming the robots is performed by PhD students. This is for sure the case in most of the groups with which we cooperate. We argue therefore that PhD students are the most appropriate subject for our study.

Study A

Videos

In the following we show, for each task, four videos, one for each method: AutoMoDe-Vanilla, EvoStick, U-Human and C-Human. These videos are randomly selected. The complete collection of videos is avilable for download: videos.tar.gz

SCA

In SCA (Shelter with Constrained Access), the goal of the swarm is to maximize the number of robots on an aggregation area. The aggregation area has a rectangular shape, is characterized by a white ground, and is surrounded by walls on three sides. The environment presents also a light source and two black regions that are positioned in front and aside the aggregation area, respectively.

LCN

In LCN (Largest Covering Network), the robots must maintain connection with each other, while trying to cover the largest possible area. We assume that i) two robots are connected when their distance is less than 0.25 m, and ii) each robot covers a circular area of radius 0.35 m.

CFA

In CFA (Coverage with Forbidden Areas), the goal of the swarm is to cover the entire arena except a few forbidden areas characterized by a black ground.

SPC

In SPC (Surface and Perimeter Coverage), the goal of the swarm is to cover the surface of a white square region and the perimeter of a black circular region.

AAC

In AAC (Aggregation with Ambient Cues), the goal of the swarm is to maximize the number of robots on an aggregation area represented by a black region. Besides the black region, the environment comprises a white region and a light source that is placed south of the black region.

Statistical data

The data of all the experiments are available for download here. You can import them in R using read.table("results.txt",header=T).

Boxplots with notches

If the notches of two boxes do not overlap, the difference between the corresponding central values is statistically significant


SCA

LCN

SPC

CFA

AAC

Study B

Videos

In the following we show, for each task, three videos, one for each method: AutoMoDe-Chocolate, AutoMoDe-Vanilla, and C-Human. These videos are randomly selected. The complete collection of videos is available for download: videos.tar.gz

SCA

In SCA (Shelter with Constrained Access), the goal of the swarm is to maximize the number of robots on an aggregation area. The aggregation area has a rectangular shape, is characterized by a white ground, and is surrounded by walls on three sides. The environment presents also a light source and two black regions that are positioned in front and aside the aggregation area, respectively.

LCN

In LCN (Largest Covering Network), the robots must maintain connection with each other, while trying to cover the largest possible area. We assume that i) two robots are connected when their distance is less than 0.25 m, and ii) each robot covers a circular area of radius 0.35 m.

CFA

In CFA (Coverage with Forbidden Areas), the goal of the swarm is to cover the entire arena except a few forbidden areas characterized by a black ground.

SPC

In SPC (Surface and Perimeter Coverage), the goal of the swarm is to cover the surface of a white square region and the perimeter of a black circular region.

AAC

In AAC (Aggregation with Ambient Cues), the goal of the swarm is to maximize the number of robots on an aggregation area represented by a black region. Besides the black region, the environment comprises a white region and a light source that is placed south of the black region.

Statistical data

The data of all the experiments are available for download here. You can import them in R using read.table("results.txt",header=T).

Boxplots with notches

If the notches of two boxes do not overlap, the difference between the corresponding central values is statistically significant


SCA

LCN

SPC

CFA

AAC

AutoMoDe

The latest version of AutoMoDe is available here.