Reactive planning

In artificial intelligence, reactive planning denotes a group of techniques for action selection by autonomous agents.

First, they operate in a timely fashion and hence can cope with highly dynamic and unpredictable environments.

For example, subsumption architecture consists of layers of interconnected behaviors, each actually a finite-state machine which acts in response to an appropriate input.

Other systems may use trees, or may include special mechanisms for changing which goal / rule subset is currently most important.

An important part of any distributed action selection algorithms is a conflict resolution mechanism.

This is a mechanism for resolving conflicts between actions proposed when more than one rules' condition holds in a given instant.

See the paper of Damian Isla (2005) for an example of ASM of computer game bots, which uses hierarchical FSMs.

First, for a designer, it is much more complicated to describe behaviour by a network comparing with if-then rules.

Typical reactive planning algorithm just evaluates if-then rules or computes the state of a connectionist network.

The simplest form of reactive steering is employed in Braitenberg vehicles, which map sensor inputs directly to effector outputs, and can follow or avoid.

More complex systems are based on a superposition of attractive or repulsive forces that effect on the agent.

This kind of steering is based on the original work on boids of Craig Reynolds.

In cases of more complicated terrain (e.g. a building), however, steering must be combined with path-finding (as e.g. in Milani [1]), which is a form of planning .