Author: Gerd Isenberg
Date: 00:11:35 06/16/05
Go up one level in this thread
On June 15, 2005 at 16:36:54, Eric Oldre wrote: > >I was wondering if anyone would like to volunteer any tricks they've >used to help find certain bugs in their search function. > >I think that the ideas of using perft for move generation and >reversing the board to find bugs in the evaluation have both >been really useful to me. I was wondering if anyone has used >techniques similar to these to help find search bugs. > >I understand that just because a engine can properly pass these >and other tests doesn't mean it's free of bugs. But they certainly >help detect at least some of them. > >I'm certain that there must be plenty of bugs in Latista's search >and I think it's time for me to work on discovering them. If >you don't have any automated tricks like above. Does anyone >have any general advise to help me spot some bugs? > >Eric Oldre > >PS. I have at various spots in my program tried to follow a similar >model of asserts as in fruit. I'm sure taking some time to >do this at more parts of my program would help. What i found usefull while debugging search, is setting a position-breakpoint or to trigger some boolean to trace all kind of stuff into a logfile. Compute the hashkey of a position by fen string. If during search of a particular root-position your incremental updated hashkey equals the passed debug hashkey do a __debugbreak() (__asm int 3 on x86) to stop the search to inspect all kind of stuff - or toggle some tracelevel. If you have static mate detection in your evaluation or huge posititional values, try to confirm the evaluation by search in a debug version. Gerd
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.