Abstract
We apply Monte-Carlo simulation and alpha-beta search to the card game of Skat, which is similar to Bridge, but sufficiently different to require some new algorithmic ideas besides the techniques developed for Bridge. Our Skat-playing program, called DDS (Double Dummy Solver), integrates well-known techniques such as move ordering with two new search enhancements. Quasi-symmetry reduction generalizes symmetry reductions, disseminated by Ginsberg’s Partition Search algorithm, to search states which are “almost equivalent”. Adversarial heuristics generalize ideas from single-agent search algorithms like \(\textrm{A}^*\) to two-player games, leading to guaranteed lower and upper bounds for the score of a game position. Combining these techniques with state-of-the-art tree-search algorithms, our program determines the game-theoretical value of a typical Skat hand (with perfect information) in 10 milliseconds.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Allis, L.V., van der Meulen, M., van den Herik, H.J.: Proof-Number Search. Artificial Intelligence 66(1), 91–124 (1994)
Berliner, H.: Search and Knowledge. In: Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI-77), pp. 975–979 (1977)
Buro, M.: ProbCut: An Effective Selective Extension of the Alpha-Beta Algorithm. ICCA Journal 18(2), 71–76 (1995)
Frank, I., Basin, D.A.: Search in Games with Incomplete Information: A Case Study using Bridge Card Play. Artificial Intelligence 100(1–2), 87–123 (1998)
Ginsberg, M.L.: Partition Search. In: Proceedings of the Thirteenth National Conference on Artificial Intelligence and Eighth Innovative Applications of Artificial Intelligence Conference (AAAI/IAAI-96), Portland, Oregon, pp. 228–233 (1996)
Ginsberg, M.L.: GIB: Steps toward an Expert-Level Bridge-Playing Program. In: Dean, T. (ed.) Proceedings of the Sixteenth International Joint Conference on Artificial Intelligence (IJCAI-99), Stockholm, Sweden, pp. 584–593 (1999)
International Skat Players Association: International skat and tournament order 1999, (2003), http://www.skatcanada.ca/canada/forms/rules-2003.pdf
Junghanns, A., Schaeffer, J.: Sokoban: Enhancing General Single-Agent Search Methods using Domain Knowledge. Artificial Intelligence 129(1–2), 210–251 (2001)
Koller, D., Pfeffer, A.: Representations and Solutions for Game-Theoretic Problems. Artificial Intelligence 94(1–2), 167–215 (1997)
Kupferschmid, S.: Entwicklung eines Double Dummy Skat Solvers – mit einer Anwendung für verdeckte Skatspiele. Master’s thesis, University of Freiburg (2003)
Levy, D.N.L.: The Million Pound Bridge Program. In: Levy, D.N.L., Beal, D.F. (eds.) Heuristic Programming in Artificial Intelligence — The First Computer Olympiad, Ellis Horwood, pp. 95–103 (1989)
Osborne, M.J., Rubinstein, A.: A Course in Game Theory. MIT Press, Cambridge (1994)
Pearl, J.: Heuristics — Intelligent Search Strategies for Computer Problem Solving. Addison-Wesley, London, UK (1984)
Plaat, A., Schaeffer, J., Pijls, W., de Bruin, A.: Best-First Fixed-Depth Minimax Algorithms. Artificial Intelligence 87(1–2), 255–293 (1996)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kupferschmid, S., Helmert, M. (2007). A Skat Player Based on Monte-Carlo Simulation. In: van den Herik, H.J., Ciancarini, P., Donkers, H.H.L.M.(. (eds) Computers and Games. CG 2006. Lecture Notes in Computer Science, vol 4630. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75538-8_12
Download citation
DOI: https://doi.org/10.1007/978-3-540-75538-8_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75537-1
Online ISBN: 978-3-540-75538-8
eBook Packages: Computer ScienceComputer Science (R0)