Transcript Games

Artificial Intelligence Techniques
Artificial Stupidity?
Aims of session

AI in Games
Is it a special case?

The goal of an AI programmer for a
game is to create both entertaining a
challenging opponents delivered on
time (Rabin, 2005)
Five Implications (Rabin 2005)

AI must be have no unintended
weaknesses: The AI must not



Be defeated the same way every-time.
Fail miserably
Look dumb
Five Implications (Rabin 2005)

AI must be perform within the
constraints of memory and CPU

If a game is real-time then so most the AI
Five Implications (Rabin 2005)

AI must be configurable by designer or
sometimes players.


Able to adjust the difficult of the game
level and adjust the AI
For some games, because they can be
customised by players.
Five Implications (Rabin 2005)

AI must be intelligent, yet purposely
flawed.

Present a challenge to the player, keeping
the game entertaining, but opponents
must sometimes lose to the player in a fun
way.
Five Implications (Rabin 2005)

AI must not stop the game being
shipped


AI techniques used should not put game at
risk.
Risky, new ideas must be proved early in
the development cycle.
Game Agents

Non-player characters (npcs)



Opponent
Neutral
SENSE-THINK-ACT cycle
Sense

Information about the current state of
the world.


We need something for our npc to act
upon.
What types of sense do you think can be
considered?
Think 1

Has the sensory information need to
evaluate it and then make decision
based on it.


Finite-State machines – most popular.
Search methods – good for planning

A* star
Think 2

Machine learning



Genetic Algorithms
Neural networks
Flip-flopping

Sometimes a system can get stuck within a
limited number of states if over-evaluated.
FSM

Based on example in Rabin 2005
Search – A* Pathfinding


Finds the ‘cheapest’ path through an
environment.
http://www.vision.ee.ethz.ch/~cvcourse
/astar/AStar.html
Example of A*
Flocking behaviour

Examples taken from:




http://www2.trincoll.edu/~pbrown/java/
http://www.alxvy.org/
http://www.siggraph.org/education/materi
als/HyperGraph/animation/art_life/video/3c
r.mov
http://www.aridolan.com/ofiles/eFloys.html
Reference

Rabin (2005) Introduction to Game Development Charles River Media
ISBN 1-58450-377-7




http://www2.trincoll.edu/~pbrown/java/
http://www.alxvy.org/
http://www.siggraph.org/education/materi
als/HyperGraph/animation/art_life/video/3c
r.mov
http://www.aridolan.com/ofiles/eFloys.html