AutoMoDe: A Novel Approach to the Automatic Design of Control Software for Robot Swarms

Gianpiero Francesca, Manuele Brambilla, Arne Brutschy, Vito Trianni, and Mauro Birattari
March 2012

Paper Abstract

We introduce AutoMoDe: a novel approach to the automatic design of control software for robot swarms. The core idea in AutoMoDe recalls the approach commonly adopted in machine learning for dealing with the bias-variance tradedoff: to obtain suitably general solutions with low variance, an appropriate design bias is injected. AutoMoDe produces robot control software by selecting, instantiating, and combining preexisting parametric modules---the injected bias. The resulting control software is a probabilistic finite state machine in which the topology, the transition rules and the values of the parameters are obtained automatically via an optimization process that maximizes a task-specific objective function. As a proof of concept, we define AutoMoDe-Vanilla, which is a specialization of AutoMoDe for the e-puck robot. We use AutoMoDe-Vanilla to design the robot control software for two different tasks: aggregation and foraging. The results show that the control software produced by AutoMoDe-Vanilla i) yields good results, ii) appears to be robust to the so called reality gap, and iii) is naturally human-readable.

Keywords: Swarm robotics, automatic design



Videos

In the following we show, for each task, two videos, one for AutoMoDe-Vanilla and one EvoStick.
The videos we present in this page have been randomly selected among those that we have recorded: we have randomly selected an instance of the control software designed by AutoMoDe-Vanilla and EvoStick under the 200,000 design budget.
The complete collection of videos is avilable for download:
Aggregation - budget level: 10,000 50,000 200,000
Foraging - budget level: 10,000 50,000 200,000

Aggregation

AutoMoDe-Vanilla - control software instance nr. 1 - design budget 200,000

EvoStick - control software instance nr. 7 - design budget 200,000

Foraging

AutoMoDe-Vanilla - control software instance nr. 17 - design budget 200,000

EvoStick - control software instance nr. 9 - design budget 200,000

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) .



Futher exploratory experiments

To exclude the possibility that the differences observed between AutoMoDe-Vanilla and EvoStick are due to the different optimization processes adopted by the two methods rathern than by the different control architectures, we performed a further set of exploratory experiments.

We defined another automatic design method that we called FnnStick. This method uses the same control architecture used by EvoStick, a neural network; and the same optimization process used by AutoMoDe-Vanilla, the F-race algorithm. In the following analysis, we compared EvoStick and FnnStick. As the two methods use the same control architecture, the possible differences in performance will have to be ascribed solely to the optimization process.

We have compared EvoStick and FnnStick both on aggregation and foraging using the same setting described in the paper. In simulation, we have considered the three design budget levels: 10,000, 50,000, and 200,000 simulation runs. In aggregation, the results obtaind by EvoStick and FnnStick are comparable. In foraging, EvoStick performs slightly better than FnnStick. Due to time constraints, we have performed robot experiments only on the control software obtained under the 50,000 design budget and we have tested only 10 randomly selected instances of the control software produced by the two methods (out of the 20 produced). The results show that, also in this case, EvoStick and FnnStick are comparable in aggregation, while EvoStick performs is better than FnnStick in foraging.

Our exploratory experiments confirm that in no case FnnStick performs better than EvoStick. In the context of our experiments, F-race is not more powerful than the evolutionary algorithm adopted in EvoStick. This excludes that the differences in performance between AutoMoDe-Vanilla and EvoStick are due to the different optimization processes adopted by the two methods.

In the following we report, the boxplots that describe our observations.

Aggregation

Simulation

10,000 design budget
50,000 design budget
200,000 design budget

Robot experiments

50,000 design budget

Foraging

Simulation

10,000 design budget
50,000 design budget
200,000 design budget

Robot experiments

50,000 design budget

AutoMoDe

The latest version of AutoMoDe is available here.