Author: Bruce Moreland
Date: 16:40:17 08/25/99
Go up one level in this thread
On August 25, 1999 at 15:45:44, Scott Gasch wrote: >This is one area of my chess program that I have trouble with too. First, we >are doing this since scores of +/-mate are adjusted to reflect the ply at which >they were found. Using these scores later when the ply can be totally different >leads to inaccuracy. > >Let me see if I have the right idea about how to implement this: > >If you have converted ~ +/-mate scores into bounds, the lookup at the top of >Search does not change at all... right? > >When storing a hash position, do it like this: > >If you have an EXACT score near +mate: convert to a LOWER_BOUND of mate - 200. >This tells us later that this position is worth *at least* mate - 200. If you >have an EXACT score near -mate: convert to an UPPER_BOUND of -mate + 200. This >tells us later that this position is worth *at most* -mate + 200. > >If you have an UPPER_BOUND near mate do not hash it at all. Storing it is >saying "this position is worth at most something very near +infinity" which is >useless information. Even if you convert it to +mate - 200 it is still silly... >"this position is worth at most +mate - 200... duh." Likewise if you have a >LOWER_BOUND near -mate ignore it. "this position is worth at least something >very near -infinity"... > >If you have a LOWER_BOUND near +mate convert it into a LOWER_BOUND of +mate - >200. If you have an UPPER_BOUND near -mate convert it into an UPPER_BOUND of >-mate + 300. > >Thanks, >Scott You used 300 once and 200 the rest of the times, but that's it, yeah. Anyone has an idea of how this can ever cause a bug please let me know, but I don't think a bug is possible. The only routine you have to modify is the hash table store routine. Everything else can behave as if this problem doesn't exist. bruce
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.