JavaScript EditorFree JavaScript Editor     Ajax Editor 

Main Page
  Previous Section Next Section

Criteria for Motion

The challenge of navigation is to generate a sequence of almost insignificant steps, which collectively form meaningful paths. Human navigation has many different properties that make it unique and desirable. Ideally, we would like to reproduce these with our AI system. The following list of properties for human-level movement can be taken as priorities for the development of the AI, and criteria for its evaluation:

  • Realistic— Perhaps the most important facet of movement is producing human- or animal-like NPCs. Because movement is the most visible action, special care needs to be taken to increase realism.

  • Efficient— Computer game programmers often pride themselves in saving processing time in critical sections of code. A system providing functionality as important and widespread as motion will need to be economical with processor cycles.

  • Reliable— As discussed in the preceding section, there are many different kinds of situations that a game character could get into. The module taking care of movement must guarantee that nothing will go wrong in the various scenarios.

  • Purposeful— Last but not least, movement is about the satisfaction of desires, the achievement of goals in space. An AI module that is not capable of fulfilling these requests is of little use!

As expected, these different properties may be in conflict with each other, making an AI navigation system even more challenging to develop. Things would be too easy otherwise, wouldn't they? During the design and implementation, issues will arise which compromise some of the requirements in favor of others. Therefore, it can be in a good idea to establish priorities.

Historically speaking, efficiency has been the primary concern of game developers. As better hardware implied more complex-level designs, the movement then needed to become reliable to handle these situations without any problems occurring. Not necessarily reaching the ultimate reliability, practice has shifted to now focus on realism. With regards to purposefulness, games have varying needs from cannon fodder to competent military units, making it hard to extract trends for this attribute.

Other applications of AI that require movement, such as robotics, have taken different approaches (mainly emphasizing reliability). Game developers can benefit from the experience accumulated in these fields over the years, so we'll make a point of looking into viable solutions when appropriate.

      Previous Section Next Section

    JavaScript EditorAjax Editor     JavaScript Editor