Textbook Outline
Mataric - Robotics Primer
Chapter 16. Behavior-Based Control
INTRO:
popular
incorporates best of reactive systems
does not involve hybrid soluton
grew out of reactive control
inspired by biological systems
Inspired by these challenges
reactive systems
too inflexible
incapable of . .
representation
adaptation
learning
delib systems
too slow & cumbersome
hybrid systems
require complex interaction among components
biological systems
achieve complexity with simple & consistent components
BBC is
closer to reactive control than to hybrid control
farthest from delib systems
have reactive components
do not have traditional deliberative components
BEHAVIOR-BASED CONTROL:
uses behaviors as modules for control
controller is collection of behaviors (behavior-achieving modules)
Rules of thumb
behaviors
achieve and/or maintain a particular goal
e.g., homing behavior, wall-following behavior
are time-extended, not instantaneous
take input from
sensors
other behaviors
send output to
effectors
other behaviors
are more complex than actions
actions stop, turn-right
behaviors find-object, get-recharged, follow-target
can be designed at variety of levels of detail or description
called their level of abstraction
to abstract remove irrelevant details from consideration
to generalize recognize commonality among aggregate
Principles for good BBC design
behaviors executed in parallel to enable immediate response
networks of behaviors store state & construct world model
behaviors designed to operate on compatible time scales
design process
list desireable manifested behaviors
figure out how to achieve that with internal behaviors
some internal behaviors may themselves consist of other internal behaviors
Key properties of BBC
can react in real time
use representations to generate efficient behavior
use uniform structure & repn throughout
no intermediate layer
Interaction dynamics
behavior inside a robot may not match externally observed behavior
external behaviors come from interaction of internal behaviors & envt
interaction dynamics = pattern & history of interaction & change
BBCs are networks of internal behaviors which interact & communicate to produce desired external behaviors
re modularity:: BBC has collection of behaviors relatively similar in execution time
re design:: behaviors
o incrementally added
o executed concurrently, in parallel
o activated in response to
§ external conditions
§ internal conditions
§ sensory inputs
§ internal state
§ messages from other behaviors
dynamics of interaction arise
o within system itself (interaction among behaviors)
o within the environment (interaction of behaviors with world)
behaviors are more expressive than simple reactive rules
internal representation may or may not be present
behaviors can be used to store representations
Distributed Representation
BBS mandate info represented internally not be centralize or centrally manipulated, a direct contrast to deliberative & hybrid
key challenge how distribute rep over behavior structure
i.e., avoid pitfalls of
o delib control ? act on time-scale close to real-time components of system
o hybrids middle layer ? same behavior structure for rep as rest of system
Example: Distributed Mapping
distribute map over different behaviors
connect map pieces of environment adjacencies by connecting behaviors
result:: network of behaviors represents network of locations
TOTO, THE ROBOT:
Totos Navigation
12 Polaroid sonars
controller = collection of behaviors (Fig. 16.3)
sonar based navigation regions
low level is reactive
navigation layer
o lowest :: move safely without colliding
o next :: stay near walls & other objects
Totos Landmark Detection
basis :: pay attention to what sensing & how moving
detect things such as left-wall, right-wall, corridor, messy area
noted compass direction
noted landmarks approx length
landmark detection summary
o keep track of consistency in sonar & compass readings
o recognize landmark types (as above)
o for each, note compass direction & length
Totos Mapping Behaviors
each landmark in own behavior
behavior stored:
o type
o compass direction
o approx loc
o approx len
o code
work regardless of direction
when landmark detecting layer detected a landmark
o sent info to all map behaviors simult.
o if behvr matched, became active
o Toto knew location (localization)
if no landmark matched
o create new behavior shell & fill in info
o connect to previous one with communication link
behaviors interact with each other via messages
o warn neighbors they may be next
o if active sends inhibitory messages to others
mapping layer summary
o match received landmark against all landmark behaviors
o activate matching map behavior
o inhibit previous landmark
o when needed, create new landmark behavior
Totos Path Planning
assume a goal behavior
goal sends come here message to neighbors
neighbors pass message on adding own length to length-so-far
messages arrive at currently active behavior
it chooses shortest length path (actually direction) sent to it
similar method for finding certain landscape feature
Totos Map-Following
kept planning continually
map behaviors sent messages continously
active behavior always responded to shortest path received
useful if environment changes or path blocked
result:: active behavior map; dynamic network
efficient to compute
path finding layer summary:
o repeatedly (until goal is reached) send messages emanating from goal throughout network
o keep running total of length of each path
o at each landmark Toto chooses direction based on arrived messages
Totos capabilities
o move around safely & quickly
o detect new & known landmarks
o build map & find own position
o find shortest path to goals
achieved in real time
no intermediate layer
no hybrid controller
BBC as expressive & powerful as hybrid control
which is better?
some prefer one, some the other
CHAPTER SUMMARY:
BBS use behaviors as underlying modularity & representation
BBS enable
fast, real-time responses
- use of representation & learning
BBS use
- distributed representation
- computation over concurrent behaviors
BBS are alternative to hybrid systems
BBS have equal expressive power to hybrid systems
BBS require some expertise to program