JavaScript EditorFree JavaScript Editor     Ajax Editor 

Main Page
  Previous Section Next Section


Once designed, the animat performs relatively well. In fact, the great advantage of systems based on subsumption—and other highly explicit AI techniques—is that they are very predictable; they execute the behaviors as expected.

The concept is so simple that little debugging is required; the conditions used to inhibit the outputs require testing for validity. The planned design actually works better than anticipated, mainly because of the fact that we're dealing with layers rather than AFSMs.

The subsumption architecture is relatively powerful, enabling the designers to achieve models that would be difficult with finite-state automata (for which many transitions are needed). However, despite being a hierarchy, subsumption has a linear flow of control. Together with this, the inhibition is done by Boolean conditions, so behaviors are triggered crisply. This is sufficiently realistic, but leaves room for improvement using smoother transitions.

As designed, the system does not separate the different components of tactical behaviors. It may be more appropriate to have different high-level controls for movement, aiming, and gathering, for example. This is not a problem with subsumption itself, but rather the way it was applied to this problem.

Practical Demo

The animat demonstrating these principles is called Inhiboy. It has a subsumption architecture with seven behaviors that inhibit ones with lower priorities. The result is a static deathmatch strategy that favors cowardly behaviors over brave attacks. The code and demos, as well as a guide for evaluating the behaviors, can be found on the web site at

      Previous Section Next Section

    JavaScript EditorAjax Editor     JavaScript Editor