Introduction to Game AI - PowerPoint PPT Presentation

About This Presentation
Title:

Introduction to Game AI

Description:

Designing and implementing a full game from scratch can be too hard ... of the complaints that players have always had about the AI is that it cheats. ... – PowerPoint PPT presentation

Number of Views:224
Avg rating:3.0/5.0
Slides: 62
Provided by: kenneth182
Category:

less

Transcript and Presenter's Notes

Title: Introduction to Game AI


1
Introduction to Game AI
  • CS 395 Game Design
  • Spring 2003

2
Expectations on term projects
  • Designing and implementing a full game from
    scratch can be too hard
  • Exceptions Text-based interactive fiction,
    arcade games,
  • What to do?

3
Solution One Leverage
  • Were supplying toolkits and resources for some
    projects
  • Neverworld3
  • Self-explanatory simulator compiler
  • There are lots of resources around if you look
  • Game engines
  • Graphics frameworks
  • Games with available source code (e.g., FreeCiv)
  • Building on top of such software is strongly
    recommended.

4
Solution Two Extension an existing game
  • Extensions to existing games can be acceptable
    (aka mods)
  • Must involve significant design work, including
    analysis of tradeoffs and portfolio of
    experiments generated in the course of design
  • Must be substantially larger than a typical
    homework problem

5
Term Project To Do List
  • Identify your teammates early
  • Identify your project area early
  • Request for Proposals will be made very soon
    (Thursday)

6
Overview
  • Why AI is important for games
  • And why it needs improving
  • Roles for AIs in games
  • The opponent
  • Characters
  • The World
  • Example credits
  • Spatial reasoning in MOO3
  • Thanks to Kevin Dill for screenshots and example
  • Tactical decision making in first-person shooters
  • Thanks to John Laird, Mike VanLent, for their GDC
    2001 tutorial material

7
Why AI is important for games
  • Essential to the modeled world
  • NPCs of all types opponents, helpers, extras,
  • Unrealistic characters ? reduced immersion
  • Stupid, lame behaviors ? reduced fun
  • Superhuman behaviors ? reduced fun
  • Until recently, given short shrift by developers
  • Graphics ate almost all the resources
  • Cant start developing the AI until the modeled
    world was ready to run
  • AI development always late in development cycle
  • Situation rapidly changing
  • AI now viewed as helpful in selling the product
  • Still one of the key constraints on game design

8
Interview with Soren Johnson, www.gamespy.com
  • GameSpin What about the civ3 AI? One of the
    complaints that players have always had about the
    AI is that it cheats. Does it still cheat?
    Johnson The AI has been totally reworked. We
    started from scratch. We stretched out the
    difficulty levels. Chieftain is easier than it
    was in Civ II and Deity is now harder. Does the
    AI cheat? Yes, but sometimes in favor of the
    player! Below Prince level it cheats for the
    player, and above Prince level it cheats against
    the player. At Prince level there is no
    cheating.Right now, no one at Firaxis can beat
    the AI at Deity level, though we certainly expect
    players to find ways to do so within a few months
    of the game being released. When we rewrote the
    AI we threw out the old AI completely. We also
    looked at some popular tactics like ICS --
    infinite city sprawl -- that some players used to
    beat the AI in Civ II at Deity level. These won't
    work in Civ III.

9
AI in game marketing
  • It may be hard to believe that the future of
    21st century art is represented by a giant
    bipedal tiger who farts, break dances and flings
    livestock around when he's bored.
  • Review of Black and White in Salon.com, 4/10/2000
  • The most versatile 3D Batman yet, with over 500
    animated movements, special fighting moves and a
    multi-functional cape with its own A.I.
  • from www.xbox.com

10
Game flaws engendered by bad AI
  • Mindless hordes of opponents
  • Life is much, much easier thanks to random
    numbers
  • Rampant cheating by computer opponents
  • Focus on violence as principle mode of
    interaction

