Evolutionary methods can be adopted for developing controllers for task-oriented robots without the need to fully write models and programs. Initially, the considered task was the navigation of wheeled mobile robots; today, methods are available for multiple robots and legged robots.
This paper explores open issues and recent solutions in the area of evolutionary algorithms (EA) in general and evolutionary robotics (ER) in particular, underlining that ER has sometimes different approaches than EA, for instance in defining fitness functions.
An open issue in ER is solving the reality gap, since it is impossible to evolve the controller only on the real robot, and behaviors learned in simulation can be low performing in reality. Section 2 explores solutions to reduce the difference, such as sampling sensor data or introducing conservative noise. Methods to attack the real problem, that is, reducing the evolution time when using real robots, are evolving a number of robots to exchange genetic information, or combining offline and online evolution.
Section 3 deals with the bootstrap problem, that is, how to create the fitness function for complex tasks, and the connected deception problem, arising when the fitness function does not allow the system to evolve to a global optimum. Available solutions include decomposing the task or the controller, inserting the human in the loop, or promoting diversity. This last solution has an open question about how to generalize it, which calls for a theoretical analysis, an open issue indeed.
Another open issue is about gene encoding. While direct encoding is the basic choice, indirect encoding, as produced by neural networks, has been recently developed, together with hybridization techniques, not always tested on real robots.
The authors conclude that the large variety of models and experiments in ER underlines the absence of widely adopted research practices and metrics; it is almost impossible to compare the different systems developed. At the beginning, the authors wonder why evolutionary methods are not yet a standard way to evolve robot controllers. At the end, they give some answers: make a deeper theoretical analysis and define protocols and experimentation practices.
The reader can find a well-organized review of important topics in ER, and a frank assessment about the limitations that still characterize this approach, namely scalability and generalization.