Game Development

JavaScript EditorFree JavaScript Editor     Ajax Editor 



Main Page
  Previous Section Next Section

Applying Subsumption to Tactics

The process used to build a subsumption architecture is one commonly used in nouvelle AI, namely incremental development with testing. In fact, Brooks introduced this approach to robot design—similar to evolutionary design in the software engineering community.

That said, the subsumption architecture itself is not particularly simple to develop with incremental development, because it requires planned design. Without foresight, the entire architecture may need to be rebuilt if the wrong bottom layer is used. Because the flow of control is very linear, this imposes restrictions on the possible configurations.

A good complementary design strategy is needed to increase the likelihood of success initially, and to get around the limitations of the arbitration mechanism. The essence of the task is to sort the behaviors from generically applicable ones to the most specific. Understanding the general behaviors as applicable by default and the specific behaviors as exceptions helps interpret the role of the arbitration; when an exception to the default behavior is necessary, the subsumption architecture detects this situation and overrides the default.

In practice, we design the defensive behaviors as highest priority, and then the offensive behaviors, and finally the neutral ones. These are organized as in Table 45.1, with the highest priority behaviors on top.

Table 45.1. Layers of Behaviors That Are Activated with a Condition, Overriding All Other Behaviors with a Lower Priority

Priority

Behavior

Condition

7

Retreat

Low chances of winning

6

Evade

Incoming projectile

5

Hunt

High chances of success

4

Attack

Enemy present

3

Gather

Low health

2

Investigate

Possible enemy

1

Explore

Always

      Previous Section Next Section
    



    JavaScript EditorAjax Editor     JavaScript Editor