I was sparring a bit with both Martin Fierz's Cake, his jCheckers and also with John Kruezer's guiCheckers. These games illustrated a number of things. Milhouse has bugs. And it seriously lacks proper checker knowledge. Because it lacks checker knowledge, it doesn't search deep enough. And it lacks an opening book.
Sigh. It's hard to know where to start to improve things. So, I pulled my copy of One Jump Ahead off the shelf, and started flipping through at random. I was trying to remember some of the details of a Chinook-Tinsley match that was described in it, The game I was looking for is described on page 193, and occurred on Dec 13, 1990. Chinook played a move on turn 10, to which the immortal Tinsley replied "You are going to regret this." 23 full moves (46 plies) later, and Schaeffer was forced to admit that indeed, he did regret and Tinsley had the advantage.
Two things strike me about this:
In this section Schaeffer is talking a lot about his "nemesis", a bug in the scoring routines. It's a little bit enheartening to read this. I've been working on Milhouse in little bursts of activity, and it seems like it is progressing nicely, but it occasionally behaves in a mysterious fashion. At this point in Chinook development, Schaeffer had spent 560 days on his project, and he still had mysterious bugs. It appears that I am in good company, even if I think my computer should be holding its own.
Last, that the game is still fiendishly subtle: on page 190, we are confronted with this position from an earlier Chinook-Tinsley match.
Tinsley played 27-23, which results in an exchange, and by virtue of the endgame database, it is a draw. But later analysis by Tinsley showed that he missed a win (gasp!) I handed it to Milhouse, but it makes no good headway on this position, so I tossed it to Cake to see what it could see. Cake takes a bit of time, but eventually comes up with the right idea, and records that it is up a man afer churning for roughly 10 minutes. It is tough going, even with Cake's 8 piece endgame database, because no exchanges occur until fairly deep in the search. For fun, I loaded the position into Chinooks 10 piece endgame querying applet, and it verified that 17-13 is indeed a winning move as later analyzed by Tinsley. Chinook also reveals that 14-9 and 14-10 are winning moves.
It's all over my head, that's for sure.