Artificial Intelligence in
Game Design
AI vs. Gaming AI
• “Standard” Artificial Intelligence
• Expert Systems
• Probabilistic/Fuzzy Logic
• Robotics
• Machine Learning
–
Goal: Finding best solution to some problem
–
Characteristics:
• Expensive and time consuming to develop
AI vs. Gaming AI
Example: Chess (“Deep Blue”, IBM)
• MINMAX algorithm
• Heuristic knowledge
• Databases of opening moves, endgames
• Result:
– Played at world champion level (best solution)
– Took several minutes per move (ok in chess)
Goals of Gaming AI
•
Challenging but beatable:
– Intelligence level artificially limited
– AI not given all information
•
Problem: making AI intelligent enough!
– Players find and take advantage of limitations
Example of Gaming AI
Player coming from unknown direction
Soldier NPC
setting up ambush What to hide
Example of Gaming AI
•
Choose at random?
•
Current location of player?
•
Base on realistic criteria
– Terrain around soldier
– Past player actions, etc.
Believable NPCs
•
Opponents that offer challenge
– “Orc” characters should move realistically
– “Boss” characters should appear as intelligent as player
•
Minions that require little micromanaging
Believable NPCs
Intelligent Action:
–
Good decision making
–
Realistic movement
–
Memory of previous actions
(and possibly to improve)
Believable NPCs
Believable as Characters:
– Acts like human (or orc, dog, etc.)
– Has appropriate emotional states
– Does not always behave predictably
– Can interact with player
•
Major simplification from standard AI:
NPCs restricted to limited domain
Turing Test
Turing Test for AI Gaming
•
Does NPC act appropriately for its role in game?
– Does it act “intelligently”?
– Does it appear to have appropriate information?
– Does it behave with the “personality” we would expect?
Game AI Structure
Movement
(Action Choice)
“What actions are part of that plan?”
Example: current direction/ speed to reach next point in path
Strategy
“What are my goals?”
Example: Choosing room to move to
Tactics
(Decision Making)
“How to accomplish that goal?”
Example: Choosing path to reach room
AI Engine
World Interface/ Game State
Constraints on Gaming AI
Efficiency
–
Must consume few processor cycles
–
Must often act in real time
• Football, racing, etc.
•
Simple approaches usually best
–
Choose fast over optimal
–
Tweak game to support AI
Tradeoffs
•
Optimal solutions require complex algorithms
– Shortest path O(n2)
– Optimal plan Exponential tree size
•
Many games use greedy algorithms
Example of Simplification
•
Pac-Man
–
Algorithm: Ghosts move towards player
Black and White Game
• Creature “trained” by player by observing
player actions in different situations
• Later in game creature takes same actions
• Based entirely on decision tree learning
Example Allegiance Defense Tribe Attack
Apparent Intelligence
NPCs can appear intelligent to player even if
based on simple rules
“Theory of mind”
We tend to ascribe motives/decision making skills similar to our own to
other entities, whether this is actually happening or not!
if hitPoints < 5
then run away from player if distance to player < 2 units then attack player if player visible the run towards player else
Swarm Intelligence
• Give each NPC slightly different set of rules to create illusion of personalities
• Example: Pac-Man
if distance to player < n
then move towards player else wander at random
n is different for each ghost!
Large n : appeared “aggressive”
Role of Traditional AI
• Good decision making
– Acts like human (or orc, dog, etc.)
– Avoids predictability
• Realistic movement
– Evasion/pursuit of player
– Choosing paths through complex terrain
– Cooperation among groups
• Memory of previous actions
• Achieving goals
Decision Trees
Finite State Machines
Random/Fuzzy Machines
Robotics
Swarm Intelligence
Simple Iterative Learning