Textbook Outline

Mataric - Robotics Primer

 

Chapter 11. Control Architectures

    

  Control architecture – provides guiding principles  and constraints for organizing a robot’s control system

  Computer architecture – a set of principles for designing computers out of a collection of well-understood building blocks.

  Location of control – hardware good for fast specialized uses

– software good for flexible more general programs

  Best language – there is no best robot programming language; in general all languages are Turing universal

  Main control architectures

– Deliberative control

– Reactive control

– Hybrid control

–       Behavior-based control

   

  Robot, task & environment considerations

– Sensor noise?

– Actuator noise?

– environment :: changing or static?

– How quickly sense?

– How quickly act?

– Need remember past?

– Need forecast future?

– Need improve behavior?

– Need learn?

   

  Parameters along which architectures differ::

– Time – how fast things happen; components speed symmetry or not

– Modularity – what are components & how interact

– Representation – what know & retain

   

  TIME: referred to as time-scale

– how quickly robot must respond to environment vs. how quickly sense & act

– Deliberative – looks into future; works on long time-scale

– Reactive – responds to immediate, real time demands; works on short time-scale

– Hybrid – combines long of delib & short of reactive

– Behavior-based – works to bring scales together

   

  MODULARITY: refers to how control system is divided into components (modules) and how modules interact

– Deliberative – multiple modules working in sequence; output of one is input of next

– Reactive – multiple modules active in parallel but can send messages to each other

– Hybrid – three main modules : delib, react, in-between; work in parallel & talk to each other

– Behavior-based – work in parallel & talk to each other

   

  REPRESENTATION: hard to summarize; see next chapter

   

  CHAPTER SUMMARY:

– Control is hardware and/or software; the more complex, the more software

– Control architectures – provide guiding principles for designing programs & control alogorithms

– No best programming language; special purpose languages facilitate particular architectures

– Architectures differ with respect to time, modularity, representation

– Main architectures : deliberative, reactive, hybrid, behavior-based