In 10 minutes, a computer algorithm developed by Stanford University scientists learned, and then flawlessly replicated, more than 20 years of radio-controlled helicopter expertise.
The team has already been approached by private companies who want to use the software, which isn't specific to helicopters, to create helicopters that could monitor humanitarian disasters, track wildfires or locate land mines.
"The goal was to take an off-the-shelf helicopter and write a program to fly it as good as an expert," said Adam Coates, one of the scientist involved in the project.
"We are now more accurate and consistent than an expert human-piloted helicopter," said Pieter Abbeel, another Stanford scientist involved with the project.
Coates and Abbeel, along with their advisor, Andrew Ng, worked with helicopters because of the challenge they present. Helicopters, according to the researchers, are inherently unstable.
"The dynamics of helicopter flight are incredibly complicated; blades are flexing, air is churning, etc.," said Coates. "It's simply too complex for us to map out mathematically."
Instead of trying to write a program that would teach the helicopters, they wrote a program that lets the computers teach themselves, using data gathered from a host of sensors and equipment.
The helicopters themselves are equipped with accelerometers, gyroscopes and magnetometers which monitor a helicopter's speed, acceleration, direction and a host of other variables.
Ground-based video and positioning instruments gather more data about the helicopter's performance. All of the data from ground and air are then fed into a computer for analysis. A larger helicopter could carry the entire instrument and analysis package.
While the cameras rolled and instruments recorded, Garett Oku, an expert radio-controlled helicopter pilot, sent one helicopter into a series of flips, rolls, twists and other complex maneuvers, even a "tic toc" -- a difficult aerial trick where the helicopter's nose points straight up and it swings side to side like a pendulum. Oku flew the same 10-minute routine several times.
Ten minutes after the final demonstration flight, the computer had turned Oku's 20 years of training and experience into data that another helicopter then used to create flawless flights, one after another.
"For an expert helicopter pilot to fly the same exact path over and over is very impressive," said Coates. "Some of them spend years trying to do it."
Eric Feron, now a professor at Georgia Tech, worked on autonomous helicopters several years ago when he was at the Massachusetts Institute of Technology. He says the Stanford team has pushed the limits of autonomous helicopter flight and computer programming.
"What I'm most impressed with is the learning part, the ability of the algorithm to learn and to fly and then to reproduce that in another aircraft," said Feron. "No one had done that before."
Learning still requires a teacher, however. The computer algorithm can only copy the moves of a human pilot. It can't think independently or creatively, although that is certainly a possibility for the future, said both Coates and Abbeel.