When a person stubs his toe, he compensates by favoring his other leg. More dramatically, if he loses use of both his legs, he can still crawl to get from point A to point B. Now a robot shaped like a four-legged starfish can do the same. Designed at Cornell University, the nine-piece device can advance toward a goal even after incurring damage. In a paper published in this week's Science, the researchers describe the algorithm by which this mechanical beast can assess its own condition.
"The main advance here was not just the diagnosis and recovery, but how the robot does that, which is to build a model of itself," explains Josh Bongard, a computer scientist now at the University of Vermont. In the past, robots attempting to recover from damage would have attempted upward of hundreds of thousands of movements in an inefficient trial-and-error process designed to overcome injury. But if these robots are to become "the next generation of planetary rovers," Bongard points out, "you can't assume that this robot can perform hundreds of thousands of trials. It may damage itself further or fall off a cliff." So, Bongard, along with his colleagues Victor Zykov and Hod Lipson, programmed their robot to carefully select its actions so that it makes as few movements as possible.
Using an "actuation-sensation" system, the robot runs through a number of possibilities before deciding what to do. In its electronic brain, the robot will perform a random five-second movement--such as lifting its left leg and then lifting its right leg. It will then plug that movement into 15 randomly chosen models, which are essentially 15 guesses as to how the robot is put together. It will then process all the results of performing the particular action in each model--one may predict that it will cause the robot to tilt left, for instance; another may indicate the machine will tilt right. Finally, the robot performs the action.
If the robot ends up tilted left--which the four sensors on its body can determine--it will throw out all the models that did not make that prediction. "It's basically a rough analogue of natural selection," notes Bongard. "This is a population of 15 self-models and the ones that are more fit propagate, and the ones that are less fit die off."
The researchers had the robot go through the algorithm when it was in tip-top shape, and found that its chosen mode of movement was to generate enough momentum to throw its body forward, somewhat like an inchworm would. When Bongard severed one of its limbs, it hobbled forward instead. Ronald Arkin, a roboticist at the Georgia Institute of Technology, says this new resilient robot reminds him of the cyborg played by Arnold Schwarzenegger in the first Terminator movie: the machine "muddles on" to its goal despite suffering several mechanical setbacks. In the real world, however, "it could have some significant value in cases where people can't reach it," he remarks. "It has some applications for search and rescue or extraterrestrial exploration."
Right now, the robot isn't exactly ready for any operation that is time sensitive. The time between movements was set to 20 minutes by the researchers, because at this stage they were just trying to see if the robot could overcome adversity. Bongard is confident that in the future, the robot could run through its algorithm much faster. "There's no reason why this robot couldn't communicate wirelessly with a bank of computers," Bongard says. "You could actually parallelize this process rather quickly."