Game playing was one of the first tasks undertaken in AI as soon as computers
became programmable.
Game Systems Rely On
– Search techniques – Heuristic functions– Bounding and pruning techniqiues– Knowledge database on game
Board Games
Tic Tac Toe,Chess,Go....
Why Board Games?
• Two opponents.• Game states are easy to represent.• Not involving chance or hidden.• Search concentrate on one player.
Minimax Method
• Try to find next best move in a game with 2 player .
• The object of a search is to find a path from the starting position to a goal position
• It calculates all possible game states by examining all opposing moves .
• Determine the next move against best play[opponent] .
Minimax Method
• Max tries to maximize its score • Min tries to minimize Max’s score (Min)
Goal: Move to position of highest minimax value
Minimax Method
Minimize Maximum Loss OR
Maximize Minimum Gain
Minimax Search Algorithm1. Generate the whole game tree to leaves2. Apply utility (payoff) function to leaves3. Back-up values from leaves toward the root:* a Max node computes the max of its child values* a Min node computes the Min of its child values4. When value reaches the root: choose maxvalue and the corresponding move.
Evaluation Function
• Each game outcome has a payoff, which we can represent as a number
• By convention, we prefer positive numbers• In some games, the outcome is either a simple
win (+1) or a simple loss (-1)• In some games, you might also tie, or draw (0)
Minimax ( Generate Tree )
Minimax ( Decide Whose Turn )MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
Minimax ( Evaluate Funcions )
12
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
Minimax ( Evaluate Funcions )
12 7
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
Minimax ( Evaluate Funcions )
12
12 7
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
Minimax ( Evaluate Funcions )
12 4
12 7
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
Minimax ( Evaluate Funcions )
4
12 4
12 7
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
Minimax ( Evaluate Funcions )
4 3
12
76
34 18 6 15 7 24
1512 5 18 6 7 117 241
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
Minimax ( Evaluate Funcions )7
4 3
12
76
34 18 6 15 7 24
1512 5 18 6 7 117 241
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
Minimax ( Evaluate Funcions )7
4 3
12
76
34 18 6 15 7 24
1512 5 18 6 7 117 241
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
MIN
α-β Pruning
• Extension of Minimax Algorithm.
• With the help of α-β Pruning we can reduce the size of game tree so we can get quicker response .
α-β Pruning
If a move is determined worse than another move already examined, then there is no need
for further examination of the node.
α-β Pruning
11 7 5 1 81016 14 2
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
α-β Pruning
7
11 7 5 1 81016 14 2
<7
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
α-β Pruning
7
11 7 5 1 81016 14 2
<7
>7MAX ( Artificial Intelligence )
MIN ( Player )
MAX
α-β Pruning
7
11 7 5 1 81016 14 2
<7
>7
<5
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
α-β Pruning
7
11
5
7 5 81016 2
<7
>7
<5
In 7<x and 5>x interval there can be no x , so we don’t Need to traverse in nodes 14 and 1
114
MAX ( Artificial Intelligence )
MIN ( Player )
MAX
α-β Pruning
7
11 7 5 8
MAX ( Artificial Intelligence )
MIN ( Player )
MAX 1016 2
<7
>7
<5
114
<10
In 7<x and 10>x interval there can be x then continue in nodes 2 and 8
α-β Pruning
7
11 7 5 8
MAX ( Artificial Intelligence )
MIN ( Player )
MAX 1016 2
<7
>7
<5
114
<2
In 7<x and 2>x interval there can be no x , so we don’t Need to traverse in node 8.
α-β Pruning7
7
11 7 5 8
MAX ( Artificial Intelligence )
MIN ( Player )
MAX 1016 2
<7
>7
<5
114
<2
Tic Tac Toe
Tic Tac Toe Game Search
Applying Minimax & α-β Pruning
• Evaluation function of Tic Tac Toe game is just win , lose and draw.
• Computer traverse all nodes until leaf then give every leaf evaluation value. By using minimax method computer select best move.
Win by Computer : 1Win by Opponent : -1Draw : 0
Applying Minimax & α-β Pruning
I assume the game state is like above form. Next move will be X and that will be determined by computer using Minimax Method with α-β Pruning step by step.
-1 0
0
-1 +1
+1
0
0
MAX ( AI )
MAX ( AI )
MIN ( Opponent )
+1
+1
MIN ( Opponent )
-1-1
0
0
α-β Pruning
Computer Choses That Move
¿ Questions ?
Alp Ç[email protected]
Thanks...
Top Related