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 & rep’n throughout

– no intermediate layer

– Interaction dynamics

– behavior inside a robot may not match externally observed behavior

– external behaviors come from interaction of internal behaviors & env’t

– 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       hybrid’s 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:

– Toto’s 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

– Toto’s 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 landmark’s 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

– Toto’s 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

– Toto’s 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

– Toto’s 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

–       Toto’s 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