Game Programming
A. Avinash, Ph.D.,
Assistant Professor
School of Computer Science and Engineering (SCOPE)
Vellore Institute of Technology (VIT), Chennai
Introduction
• This is to help people understand how a
particular area relates to other areas within
this increasingly growing field, how the
reader can benefit from knowledge created
in other areas and how the reader can
make her own research more relevant to
other areas.
• To facilitate and foster synergies across
active research areas we place all key
studies into a taxonomy with the hope of
developing a common understanding and
vocabulary within the field of AI and
games.
• Game AI research from three high-level
perspectives
2
1.
Methods(Comput
er) Perspective
3
• The first panoramic view of game AI we
present is centered around the AI
methods used in the field.
• For each of the game AI areas
investigated we have identified the AI
methods that are dominant or secondary
in the area. While the dominant methods
represent the most popular techniques
used in the literature, secondary
methods represent techniques that have
been considered from a substantial
volume of studies but are not dominant.
• Evolutionary computation is a dominant
method for playing to win, for generating
content (in an assisted/mixed-initiative
fashion or autonomously), and for
modeling players; it has also been
considered for the design of believable
play (play for experience) research.
Supervised learning is of substantial use
across the game AI areas and appears to 4
• Behavior authoring, on the other hand,
is useful solely for game-playing.
Reinforcement learning and
unsupervised learning find limited use
across the game AI areas, respectively,
being dominant only on AI that plays to
win and player behavior modeling.
Finally, tree search finds use primarily in
playing to win and it is also considered
—as a form of planning—for controlling
play for experience and in
computational narrative
5
2. End
User(Human
)
Perspective
6
• The second panoramic view of the game AI
field puts an emphasis on the end user of the
AI technology or general outcome (product or
solution). Towards that aim we investigate
three core dimensions of the game AI field
and classify all game AI areas with respect to
the process AI follows, the game context
under which algorithms operate and, finally,
the end user that benefits most from the
resulting outcome.
• The classes identified under the above
dimensions are used as the basis of the
taxonomy we propose. The first dimension
(phrased as a question) refers to the AI
process: In general, what can AI do within
games?
• We identify two potential classes in this
dimension: AI can model or generate. For
instance, an artificial neural network can
model a playing pattern, or a genetic
algorithm can generate game assets. Given 7
that AI can model or generate the second
• The two possible classes here are content and
behavior. For example, AI can model a
players’ affective state, or generate a level.
• Finally, the third dimension is the end user: AI
can model, or generate, either content or
behavior; but, for whom? The classes under
the third dimension are the designer, the
player, the AI researcher, and the
producer/publisher
8
3. Player –
Game
Interaction
Perspective
9
• The third and final panoramic perspective of
game AI presented in this section couples
the computational processes with the end
user within a game and views all game AI
areas through a human-computer interaction
—or, more accurately, a player-game
interaction—lens.
• Putting an emphasis on player experience
and behavior, player modeling directly
focuses on the interaction between a player
and the game context.
• Game content is influenced primarily by
research on autonomous procedural content
generation. In addition to other types of
content, most games feature NPCs, the
behavior of which is controlled by some form
of AI.
• NPC behavior is informed by research in
NPCs that play the game to win or any other
playing-experience purpose such as
believability.
• Looking at the player-game interaction
10
perspective of game AI it is obvious that the