Checker Endgames with only Kings

May 5, 2007 | General | By: Mark VandeWettering

I haven’t had any time to work on my checkers program with any degree of concentration. I was trying to work out some of the details in creating an endgame database, and thought that maybe I could prototype an example fairly quickly. The particular endgame I was most interested in was the 3 kings versus 2 king database, which is a bit complicated for beginners like myself to master, but key to understanding the game (amateurs can often not find the winning combinations even when playing with the 3 king side). Anywhoo, if you have only kings, the math of calculating how many positions there are for each combination is pretty straightforward, and I coded up a Python script that computed these numbers in a few minutes:

1 0              32
1 1             992
2 0             496
2 1          14,880
2 2         215,760
3 0           4,960
3 1         143,840
3 2       2,013,760
3 3      18,123,840
4 0          35,960
4 1       1,006,880
4 2      13,592,880
4 3     117,804,960
4 4     736,281,000
5 0         201,376
5 1       5,437,152
5 2      70,682,976
5 3     589,024,800
5 4   3,534,148,800
5 5  16,257,084,480

It seems that generating a 3×2 database with Python would certainly be in the realm of feasibility.

[tags]Checkers,Programming[/tags]