210 likes | 332 Views
A Robust Layered Control System for a Mobile Robot…. Where Planning is just a way of Avoiding Figuring Out What to Do Next, and Elephants Don’t Play Chess …With Apologizes to Dr. Rodney A. Brooks, and to Allen, Herbert, Seymour, Toto, Tito, Genghis, Squirt, Tom, Jerry, and,
E N D
A Robust Layered Control System for a Mobile Robot…. Where Planning is just a way of Avoiding Figuring Out What to Do Next, and Elephants Don’t Play Chess …With Apologizes to Dr. Rodney A. Brooks, and to Allen, Herbert, Seymour, Toto, Tito, Genghis, Squirt, Tom, Jerry, and, of course, Labnav Steve Jones SDOE 683, Professor Rick Dove 11 March 2009
The Control Problem: • Two major solutions prevalent: Symbol Systems approach and Physical Grounding (Nouvelle) approach • Symbol approach (Classical AI – CAI) uses symbols to represent robot operating environment and elicit responses • Nouvelle AI (NAI) represents the operating environment using individual behavior generating modules fed by “real” representations of the “outside world” to produce more and more complex behaviors ..Whew!
Dr. Rodney Brooks Maintains That: • CAI is characterized by: • Complex serial architectures are usually required to get any recognizable responses at all • Often requires integrated Planners/Schedulers that might not represent the “real” world • Difficulty in improving system competence (capability) • External world is defined by symbols which may be wrong or ambiguous • Requires severe number crunching • Complexity increases rapidly
Dr. Rodney Brooks Maintains That: • CAI is characterized by:
Dr. Rodney Brooks Maintains That: • NAI is characterized by: • Architecture that is essentially parallel and scalable • Competence is improved by simply adding more behavior modules • External world is represented by an actual (vice symbolic) PHYSICAL perspective • Displays reasonable computational demands • Complexity increases only linearally by adding new modules on top of the stack
Dr. Rodney Brooks Maintains That: • NAI is characterized by: • Simplicity of design • Allows concurrent processing • Looks like this:
But wait! If you agree that a Physical Grounding control approach has some merit (and Dr. Brooks does), what would be some important features? • Would use some TBD series of sensors and actuators to represent the real-time, real world • Would resemble some kind of realizable animal systems • Would be a bottom-up construct –crawl-walk-run • Relatively easy to make smarter – repertoire, capabilities, see non chess-playing elephants • Much less complex to engineer and integrate • Less costly to build • Much more powerful performance than currently displayed by CAI robots
So What is Subsumption Architecture, and Why Should I Care? • A computational architecture which tightly couples perception to some kind of action • Uses a layered architecture:
So What is Subsumption Architecture, and Why Should I Care? • Each layer generally represents one capability, capacity, or behavior • Uses specialized “Augmented Finite State Machines” (AFSM’s) at each processing layer operating on rule sets generated by a “Behavior Compiler” • In it’s simplest form: perception inputs from the platform sensors are fed to each behavior-specific layer, are processed by the AFSMs, and behavior commands are then passed to the actuators to mimic the desired behavior/response • Each layer provides a more complex behavior than the one BELOW it • Sort of mimics real life
So What is Subsumption Architecture, and Why Should I Care? (Cont’d) • At each behavior layer, an error condition, an event detection (say, something in the way), or a potential threat (an approaching something), can modify, halt, or reverse an on-going behavior of the layer(s) below it (the subsumption part):
So what might some of these previously mentioned behaviors (competencies) be? • Avoid contact with objects (moving or stationary) • Wander aimlessly around like a teenager without hitting things nearby • Explore parts of the “world” that appear to be reachable • Build a map of the outside environment and plan tour routes
So what might some of these previously mentioned behaviors (competencies) be?Cont’d) • Notice changes in the current static world • Reason about the perceived world and perform tasks related to certain objects (see Herbert’s Crime Spree) • Formulate and execute plans which involve changing the state of the world • Reason about the behavior of objects (appear, disappear, or move) and modify plans based on this reasoning.
What Other Neat Things Can a Subsumption Architecture Do? • Allow Multiple Goals – Individual layers can work on individual goals concurrently yielding better decisions • Accommodate Multiple Sensors – Not all sensors are needed for every decision – allows some multi-tasking • Provide Increased Robustness – More is better in accommodating failures, damage, multiple threats • Additivity – Easy to scale up to enhance competency, processing power, allow for some decentralized processing • Innovation – Easily become the greatest thing since night baseball..room to growth, do new things, etc.
Something to Think About: • What other kinds of competencies/behaviors would be useful/interesting? • Additional sensors would be desirable. What kind might be developed? • Could there be some kind of upper limit on complexity/capability given solid-state advances since 1985?
How Does a Module Function? • Each module can multiple inputs and outputs • Each Input line can be suppressed or subsumed • Each Output line can be inhibited by the next processing layer above it • Each module can be individually reset • Each Input and Output line can have multiple fan-ins and fan-outs:
Putting it All together-: • Motor Module – Drives the platform based on Run, Halt, Turn Speed and Angle commands • Sonar Module – “Senses” outside world, provides filtering and mapping
Putting it All together • Collide Module – Uses SONAR input to detect obstacles • Feelforce Module – Uses SONAR inputs to detect approach/retreat of external objects • Runaway Module – Uses “pushback” output of Feelforce Module to trigger “Beat-Feet” response
Putting it All together • Wander Module – Provides new heading heading every 10 seconds • Avoid Module – Uses Heading+Feelforce+SONAR to produce a generally right direction to move towards • Grabber, Monitor, Integrator, PathPlan, Straighten Modules will be available
As Built Robots: • ALLEN – SONAR range sensors and Odometery • TOM & JERRY – Minimum hardware machine. Used IR detectors and dynamic braking • HERBERT – 30 IR sensors, on-board manipulator, laser-light striping subsystem, improved obstacle-avoidance, wall following, real-time object recognition. M.O. was stealing Coke cans • GENGHIS – Six legged robot using finalized subsumption control system, demonstrated rough terrain navigation skills • TOTO – 12 SONAR transceivers, flux-gate compass, used new behavior language in Place-Map mode. Could tell you when you weren’t in Kansas anymore • SEYMOUR – Featured camera vision, moving object tracking