CHINESE CHECKERS – IN CHINESE CHECKERS – IN THE LIGHT OF AITHE LIGHT OF AI
Computer Game Playing
1
Under the Guidance of Prof. Pushpak Bhattacharyya
Presented by:Anwesha Das, Prachi Gargand Asmita Sharma
OUTLINEOUTLINE1. BACKGROUND
2. HISTORY OF CHINESE CHECKERS
3. INTRODUCTION - GAME DESCRIPTION
4. AI – PERSPECTIVE 1. MINIMAX ALGORITHM
2. ALPHA – BETA PRUNING
5. HEURISTICS
7. CONCLUSION
8. REFERENCES
Computer Games & Computer Games & AIAI Game playing was one of the earliest researched Game playing was one of the earliest researched
AI problems sinceAI problems since games seem to require intelligence (heuristics)games seem to require intelligence (heuristics) state of games are easy to representstate of games are easy to represent only a restricted number of actions are allowed only a restricted number of actions are allowed
and outcomes are defined by precise rules and outcomes are defined by precise rules It has been studied for a long timeIt has been studied for a long time
Babbage (tic-tac-toe)Babbage (tic-tac-toe) Turing (chess)Turing (chess)
Sole Motive is to get a game solved, meaning Sole Motive is to get a game solved, meaning that the entire game tree can be built and that the entire game tree can be built and outcome of the game can be determined even outcome of the game can be determined even before the game is started.before the game is started.
3
Class of Chinese Class of Chinese CheckersCheckers
4
It falls under the category of zero-sum discrete finite deterministic games of perfect information.
Zero-sum: In the outcome of any game, Player A’s gain
equals player B’s loss. Discrete: All game states and decisions are discrete values. Finite: Only a finite number of states and decisions. Deterministic: No chance (no die rolls). Perfect information: Both players can see the state, and each decision is made sequentially (no simultaneous moves).
Chinese checker was invented in Germany under the name of “stern-halma”.
It is a variation of “Halma” which is Greek for “Jump”, invented by an American professor from Boston, Dr. George Howard Monks (1853-1933) between 1883 and 1884
5
History of Chinese History of Chinese CheckersCheckers
Developed by Chinook Used alpha-beta search Used a pre computed perfect end
game by means of a database In 1992 Chinook won the US Open ….. And challenged for the World
Championship
6
History of Chinese History of Chinese CheckersCheckers
History of Chinese History of Chinese CheckersCheckers
Dr Marion Tinsley had been the world champion for over 40 years
… only losing three games in all that time Against Chinook he suffered his fourth and
fifth defeat ….. But ultimately won 21.5 to 18.5 In August 1994 there was a re-match but
Marion Tinsley withdrew for health reasons Chinook became the official world
champion
7
Chinook did not use any learning mechanism.
Kumar in 2000- Learning was done using a neural network with the synapses being changed by an evolutionary strategy.
The best program beat a commercial application 6-0
The program was presented at CEC 2000 (San Diego) and remain undefeated 8
History of Chinese History of Chinese CheckersCheckers
9
The game can be defined as a kind of The game can be defined as a kind of search problem search problem with the following with the following components :components :
1. A 1. A finite set finite set of of states.states.
2. The 2. The initial stateinitial state: board position, indication : board position, indication of whose of whose move it is move it is
3. A set of 3. A set of operatorsoperators: define the legal moves : define the legal moves that a player that a player can make can make
4. A 4. A terminal testterminal test: determines when the : determines when the game is over game is over (terminal states) (terminal states)
5. A 5. A utility (payoff) functionutility (payoff) function: gives a numeric : gives a numeric value for value for the outcome of a game (-1,+1,0) ? the outcome of a game (-1,+1,0) ?
Components of the Components of the GameGame
Introduction – How to Introduction – How to play?play?
2 to 6 players can play the game ,having 10 same-colored marbles
At the start - player's marbles are in the ten holes of the star point that has the same color as his marbles
Goal - move all marbles of one color from starting point to the star point on the opposite side of the board
No game pieces are removed from the board.
Introduction - ConstraintsIntroduction - Constraintsmarble can move by rolling to a hole next to it
by jumping over one marble, of any color, to a free hole, along the lines connecting the holes in a hexagonal pattern
several jumps in a row, but only one roll
cannot both roll the marble and jump with it at the same turn
MinimaxMinimax
1944 - John von Neumann outlined a search method (Minimax) that maximize your position whilst minimizing your opponent’s
Minimax searches state-space using the following assumptions– your opponent is ‘as clever’ as you
– if your opponent can make things worse for you, they will take that move
– your opponent won’t make mistake
12
13
D E F G
= agent = opponent
4 -5 -5 1 -7 2 -3 -8
1
4 1 2 -3
1 -3B C
AMinimax - Example
H I J K L M N O
MAX
MIN
MAX
Minimax to a Fixed Ply-Minimax to a Fixed Ply-Depth Depth
14
Usually not possible to expand a game to Usually not possible to expand a game to end-game statusend-game status
have to choose a ply-depth that is have to choose a ply-depth that is achievable with reasonable time and achievable with reasonable time and resourcesresources
absolute ‘win-lose’ values become absolute ‘win-lose’ values become heuristic scoresheuristic scores
heuristics are devised according to heuristics are devised according to knowledge of the game knowledge of the game
15
D E F G
= agent = opponent
4 -5 -5 1 -7 2 -3 -8
1
4 1 2 -3
1 -3B C
AMinimax - Example
H I J K L M N O
MAX
MIN
MAX
4 8
8
3 0 4 -3
0 -3
0
Alpha-Beta PruningAlpha-Beta Pruning
16
Fixed-depth Minimax searches entire Fixed-depth Minimax searches entire space down to a certain level, in a space down to a certain level, in a breadth-first fashion. Then backs values breadth-first fashion. Then backs values up. Some of this is wasteful searchup. Some of this is wasteful search
Alpha-Beta pruning identifies paths which Alpha-Beta pruning identifies paths which need not be explored any furtherneed not be explored any further
Alpha-Beta PruningAlpha-Beta Pruning
17
Traverse the search tree in depth-first order
At each MAX node n, alpha(n) = maximum value found so far
At each MIN node n, beta(n) = minimum value found so far
Note: The alpha values start at -infinity and only increase, while beta values start at +infinity and only decrease.
Beta cutoff: Given a MAX node n, cut off the search below n (i.e., don’t generate or examine any more of n’s children) if alpha(n) >= beta(i) for some MIN node ancestor i of n.
Alpha cutoff: stop searching below MIN node n if beta(n) <= alpha(i) for some MAX node ancestor i of n.
18
A
B C
D E
6 5 8
6 >=8
<=6
H I J K
= agent = opponent
MAX
MIN
MAX
Alpha-beta PruningAlpha-beta Pruning
19
A
B C
D E F G
6 5 8
6 >=8
6
H I J K L M
= agent = opponent
2 1
2
<=2
>=6
MAX
MIN
MAX
Alpha-beta PruningAlpha-beta Pruning
20
A
B C
D E F G
6 5 8
6 >=8
6
H I J K L M
= agent = opponent
2 1
2
2
>=6
MAX
MIN
MAX
Alpha-beta PruningAlpha-beta Pruning
21
A
B C
D E F G
6 5 8
6 >=8
6
H I J K L M
= agent = opponent
2 1
2
2
6
beta cutoff
alpha cutoff
Alpha-beta PruningAlpha-beta Pruning
MAX
MIN
MAX
We use α-β pruning, which can optimize move. Herewhite balls may take 20 & black 22 moves - α-β pruning chooses the better move.
Heuristics Heuristics
23
Chinese Checker, possible heuristics :- Chinese Checker, possible heuristics :- Random- the computer makes a move randomly without taking into consideration the current board configuration
Caveat - the random player may not leave its triangle at all -denying the chance to the opponent to occupy its winning triangle
Vertical Displacement(VD)- generates all moves with minimax algorithm & sums up the vertical distance for its pieces and adds them. Same done for the opponent.
Static Evaluation Function=totalself - totalopponent
Vertical / Horizontal Displacement (HD)- considers the horizontal pieces as well in deciding the next move.
It is best to play in the middle of the board.Formula is W.F*VD+HD where W.F=weight factor which decides how much of importance is to be given to keep the pieces in the middle compared to jumping vertically
HeuristicsHeuristics
Vertical/Horizontal Displacement with split – move the pieces to the edges of the destination triangle once they have moved in
Create space for others to come in
Back piece moving strategy – give more weightage to the moves where the back pieces move forward than the front pieces
Pieces move in clusters. Concept of disuse wt.
OptimizationOptimization1. Consider those nodes of minimax algorithm
which show some progresso Speed improves significantly
2. Shortest depth first in case of a wino Path which takes to the goal faster
3. Expand nodes with maximum value to improve α β pruning
4. Sort to increase the gain of α β pruning
Tradeoff is O(n2 ) sorting algorithm versus O(n) best move.
26
When inevitable bad moves are put off When inevitable bad moves are put off beyond the cutoff on the depth of lookahead, beyond the cutoff on the depth of lookahead, e.g. stalling moves by pushing an unfavorable e.g. stalling moves by pushing an unfavorable outcome “over the search horizon” to a place outcome “over the search horizon” to a place where it cannot be detectedwhere it cannot be detected
The unavoidable damaging move is thus not The unavoidable damaging move is thus not dealt withdealt with
Use of singular extensions where one “clearly Use of singular extensions where one “clearly better” move is searched beyond the normal better” move is searched beyond the normal depth limit without incurring more cost depth limit without incurring more cost
Horizon EffectHorizon Effect
27
Always search to limited depth - blind to states Always search to limited depth - blind to states just beyond this boundaryjust beyond this boundary
Might chose a path on the basis that it Might chose a path on the basis that it terminates in a good heuristic … but next terminates in a good heuristic … but next move could be catastrophicmove could be catastrophic
Overcome by quiescence search – positions in Overcome by quiescence search – positions in which favourable captures are avoided by which favourable captures are avoided by extending search depth to a extending search depth to a quiescent quiescent position.position.
Quiescence SearchQuiescence Search
Chinese Checker
How to efficiently move to goal?
Make intelligent movesMake intelligent moves
Depicting the board configuration of a 2 player game.
Back piece moving strategy – moving in clusters
No pieces to leave behind- No pieces to leave behind- Horizon effectHorizon effect
Preference given to the backward, edge pieces among the rest
Although less powerful , push the backends
Identify the correct Identify the correct movemove
Best to play in the middle, make the best move
All possible moves from a particular piece
ConclusionConclusion Board Game – a wonderful tool to reinforce
learning Study done on the Chinese Checker
distance, regular polygons on checker plane, its variations of the Pythagorean theorem.
Both minimax and alpha-beta pruning assume perfect play from the opposition.
Increase in processing power will not always make exhaustive search of game tree possible – need pruning techniques to increase the search depth with the same computing resources
32
ReferencesReferences
Reading material from whitneybabcockmcconnell.com of CMU.
http://hem.passagen.se/baolan/release/china.pdf - Master’s thesis by Paula Ulfhake , Lund University
http://en.wikipedia.org/wiki/Chinese_checkers
http://www.cs.northwestern.edu/Rich and Knight 33
THANK YOUTHANK YOU