Week 13
Week 13
Artificial
Intelligence
Dr Lekshmi S Nair
Live 13
Game Playing
2
What Kinds of Games?
Mainly games of strategy with the following
characteristics:
4
Two-Player Game
Opponent’s Move
Game yes
Over?
no
Generate Successors
Evaluate Successors
no Game yes
Over?
5
Game Tree (2-player,
Deterministic, Turns)
computer’s
turn
opponent’s
turn
7
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:
8
Example 1
Use the Minimax algorithm to compute the minimax value at each node for the game
tree below
9
Example 1
Use the Minimax algorithm to compute the minimax value at each node for the game
tree below
10
Minimax Strategy
• Why do we take the min value every other
level of the tree?
12
Tic Tac Toe
• Let p be a position in the game
• Define the utility function f(p) by
– f(p) =
• largest positive number if p is a win for computer
• smallest negative number if p is a win for opponent
• RCDC – RCDO
– where RCDC is number of rows, columns and
diagonals in which computer could still win
– and RCDO is number of rows, columns and diagonals
in which opponent could still win.
13
Sample Evaluations
• X = Computer; O = Opponent
O O O X
X X X
X O X O
rows rows
cols cols
diags diags
14
Minimax is done depth-first
max
min
max
leaf
2 5 1
15
Properties of Minimax
• Complete? Yes (if tree is finite)
• Optimal? Yes (against an optimal opponent)
• Time complexity? O(bm)
• Space complexity? O(bm) (depth-first exploration)
18
α-β pruning example
=3
alpha cutoff
19
α-β pruning example
20
α-β pruning example
21
α-β pruning example
22
Alpha Cutoff
>3 =3
8 10
23
Beta Cutoff
=4 <4
4 >8
8 cutoff
24
Alpha-Beta Pruning
max
min
max
eval 5 2 10 11 1 2 2 8 6 5 12 4 3 25 2
25
Properties of α-β
• Pruning does not affect final result. This means that it
gets the exact same result as does full minimax.
26
The α-β algorithm
cutoff
27
The α-β algorithm
cutoff
28
When do we get alpha cutoffs?
100 ...
29
Shallow Search Techniques
1. limited search for a few levels
30
Additional Refinements
• Waiting for Quiescence: continue the search
until no drastic change occurs from one level to
the next.
e.g., w1 = 9 with
f1(s) = (number of white queens) – (number of black
queens), etc.
32
Example: Samuel’s Checker-
Playing Program
• It uses a linear evaluation function
f(n) = a1x1(n) + a2x2(n) + ... + amxm(n)
For example: f = 6K + 4M + U
– K = King Advantage
– M = Man Advantage
– U = Undenied Mobility Advantage (number of
moves that Max has that Min can’t jump after)
33
Samuel’s Checker Player
• In learning mode
34
Samuel’s Checker Player
• How does A change its function?
1. Coefficent replacement
(node ) = backed-up value(node) – initial value(node)
if > 0 then terms that contributed
positively are given more weight and terms that
contributed negatively get less weight
if < 0 then terms that contributed
negatively are given more weight and terms that
contributed positively get less weight
35
Samuel’s Checker Player
• How does A change its function?
2. Term Replacement
38 terms altogether
16 used in the utility function at any one time
36
Kalah
P’s holes
6 6 6 6 6 6
KP Kp
0 counterclockwise 0
6 6 6 6 6 6
p’s holes
To move, pick up all the stones in one of your holes, and
put one stone in each hole, starting at the next one,
including your Kalah and skipping the opponent’s Kalah. 37
Kalah
• If the last stone lands in your Kalah, you get
another turn.
• If the last stone lands in your empty hole, take
all the stones from your opponent’s hole directly
across from it and put them in your Kalah.
• If all of your holes become empty, the opponent
keeps the rest of the stones.
• The winner is the player who has the most
stones in his Kalah at the end of the game.
38
Cutting off Search
MinimaxCutoff is identical to MinimaxValue except
1. Terminal? is replaced by Cutoff?
2. Utility is replaced by Eval
39
Deterministic Games in Practice
• Checkers: Chinook ended 40-year-reign of human world champion
Marion Tinsley in 1994. 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.
40
Games of Chance
• What about games that involve chance,
such as
– rolling dice
– picking a card
• Use three kinds of nodes:
– max nodes min
– min nodes chance
– chance nodes max
41
Games of Chance
d1 di dk
S(c,di)
chance
.4 .6
min 1.2
chance
.4 .6 .4 .6
max
leaf 3 5 1 4 1 2 4 5
43
Complexity
• Instead of O(bm), it is O(bmnm) where n is
the number of chance outcomes.
44
Summary
• Games are fun to work on!
45