Evolutionary Robotics: The Biology, Intelligence, and Technology of Self-Organizing Machines. Stefano Nolfi and Dario Floreano. xii + 320 pp. The MIT Press, 2000. $50.
Just a few decades ago, scientists envisioned the "house of tomorrow," complete with robots that would assist us with daily chores, anticipate our needs and learn from their mistakes. Yet none of us now live with such robot companions.
The primary reason for this failure lies in our historical approach to designing and programming robots. The traditional approach attempts to anticipate every possible required robotic behavior and write programs to carry out specific routines that address those behaviors. This has proved to be time-consuming, costly and ultimately unsuccessful. There are simply too many unconsidered circumstances in any real-world robotics application. For robots whose behavior relies on a rule-based architecture, extending the rules to handle cases that were unforeseen or treated inappropriately has often proved unwieldy. Some efforts have required orders-of-magnitude increases in the number of rules to handle special cases, while generating little overall improvement in performance.
An alternative strategy for designing robots relies on inspiration from nature, where evolution perfects carbon-based machines, which often carry out complex goal-driven behaviors. Although the proposition for evolving robots goes back at least to the mid 1950s, with George Friedman's master's thesis from the University of California, Los Angeles, only recently have significant efforts been made to apply nature's design principles to real robots—as opposed to mere computer simulations of those machines. Stefano Nolfi and Dario Floreano were two of the primary researchers working in this new area of "evolutionary robotics" in the early 1990s, and they have continued to pursue investigations of natural computing methods and robotics. Their new book summarizes some of the important case studies in this growing field.
Nolfi and Floreano offer basic introductory material regarding genetic algorithms, a branch of evolutionary computation often used to optimize robotic control architectures. These architectures often take the form of an artificial neural network, a mathematical model based loosely on the way biological neural networks are believed to operate. Artificial neural networks possess many "neurons," each of which acts as a mathematical transfer function—that is, an input-output device. Each neuron transforms its incoming activity signal into an output signal that is in turn passed along to other neurons. Some neurons in the neural network may affect robotic controllers, such as the rate of turning a single wheel on a Khepera robot. Other neurons play the role of receptors—for example, reading in data from an infrared sensor. Connections between the neurons in an artificial neural network are weighted, and these weights, in large measure, dictate the overall behavior of the robotic system. Evolutionary algorithms and other optimization techniques are often used to search for appropriate weight sets, or even optimal neural architectures.
This book describes experiments (of increasing complexity, perhaps) in different settings. To illustrate the basic approach, a small robot may be placed in an arena (essentially a wooden racetrack measuring 80 by 50 centimeters) with the goal of having the robot learn to navigate the arena at maximum speed without bumping into walls. The robot can perceive its environment with eight infrared sensors that act either by measuring the amount of ambient light or by emitting infrared light and measuring the amount reflected. The robot executes a behavioral strategy represented by an artificial neural network. In essence, alternative neural networks are downloaded into the robot, which acts based on this programming. Some neural networks are better than others at achieving the designer's goal. The best are saved, and the worst are replaced by variations of the best; the analogy to random variation and selection is obvious. Over time, a neural network emerges that maximizes the robot's performance.
This book goes into considerable detail, covering experiments with a variety of robots, including some that walk rather than roll. In experiments using coevolution, populations of robots compete against each other in predator-prey situations, without human intervention. Nolfi and Floreano expect that the evolutionary approach to robotics will lead to designs for robots that are faster, more reliable and more robust than those fashioned with traditional techniques.
This book will be welcomed by those interested in building complex robots or simple robots that do complex things. I have only two real criticisms. First, much of the work cited isn't particularly recent. Many of the references predate 1997; insufficient attention is paid to information about ongoing efforts published in the most contemporary conference proceedings and journals. In this rapidly emerging field, information about the most recent efforts is particularly pertinent. Second, the book is not well copyedited. I noted numerous agreement errors and misspellings, and at least one quotation never closed. I found this quite distracting and below the standard of a major scientific publisher, but I suspect that interested researchers easily will look past the substandard presentation and benefit from the technical details assembled.—David B. Fogel, Natural Selection, Inc., La Jolla, California