Next: Bottom-Up Design
Up: Behavior
Previous: Architecture
The dynamic systems of the sensors, behaviors, and actuators can be specified and analyzed
as a set of differential equations.
Of course, the actual computations are done using difference equations.
Here, the time runs in discrete steps of
at the lowest level 0. At the higher levels the updates are done less frequently:
,
where useful choices of the subsampling factor c could be 2, 4, 8, .... In the figure, c=2 was used.
A layer z is updated in time step tzi as follows:
-
- - Sensor values:
The nzs sensor values
depend on
the readings of the nzr physical sensors
that are connected to layer z,
the previous sensor values
,
and
the previous sensor values from the layer below
,
,
,
....
In order to avoid the storage of old values in the lower level, the sensor values can be
updated from the layer below, e.g. as moving average.
-
- - Activation factors:
The
activations
of the behaviors depend on
the sensor values
,
the previous activations
,
and on the activations of behaviors in the level above
.
A higher behavior can use multiple layer-z-behaviors and
each of them can be activated by many behaviors.
For every behavior k on level (z+1) that uses a behavior j from level z there is a
term
that describes the desired change of the activation
.
Note that this term vanishes, if the upper level behavior is not active.
To determine the new activations the changes from all T-terms are
accumulated.
A product term is used to deactivate a behavior, if no corresponding higher behavior is active.
-
- - Target values:
Each behavior j can specify for each actuator k a target value
.
-
- - Actuator values:
The more active a behavior j is, the more it can influence the actuator values
.
The desired change for the actuator value azi,k is:
.
If several behaviors want to change the same actuator k, the desired updates are added:
Figure 2:
Recording of two sensors (distance and direction of the target) and two actuators (average motor speed and difference between the two motors) during a simple taxis behavior. The robot first turns towards the target, then accelerates, drives fast, slows down, and finally it stops at the target position.
 |
Next: Bottom-Up Design
Up: Behavior
Previous: Architecture
Sven Behnke
1999-10-07