Stanford's "Autonomous" Helicopters Learn
An anonymous reader writes "Stanford computer scientists have developed an artificial intelligence system that enables robotic helicopters to teach themselves to fly difficult stunts by 'watching' other helicopters perform the same maneuvers. The result is an autonomous helicopter that can perform a complete airshow of complex tricks on its own. The stunts are 'by far the most difficult aerobatic maneuvers flown by any computer controlled helicopter,' said Andrew Ng, the professor directing the research of graduate students Pieter Abbeel, Adam Coates, Timothy Hunter and Morgan Quigley. The dazzling airshow is an important demonstration of 'apprenticeship learning,' in which robots learn by observing an expert, rather than by having software engineers peck away at their keyboards in an attempt to write instructions from scratch.'" The title of the linked article uses the term "autonomous," but that's somewhat misleading. The copters can't fly on their own, but rather can duplicate complex maneuvers learned from a human pilot.
Remember those robot gunships in the Terminator movies? Yes, the they shot lasers and what not. Those things had humble beginnings.
If each mistake being made is a new one, then progress is being made.
They still are autonomous. Would you call people non-autonomous because they learn from other people?
DARPA had a project going on for awhile called UCAR, which was an unmanned autonomous combat helicopter. Unfortunately the war took all the money and DARPA had to cancel the competitions between Lockheed and Northrop.
Northrop currently has an unmanned helicopter called Firescout that has autonomously landed on a Navy ship while the ship was moving.
My point is that this type of work is nothing new.
It looks like someone with mod points has never read Snowcrash.
It's actually considerably more difficult. Unlike your computer, the helicopter encounters different environmental conditions each time it flies, so that just blindly recording the controller inputs and replaying them will cause the helicopter to crash. The trick in apprenticeship learning is to learn the flying model used by the pilot, not just recording and replaying a macro.
Who on slashdot wouldn't be familiar with the word autonomous?
Not everyone on Slashdot posts as an Autonomous Coward.
Bad puns gave me bad karma. =(
From the 2nd paragraph of the article:
"The result is an autonomous helicopter than can perform a complete airshow of complex tricks on its own."
From kdawson's summary:
"The title of the linked article uses the term "autonomous," but that's somewhat misleading. The copters can't fly on their own, but rather can duplicate complex maneuvers learned from a human pilot."
How in any way do you come to that conclusion based upon the data in the story?
They CAN and DO fly by themselves. Out of the lab. In varying weather conditions. Constantly making adjustments for wind gusts, etc., none of which is being controlled by a human.
And then the wisecrack about their AI? It uses an algorithm to study commands sent to another helicopter, studies the results, figures out what the goal of the commands was, and is able to implement those goals, on its own, more accurately than the original human pilot. That's not a strong AI?
Can we please get some editors that understand what they are reading?
*From The Not What You Would Call Brilliant Editing Department
And as you tread the halls of sanity, You feel so glad to be, Unable to go beyond. I have a message, From another time..
and you'll see. Throw in a little wind here and there and the robot doesn't stand a chance.
http://ca.youtube.com/watch?v=gi7G-VzU2r4
This story got a lot more attention than the other zillions of autonomous helicopters out there. The disappointment with the Stanford one is it is reinforcement learning. It's recording and playing the commands of a human pilot instead of simulating a dynamic model and deducing commands based on a genetic algorithm. The real value in ground based autopilot is having enough computing power to use biological algorithms.
I'm put in mind of mirror neurons which fire sympathetically and seem to account for the ability of animals to mimic and thus learn novel behaviour.
Me lost me cookie at the disco.
Exactly - that's where the AI comes in. It looks at numerous attempts of various tricks, notes the differences in the environmental variables and adjusts the controls wrt to the current conditions for the optimal execution. If anything it's more like, record 100 attempts, analyze and define a "good" routine, but also define good "exception handlers". I must say, I was pretty confused about what, if any, "watching" was involved - i.e. reflected-light-based vision. Pretty bad explanation, bordering on fail.
The helicopters can NOT fly by themselves "out of the lab." They are remote control helicopters with a few extra gadgets. In particular, they would include potentiometers to measure control surface deflection, digital servos, an AHRS unit, a data acquisition system, and a small autopilot computer based on a PowerPC, XScale, ARM9, or similar low-power CPU. The autopilot computer contains the definition of the control system, which is a set of nonlinear equations defining the dynamics and flight control of the helicopter. To perform a maneuver, the pilot moves the his controls which feed inputs to the control system. The servo outputs are based upon the equations defined by the control system. By recording the control inputs, accelerations, servo locations, and control surface deflections for a given maneuver, an autopilot program can be defined to fly the helicopter autonomously. Here's where AI comes into play. As the helicopter flies autonomously, there will inevitably be oscillations in the motion of the helicopter, since the human pilot that trained it cannot be perfect. However, by analyzing the feedback from the AHRS, servo locations, and control surface deflections, the control input gains to the autopilot program can be modified to give the helicopter a smoother flight by damping the unwanted oscillation induced by the autopilot attempting to reproduce the maneuver. It doesn't figure out the goal of the commands, it damps oscillation induced by the flight control system by figuring out what causes it. Its just math.
I read this on the main page. It was laid out with
"Stanford computer scientists have developed an artificial intelligence system that enables robotic helicopters to teach themselves to
and then a new line, which I was certain was going to start with the word "kill".
All intents and purposes. Not intensive purposes.