Recent Changes - Search:

AI in games


Products


xaitment


edit SideBar

Introduction

What is Artificial Intelligence?

Basically, AI is the field of computer science dealing with the formalization and automation of intelligent behavior. The term intelligence is generally used in this context to describe the computational part of the ability to achieve goals in a dynamic environment. Research distinguishes between “strong AI” and “weak AI”. Strong AI aims to model an intelligence that, just like human intelligence, is able to be creative and has self-awareness,but up to now, strong AI has never been achieved. In contrast, weak AI only simulates intelligent behavior using a combination of different methods to create new adaptive and reasonable patterns of behavior. That’s what we need for computer games! AI is more than an algorithm. To model a natural bot behavior several methods have to be combined, e.g. logical world representation, semantics and ontology, search, heuristics, pattern recognition, inference, common sense knowledge and reasoning, machine learning, planning, epistemology and many more.

What does AI in computer games stand for?

There are many definitions of what an AI should do in computer games. Usually everything that is needed to make a bot move, to let it do something, is called AI. First of all, a NPC has to move, thus it needs a representation of the map, as well as a pathfinding and a movement system to reach a destination – as a single character or in a formation/team. Predefined scripts and finite state machines that are used to implement NPC behaviours, are often called AI. Playing the right sounds and animations is also considered to be AI. This is what we call standard AI. High-level AI is used to model adaptive NPC behaviors, to make them learn, plan, team up - to compete against a human player in an intelligent and lifelike way.

xaitment provides both – standard AI and high-level AI

The range of solutions xaitment offers covers the full spectrum of standard AI products, from basics like fully automatic navigation mesh (NavMesh) creation and pathfinding (xaitMap), over improved movement for bots and formations in RTS, FPS and adventure games etc. (xaitMove²) to an advanced hierarchical probabilistic finite state machine (xaitControl). These products can be used independently from each other, right out of the box. Our high-level AI includes at least two of our released products; xaitKnow for semantic world representation and xaitThink for rule-based behavior modeling. Our high-level AI products also comprise features like team building, coordination/cooperation, decision making, machine learning, AI planning, search, heuristics, pattern recognition, inference and reasoning, dynamic storytelling, dialog systems, and many more.

How do our products integrate into a game development project?

Based on the level geometry xaitMap automatically generates navigation meshes – before or for dynamic updates at runtime of the game. xaitMap also includes a pathfinding module that uses a navigation mesh as input data. xaitMove² needs information about the map (e.g. a NavMesh) and pathfinding module. Both can be provided by xaitMap or generated alternatively by other game components. xaitMove² provides complex movement functions and behaviors for single bots and formations using simple call-back functions. The game itself, but other external middleware as well, offers functions for playing sounds, animations, and for physics etc.. xaitControl as an advanced hierarchical FSM is able to use all these functions to implement the game mechanics as well as complex NPC behavior. It also offers the possibility to easily combine high-level AI with standard AI without the need of writing code.

Edit - History - Print - Recent Changes - Search
Page last modified on November 12, 2008, at 01:54 PM