Game Playing in Artificial Intelligence CMT310 --- Mwendwa Kivuva 1014638 Catholic University of Eastern Africa March 2009...
Areas of Interest <ul><li>Definitions </li></ul><ul><ul><li>History, Overview </li></ul></ul><ul><li>Concepts </li></ul><u...
DEFINITION <ul><li>Game artificial intelligence  refers to techniques used in computer and video games to produce the illu...
Definition cont … <ul><li>AI has continued to improve, with aims set on a player being unable to tell the difference betwe...
Why are games relevant to AI? <ul><li>Games are fun!  </li></ul><ul><li>They are limited, w ell-defined rules </li></ul><u...
State Space <ul><li>Coarser-grain than Tactical AI (Very Large space search) </li></ul><ul><li>Problem solving consists of...
The Illusion of Human Behaviour <ul><li>Game AI is about the illusion of human behaviour </li></ul><ul><ul><li>Smart, to a...
Chess: 23-Mar-2009 Artificial Intelligence - CMT310 Kasparov 5’10”  176 lbs  34 years 50 billion neurons 2 pos/sec Extensi...
Computer Games Types <ul><li>Strategy Games </li></ul><ul><ul><li>Real-Time Strategy (RTS) </li></ul></ul><ul><ul><li>Turn...
More complicated games <ul><li>Most card games (e.g. Hearts, Bridge, etc.) and Scrabble  </li></ul><ul><ul><li>non-determi...
The functionalism of game AI <ul><li>Turing test ‘1.1’ </li></ul><ul><ul><li>Simulated behaviour </li></ul></ul><ul><li>Be...
History and overview <ul><li>Minimax </li></ul><ul><li>- Developed by John von Neumann in 1928 </li></ul><ul><li>- This al...
<ul><li>Examples:   </li></ul><ul><li>First Person Shooters  (Halflife, Deus Ex, Unreal Tournament): “Suicidal” AI is repl...
CONCEPTS Technologies / techniques used <ul><li>Machine learning </li></ul><ul><li>Waypoint Graph </li></ul><ul><li>Contin...
Techniques / Technologies used <ul><li>Machine Learning  - also known as ML, is a field of artificial intelligence which f...
Game setup <ul><li>Two players: A and B </li></ul><ul><li>A moves first and they take turns until the game is over. Winner...
How to Play a Game by Searching <ul><li>General Scheme </li></ul><ul><ul><li>Consider all legal moves, each of which will ...
The Minimax Rule 23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>MiniMax rule:  Decision Making in Multi-agent System...
Minimax Procedure 23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>Consider a 2-ply (two step) game: </li></ul><ul><li...
MinMax - Overview <ul><li>MinMax the heart of almost  every  computer board game  </li></ul><ul><li>Applies to games where...
Minimax Algorithm 23-Mar-2009 Artificial Intelligence - CMT310 function  MINIMAX-DECISION( state )  returns  an action inp...
Properties of minimax <ul><li>Complete?  Yes (if tree is finite) </li></ul><ul><li>Optimal?  Yes (against an optimal oppon...
Alpha-Beta Pruning <ul><li>Eliminating a branch without consideration is called  pruning </li></ul><ul><ul><li>Want to vis...
  Pruning Example 23-Mar-2009 Artificial Intelligence - CMT310    3 MAX MIN =3 3 12 8 2 X X    2 14    14 5    5 2 ...
Alpha-Beta Pruning <ul><li>Traverse the search tree in depth-first order </li></ul><ul><li>For each MAX node n, α(n)=maxim...
Alpha-Beta Algorithm 1 MAX Ply 23-Mar-2009 Artificial Intelligence - CMT310 function  ALPHA-BETA-SEARCH( state )  returns ...
Alpha-Beta Algorithm II MIN Ply 23-Mar-2009 Artificial Intelligence - CMT310 function  MIN-VALUE( state,    ,   )  retur...
α-β <ul><li>Properties </li></ul><ul><li>Pruning  does not  affect final result </li></ul><ul><li>Good move ordering impro...
Minimax for nondeterministic games <ul><li>For min node, compute min of children. </li></ul><ul><li>For chance node, compu...
Deterministic games in practice <ul><li>Othello:   Human champions refuse to compete against computers, who are too good. ...
23-Mar-2009 Artificial Intelligence - CMT310 APPLICATIONS <ul><li>Training Simulators </li></ul><ul><ul><li>Effective trai...
23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>Human-level AI </li></ul><ul><li>- Every person is an expert on  </li...
23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>In his work on CHINOOK, Schaeffer had to develop new parallel algorit...
23-Mar-2009 Artificial Intelligence - CMT310 To adapt hierarchical task-network planning techniques for use in BRIDGE GAME...
Game AI Major Challenges <ul><li>Resources </li></ul><ul><ul><ul><li>- Realism in computer games focused on graphics </li>...
<ul><li>Human Level Intelligence </li></ul><ul><li>- Human level behavior will require AI </li></ul><ul><li>- We currently...
TRENDS of Game AI <ul><li>Scripting Languages.  This are   AI Frameworks, Engines, and Integrated Development Environments...
Changes in Games Development <ul><li>Content the real issue  </li></ul><ul><ul><li>Most games now content led not tech led...
Changes in Gaming <ul><li>Games were linear sequences of challenges </li></ul><ul><ul><li>Challenge itself as play-value/e...
Changes in Game Fidelity <ul><li>Graphics: huge leaps in 20 years </li></ul><ul><li>Scale and density of environments incr...
Changing Game Players <ul><li>providing more multi-human gaming opportunities </li></ul><ul><ul><li>Teaming up with/agains...
The Industry Now <ul><li>Consolidation: Fewer games, bigger budgets </li></ul><ul><li>Harder to get projects approved </li...
<ul><li>Present </li></ul><ul><li>- Broadband and online multiplayer games </li></ul><ul><li>- Highly immersive AI to cont...
THE FUTURE OF GAME AI <ul><li>Intelligent Landscape </li></ul><ul><li>- Sims weren’t smart at all </li></ul><ul><li>- Inst...
Future of AI games cont … <ul><li>World Fillers </li></ul><ul><ul><li>Massively multi-player games need to be populated by...
Summary <ul><li>Games are to AI as grand prix racing is to automobile design </li></ul><ul><li>Games are fun to work on (a...
Philosophical Food for thought <ul><li>Drew McDermott:  </li></ul><ul><ul><li>&quot;Saying Deep Blue doesn't really think ...
Bibliography <ul><li>Peterson, Ivars. “Silicon Champions of the Game.” </li></ul><ul><li>Wookcock, Steve. “Game AI: The St...
Upcoming SlideShare
Loading in …5
×

Gameplaying in artificial intelligence

1,424 views

Published on

Published in: Engineering, Technology, Spiritual
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,424
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
79
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Coarse-grained systems consist of fewer, larger components than fine-grained systems; a coarse-grained description of a system regards large subcomponents while a fine-grained description regards smaller components of which the larger ones are composed. Data are communicated are infrequent, after larger amounts of computation
  • Action: Quake, Thief RPG: Baldur’s Gate, Neverwinter Nights, Oblivion Strategy: WarCraft, Command&amp;Conquer, Civilization Sports: FIFA, Racing Simulations: The Sims, Tycoon Games, SimCity Adventure Games: Text, Graphical Puzzle Games: Tetris
  • Screenshots from Harry Potter &amp; The Chamber of Secrets and Final Fantasy XII
  • Gameplaying in artificial intelligence

    1. 1. Game Playing in Artificial Intelligence CMT310 --- Mwendwa Kivuva 1014638 Catholic University of Eastern Africa March 2009 [email_address] www.transworldafrica.com
    2. 2. Areas of Interest <ul><li>Definitions </li></ul><ul><ul><li>History, Overview </li></ul></ul><ul><li>Concepts </li></ul><ul><li>Applications </li></ul><ul><li>Current trends in this field </li></ul><ul><li>NB </li></ul><ul><li>One of the most studied and most interesting areas of Artificial Intelligence is game playin g. They are Fun, and HARD to create </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    3. 3. DEFINITION <ul><li>Game artificial intelligence refers to techniques used in computer and video games to produce the illusion of intelligence in the behavior of non-player characters (NPCs) </li></ul><ul><li>Hacks and cheats are acceptable and, in many cases, the computer abilities must be toned down to give human players a sense of fairness. E.g racing and shooting </li></ul><ul><li>Emphasis of game AI is on developing rational agents to match or exceed human performance </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    4. 4. Definition cont … <ul><li>AI has continued to improve, with aims set on a player being unable to tell the difference between computer and human players - remember Turin test? </li></ul><ul><li>A game must ‘feel’ natural </li></ul><ul><ul><li>Obey laws of the game </li></ul></ul><ul><ul><li>Characters aware of the environment </li></ul></ul><ul><ul><li>Path finding (A* algorithm) </li></ul></ul><ul><ul><li>Decision making </li></ul></ul><ul><ul><li>Planning </li></ul></ul><ul><li>Game ‘bookkeeping’, scoring </li></ul><ul><li>~50% of game project time is spent on building AI </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    5. 5. Why are games relevant to AI? <ul><li>Games are fun! </li></ul><ul><li>They are limited, w ell-defined rules </li></ul><ul><li>They provide advanced, existing test-beds for developing several ideas and techniques that are useful elsewhere. </li></ul><ul><li>They are one of the few domains that allow us to build agents. </li></ul><ul><li>Studying games teaches us how to deal with other agents trying to foil our plans </li></ul><ul><li>Huge state spaces – Games are highly complex ! Usually, there is not enough time to work out the perfect move. E.g Go & Chess </li></ul><ul><li>Nice, clean environment with clear criteria for success </li></ul><ul><li>Game playing is considered an intelligent human activity. </li></ul><ul><li>AI has always been interested in abstract games. </li></ul><ul><li>Games present an ideal environment where hostile agents may compete. </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    6. 6. State Space <ul><li>Coarser-grain than Tactical AI (Very Large space search) </li></ul><ul><li>Problem solving consists of: (from Russel and Norvig, Ch. 3) </li></ul><ul><ul><li>Goal formulation </li></ul></ul><ul><ul><li>Problem formulation </li></ul></ul><ul><ul><li>Search </li></ul></ul><ul><ul><li>Solution </li></ul></ul><ul><ul><li>Execution </li></ul></ul>23-Mar-2009 Artificial Intelligence - CMT310
    7. 7. The Illusion of Human Behaviour <ul><li>Game AI is about the illusion of human behaviour </li></ul><ul><ul><li>Smart, to a certain extent ( Creativity ) </li></ul></ul><ul><ul><li>Non-repeating behaviour </li></ul></ul><ul><ul><li>Unpredictable but rational decisions </li></ul></ul><ul><ul><li>Emotional influences ( Irrationality, ‘Personality’) </li></ul></ul><ul><ul><li>Body language to communicate emotions </li></ul></ul><ul><ul><li>Being integrated in the environment </li></ul></ul><ul><li>Game AI needs various computer science disciplines </li></ul><ul><ul><li>Knowledge Based Systems </li></ul></ul><ul><ul><li>Machine Learning </li></ul></ul><ul><ul><li>Multi-agent Systems </li></ul></ul><ul><ul><li>Computer Graphics & Animation </li></ul></ul><ul><ul><li>Data Structures </li></ul></ul>23-Mar-2009 Artificial Intelligence - CMT310
    8. 8. Chess: 23-Mar-2009 Artificial Intelligence - CMT310 Kasparov 5’10” 176 lbs 34 years 50 billion neurons 2 pos/sec Extensive Electrical/chemical Enormous Height Weight Age Computers Speed Knowledge Power Source Ego Deep Blue 6’ 5” 2,400 lbs 4 years 32 RISC processors + 256 VLSI chess engines 200,000,000 pos/sec Primitive Electrical None 1997: Deep Blue wins by 3 wins, 1 loss, and 2 draws
    9. 9. Computer Games Types <ul><li>Strategy Games </li></ul><ul><ul><li>Real-Time Strategy (RTS) </li></ul></ul><ul><ul><li>Turn-Based Strategy (TBS) </li></ul></ul><ul><ul><li>Helicopter view </li></ul></ul><ul><li>Role-Playing Games (RPG) </li></ul><ul><ul><li>Single-Player </li></ul></ul><ul><ul><li>Multi-Player (MMORPG) </li></ul></ul><ul><li>Action Games </li></ul><ul><ul><li>First-Person Shooters (FPS) </li></ul></ul><ul><ul><li>First-Person Sneakers </li></ul></ul><ul><li>Sports Games </li></ul><ul><li>Simulations </li></ul><ul><li>Adventure Games </li></ul><ul><li>Puzzle Games </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    10. 10. More complicated games <ul><li>Most card games (e.g. Hearts, Bridge, etc.) and Scrabble </li></ul><ul><ul><li>non-deterministic </li></ul></ul><ul><ul><li>lacking in perfect information. </li></ul></ul><ul><li>Cooperative games </li></ul><ul><li>Real-time strategy games (lack alternating moves). e.g. Warcraft </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    11. 11. The functionalism of game AI <ul><li>Turing test ‘1.1’ </li></ul><ul><ul><li>Simulated behaviour </li></ul></ul><ul><li>Believability </li></ul><ul><ul><li>Human-like or plausible robot/alien </li></ul></ul><ul><li>Fidelity </li></ul><ul><ul><li>Non-cheating </li></ul></ul><ul><li>Fiction - not (to much) autonomy! </li></ul><ul><ul><li> Pseudo-autonomy: limited knowledge, ‘personal’ goals etc. </li></ul></ul>23-Mar-2009 Artificial Intelligence - CMT310
    12. 12. History and overview <ul><li>Minimax </li></ul><ul><li>- Developed by John von Neumann in 1928 </li></ul><ul><li>- This algorithm is used extensively in game theory </li></ul><ul><li>Samuel’s learning program (1959) </li></ul><ul><li>- The program learns through the manipulation of the summation of heuristics. </li></ul><ul><li>- If the program wins, it raises high heuristic values and lowers low ones. If it loses, it does the opposite. </li></ul><ul><li>1960s </li></ul><ul><li>- Progress and success in Game AI. </li></ul><ul><li>- Creating a successful AI meant coming up with the right rules for it to follow. </li></ul><ul><li>1970s-1980s </li></ul><ul><li>- Transition to games as entertainment </li></ul><ul><li>- Using search based AI to emulate entertaining characters would be unnatural and clumsy </li></ul><ul><li>- Game play is based more on skill than on rules </li></ul><ul><li>Early 1990s </li></ul><ul><li>- Increased realism becomes the primary focus of the game industry </li></ul><ul><li>- A rift develops between the developers of popular games and AI researchers </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    13. 13. <ul><li>Examples: </li></ul><ul><li>First Person Shooters (Halflife, Deus Ex, Unreal Tournament): “Suicidal” AI is replaced by more sophisticated AI that appears to care about its own life. It coordinates attacks, calls for backup, and retreats when hurt. Friendly AI can even be given orders by the player. </li></ul><ul><li>Real Time Strategy : AI in the broad scheme doesn’t evolve much in RTS games. Individual unit scripts are added in to some games, but in the over all picture, the AI still simply pours units at an enemy until it is defeated. Perhaps this is because of the foreignness of the RTS paradigm, or maybe it really is the best strategy. Most successful human players abide by this “rush” strategy. </li></ul>23-Mar-2009 Artificial Intelligence - CMT310 Late 1990s - To add intrigue, developers look again to AI
    14. 14. CONCEPTS Technologies / techniques used <ul><li>Machine learning </li></ul><ul><li>Waypoint Graph </li></ul><ul><li>Continuous Control </li></ul><ul><li>Cellular Automata </li></ul><ul><li>Case Based Reasoning </li></ul><ul><li>Blend Database </li></ul><ul><li>Dynamic Programming </li></ul><ul><li>Finite State Machines </li></ul><ul><li>Fuzzy Logic </li></ul><ul><li>Influence Mapping </li></ul><ul><li>Hierarchical Task Network </li></ul><ul><li>A* Algorithms </li></ul><ul><li>Ragdoll </li></ul><ul><li>Teleo Reactive Programs </li></ul><ul><li>Scripting </li></ul><ul><li>Motion Graph </li></ul><ul><li>Motion Capture </li></ul><ul><li>Navigation Mesh </li></ul><ul><li>Navigation Graph </li></ul><ul><li>Artificial Neural Networks </li></ul><ul><li>Policy Search </li></ul><ul><li>Path Planning </li></ul><ul><li>Proportional Derivative Controller </li></ul><ul><li>Path Planning </li></ul><ul><li>Path Finding </li></ul><ul><li>Path Following </li></ul><ul><li>Steering </li></ul><ul><li>Semantic Markup </li></ul><ul><li>Reinforcement Learning </li></ul><ul><li>Alpha-Beta pruning </li></ul><ul><li>MiniMax </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    15. 15. Techniques / Technologies used <ul><li>Machine Learning - also known as ML, is a field of artificial intelligence which focuses on developing algorithms that can learn to predict, classify, control, or solve problems </li></ul><ul><li>Semantic Markup - The process of annotating raw information with meta-data that explains its meaning to the AI. </li></ul><ul><li>Reinforcement Learning - Taking past data that the AI has recorded and using it to influence behavior and choices made in the future. </li></ul><ul><li>Waypoint Graph - is a collection of waypoints linked up to form the information about what areas of a level can be traversed by an actor during path finding. </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    16. 16. Game setup <ul><li>Two players: A and B </li></ul><ul><li>A moves first and they take turns until the game is over. Winner gets award, loser gets penalty. </li></ul><ul><li>Games as search: </li></ul><ul><ul><li>Initial state: e.g. board configuration of chess </li></ul></ul><ul><ul><li>Successor function: list of (move, state) pairs specifying legal moves. </li></ul></ul><ul><ul><li>Terminal test: Is the game finished? </li></ul></ul><ul><ul><li>Utility function: Gives numerical value of terminal states. E.g. win (+1), lose (-1) and draw (0) in tic-tac-toe </li></ul></ul><ul><li>A uses search tree to determine next move. </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    17. 17. How to Play a Game by Searching <ul><li>General Scheme </li></ul><ul><ul><li>Consider all legal moves, each of which will lead to some new state of the environment (‘board position’) </li></ul></ul><ul><ul><li>Evaluate each possible resulting board position </li></ul></ul><ul><ul><li>Pick the move which leads to the best board position. </li></ul></ul><ul><ul><li>Wait for your opponent’s move, then repeat. </li></ul></ul><ul><li>Key problems </li></ul><ul><ul><li>Representing the ‘board’ </li></ul></ul><ul><ul><li>Representing legal next boards </li></ul></ul><ul><ul><li>Evaluating positions </li></ul></ul><ul><ul><li>Looking ahead </li></ul></ul>23-Mar-2009 Artificial Intelligence - CMT310
    18. 18. The Minimax Rule 23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>MiniMax rule: Decision Making in Multi-agent Systems </li></ul><ul><li>Perfect play for deterministic, perfect-information games. </li></ul><ul><li>Idea: make the move for player MAX which has the most benefit assuming that MIN makes the best move for MIN in response </li></ul><ul><li>This is computed by a recursive process </li></ul><ul><ul><li>The backed-up value of each node in the tree is determined by the values of its children </li></ul></ul><ul><ul><li>For a MAX node, the backed-up value is the maximum of the values of its children (i.e. the best for MAX ) </li></ul></ul><ul><ul><li>For a MIN node, the backed-up value is the minimum of the values of its children (i.e. the best for MIN ) </li></ul></ul>
    19. 19. Minimax Procedure 23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>Consider a 2-ply (two step) game: </li></ul><ul><li>Max want’s largest outcome --- Min want’s smallest . </li></ul><ul><li>Start with the current position as a MAX node. </li></ul><ul><li>Expand the game tree a fixed number of ply (half-moves). </li></ul><ul><li>Apply the evaluation function to the leaf positions. </li></ul><ul><li>Calculate back-up up values bottom-up. </li></ul><ul><li>Pick the move which was chosen to give the MAX value at the root. </li></ul>
    20. 20. MinMax - Overview <ul><li>MinMax the heart of almost every computer board game </li></ul><ul><li>Applies to games where: </li></ul><ul><ul><li>Players take turns </li></ul></ul><ul><ul><li>Underlying assumption </li></ul></ul><ul><ul><ul><li>Opponent acts rationally </li></ul></ul></ul><ul><ul><li>Have perfect information </li></ul></ul><ul><ul><ul><li>Chess, Checkers, Tactics </li></ul></ul></ul><ul><li>But can work for games without perfect information or chance e.g Poker, Monopoly, Dice </li></ul><ul><li>Can work in real-time (i.e- not turn based) with timer ( iterative deepening , later) </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    21. 21. Minimax Algorithm 23-Mar-2009 Artificial Intelligence - CMT310 function MINIMAX-DECISION( state ) returns an action inputs: state , current state in game v  MAX-VALUE( state ) return the action in SUCCESSORS( state ) with value v function MIN-VALUE( state ) returns a utility value if TERMINAL-TEST( state ) then return UTILITY( state ) v  ∞ for a,s in SUCCESSORS( state ) do v  MIN( v, MAX-VALUE(s) ) return v function MAX-VALUE( state ) returns a utility value if TERMINAL-TEST( state ) then return UTILITY( state ) v  -∞ for a,s in SUCCESSORS( state ) do v  MAX( v, MIN-VALUE(s) ) return v
    22. 22. Properties of minimax <ul><li>Complete? Yes (if tree is finite) </li></ul><ul><li>Optimal? Yes (against an optimal opponent) </li></ul><ul><li>Time complexity? O(b m ) </li></ul><ul><li>Space complexity? O(bm) (depth-first exploration) </li></ul><ul><li>For chess, b ≈ 35, m ≈ 100 for &quot;reasonable&quot; games  exact solution completely infeasible </li></ul><ul><li>The avg branching factor for chess is 35. A game may involve 50 moves per player, so the search tree has 35 100 nodes. Even eliminating duplicates, there are 10 40 unique legal states! Assuming successors can be generated in .33 nanoseconds, it would take 10 22 centuries to do an exhaustive search!. The universe is only 10 10 years old </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    23. 23. Alpha-Beta Pruning <ul><li>Eliminating a branch without consideration is called pruning </li></ul><ul><ul><li>Want to visit as many board states as possible ( Can be used for entire search or cutoff search ) </li></ul></ul><ul><ul><ul><li>Want to avoid whole branches (prune them) </li></ul></ul></ul><ul><ul><ul><ul><li>Because they can’t possibly lead to a good score </li></ul></ul></ul></ul><ul><li>A way to improve the performance of the Minimax Procedure </li></ul><ul><li>Basic idea: “If you have an idea which is surely bad, don’t take the time to see how truly awful it is” ~ Pat Winston </li></ul>23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>We don’t need to compute the value at this node. </li></ul><ul><li>No matter what it is it can’t effect the value of the root node . (branch cannot produce better score than a node you have already evaluated) </li></ul>2 7 1 =2 >=2 <=1 ?
    24. 24.  Pruning Example 23-Mar-2009 Artificial Intelligence - CMT310  3 MAX MIN =3 3 12 8 2 X X  2 14  14 5  5 2 =2 =3
    25. 25. Alpha-Beta Pruning <ul><li>Traverse the search tree in depth-first order </li></ul><ul><li>For each MAX node n, α(n)=maximum child value found so far </li></ul><ul><ul><li>Starts with –  </li></ul></ul><ul><ul><li>Increases if a child returns a value greater than the current α(n) </li></ul></ul><ul><ul><li>Lower-bound on the final value </li></ul></ul><ul><li>For each MIN node n, β(n)=minimum child value found so far </li></ul><ul><ul><li>Starts with +  </li></ul></ul><ul><ul><li>Decreases if a child returns a value less than the current β(n) </li></ul></ul><ul><ul><li>Upper-bound on the final value </li></ul></ul><ul><li>MAX cutoff rule: At a MAX node n, cut off search if α(n)>=β(n) </li></ul><ul><li>MIN cutoff rule: At a MIN node n, cut off search if β(n)<=α(n) </li></ul><ul><li>Carry α and β values down in search </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    26. 26. Alpha-Beta Algorithm 1 MAX Ply 23-Mar-2009 Artificial Intelligence - CMT310 function ALPHA-BETA-SEARCH( state ) returns an action inputs: state , current state in game v  MAX-VALUE( state, - ∞ , + ∞ ) return the action in SUCCESSORS( state ) with value v function MAX-VALUE( state,  ,  ) returns a utility value if TERMINAL-TEST( state ) then return UTILITY( state ) v  - ∞ for a,s in SUCCESSORS( state ) do v  MAX( v, MIN-VALUE( s ,  ,  )) if v ≥  then return v   MAX(  , v ) return v
    27. 27. Alpha-Beta Algorithm II MIN Ply 23-Mar-2009 Artificial Intelligence - CMT310 function MIN-VALUE( state,  ,  ) returns a utility value if TERMINAL-TEST( state ) then return UTILITY( state ) v  + ∞ for a,s in SUCCESSORS( state ) do v  MIN( v, MAX-VALUE( s ,  ,  )) if v ≤  then return v   MIN(  , v ) return v
    28. 28. α-β <ul><li>Properties </li></ul><ul><li>Pruning does not affect final result </li></ul><ul><li>Good move ordering improves effectiveness of pruning </li></ul><ul><li>With &quot;perfect ordering,&quot; time complexity = O(b m/2 ) </li></ul><ul><ul><li> doubles depth of search </li></ul></ul><ul><li>A simple example of the value of reasoning about which computations are relevant (a form of metareasoning ) </li></ul><ul><li>Effectiveness </li></ul><ul><li>Guaranteed to compute same root value as Minimax </li></ul><ul><li>Worst case: no pruning, same as Minimax (O(b d )) </li></ul><ul><li>Best case: when each player’s best move is the first option examined, you examine only O(b d/2 ) nodes, allowing you to search twice as deep! </li></ul><ul><li>For Deep Blue, alpha-beta pruning reduced the average branching factor from 35-40 to 6. </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    29. 29. Minimax for nondeterministic games <ul><li>For min node, compute min of children. </li></ul><ul><li>For chance node, compute weighted average of children. </li></ul><ul><li>For max node, compute max of children. </li></ul>23-Mar-2009 Artificial Intelligence - CMT310 3
    30. 30. Deterministic games in practice <ul><li>Othello: Human champions refuse to compete against computers, who are too good. </li></ul><ul><li>Go: Human champions refuse to compete against computers, who are too bad. In Go, b > 300, so most programs use pattern knowledge bases to suggest plausible moves. </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    31. 31. 23-Mar-2009 Artificial Intelligence - CMT310 APPLICATIONS <ul><li>Training Simulators </li></ul><ul><ul><li>Effective training often requires thousands of people </li></ul></ul><ul><ul><li>Computer generated stand-ins can cut costs </li></ul></ul><ul><ul><li>Military simulations </li></ul></ul><ul><ul><li>Management simulations </li></ul></ul><ul><ul><li>Economic simulations </li></ul></ul><ul><li>Education </li></ul><ul><ul><li>Software for pre-school children </li></ul></ul><ul><li>Entertainment </li></ul><ul><li>Virtual Environments </li></ul><ul><ul><li>Simulated worlds allows AI researchers to concentrate on algorithms instead of sensors </li></ul></ul><ul><ul><li>Again, computer generated robots are cheaper than actual robots </li></ul></ul>
    32. 32. 23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>Human-level AI </li></ul><ul><li>- Every person is an expert on </li></ul><ul><li>human-level intelligence </li></ul><ul><li>- Testing of AI is easy </li></ul><ul><li>Movies </li></ul><ul><li>- Crowd scenes </li></ul><ul><li>- Flocking behavior </li></ul><ul><li>- Realistic Movement </li></ul>Applications
    33. 33. 23-Mar-2009 Artificial Intelligence - CMT310 <ul><li>In his work on CHINOOK, Schaeffer had to develop new parallel algorithms for information storage and retrieval. Those algorithms are now finding use in DNA sequencing and other areas. </li></ul><ul><li>The early research on the alpha-beta search algorithm was useful in establishing a foundation for AI theories of heuristic search, and these theories have been useful in many areas of AI </li></ul><ul><li>Tesauro used backgammon as a test bed for the development of learning algorithms that have inspired work by other researchers on several other problems. Examples include </li></ul><ul><ul><ul><li>- Job-shop scheduling for the NASA space shuttle, </li></ul></ul></ul><ul><ul><ul><li>- Elevator dispatch control </li></ul></ul></ul><ul><ul><ul><li>- Cellphone channel assignment </li></ul></ul></ul><ul><ul><ul><li>- Assembly-line manufacturing </li></ul></ul></ul>Applications
    34. 34. 23-Mar-2009 Artificial Intelligence - CMT310 To adapt hierarchical task-network planning techniques for use in BRIDGE GAME, ways for the planner to perform complex numeric calculations, plan for multiple agents, consult external information sources, and reason about uncertain information were developed. These same techniques are now proving useful in generating and evaluating manufacturing process plans Applications
    35. 35. Game AI Major Challenges <ul><li>Resources </li></ul><ul><ul><ul><li>- Realism in computer games focused on graphics </li></ul></ul></ul><ul><ul><ul><li>- Advanced graphics requires many CPU cycles </li></ul></ul></ul><ul><ul><ul><li>- Recent advances in computer hardware have someone alleviated this issue. </li></ul></ul></ul><ul><li>Deadlines </li></ul><ul><li>- Game engine must be developed before AI can be tested </li></ul><ul><li>- AI programmers often have to compromise to meet deadlines </li></ul><ul><li>Over Intelligence </li></ul><ul><li>- Perfect AI would be easier to code </li></ul><ul><li>- It would lack believability and not be fun. </li></ul><ul><li>- Human-level AI should quit, surrender, or run away- even fight to the end. </li></ul><ul><li>Research and Development </li></ul><ul><li>- Lack of cohesion between AI research community and game developers </li></ul><ul><li>- AI in modern computer games seems trivial to AI researchers </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    36. 36. <ul><li>Human Level Intelligence </li></ul><ul><li>- Human level behavior will require AI </li></ul><ul><li>- We currently have only limited behavior </li></ul><ul><li>- Human level intelligence is really hard to create and </li></ul><ul><li>we still do not know how to achieve it </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    37. 37. TRENDS of Game AI <ul><li>Scripting Languages. This are AI Frameworks, Engines, and Integrated Development Environments e.g Lua, WoW, CryENGINE </li></ul><ul><li>Cooperative AI. cooperating groups of enemies . </li></ul><ul><li>Sandbox Games. A sandbox means that the whole game becomes more of a simulation where AI plays an important role. </li></ul><ul><li>Hierarchical Planners. the enemy behaviors is handled using an AI planner. </li></ul><ul><li>Games for All - widening accessibility. games outstripped combined sales of music and video products in 2008 </li></ul><ul><li>Open Worlds - use of a free-roaming environment, pursuit of exploration is popular with developers and has proved highly successful. </li></ul><ul><li>Co-op Mode - a second player becomes the main character's sidekick </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    38. 38. Changes in Games Development <ul><li>Content the real issue </li></ul><ul><ul><li>Most games now content led not tech led </li></ul></ul><ul><ul><li>Data driven everything in order to get it all done </li></ul></ul><ul><ul><li>Getting the programmer out of the way </li></ul></ul><ul><li>Team scale impacting process and creativity </li></ul><ul><ul><li>Getting everyone on same page </li></ul></ul><ul><ul><li>Creatively collaboration at a large scale </li></ul></ul><ul><li>Growing gap between top-sellers and the rest </li></ul><ul><li>Growing budgets and team size </li></ul><ul><li>Independent Developers of games are now in market </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    39. 39. Changes in Gaming <ul><li>Games were linear sequences of challenges </li></ul><ul><ul><li>Challenge itself as play-value/entertainment </li></ul></ul><ul><ul><li>“ World” abstracted and simplified </li></ul></ul><ul><li>Current trends </li></ul><ul><ul><li>High world fidelity, and growing </li></ul></ul><ul><ul><li>Open-ended worlds, player choice/customization </li></ul></ul><ul><ul><li>New aspects of play </li></ul></ul>23-Mar-20009 Artificial Intelligence - CMT310
    40. 40. Changes in Game Fidelity <ul><li>Graphics: huge leaps in 20 years </li></ul><ul><li>Scale and density of environments increasing </li></ul><ul><li>Physics fidelity obviously much better </li></ul><ul><li>No conversation systems </li></ul><ul><li>Inadequate NPC AI </li></ul>23-Mar-20009 Artificial Intelligence - CMT310
    41. 41. Changing Game Players <ul><li>providing more multi-human gaming opportunities </li></ul><ul><ul><li>Teaming up with/against other humans </li></ul></ul><ul><ul><li>Large environments </li></ul></ul><ul><ul><li>Changing environments </li></ul></ul><ul><li>Single-player games containing more movie-inspired moments, more watching </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    42. 42. The Industry Now <ul><li>Consolidation: Fewer games, bigger budgets </li></ul><ul><li>Harder to get projects approved </li></ul><ul><li>Risk management central to business </li></ul><ul><li>Large public companies revenue driven, need big sales numbers regardless of development costs </li></ul><ul><li>Licensing and sequeling established IP’s </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    43. 43. <ul><li>Present </li></ul><ul><li>- Broadband and online multiplayer games </li></ul><ul><li>- Highly immersive AI to contrast real players </li></ul><ul><li>Examples: </li></ul><ul><li>Multiplayer Games (Battlefield 1942): The AI in this game is outright pitiful. While it excels at pathfinding, using tanks, planes, ships, and other implements, it is simply not human-like behavior. Among other things, the AI lacks a reasonable strategy. Instead of sending all of its troops to the front lines, it distributes them equally throughout the map. It often has trouble deciding whether it should shoot an enemy or simply lie down and stand up repeatedly. </li></ul><ul><li>Immersive AI (Halo): Because of the plotline in this game, the friendly AI acts largely autonomously. While the human player is the “leader,” this only extends to the AI’s protection, not its obedience. This is also reflected in the opponent AI. When attacking a group of AI controlled enemies, if the leader is removed first, the remaining force becomes less effective and less organized. </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    44. 44. THE FUTURE OF GAME AI <ul><li>Intelligent Landscape </li></ul><ul><li>- Sims weren’t smart at all </li></ul><ul><li>- Instead, surrounding objects contained instructions for use </li></ul><ul><li>- AI finds the object that makes them happy and follows instructions </li></ul><ul><li>Fuzzy AI </li></ul><ul><li>- Rule based AI is not sufficient to model human intelligence </li></ul><ul><li>- Uncertain algorithms such as Genetic Algorithms and Neural Networks are the future </li></ul><ul><li>Immersive game space </li></ul><ul><li>- Instead of creating a reality, the AI borrows from the real world </li></ul><ul><li>- Will a game AI be the first to pass the Turing Test? </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    45. 45. Future of AI games cont … <ul><li>World Fillers </li></ul><ul><ul><li>Massively multi-player games need to be populated by non-player-character (NPC) agents. </li></ul></ul><ul><ul><li>Key problem: The world is persistent. </li></ul></ul><ul><ul><li>NPCs are needed to; </li></ul></ul><ul><ul><ul><li>Sell things and make things. </li></ul></ul></ul><ul><ul><ul><li>Play key roles in story telling. </li></ul></ul></ul><ul><li>Better Opposition </li></ul><ul><li>Opponents that provide a real, dynamic, challenge. </li></ul><ul><li>Not just foot soldiers, but generals, political manipulators etc </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    46. 46. Summary <ul><li>Games are to AI as grand prix racing is to automobile design </li></ul><ul><li>Games are fun to work on (and dangerous) </li></ul><ul><li>They illustrate several important points about AI </li></ul><ul><li>– perfection is unattainable, must approximate </li></ul><ul><li>– it is a good idea to think about what to think about </li></ul><ul><li>– uncertainty constrains the assignment of values to states </li></ul>23-Mar-2009 Artificial Intelligence - CMT310
    47. 47. Philosophical Food for thought <ul><li>Drew McDermott: </li></ul><ul><ul><li>&quot;Saying Deep Blue doesn't really think about chess is like saying an airplane doesn't really fly because it doesn't flap its wings” </li></ul></ul><ul><li>Q. If aliens came to Earth and challenged us to chess… </li></ul><ul><ul><li>Would you send Deep Blue or Kasparov into battle? </li></ul></ul>23-Mar-2009 Artificial Intelligence - CMT310
    48. 48. Bibliography <ul><li>Peterson, Ivars. “Silicon Champions of the Game.” </li></ul><ul><li>Wookcock, Steve. “Game AI: The State of the Industy” </li></ul><ul><li>“ AI in Gaming” Generation5.org . http://www.generation5.org/app_game.shtml . </li></ul><ul><li>McCarthy, John. “Arthur Samuel: Pioneer in Machine Learning.” Stanford Computer Science Computer History </li></ul><ul><li>Laird, John and Michael van Lent. “Human-level AI’s Killer Application: Interactive Computer Games.” </li></ul><ul><li>Laird, John. “Bridging the Gap Between Developers and Researchers.” </li></ul><ul><li>Johnson, Steven. “Wild Things.” </li></ul><ul><li>from http://www. aigamedev .com </li></ul><ul><li>Game Artificial Intelligence. Wikipedia, the free Encyclopedia </li></ul>23-Mar-2009 Artificial Intelligence - CMT310

    ×