Evolving non-Trivial Sequential Behaviours: The Garbage Collecting Robot
In this experiment we evolved the control system of a mobile robot provided with a simple gripper (Figure 1, left) that should keep its arena clean by collecting objects and releasing them outside the arena. One interesting aspect of this experiment is that, in order to clean the arena, the robot should produce a sequence of simple behaviors: (a) explore the environment, avoiding the walls; (b) recognize a target object and to place the body in a relative position so that it can be grasped; (c) pick up the target object; (d) move toward the walls while avoiding other target objects; (e) recognize a wall and place the body in a relative position that allows the object to be dropped out of the arena; (g) release the object. Indeed, this experiment has been one of the first demonstration that evolutionary robotics techniques might be used to solve non trivial problems.
The robot is provided with 6 infrared proximity sensors located on the frontal side, an optical barrier sensor located on the gripper that detect the presence of object in the gripper, two motors controlling the two corresponding wheels, and two motors controlling the two degrees of freedom of the arm. The environment consist of an arena surrounded by walls and containg 5 cilindrical objects randomly located.
Figure 1. Left: The robot. Right:The architecture of the neural controller. The network has 7 sensory neurons that encode the state of the 6 frontal infrared sensors and the state of the light barrier sensor on the gripper. The four group of motor neurons control the left and right wheels and the gripper.
As you can see in this video evolved robots are able to solve this problem by displaying effective and robust behaviors.
This experimental setting allowed us to investigate two issues. The first issue concern the problem of how one can evolve complex behavior from scratch. In these cases, in fact, the evolutionary process might fail due to a "bootstrap problem". None of the individuals of the first generations are able to accomplish the task (even once and even occasionally). As a consequence, all individuals are scored with the same null value and selection cannot operate properly. This problem has been solved by using an incremental evolutionary process in which individuals have been selected also on the basis of the ability to perform a sub-part of the required behavior (namely the ability to grasp objects without necessarily releasing them outside the arena). For more information on this issue and for an analisys of the advantages and drawbacks of incremental evolution, see Nolfi, 1997b).
The second issue concern the architecture of the neural controllers. Simple reactive architectures in which sensory neurons are directly connected to motor neurons are insufficient for this problem. By comparing the results obtained by using different neural architectures we observed that the best results were obtained by using an "emergent modular architecture" in which different neural modules control the motors in different moments and in which both the arbitration mechanism between neural modules and the connection weights of neural modules are co-evolved. The architecture is shown in Figure 1 (right). Each motor is controlled by two competing motor neurons. For instance, the motor that drive the left wheel is controlled sometime by the light blue and sometime by the dark blu motor neuron. In addition we have two red neurons that determine the arbitration between the two neural modules. When the light-red neuron is more activated then the dark-red neuron the light-blue takes the control of the motor and viceversa.
By analyzing how modules are used in effective evolved individuals we also observed that there is no correspondance between neural modules and basic behaviours. In other words is not the case that one module is responsible for one behavior (e.g. explore the environment or pick-up one object) and the other modules for other basic behaviors. All elementary behavioours, independently from how an external observer divides the whole behaviour into elementary components, result from the contribution of many neural modules. This implies that effective organizations at the level of the robot's control system does not necessarily correspond to organizations that make sense from the point of view of an external observer.
Nolfi S. (1997a). Using emergent modularity to develop control system for mobile robots. Adaptive Behavior (5) 3-4:343-364, pdf
Nolfi S. (1997b). Evolving non-trivial behaviors on real robots: a garbage collecting robot. Robotics and Autonomous System, 22: 187-198, pdf
Nolfi S.; Parisi D. (1995). Evolving non-trivial behaviors on real robots: an autonomous robot that pick up objects.,In M.Gori and G.Soda (Eds.), Topics in Artificial Intelligence. Proceedings of the 4th Congress of the Italian Association of Artificial Intelligence. Berlin: Springer-Verlag, pp. 243-254, pdf