11
Roles for AIs in games
  • The opponent
  • Characters
  • The world

12
The opponent
  • Emphasis Outsmarting you
  • Example Classic board games
  • Questions
  • What problems do they have to solve?
  • How do they work?

13
Opponents in classic board games
  • Move generator figures out what moves are
    possible
  • Static evaluator figures out how good each move
    is, based on changes in board position
  • Search algorithms look ahead, in a simple form of
    mental simulation, to figure out the best
    alternative based counter-moves and counter-moves

14
Example
Current board position
15
Example
Your possible moves, as produced by move generator
6
18
-2
How good each move looks in terms of its
immediate results, as computed by the static
evaluator
16
Example
Your opponents possible countermoves
25
2
-100
18
12
8
What position these countermoves leave you in
17
Example
This processcan be continueduntil
resourcesrun out
Use minimax to estimate your best move
18
Minimax Example
Run static evaluatoron leaves
-98
210
108
8
22
18
-12
-40
-10
3
5
19
Minimax Example
Propagate scores upwardby taking maxwhen your
turn
18
210
8
5
-98
22
-98
210
108
8
22
18
-12
-40
-10
3
5
20
Minimax Example
Propagatescores upwardtaking minwhen
opponentsturn
18
-98
5
18
210
8
5
-98
22
-98
210
108
8
22
18
-12
-40
-10
3
5
21
Minimax Example
Select bestoption basedon deeperestimate
18
-98
5
18
210
8
5
-98
22
-98
210
108
8
22
18
-12
-40
-10
3
5
22
Search issues
  • Lots of techniques for more efficient search
  • Alpha-beta pruning, book openings, stability
    measures, conspiracy numbers
  • Basic problem is still exponential
  • Search and brute force only go so far
  • Q Why did Deep Blue win?
  • Knowledge/search tradeoff
  • Simon Chase experiments Chess experts use
    spatial memory for board positions
  • Standard patterns as encoding lessons from
    experience/deeper search?

23
Opponents in turn-based strategy games
  • Examples Many strategy war games,
    Civilization-style games
  • What problems do they have to solve?
  • How are they similar to, and different from,
    board games?

24
nuSketch Battlespace
25
(No Transcript)
26
(No Transcript)
27
(No Transcript)
28
Comic Graphs provide visualizationof
alternatives,support for AAR
29
Example from MOO3
Where should you put your next colony?
Colony
Enemy Colony
Colony
Homeworld
30
Understanding your terrain is key
Colony
Inside your empire
Enemy Colony
Colony
Homeworld
31
Understanding borders prioritizes threats
Colony
Good choice for blocking threats
Enemy Colony
Colony
Homeworld
32
Multiple ways to deal with threats
Colony
Enemy Colony
Colony
Homeworld
33
Example eTDG10 Map
34
SR Regions for eTDG10 map (hand-sketched)
35
Hard constraints from SR regions
36
Voronoi diagram for free space
37
Junctions provide seeds for open regions
38
Regions extended from seeds
39
Edges outside regions form corridor seeds
40
Combined results for eTDG10
41
The coordination problem
Telling your brigades to attack Scum Division
will generally lead to them all being slaughtered
42
The coordination problem
What if they had a richer, non-local
understanding of space?
Lack of coordination will lead them down same
path, each being wiped out one at a time, even
though a coordinated attack would have succeeded
43
The coordination problem
Visually identify paths (mobility corridors,
avenues of approach) as part of terrain analysis
Enable player to communicate intent via sketching
and language, specifying paths and
synchronization
44
Richer spatial reasoning will lead to better
opponents
45
Richer spatial reasoning will lead to better
opponents
Funnel for focusing combat power
Narrow route with no side ways out
46
Characters
  • Examples First-person shooters, adventure/action
    games
  • What problems do they have to solve?

47
The World
  • Common trick Share AI computations between
    computer characters
  • Pathfinding and navigation
  • Awareness of player actions and alignment
  • Strategic thinking
  • Examples More than you might think

