Daily Archives: 5/4/2009

Some new, and relatively challenging checker puzzles

I was surfing over at Bob Newell’s “Checker Maven” website, and found this awesme collection of PDN files for download. I have a table of challenging positions compiled into milhouse, which I use for debugging and testing, so I decided to hack a simple parser to input some of the positions into Milhouse. The “Gem Problems” file contain 162 positions, some all of which are quite challenging. Consider this one:

Red to move and win.

Red to move and win.

It takes around a 55 ply search to find the winning line, but a reasonably skilled checker player would be expected to play this line out without mistakes. Milhouse still finds some positions like this challenging, since it typically maxes out around 40 ply or so before grinding to a halt. I suspect this reveals a deep flaw in my move ordering, and I think it might be difficult to fix it. But I’ll think about it some more.

Milhouse wins against Cake!

Okay, before I get too excited, I’ll disclose that Cake was set to a time limit of around 1 second, which limited it to just a few ply (maybe 9 typically) and I was letting MIlhouse think a little harder (still taking less than 10 seconds typically). Still, it’s good: it means that sparring matches between milhouse and cake can be tuned to make them challenging. I need to figure out how I can build milhouse as an engine for CheckerBoard so this can be automated.

Perhaps I could use mingw to build an appropriate dll.

[Event "Morning Match"]
[Date "2009-05-04"]
[Black "Cake, 1sec per move"]
[White "Milhouse, 19 ply search"]
[Result "0-1"]
1. 9-13 23-19 2. 6-9 27-23 3. 11-15 23-18 4. 8-11 26-23 5. 4-8 30-26 6. 9-14 18x9 7. 5x14 
22-18 8. 15x22 25x9 9. 11-16 9-6 10. 2x9 24-20 11. 8-11 26-22 12. 10-15 19x10 13. 7x14 
29-25 14. 16-19 23x7 15. 3x10 28-24 16. 10-15 32-28 17. 14-18 24-19 18. 15x24 22x15 19. 
9-14 28x19 20. 14-18 15-10 21. 12-16 19x12 22. 13-17 21x14 23. 18-22 25x18 24. 1-5 31-27 
25. 5-9 14x5 0-1