adversarial search game playing n.
Skip this Video
Loading SlideShow in 5 Seconds..
Adversarial Search: Game Playing PowerPoint Presentation
Download Presentation
Adversarial Search: Game Playing

Loading in 2 Seconds...

  share
play fullscreen
1 / 23
Download Presentation

Adversarial Search: Game Playing - PowerPoint PPT Presentation

marinel
78 Views
Download Presentation

Adversarial Search: Game Playing

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Adversarial Search: Game Playing Reading: Chess paper

  2. Agenda • Review of game-playing approaches • A how-to example: Checkers • Your homework

  3. Minimax Algorithm • Alternate levels of tree represent MAX (computer) and MIN (opponent) • Depth first search for optimal strategy for MAX • Assume both players make optimal move at each point • Back minimax values up the tree MAX MIN

  4. Search Formulation • States: board configurations • Operators (Successor function): legal moves • Goal test: (for max) a terminal state with high utility • Utility function: numeric values for final states. E.g., win, loss, draw with values 1, -1, 0

  5. MAX MIN -1

  6. MAX MIN -1 -1

  7. MAX MIN -1 -1 -1

  8. MAX MIN -1 -1 -1 1

  9. MAX MIN -1 1 1 -1 1 -1 1

  10. MAX MIN -1 1 1 -1 1 -1 1

  11. Move: A turn by P1 and response by P2 Ply: A level in the tree corresponding to a single turn Ply is used to specify how deep a program searches

  12. Which values are necessary? X X

  13.  value is a lower-bound on the actual value of a MAX node •  value is an upper-bound on actual value of a MIN node  ≥ 3  ≤ 3

  14.  ≥ 3  > β so no need to look further  ≤ 3  ≤ 2

  15. Pruning Methods • Alpha-Beta pruning • Heuristic evaluation functions • Evaluate a board state to produce an estimate of the utility at end game • Order nodes by evaluation function results

  16. Heuristics: evaluation functions • Bound the depth of search, and use an evaluation function to estimate value of current board configurations • E.g., Othello: #white pieces - #black pieces • E.g., Chess: Value of all white pieces – Value of all black pieces • Typical values from –infinity (lost) to +infinity (won) or [-1,+1]  turn non-terminal nodes into terminal leaves And, - pruning continues to apply -> Use expert knowledge and/or machine learning

  17. Building a program to play checkers • Play the game: http://www.darkfish.com/checkers/Checkers.html • What are good strategies? http://dqsoft.com/checkerstips.html

  18. The α-β algorithm

  19. Suppose • We want to add in heuristic evaluation function • We want to specify how many ply the program will search • We want to make it specific to checkers • We want to order expansion of nodes by evaluation function