Evolution in robotic islands - Enhancing the potential of automatic design techniques through a parallel distributed environment
Can we improve the automatic design methodology of Evolutionary Robotics by performing the optimisation of a neuro-controller in an island model?
Evolutionary Robotics is a technique which has recently received growing attention from the robotics research community as it promises the automatic synthesis of controllers. Such an automated framework is based on the use of artificial evolution (optimisation) to reinforce the learning of robots populations, by effectively tuning the parameters of randomly generated sets of controllers. The controllers commonly used are artificial neural networks (ANNs).
Parallelisation of evolutionary algorithms has been extensively studied in the context of global optimisation, resulting in a significant speedup of the optimisation process. Besides, island-based models have proved that migration of individuals between independent runs of an algorithm improves the performance of the optimisation process, both in terms of function evaluations required and in terms of the quality of the solution obtained, providing a better balance between exploration and exploitation of the search space. This technique has also been applied to large dimensional and difficult engineering problems, as well as the training of Recurrent Artificial Neural Networks.
The island model paradigm seems very suitable for application to Evolutionary Robotics for various reasons:
- It could significantly speedup the design process by exploiting parallelism, while improving the quality of the solutions found.
- It could relieve the experimenter from a significant part of the burden required to properly set up the evolutionary process. Cooperating algorithms via migration without well-tuned parameters have proved to work as well as single instances of a well-tuned algorithm in global optimisation.
- When designing controllers for robots, the exchange of individuals corresponds to introducing different types of solutions in a pool of already existing ones. This might increase the diversity in a population and via the recombination of genetic material, it might endow agents with capabilities that would be extremely unlikely to evolve in one run. In other words, it could facilitate the progressive composition of a rich behavioural repertoire.
The main objective of this study is to perform the optimisation of a neuro-controller in an island model, with a vision to demonstrate empirically an improvement of the automatic design methodology.
The study proposal has been released in the Ariadna Call 2009/01. Following the thorough evaluation of the participation candidatures, the Advanced Concepts Team selected the School of Computing and Mathematics of the University of Plymouth. Below the list of the researchers participating in the study.
2009-10-01 - The study: " Evolution in robotic islands - Enhancing the potential of automatic design techniques through a parallel distributed environment " has officially started.
In order to meet the needs of experiments conducted during the study, the Advanced Concepts Team has developed a software platform freely available as an open source project named Parallel Global Multiobjective Optimiser (PaGMO). The code, entirely written in C++ and tested on Windows XP, Ubuntu, and Leopard OS, implements the asynchronous island model paradigm for generic optimisation purposes. It defines Individuals, Populations, Islands and Archipelagi as C++ objects, providing an easy-to-use computational environment where to simulate the concurrent evolution of populations. PaGMO objects can also be instantiated directly from Python and each island can be assigned the same or a different algorithm to evolve its population. The evolution in each island is assigned to a different thread of the underlying operating system so that parallelisation is obtained when multiple processors are available. Communication (migration) between threads (islands) occur in an asynchronous fashion. Such a generic framework facilitates studies on the island model impact on optimisation algorithms in general and population-based meta-heuristics in particular.
2) Mars Rover Simulator
The University of Plymouth has developed the Mars Rover Simulator project, based on the evolutionary robotics paradigm where an artificial agent aquires its skills through the process of artificial evolution. This simulator can be useful to evolve neural network controllers for the rover. The robot model is based on a 3D simulation model of the MSL rover.
Ampatzis, C., Izzo, D., Rucinski, M., and Biscani, F., ALife in the Galapagos: migration effects on neuro-controller design, Proceedings of the European Conference on Artificial Life (ECAL 2009), 2009 (link).