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 &robots 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