Author: Dan Honeycutt
Date: 18:39:14 04/02/04
This post is for other beginners like myself. You veterans are welcome to read and laugh but no comments are necessary. I recently checked to see how my engine was doing in a test match and found it in a dead-drawn, blocked-pawn, opposite-color bishop ending. The other engine showed a draw score but poor Bruja, clueless, thought it had a slight advantage and wanted to fight on. I thought about adjudicating but browsing the score showed nothing had happened for some time so I figured the game had to soon end by 3 rep or 50 move rule. Then I noticed the output. Bruja was reeling off plys like pennies at the gas pump with today's high prices. My first thought was "wow, hash tables really help in these positions with so few pieces". I became uneasy when the depth passed 20 and downright worried when it passed 40. Terror gripped my heart when the depth flew past my array dimensions. I watched helpless, waiting for the crash and wondering what was wrong with my bounds checks. After iteration 379 Bruja decided it had searched deep enough and played. The other engine replied and the game ended in a 50 move draw. The postmortem was, fortunately, fairly simple. I had bounds checks in the search but nothing in the iteration function. Iterate called search which promptly returned as all moves led to a draw two plys. Iterate incremented the depth, recalled search with the same result until the time allocation finally ran out. (I should have noticed that the whole time the pv was only 2 moves but i was fixated on the depth.) Others with green engines may want to check to see that they don't have a similar situation. Dan H.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.