Nevertheless, in order to definitely avoid this loophole, the fitness is **modified**
in such a way that it increases only when the robot moves forward (sum of both motor speeds positive)3.

This modification does not alter the ranking of the controllers: the Symbolic Controller still outperforms the Classical Controller. This advantage somehow vanishes when more hidden neurons are added (see Table 1), but the results of the SC exhibit a much smaller variance.

| Architecture               | CC                   | CS   |
|----------------------------|----------------------|------|
| 8-2 / 8-6                  | 861 ± 105 1030 ± 43  |      |
| 8-8-2 / 8-8-6              | 1042 ± 100 1094 ± 55 |      |
| 8-20-2 / 8-14-6            | 1132 ± 55 1197 ± 16  |      |
| 8-20-2 / 8-14-6∗ 1220 ± 41 | 1315 ± 6             |      |

Table 1. Averages and standard deviations for 10 independent runs for the obstacle avoidance experiment. ∗this experiment was performed in a more constrained environment.

## 6 Evolution Of A Complex Behavior 6.1 Description

The target behavior is derived the homing experiment first proposed in [5], combining exploration of the environment with energy management. **The robot is**
equipped with an accumulator. The robot completely consumes the accumulator energy in 285 times steps. A specific recharge area is signaled by a light in the arena. There are no obstacles in the arena, and the position of the **recharge area**
is randomly assigned at each epoch.

The fitness is increased proportionally to the forward speed of the **robot (as**
described in section 5.2), but only when the robot is not in the recharge area.

In the original experiment [5], the accumulator was instantly recharged when the robot entered the recharge area. We suppose here that the **recharge is proportional to the time spent in the recharge area (a full recharge takes 100 times**
steps). Moreover, the recharge area is not directly "visible" for the robot, whereas it was signaled by a black ground that the robot could detect with a sensor in [5]. These modifications increase the complexity of the task.

## 6.2 Supervisor Architectures

The supervisor **architecture is a hierarchical controller that decide at each time**
step which one of the basic behaviors it supervises will be executed. **Its number** of outputs is the number of available basic behaviors, namely:

- Obstacle avoidance**. This behavior is evolved as described in section 5.2;**
- Light following**. The fitness used to evolve this behavior is the number of**
times it reaches the light during 10 epoch (no energy involved);
3 **Further work will introduce inertia in the simulator, thus avoiding this trap - and**
possibly many others.