Download presentation

Presentation is loading. Please wait.

Published byLee Gardner Modified about 1 year ago

1
1 Adversarial Search Chapter 6 Section 1 – 4 The Master vs Machine: A Video

2
2 Outline Optimal decisions α-β pruning Imperfect, real-time decisions

3
3 Games vs. search problems "Unpredictable" opponent specifying a move for every possible opponent reply Time limits unlikely to find goal, must approximate Example: tic-tac-toetic-tac-toe –Relationship to five-in-a-row?

4
4 Game tree (2-player, deterministic, turns)

5
5 Minimax Perfect play for deterministic games Idea: choose move to position with highest minimax value = best achievable payoff against best play E.g., 2-ply game: MAX MIN

6
6 Minimax algorithm

7
7 Another Example (From Nilsson “Principles of AI”)

8
8 Properties of minimax Complete? Yes (if tree is finite) Optimal? Yes (against an optimal opponent) Time complexity? O(b m ) Space complexity? O(bm) (depth-first exploration) For chess, b ≈ 35, m ≈100 for "reasonable" games exact solution completely infeasible

9
9 α-β pruning example

10
10 α-β pruning example

11
11 α-β pruning example

12
12 α-β pruning example

13
13 α-β pruning example

14
14 Rules for alpha and beta IF –node=MIN and ancestor=MAX –beta(node) <= alpha(ancestor), –then stop this branch IF –node=MAX and –alpha (node) >= beta(parent), –then stop this branch

15
15 More examples

16
16 Properties of α-β Pruning does not affect final result Good move ordering improves effectiveness of pruning With "perfect ordering," time complexity = O(b m/2 ) doubles depth of search A simple example of the value of reasoning about which computations are relevant (a form of metareasoning)

17
17 Why is it called α-β? α is the value of the best (i.e., highest- value) choice found so far at any choice point along the path for max If v is worse than α, max will avoid it prune that branch Define β similarly for min

18
18 The α-β algorithm

19
19 The α-β algorithm

20
20 Resource limits Suppose we have 100 secs, explore 10 4 nodes/sec 10 6 nodes per move Standard approach: cutoff test: e.g., depth limit (perhaps add quiescence search) evaluation function = estimated desirability of position

21
21 Evaluation functions For chess, typically linear weighted sum of features Eval(s) = w 1 f 1 (s) + w 2 f 2 (s) + … + w n f n (s) e.g., w 1 = 9 with f 1 (s) = (number of white queens) – (number of black queens), etc.

22
22 Cutting off search MinimaxCutoff is identical to MinimaxValue except 1.Terminal? is replaced by Cutoff? 2.Utility is replaced by Eval Does it work in practice? b m = 10 6, b=35 m=4 4-ply lookahead is a hopeless chess player! –4-ply ≈ human novice –8-ply ≈ typical PC, human master –12-ply ≈ Deep Blue, Kasparov

23
23 Deterministic games in practice Checkers: Chinook ended 40-year-reign of human world champion Marion Tinsley in Used a precomputed endgame database defining perfect play for all positions involving 8 or fewer pieces on the board, a total of 444 billion positions. Chess: Deep Blue defeated human world champion Garry Kasparov in a six-game match in Deep Blue searches 200 million positions per second, uses very sophisticated evaluation, and undisclosed methods for extending some lines of search up to 40 ply. –http://www.math.duke.edu/~blake/chess.htmlhttp://www.math.duke.edu/~blake/chess.html Othello: human champions refuse to compete against computers, who are too good. 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.

24
24 Summary Games are fun to work on! They illustrate several important points about AI perfection is unattainable must approximate good idea to think about what to think about

Similar presentations

© 2016 SlidePlayer.com Inc.

All rights reserved.

Ads by Google