Computer Chess Club Archives




Subject: Re: no more comments???

Author: Robert Hyatt

Date: 08:29:37 07/25/02

Go up one level in this thread

On July 25, 2002 at 01:32:52, Uri Blass wrote:

>On July 24, 2002 at 21:54:12, Robert Hyatt wrote:
>>On July 24, 2002 at 13:13:11, Gian-Carlo Pascutto wrote:
>>>On July 23, 2002 at 12:08:43, Uri Blass wrote:
>>>>I still do not use hash tables to save generating moves and it is another gain
>>>>that I can get from hash tables.
>>>That gain is very small - I still don't do it either.
>>I think for me it was about 10%.  Not huge.  Not ignorable either.  if you
>>count the number of times the hash move causes a fail high, that is the number
>>of move generations you will totally avoid...  It may or may not be a lot
>>depending on other factors...
>It is not the number of move generations to avoid for me.
>You should multiply it by the number of legal moves because
>I generate them before looking at the hash tables.

I think you misunderstand.

At a ply in the tree, at the top of search, you should be doing this:

1.  hash probe.
2.  generate captures.
3.  try them one at a time.
4.  generate non-captures
5.  try them one at a time.

You only drop into steps 2-5 if the hash probe does not cause a cutoff.

With my approach, you add step 1a.

1a.  Search hash move without generating moves.

If it causes a cutoff, you _still_ avoid 2-5.

So for every cutoff you get from the hash move being searched, you avoid
one move generation cycle.

>I still did not change it and in the last days there are other
>simple changes that I tested.
>Every change may do the program only slightly better and I prefer
>to test after every small change in the search rules
>in order to avoid bugs(there were cases when a change that
>I knew that it should be productive was not profuctive
>because of a bug).

This is _zero_ change to the search.  The node counts will be identical
since you should be searching the hash move first whether you generate
moves or not.  This is purely an efficiency issue, avoiding the computation
of generating all the moves that you won't need to search when the hash move
is good enough to fail high.

>Every test takes time because I use the GCP test suite
>at 5 minutes per position so the test takes 15 hours.

This can be verified as correct with a few positions.  Since the node
counts can't possibly change, just compare a few position "before" and
"after".  It the node counts are identical, you are done.

>I may also try the quick test suite because I remember that I read
>that there is no problem of finding the right move for
>the wrong reason in that test.

This page took 0.02 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.