Adversarial Search. Hal Daumé III. Computer Science University of Maryland CS 421: Introduction to Artificial Intelligence 9 Feb 2012

Similar documents
Announcements. CS 188: Artificial Intelligence Fall Local Search. Hill Climbing. Simulated Annealing. Hill Climbing Diagram

Local Search. Hill Climbing. Hill Climbing Diagram. Simulated Annealing. Simulated Annealing. Introduction to Artificial Intelligence

CSE 573: Artificial Intelligence Autumn 2010

CS 188: Artificial Intelligence Spring Announcements

Game Playing State of the Art

CS 188: Artificial Intelligence Spring Game Playing in Practice

Announcements. CS 188: Artificial Intelligence Spring Game Playing State-of-the-Art. Overview. Game Playing. GamesCrafters

CS 188: Artificial Intelligence Spring 2007

CS 188: Artificial Intelligence. Overview

Artificial Intelligence

Announcements. Homework 1. Project 1. Due tonight at 11:59pm. Due Friday 2/8 at 4:00pm. Electronic HW1 Written HW1

Adversarial Search. Read AIMA Chapter CIS 421/521 - Intro to AI 1

Game Playing State-of-the-Art

Game Playing State-of-the-Art. CS 188: Artificial Intelligence. Behavior from Computation. Video of Demo Mystery Pacman. Adversarial Search

CSE 573: Artificial Intelligence

Announcements. CS 188: Artificial Intelligence Fall Today. Tree-Structured CSPs. Nearly Tree-Structured CSPs. Tree Decompositions*

CS 188: Artificial Intelligence

CS 188: Artificial Intelligence

Artificial Intelligence

CS 5522: Artificial Intelligence II

Game Playing State-of-the-Art CSE 473: Artificial Intelligence Fall Deterministic Games. Zero-Sum Games 10/13/17. Adversarial Search

Artificial Intelligence

CSE 473: Artificial Intelligence Autumn 2011

Adversarial Search. Human-aware Robotics. 2018/01/25 Chapter 5 in R&N 3rd Ø Announcement: Slides for this lecture are here:

CSE 473: Artificial Intelligence. Outline

Game playing. Chapter 5. Chapter 5 1

Adversarial Search 1

Adversarial Search Lecture 7

Programming Project 1: Pacman (Due )

CSE 473: Artificial Intelligence Fall Outline. Types of Games. Deterministic Games. Previously: Single-Agent Trees. Previously: Value of a State

Project 1. Out of 20 points. Only 30% of final grade 5-6 projects in total. Extra day: 10%

CS 380: ARTIFICIAL INTELLIGENCE ADVERSARIAL SEARCH. Santiago Ontañón

Game playing. Chapter 6. Chapter 6 1

CS 380: ARTIFICIAL INTELLIGENCE

Outline. Game playing. Types of games. Games vs. search problems. Minimax. Game tree (2-player, deterministic, turns) Games

Artificial Intelligence. Topic 5. Game playing

CSE 473: Ar+ficial Intelligence

Games vs. search problems. Game playing Chapter 6. Outline. Game tree (2-player, deterministic, turns) Types of games. Minimax

Game playing. Chapter 6. Chapter 6 1

Game playing. Outline

Games vs. search problems. Adversarial Search. Types of games. Outline

Artificial Intelligence, CS, Nanjing University Spring, 2018, Yang Yu. Lecture 4: Search 3.

Game Playing. Philipp Koehn. 29 September 2015

