Textbook Outline

Mataric - Robotics Primer 

 

Chapter 15. Hybrid Control

        

  BASIC IDEA:

–       Reactive

– fast, but inflexible

–       Deliberative

– smart, but slow

–       Hybrid

– get best of both worlds

– combines reactive & deliberative

–       3 Layer architecture

– reactive layer

– planner

– layer to link them (the “magic middle”)

–       Middle layer tasks

– compensate for limitations of other two layers

– reconcile their different time scales

– deal with their different representations

– explicit & elaborate for delib

– none for reactive

– reconcile any contradictory commands

–       Example: mail delivery robot

– to avoid obstacles & fast moving people needs to be reactive

– to find rooms, follow map, plan shortest paths needs to be delib

– problems in combining them – what does it do when . .

– urgent task, no time to plan

– sudden disrupting event requires immediate decision

– discovers portion of map out of date

– unknown event completely alters goal structure

– same task periodically repeated

        

  RESPONSES TO PROBLEMS:

–       Changes in world/task/map

– upon discovery inform delib layer

– delib layer updates rep of world & generates new plan

–       Problem: takes time, cannot be done continually

–       Planning & replanning

– reactive layer discovers it cannot proceed; signals to deliberative layer

– called dynamic replanning

– as reactive layer moves forward with existing plan, planner keeps working

– generates better plan

– signals to reactive layer to stop, execute new plan

– if time-critical goal & no time to wait for optimal plan

– go with any available plan

– generate better plan as robot moves with existing plan

– in all of these cases mismatch in time frames can be problem

– i.e., generation of plan may take longer than execution

– execution of incomplete plan may come to halt before new plan is ready

–       Avoid replanning

– Useful idea :: remember/save/store plans

– good if situations come up often & need fast decision, e.g., encounter crowded hallway

– preprogram responses

– not quite reactive rules

– not quite plans

– contingency tables

– intermediate level actions

– macro-operators

        

  WHICH SYSTEM IS TO BE IN CHARGE?

–       Which system is to be in charge?

– Depends on environment & task

– can be the one or the other

– best systems seem to alternate

– either can inform & interrupt the other

        

  ON- & OFF-LINE PLANNING:

–       Off-line planning

– preplan for all situations

– store these plans ahead of time

–       On-line planning

– planning done within same time frame as action

–       Universal Plan

– set of all possible plans for all initial states and all goals

– plan exection, and therefore robot, is reactive

– Domain Knowledge = info about robot, task & environment

– domain knowledge put into system in clean, principled way

– special programming languages developed

– generate & precompile plans automatically

– input mathematical specification of world &robot’s goals

– produce control circuit for reactive machine (situated automata)

– situated = exist in complex world & interact with it

– Too good to be true for real-world robots

– state space too large for realistic problems

– world must not change (or else new plans have to be generated)

– goals must not change

– exceedingly difficult to write mathematical specification to fully describe real world

– sooo . . . back to hybrid systems

        

  DRAWBACKS OF HYBRID SYSTEMS:

–       Middle layer hard to design & implement

– tends to be special-purpose

– needs to be reinvented for every new robot & task

–       Best of both world can become worst of both

– E.g., planner slows down reactive system

– reactive system ignores planner

–       Still – most popular system for many applications

   

  CHAPTER SUMMARY:

– Hybrid control aims for best of both delib and reactive

– allows robot to both plan and react

– Strucuture

– real-time reactive control in one part

– time-expensive deliberative control in another part

– intermediate level in between

–       Called three-layer architecture

– Main challenge – bringing together reactive & delib to get consistent, timely & robust behavior

– Capable of storing representation, planning, learning