6 Hybrid Control

Embed Size (px)

DESCRIPTION

e

Citation preview

  • Lecture 6: Hybrid Robot Control

    Gal A. [email protected] to Robots and Multi-Robot Systems Agents in Physical and Virtual Environments

    *

    Last week, on Robots .A little tutorial on empirical researchUsing RoboCup virtual robotsA case study: The Design of two RoboCup team(s)Won 3rd place in 1997Won 4th place in 1998

    *

    This week, on Robots.Hybrid control: Using both reactive and predictive systems togetherSometimes referred to as reactive and deliberative systemsKey points:How to use systems in a complementary manner?Guidelines for use and design?Three-Tier, RCS architectures as case studies

    *

    The success of behavior-based controlPlanning (ala STRIPS) proven insufficientBrooks, behavior-based crowd claimed unnecessaryNo (uniform) representation of worldFast reaction to sensorsIndeed, behavior based control successfulChanged paradigmShowed everyone that robots can actually move

    *

    The limits of (simple) behavior-based controlLots of hard work by designerBuilding behaviors is sometimes not easyCoordinating behaviors can be difficultFine-tuning can be hell!Overly dependent on sensorsNot that good at managing complexitye.g., the need for a temporal-coordinating FSA

    Needed: Prediction

    *

    Behavior-based control showed planning insufficientBut planning (prediction) is still necessaryCases where sequence of behaviors is unknown in advance

    How do we get the best of reactivity and planning?

    *

    Hybrid ControlHave planning and reactive subsystemsSomehow make them control robot together

    *

    Two Case StudiesAtlantis, a 3-Tier hierarchical architectureA plannerAn executive/scheduler/command sequencerA (reactive) controllerActually one of 2-3 architectures with similar configurationRCS (Realtime Control System)Hierarchical, many layers (as many as necessary)Each layer can have several concurrent controllersController: Sensor readings, world modeling, action, etc.

    *

    ATLANTIS: Structure OverviewSequencer drives the controlMakes queries to deliberatorDeliberatorSequencerControllerReplanning RequestsNew plansSelected BehaviorSuccess/Failure

    *

    ControllerClosed-loop controller (uses feedback)Fuzzy, PID, predictiveMust be fast enough (constant time/space)Must be able to detect failureSo sequencer can select another behavior, call replannerAvoid internal state (other than for state estimation)

    May have a library of controllers/behaviorsFocus on one simple behavior at a time

    *

    DeliberatorOperation initiated and terminated by sequencerNo sensing---all internal stateTime consuming tasks:e.g., Planning routes using mapsCan have any representation or implementationAs long as can pass useful information, on request

    *

    Sequencer (executive/scheduler)Interfaces controller to planner (deliberator)Selects which behavior to applySequences, loops, conditionals, parallel threadsDrives executionGet success/failure status from controllerExamine state of worldQueries deliberator for heavy computations

    *

    Sequencer maintains internal stateKey task is to select behaviorsMakes decisions about selectionFor instance, when several options available

    Maintain queue of behaviors pending executionKeeps track of previously selected behaviors Keeps track of successes and failures

    *

    Key pointsNon uniform representation, methods3T is a framework, with very loose guidelinese.g., Avoid internal state in controller, use more in deliberatore.g., gray area when it comes to differentiating the layersLayers are distinguished by processing speedSpeed: With respect to response timing in the environmentLayers function in parallel, asynchronouslyController must recognize successes and failuresPlanning is necessary, but only to guide execution3T not a strict hierarchymiddle layer drives execution

    *

    ?

    *

    Real-time Control System (RCS)Sensors and Actuators

    *

    Real-time Control System (RCS)Sensors and ActuatorsInformation sharing

    *

    Real-time Control System (RCS)Sensors and Actuators

    *

    RCS Control Node: ModulesStandard module components, designer-implementedDesigner can merge componentsValue JudgmentSensorProcessingWorldModelingBehaviorGeneration

    *

    RCS Control Node: StructureStandardized module interfaces

    *

    Connecting nodes at same levelAll WM are connected to each other, share informationIn principle, a distributed shared knowledge baseTo sibling WM modules

    *

    RCS operator interfaceOperator interface not clearly specifiedOperatorIntervention

    *

    RCS Key pointsFramework, not a systemImplementations existImplementations can deviate in instantiation of modulesDifferentiates levels along exponential time scalesResponse durationCoupled sensing and acting at each levelSimilar to subsumption architectureBut uses explicit world models, internal state, planningStrict hierarchy:Commands passed down, top node drives execution

    *

    3T and RCS Hybrid ControlBoth differentiate time scales3T: response timing, RCS: response durationHeterogeneous representations3T almost no constraint, RCS structural constraints3T not strict hierarchymiddle layer drives executionDiffer in level of guidance to designer3T less structured, less guidingRCS-based designs more guided, RCS more complex structureDesigner has to instantiate more modules