48
Types of Behavior to Capture
  • Wander randomly if dont see or hear an enemy.
  • When see enemy, attack
  • When hear an enemy, chase enemy
  • When die, respawn
  • When health is low and see an enemy, retreat
  • Extensions
  • When see power-ups during wandering, collect
    them.

49
Execution Flow of an AI Engine
Finite-state machines Decision trees Neural
nets Fuzzy logic Rule-based systems Planning
systems
?
50
Conflicting Goals for AI in Games
Goal Driven
Reactive
Human Characteristics
Knowledge Intensive
Low CPU Memory Usage
Fast Easy Development
51
Complexity
  • Complexity of Execution
  • How fast does it run as more knowledge is added?
  • How much memory is required as more knowledge is
    added?
  • Complexity of Specification
  • How hard is it to write the code?
  • As more knowledge is added, how much more code
    needs to be added?

52
Expressiveness of Specification
  • What can easily be written?
  • Propositional
  • Statements about specific objects in the world
    no variables
  • Jim is in room7, Jim has the rocket launcher, the
    rocket launcher does splash damage.
  • Go to room8 if you are in room7 through door14.
  • Predicate Logic
  • Allows general statement using variables
  • All rooms have doors
  • All splash damage weapons can be used around
    corners
  • All rocket launchers do splash damage
  • Go to a room connected to the current room.

53
Example FSM
Events EEnemy Seen SSound Heard DDie
Spawn D
54
Example FSM
Events EEnemy Seen SSound Heard DDie
Problem No transition from attack to chase
55
Example FSM - Better
Events EEnemy Seen SSound Heard DDie
56
Example FSM with Retreat
Attack-ES E,-D,S,-L
Retreat-S -E,-D,S,L
Attack-E E,-D,-S,-L
S
L
-S
L
Events EEnemy Seen SSound Heard DDie LLow
Health Each feature with N values can require N
times as many states
E
-L
-E
E
Retreat-ES E,-D,S,L
-L
E
Wander-L -E,-D,-S,L
-L
E
L
-S
-L
S
L
Retreat-E E,-D,-S,L
Wander -E,-D,-S,-L
-E
-E
E
D
D
Chase -E,-D,S,-L
D
D
Spawn D (-E,-S,-L)
S
57
Hierarchical FSM
  • Expand a state into its own FSM

Attack
Wander
E/-E
Chase
S/-S
Die
Spawn
58
Non-Deterministic HierarchicalFSM (Markov Model)
Wander
No enemy
Attack
Start
Die
Start
59
Implementation
  • Compile into an array of state-name, event
  • state-name arraystate-name, event
  • Uses state-name to call execution logic
  • Add buffers to queue up events in case get
    simultaneous events

60
FSM Evaluation
  • Advantages
  • Very fast one array access
  • Can be compiled into compact data structure
  • Dynamic memory current state
  • Static memory state diagram array
    implementation
  • Can create tools so non-programmer can build
    behavior
  • Non-deterministic FSM can make behavior
    unpredictable
  • Disadvantages
  • Number of states can grow very fast
  • Exponentially with number of events s2e
  • Number of arcs can grow even faster as2
  • Propositional representation
  • Difficult to put in pick up the better powerup,
    attack the closest enemy

61
References
  • Web references
  • www.gamasutra.com/features/19970601/build_brains_i
    nto_games.htm
  • csr.uvic.ca/mmania/machines/intro.htm
  • www.erlang/se/documentation/doc-4.7.3/doc/design_p
    rinciples/fsm.html
  • www.microconsultants.com/tips/fsm/fsmartcl.htm
  • http//www.qrg.nwu.edu/papers/Files/How_QSR_can_im
    prove_strategy_game_AIs_A3ISS_2001.PDF
  • Deloura, Game Programming Gems, Charles River
    Media, 2000, Section 3.0 3.1, pp. 221-248.
Write a Comment
User Comments (0)
About PowerShow.com