Slashdot Mirror


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.

12 of 90 comments (clear)

  1. That's exactly how Terminator got started by Haoie · · Score: 5, Funny

    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.
    1. Re:That's exactly how Terminator got started by freddy_dreddy · · Score: 4, Informative
      --
      "Violence is the last refuge of the competent, and, generally, the first refuge of the incompetent" - Thing_1
  2. Autonomous by Anonymous Coward · · Score: 5, Insightful

    They still are autonomous. Would you call people non-autonomous because they learn from other people?

    1. Re:Autonomous by pete-classic · · Score: 5, Informative

      Your blithe refusal to even acknowledge the article is an inspiration, sir.

      It might seem that an autonomous helicopter could fly stunts by simply replaying the exact finger movements of an expert pilot using the joy sticks on the helicopter's remote controller. That approach, however, is doomed to failure because of uncontrollable variables such as gusting winds.

      -Peter

    2. Re:Autonomous by Hal_Porter · · Score: 5, Funny

      Yeah, they need to be able to learn an abstract concept and apply it to the conditions around them rather than learning a fixed sequence of actions and repeating blindly. In slashdot terms rather than posting "I for one welcome our robot overlords" to every article and get modded "-1 Die in Fire", they learn to make a slightly original joke tailored to the article and get modded up.

      Oh God, what have I become.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
  3. UCAR by DustyShadow · · Score: 5, Informative

    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.

    1. Re:UCAR by lordofwhee · · Score: 5, Insightful

      There's a HUGE difference between a robot that can manage to land on a fixed point on an object, and a robot that can actually LEARN how to land on that object. Remember, these robots know nothing. Not how to fly, not how to land, nothing, except how to learn.

  4. Re:Helicopter macro recording? by Czyl · · Score: 5, Informative

    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.

  5. Not Autonomous? FTNWYWCBED* by Somegeek · · Score: 5, Insightful

    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..
    1. Re:Not Autonomous? FTNWYWCBED* by BitZtream · · Score: 4, Insightful

      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?

      Heh, the summery is just an example of ignorance. A human being does the EXACT same thing. The main difference being that when I put my aircraft into the air, I can redefine the programming very quickly without outside intervention. Currently the AI that has been developed works against a known, set collection of goals.

      One could argue, that in the military, that may be more useful than an actual person in many cases. The person my have a conviction that prevents them from carrying out the mission, for instance, a child on the battle field my prevent them from firing a weapon, even though the result of not firing means that thousands of people die elsewhere.

      Personally, having not served in the military, I can not comprehend how a pilot ( and I've always wanted to be a fighter pilot mind you ) or any other military personal can actually take someone elses life. I know plenty of men and women do it on it often enough to know that you can overcome that and justify the action to yourself, at least long enough to do it, but lets face it, no one that I would want in our military should be able to take a life and NOT feel something is wrong.

      To be clear, I do not fault those people who serve at all, I hold them with the highest respect because they do a job that I do not believe I could do, nor do I really WANT to do, I just want to play with the aircraft :)

      So ... if this AI is a little 'dumb', it may make things a whole lot better in the end. Of course, the other side of the argument, and the side that I'm on says that the human decisions made during combat help prevent us from being walking evil. It is that ability for us to keep our morals in check and consider more than just our assigned goals that keeps us different from machines and makes us, to our knowledge, unique, for good or bad. It is ALSO that ability to adjust our goals based on the situation that makes the difference in a war.

      If you turn all wars into battles between machines, its simple a contest of production and resources in which case its likely you can just decide the outcome in advance and save the resources. So do you do the Warcraft Rush, or do you camp and stockpile?

      Fortunately, I can't imagine that it will even end up that we have computers doing all the work for us as those in power tend to not want to give it up, even to their computerized slaves.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    2. Re:Not Autonomous? FTNWYWCBED* by PPH · · Score: 4, Interesting

      It appears that two things are going on here, both interesting.

      First, the system is learning by observing a human operator as well as the 'chopper's response. This is a bit more than simple macro programming. The system observes a system state, an operator input and a subsequent state and appears to be deriving an initial set of control laws in addition to figuring out the operator's goals.

      Next, when it is in autonomous flight mode, it fine tunes the control laws to optimize the chopper's performance.

      The latter is actually an easier task for simple systems. Adaptive PID control systems are already in use, but a helicopter presents a problem involving multiple inputs and degrees of freedom. The former is a more interesting problem, particularly for unstable systems. Deriving parameters for a control system by watching another in action, when the observed inputs are noisy is tricky.

      --
      Have gnu, will travel.
  6. Re:Helicopter macro recording? by villy · · Score: 5, Interesting

    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.