Many factors are involved in the decision of a particular model. Notably, it should correspond as closely as possible to the principles of embodiment explained in Chapter 2, allowing the AI to benefit from its advantages. The implication is that both senses and actions are relative to the body's position in space. This is not a hindrance because obstacle avoidance—as described in the requirements—can be performed locally; there is a direct mapping from the inputs to the outputs that produces satisfactory behavior.
The main concerns when selecting the right interface between the AI and the environment can be summarized in three points:
Consistency— The information provided to the animat about its surroundings must be consistent with what really happens in the environment. If the divergence is too great, the resulting behaviors will be nonsensical (for instance, running into walls), or the AI will be too computationally expensive. Applying biologically inspired errors (for instance, errors in distance perception of obstacles) is a luxury we'll have once the system works.
Flexibility— During the design, keeping the specification as customizable as possible ensures that similar problems (for instance, wall following) can be handled with the same interfaces, and that there is freedom in the choice of solutions.
Efficiency— When it comes to movement, it is crucial for performance to be optimal. This implies keeping the exchange of data to a minimum (for instance, information about free space), and limiting the number of queries so that they can be highly optimized.
In the design of both inputs and outputs, compromises must be made regarding these issues. Often, there is a good balance to be found.