Download Embedded Robotics - Thomas Braunl

Transcript
22
Behavior-Based Systems
result in a faster completion time, up to the point where too many robots
encumber each other (e.g. stopping to avoid collisions or accidentally destroying each other’s cluster), resulting in an increasing completion time [Du,
Bräunl 2003].
Figure 22.3: Cube clustering with real robots and in simulation
22.4 Behavior Framework
Behavior design
330
The objective of a behavior framework is to simplify the design and implementation of behavior-based programs for a robot platform such as the EyeBot. At its foundation is a programming interface for consistently specified
behaviors.
We adapt the convention of referring to simple behaviors as schemas and
extend the term to encompass any processing element of a control system. The
specification of these schemas is made at an abstract level so that they may be
generically manipulated by higher-level logic and/or other schemas without
specific knowledge of implementation details.
Schemas may be recursively combined either by programming or by generation from a user interface. Aggregating different schemas together enables
more sophisticated behaviors to be produced. The mechanism of arbitration
between grouped schemas is up to the system designer. When combined with
coordination schemas to select between available behaviors, the outputs of the
contributing modules can be directed to actuator schemas to produce actual
robot actions. A commonly used technique is to use a weighted sum of all
schemas that drive an actuator as the final control signal.
The framework architecture was inspired by AuRA’s reactive component
[Arkin, Balch 1997], and takes implementation cues from the TeamBots environment realization [Balch 2006].
The basic unit of the framework is a schema, which may be perceptual (for
example a sensor reading) or behavioral (for example move to a location). A
schema is defined as a unit that produces an output of a pre-defined type. In