INTELLIGENT SYSTEM FOR PLAYING TAROK Mitja Lutrek Matja

  • Slides: 11
Download presentation
INTELLIGENT SYSTEM FOR PLAYING TAROK Mitja Luštrek & Matjaž Gams Jožef Stefan Institute Ljubljana,

INTELLIGENT SYSTEM FOR PLAYING TAROK Mitja Luštrek & Matjaž Gams Jožef Stefan Institute Ljubljana, Slovenia

PERFECT AND IMPERFECT INFORMATION GAMES n Perfect information (players have full knowledge of the

PERFECT AND IMPERFECT INFORMATION GAMES n Perfect information (players have full knowledge of the state of the game) Chess, backgammon ¨ Checkers, Othello ¨ Connect-four ¨. . . ¨ n Imperfect information (players have only partial knowledge of the state of the game) Bridge ¨ Poker ¨ Tarok ¨. . . ¨

THE GAME – TAROK n n n Very popular in Central Europe Many variants

THE GAME – TAROK n n n Very popular in Central Europe Many variants (tarock, taroky, königsrufen. . . ) Three players: two against one 54 cards: suits and trumps – taroks The objective is winning tricks

THE PROGRAM – SILICON TAROKIST n Tarok-playing programs exist, but little is known of

THE PROGRAM – SILICON TAROKIST n Tarok-playing programs exist, but little is known of how they work. Tarok. net (www. tarok. net) ¨ Tarock World (www. gatecentral. com/triangle) ¨. . . ¨ n We developed Silicon Tarokist. Freely available (tarok. bocosoft. com) ¨ Plays reasonably well as judged by human players. ¨

GAME TREE SEARCH n Alpha-beta algorithm is used to search a single game tree.

GAME TREE SEARCH n Alpha-beta algorithm is used to search a single game tree. Nodes – game states ¨ Edges – moves ¨

SAMPLING n Monte Carlo sampling is used to generate samples of other players’ hands.

SAMPLING n Monte Carlo sampling is used to generate samples of other players’ hands.

ALPHA-BETA ENHANCEMENTS n Transposition table Fuzzy transposition table ¨ Similar to partition search (bridge

ALPHA-BETA ENHANCEMENTS n Transposition table Fuzzy transposition table ¨ Similar to partition search (bridge program GIB, M. L. Ginsberg, 1996) ¨ n n n Move ordering Adjusting the width of search window Pruning the game tree

TRANSPOSITION TABLE n n n Usually: transposition table stores single game states and their

TRANSPOSITION TABLE n n n Usually: transposition table stores single game states and their values. Partition search: for each encountered game state, a set of states with equal value is calculated and stored together with the value. Silicon Tarokist: the set of equivalent game states is determined heuristically.

OTHER ALPHA-BETA ENHANCEMENTS n Move ordering Moves that cause cut-offs should be tried first.

OTHER ALPHA-BETA ENHANCEMENTS n Move ordering Moves that cause cut-offs should be tried first. ¨ History heuristic: moves that have caused cut-offs in previously searched game states are given priority. ¨ n Adjusting the width of search window Narrower search window causes more cut-offs, thus speeding up the search. ¨ Minimal window search: non-first children of a node are searched with minimal window, since we are trying to show they are inferior to the first one. ¨ n Pruning the game tree ¨ Some moves can be discarded because they are either clearly bad or redundant – the same effect can be achieved by another move.

MONTE CARLO SAMPLING ENHANCEMENT n n n Monte Carlo sampling has demonstrable deficiencies. Nevertheless,

MONTE CARLO SAMPLING ENHANCEMENT n n n Monte Carlo sampling has demonstrable deficiencies. Nevertheless, it works. Deficiency we observed: An assumption about the state of the game is made. ¨ Sequence of bad, but inevitable move – good move is evaluated equally as good move – bad, but inevitable move. ¨ Sometimes bad, but inevitable move is made first. ¨ Then it turns out it is not inevitable. ¨ n Solution: In addition to full search, search to the depth of one trick is performed. ¨ This emphasizes immediate profit. ¨ A combination of both searches is used for the final decision. ¨

RESULTS n n n Game tree search algorithm in Silicon Tarokist searches 184 -times

RESULTS n n n Game tree search algorithm in Silicon Tarokist searches 184 -times less nodes than alpha-beta using uses 86 -times less time. The program does not play flawlessly, but it is a challenging opponent. For truly high-level play, game tree search that we use in inadequate. It is too shallow for long-term strategies to be developed. ¨ It will either have to be improved significantly ¨ or another – probably knowledge-based – way to develop long-term strategies will have to be devised. ¨