Game playing. Chapter 5, Sections 1{5. AIMA Slides cstuart Russell and Peter Norvig, 1998 Chapter 5, Sections 1{5 1

Game playing. Chapter 5, Sections 1 6

Adversarial search (game playing)

CSE 40171: Artificial Intelligence. Adversarial Search: Games and Optimality

Game Playing. Dr. Richard J. Povinelli. Page 1. rev 1.1, 9/14/2003

Adversarial Search. CMPSCI 383 September 29, 2011

Game Playing: Adversarial Search. Chapter 5

Lecture 5: Game Playing (Adversarial Search)

Today. Types of Game. Games and Search 1/18/2010. COMP210: Artificial Intelligence. Lecture 10. Game playing

COMP219: COMP219: Artificial Intelligence Artificial Intelligence Dr. Annabel Latham Lecture 12: Game Playing Overview Games and Search

Game Playing. Why do AI researchers study game playing? 1. It s a good reasoning problem, formal and nontrivial.

Game Playing State-of-the-Art. CS 188: Artificial Intelligence. Behavior from Computation. Adversarial Games. Deterministic Games.

Games CSE 473. Kasparov Vs. Deep Junior August 2, 2003 Match ends in a 3 / 3 tie!

CS 188: Artificial Intelligence

Game-Playing & Adversarial Search

Artificial Intelligence Adversarial Search

COMP219: Artificial Intelligence. Lecture 13: Game Playing

Adversarial Search. Chapter 5. Mausam (Based on slides of Stuart Russell, Andrew Parks, Henry Kautz, Linda Shapiro) 1

ADVERSARIAL SEARCH. Chapter 5

Adversarial Search. Rob Platt Northeastern University. Some images and slides are used from: AIMA CS188 UC Berkeley

CS 771 Artificial Intelligence. Adversarial Search

Ch.4 AI and Games. Hantao Zhang. The University of Iowa Department of Computer Science. hzhang/c145

Adversarial Search and Game- Playing C H A P T E R 6 C M P T : S P R I N G H A S S A N K H O S R A V I

Intuition Mini-Max 2

Adversarial Search. Soleymani. Artificial Intelligence: A Modern Approach, 3 rd Edition, Chapter 5

Last update: March 9, Game playing. CMSC 421, Chapter 6. CMSC 421, Chapter 6 1

Adversarial Search and Game Playing

CS 331: Artificial Intelligence Adversarial Search II. Outline

Artificial Intelligence. Minimax and alpha-beta pruning

Game-playing AIs: Games and Adversarial Search FINAL SET (w/ pruning study examples) AIMA

Adversarial Search (Game Playing)

Game Playing AI Class 8 Ch , 5.4.1, 5.5

Adversarial Search. Robert Platt Northeastern University. Some images and slides are used from: 1. CS188 UC Berkeley 2. RN, AIMA

Today. Nondeterministic games: backgammon. Algorithm for nondeterministic games. Nondeterministic games in general. See Russell and Norvig, chapter 6

CS 4700: Foundations of Artificial Intelligence

Games and Adversarial Search

CITS3001. Algorithms, Agents and Artificial Intelligence. Semester 2, 2016 Tim French

6. Games. COMP9414/ 9814/ 3411: Artificial Intelligence. Outline. Mechanical Turk. Origins. origins. motivation. minimax search

Adversarial Search. Chapter 5. Mausam (Based on slides of Stuart Russell, Andrew Parks, Henry Kautz, Linda Shapiro, Diane Cook) 1

Adversarial Search and Game Playing. Russell and Norvig: Chapter 5

CSE 40171: Artificial Intelligence. Adversarial Search: Game Trees, Alpha-Beta Pruning; Imperfect Decisions

Set 4: Game-Playing. ICS 271 Fall 2017 Kalev Kask

Artificial Intelligence Search III

CS440/ECE448 Lecture 9: Minimax Search. Slides by Svetlana Lazebnik 9/2016 Modified by Mark Hasegawa-Johnson 9/2017

Adversarial Search (a.k.a. Game Playing)

ADVERSARIAL SEARCH. Today. Reading. Goals. AIMA Chapter Read , Skim 5.7

ADVERSARIAL SEARCH. Today. Reading. Goals. AIMA Chapter , 5.7,5.8

Ar#ficial)Intelligence!!

Games (adversarial search problems)

Adversarial Search: Game Playing. Reading: Chapter

Game-Playing & Adversarial Search Alpha-Beta Pruning, etc.

Adversarial Search Aka Games

Outline. Game Playing. Game Problems. Game Problems. Types of games Playing a perfect game. Playing an imperfect game

CSEP 573 Adversarial Search & Logic and Reasoning

Unit-III Chap-II Adversarial Search. Created by: Ashish Shah 1

ARTIFICIAL INTELLIGENCE (CS 370D)

Adversarial Search. CS 486/686: Introduction to Artificial Intelligence

Transcription:

1 Hal Daumé III (me@hal3.name) Adversarial Search Hal Daumé III Computer Science University of Maryland me@hal3.name CS 421: Introduction to Artificial Intelligence 9 Feb 2012 Many slides courtesy of Dan Klein, Stuart Russell, or Andrew Moore

2 Hal Daumé III (me@hal3.name) Announcements None

3 Hal Daumé III (me@hal3.name) Adversarial Search [DEMO: mystery pacman]

4 Hal Daumé III (me@hal3.name) Game Playing State-of-the-Art Checkers: Chinook ended 40-year-reign of human world champion Marion Tinsley in 1994. Used an endgame database defining perfect play for all positions involving 8 or fewer pieces on the board, a total of 443,748,401,247 positions. Checkers is now solved! Chess: Deep Blue defeated human world champion Gary Kasparov in a six-game match in 1997. Deep Blue examined 200 million positions per second, used very sophisticated evaluation and undisclosed methods for extending some lines of search up to 40 ply. Othello: human champions refuse to compete against computers, which are too good. Go: human champions refuse to compete against computers, which are too bad. In go, b > 300, so most programs use pattern knowledge bases to suggest plausible moves. Pacman: unknown

5 Hal Daumé III (me@hal3.name) GamesCrafters http://gamescrafters.berkeley.edu/

6 Hal Daumé III (me@hal3.name) Game Playing Many different kinds of games! Axes: Examples? Deterministic, 1 player, perfect information? Deterministic or stochastic? Deterministic, 1 player, imperfect information? One, two or more players? Perfect information Deterministic, (can you >1 see player, the state)? perfect information? Deterministic, >1 player, imperfect information? Want algorithms Stochastic, for calculating 1 player, perfect a strategy information? (policy) which recommends a move in each state Stochastic, 1 player, imperfect information? Stochastic, >1 player, perfect information? Stochastic, >1 player, imperfect information? http://u.hal3.name/ic.pl?q=game

7 Hal Daumé III (me@hal3.name) Deterministic Games Many possible formalizations, one is: States: S (start at s 0 ) Players: P={1...N} (usually take turns) Actions: A (may depend on player / state) Transition Function: SxA S Terminal Test: S {t,f} Terminal Utilities: SxP R Solution for a player is a policy: S A

8 Hal Daumé III (me@hal3.name) Deterministic Single-Player? Deterministic, single player, perfect information: Know the rules Know what actions do Know when you win E.g. Freecell, 8-Puzzle, Rubik s cube it s just search! Slight reinterpretation: Each node stores a value: the best outcome it can reach This is the maximal outcome of its children Note that we don t have path sums as before (utilities at end) After search, can pick move that leads to best node lose win lose

9 Hal Daumé III (me@hal3.name) Deterministic Two-Player E.g. tic-tac-toe, chess, checkers Minimax search A state-space search tree Players alternate Each layer, or ply, consists of a round of moves Choose move to position with highest minimax value = best achievable utility against best play Zero-sum games One player maximizes result The other minimizes result max 8 2 5 6 min

10 Hal Daumé III (me@hal3.name) Tic-tac-toe Game Tree

11 Hal Daumé III (me@hal3.name) Minimax Example

12 Hal Daumé III (me@hal3.name) Minimax Search

13 Hal Daumé III (me@hal3.name) Minimax Properties Optimal against a perfect player. Otherwise? Time complexity? O(b m ) max Space complexity? O(bm) min For chess, b 35, m 100 Exact solution is completely infeasible But, do we need to explore the whole tree? 10 10 9 100

14 Hal Daumé III (me@hal3.name) Resource Limits Cannot search to leaves Depth-limited search Instead, search a limited depth of tree Replace terminal utilities with an eval function for non-terminal positions 4 max -2 min 4 min -1-2 4 9 Guarantee of optimal play is gone More plies makes a BIG difference [DEMO: limiteddepth] Example: Suppose we have 100 seconds, can explore 10K nodes / sec So can check 1M nodes per move α-β reaches about depth 8 decent chess program????

15 Hal Daumé III (me@hal3.name) Evaluation Functions Function which scores non-terminals Ideal function: returns the utility of the position In practice: typically weighted linear sum of features: e.g. f 1 (s) = (num white queens num black queens), etc.

16 Hal Daumé III (me@hal3.name) Evaluation for Pacman [DEMO: thrashing, smart ghosts]

17 Hal Daumé III (me@hal3.name) Iterative Deepening Iterative deepening uses DFS as a subroutine: 1. Do a DFS which only searches for paths of length 1 or less. (DFS gives up on any path of length 2) 2. If 1 failed, do a DFS which only searches paths of length 2 or less. 3. If 2 failed, do a DFS which only searches paths of length 3 or less..and so on. This works for single-agent search as well! Why do we want to do this for multiplayer games? b

18 Hal Daumé III (me@hal3.name) Pruning in Minimax Search [-,+ ] [3,+ ] [3,14] [3,5] [3,3] [-,3] [3,3] [-,2] [-,14] [-,5] [2,2] 3 12 8 2 14 5 2

19 Hal Daumé III (me@hal3.name) α-β Pruning Example

20 Hal Daumé III (me@hal3.name) α-β Pruning General configuration α is the best value that MAX can get at any choice point along the current path If n becomes worse than α, MAX will avoid it, so can stop considering n s other children Define β similarly for MIN Player Opponent Player α Opponent n

21 Hal Daumé III (me@hal3.name) α-β Pruning Pseudocode β v

22 Hal Daumé III (me@hal3.name) α-β Pruning Properties Pruning has no effect on final result Good move ordering improves effectiveness of pruning With perfect ordering : Time complexity drops to O(b m/2 ) Doubles solvable depth Full search of, e.g. chess, is still hopeless! A simple example of metareasoning, here reasoning about which computations are relevant

23 Hal Daumé III (me@hal3.name) Non-Zero-Sum Games Similar to minimax: Utilities are now tuples Each player maximizes their own entry at each node Propagate (or back up) nodes from children 1,2,6 4,3,2 6,1,2 7,4,1 5,1,1 1,5,2 7,7,1 5,4,5

24 Hal Daumé III (me@hal3.name) Stochastic Single-Player What if we don t know what the result of an action will be? E.g., In solitaire, shuffle is unknown In minesweeper, mine locations In pacman, ghosts! max Can do expectimax search Chance nodes, like actions except the environment controls the action chosen Calculate utility for each node Max nodes as in search Chance nodes take average (expectation) of value of children Later, we ll learn how to formalize this as a Markov Decision Process 10 4 5 7 average

25 Hal Daumé III (me@hal3.name) Stochastic Two-Player E.g. backgammon Expectiminimax (!) Environment is an extra player that moves after each agent Chance nodes take expectations, otherwise like minimax

26 Hal Daumé III (me@hal3.name) Stochastic Two-Player Dice rolls increase b: 21 possible rolls with 2 dice Backgammon 20 legal moves Depth 4 = 20 x (21 x 20) 3 1.2 x 10 9 As depth increases, probability of reaching a given node shrinks So value of lookahead is diminished So limiting depth is less damaging But pruning is less possible TDGammon uses depth-2 search + very good eval function + reinforcement learning: worldchampion level play

27 Hal Daumé III (me@hal3.name) What s Next? Make sure you know what: Probabilities are Expectations are You should be able to do any exercise from: http://www.cs.umd.edu/class/fall2011/cmsc250-0x0x/hw/hw11.pdf Username and password are both 250 If you can't, review your probability discrete math! http://www.cs.umd.edu/class/fall2011/cmsc250-0x0x/notes/crash.pdf Next topics: Dealing with uncertainty How to learn evaluation functions Markov Decision Processes