Solving Cram using Combinatorial Game Theory

JWHM Uiterwijk*

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingChapterAcademic

13 Downloads (Pure)


In this paper we investigate the board game Cram, which is
an impartial combinatorial game, using an alpha-beta solver. Since Cram is a
notoriously hard game in the sense that it is difficult to obtain reliable
and useful domain knowledge to use in the search process, we decided to
rely on knowledge obtained from Combinatorial Game Theory (CGT).
The first and most effective addition to our solver is to incorporate
endgame databases prefilled with CGT values (nimbers) for all positions
fitting on boards with at most 30 squares. This together with two
efficient move-ordering heuristics aiming at early splitting positions into
fragments fitting in the available databases gives a large improvement of
solving power. Next we define five more heuristics based on CGT that
can be used to further reduce the sizes of the search trees considerably.
In the final version of our program we were able to solve all odd x odd
Cram boards for which results were available from the literature (even
x even and odd x even boards are trivially solved). Investigating new
boards led to solving two boards not solved before, namely the 3 x 21
board, a first-player win, and the 5 x 11 board, a second-player win.
Original languageEnglish
Title of host publicationAdvances in Computer Games
Subtitle of host publication16th International Conference, ACG 2019
EditorsTristan Cazenave, Jaap van den Herik, Abdallah Saffidine, I-Chen Wu
Number of pages15
ISBN (Electronic)978-3-030-65883-0
ISBN (Print)978-3-030-65882-3
Publication statusPublished - Dec 2020
Event16th International Conference, ACG 2019 - Macao, China, Macao, China
Duration: 11 Aug 201913 Aug 2019

Publication series

SeriesLecture Notes in Computer Science


Conference16th International Conference, ACG 2019
Abbreviated titleACG

Cite this