Stavros Vassos
Email: stavrosv@di.uoa.gr
Webpage: stavros.lostre.org
The course aims to provide an introduction to the techniques currently used for the decision making of non-player characters (NPCs) in commercial video games, and show how a simple technique from academic artificial intelligence research can be employed to advance the state-of-the art.
We will start with a quick overview of the interaction between academic
AI and video games through game-inspired AI competitions, and then focus
on the decision making performed by non-player characters (NPCs) in
commercial video games. We will cover some widely used techniques, namely
Finite State Machines (FSMs) and Behavior Trees (BTs), as well as
Goal-Oriented Action Planning (GOAP) that has recently received attention.
Goal-Oriented Action Planning is based on STRIPS planning, a fundamental
academic AI technique that has advanced significally in the last decade.
Given a description of an initial state, a goal condition, and a set of
actions that transform states according to preconditions and effects,
STRIPS planning is concerned with finding a suitable strategy that achieves
the goal as a sequence of actions.
After a quick overview of some of the most influential state-based
techniques for finding solutions to STRIPS problems using heuristic search,
we will turn our attention to how STRIPS planning can be applied in real
video games. I will discuss some preliminary results on employing STRIPS
planning in two video game scenarios, and give a quick overview on how to
get started with two powerful game engines: Unity3D (an emerging
standard to indie game development) and Source Engine by Valve (which is
used in the Half-life game series).
In the last part of the course I will discuss approaches of planning that
go beyond STRIPS, and possibilities for student projects in the area of
AI and video games.
Overview of video-game inspired competitions used for AI research.
Approaches for the decision making of non-player characters (NPC)
in commercial video games: Finite State Machines (FSMs), Behavior
trees (BTs), and Goal Oriented Action Planning (GOAP).
Slides: part1
part2.
Introduction to STRIPS planning.
Finding solutions to STRIPS planning problems using state-space
uninformed/informed search.
Slides: part1
part2.
The Planning Domain Definition Language (PDDL) and use of an
award-winning PDDL planner to solve problems in the puzzle game
Sokoban.
Available programming resources for PDDL parsing and searching for
a solution.
Slides: part1
PDDL related material: pddl.
Planning graphs and the GRAPHPLAN procedure for finding solutions
to STRIPS planning problems.
Domain independent heuristics based on a relaxed STRIPS problem:
the h_add, h_max, and h^2 heuristics. Domain independent heuristics
based on planning graphs: the FF heuristic.
Slides: part1
part2.
Preliminary results on employing STRIPS planning in two video
game scenarios: i) SimpleFPS: A PDDL benchmark for tactical planning
in first-person shooter (FPS) games ii) SmartWorkers: A case of STRIPS
planning in real-time strategy (RTS) games.
Introduction to programming with Unity3D and Source Engine (Valve).
Slides: part1
part2.
Brief overview of planning beyond STRIPS: Incomplete information,
nondeterministic actions, sensing, execution monitoring.
Introduction to the high-level agent programming language Golog.
Slides: part1
part2.
Stavros Vassos received his B.Sc. degree from the Electrical and Computer Engineering Department of the National Technical University of Athens in Greece in 2002. He received his M.Sc. and Ph.D degree from the Computer Science Department of the University of Toronto in 2005, 2009 under the supervision of Professor Hector J. Levesque. In 2008 he recieved the AAAI Outstanding Paper Honorable Mention Award for his joint paper with Professor H. J. Levesque "On the Progression of Situation Calculus Basic Action Theories: Resolving a 10-year-old Conjecture". His research interests lie mainly in the area of Artificial Intelligence, in particular logic-based approaches for Knowledge Representation and Reasoning, Reasoning about Action and Change, as well as Intelligent Agent Design. Since 2010 he is working as a research associate at the University of Athens in Greece in projects related to the Semantic Web and applications of Artificial Intelligence in commercial games.