Thursday, April 15, 2010

Suicide checkers is a draw - probably

During this winter, I let my suicide checkers book generator run for quite some time, expanding the size of my suicide checkers opening database from about 60'000 to over 180'000 positions. With the generator running on a machine that was twice as fast as for the 60'000 first nodes, the overall quality of the book must have improved massively. It now predicts draws for all 7 opening moves, from which I draw the conclusion in the title of this post.
With the beginning of spring I turned the generator off again - my green conscience would at least like to scavenge some waste heat for my house from book building... Furthermore, I am slightly ashamed to have a PC with a quad-core processor running on a single core only - it could be building the book at nearly 4 times the speed it is doing now, using only a little more energy if I programmed it to use all cores. With PCs nowaday having 4 or even 8 cores, I really should learn how to program a multithreaded search...

3 comments:

Nelson Castillo said...

Yes, use more cores :-) I've read the speedup in checkers is not impressive, but I'm sure you'll find nice tricks.

Rein Halbersma said...

Nice result! Can you give a bit more details? To what depths have you analyzed the 7 openings? Did you also expand the endgame databases beyond what you had a few years ago? And I guess opening book parallelism can be increased "manually" by running 4 book builders on 4 openings that cannot easily transpose into each other...

Martin Fierz said...

Hi Rein,

sorry for being slow in responding, I became a dad recently :-) and now have less time for my PC...

My endgame databases are complete 8-piece endgame databases, i.e. up to 7-1 pieces. In regular checkers, these lopsided databases make no sense, but in suicide checkers there is no guarantee that the stronger side wins. A particular kind of defence seems to be with 2 kings in a corner, where the stronger side cannot approach, whether he has 3 or 8 kings without losing himself. So these lopsided databases are important to have in suicide checkers. They also don't compress as well as regular checkers endgame databases, because the WLD runs are much more erratic.

You are right, some manual parallelism could be introduced by running on multiple machines. I used to do that earlier (2002?) when preparing for the computer world championship in Las Vegas. But it's a nuisance to do things manually when you know full well that you could write a program that does it for you.... Anyway, I'm afraid that I won't be able to do much more programming now, I have to go and change the diapers :-)