front-end / back-end: AIMRetention
| Retention
inherits from: AIMSteeringBehaviour
| SteeringBehaviour
In general, made decisions are based on the data of the current update step. If you want to include the data of past update steps as well, this behaviour is for you. The Retention behaviour blends the objective data of the last AI updates into the current objectives using linear interpolation with Memory
being the interpolation parameter. The greater the Memory
is set, the longer it takes for written objective values to vanish away over time (next AI updates).
This component has got the following specific properties.
Property | Description |
---|---|
TargetObjectives | Determines which objectives are influenced by this behaviour. Make sure that these indices point to valid objectives of the corresponding Context. |
Memory | The blending parameter of the applied linear interpolation. Memory * old + (1 - Memory ) * current = new. |
The following figure illustrates the effect of Retention on objectives values.
Figure 1: Linear interpolation of objective values as it is applied for Retention
.
This behaviour is considered a processing behaviour. Thus, it is intended be executed after steering behaviours (an Order
of 1000 is pre-configured).
Note, a high Memory
value means that only a small portion of the currently calculated objective values are used to find a decent movement solution, which means that the agent become more stubborn.