Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: FIXED: Hash table bug

Author: Aivaras Juzvikas

Date: 10:51:55 05/13/04

Go up one level in this thread


On May 13, 2004 at 07:45:25, Jeff GAZET wrote:

>>Hi,
>>
>>more information is needed.
>>In one kind of hash implementation the search after "undo" should return a1b1 at
>>ply 1!
>>Reason: when starting search it should look at the hash, find an entry with
>>depth==25 and result move a1b1 with an exact score. Thus he should take this
>>result.
>>Debug at ply 0 why this don“t happen.
>>
>>If you "age" hash-entries by other than move-count and you will not use "aged"
>>entries-score then and older hash entries are just used for move ordering it
>>should react different.
>>In this case check if you are correctly overwriting "aged" hash entries even, if
>>remaining depth is lower than the remaining depth of the hash entry.
>>
>>Greetings Volker
>
>Thanks, i found : This bug occured only when i stopped the search with "move
>now". In this case, in alphabeta() and quiesce(), i set stop_search=true and
>returned immediatly. As those functions must return a value, i returned 0.
>This put bad values in the hash table.
>So i clear the table if the search as been stopped in alphabeta() or quiesce().

speaking of hash table bugs, storing a 0 score when a 3 fold repetition or a 50
move draw rule occured would also be a bug, such scores which got zeroed because
of the path to the position should be marked somehow and not stored in the hash
table, or meybe two values should be returned, the overall evaluation of the
position, and the eval for the current pv. has anybody solved this problem?how?



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.