Subsumption
Problem: How do you compose an agent from independently written behaviors?
Context: You are composing the behavior of an agent from simpler behaviors. These may define conflicting actions in response to an event.
Solution:
- Make behaviors adhere to a protocol of declaring their intention to perform an action (e.g. by setting a flag) and waiting to be selected by an arbitrator.
- An arbitrator selects the behavior to execute and suppresses the others (e.g. using a priority scheme)