Computer Chess Club Archives




Subject: Re: no more comments???

Author: Sune Fischer

Date: 02:16:22 07/26/02

Go up one level in this thread

On July 25, 2002 at 20:21:33, Robert Hyatt wrote:

>On July 25, 2002 at 18:42:44, Sune Fischer wrote:
>>On July 25, 2002 at 18:01:49, Robert Hyatt wrote:
>>>So you are "out of sync" here?  IE you make a move, and update the legal
>>>move count for your opponent immediately so that you know whether to extend
>>>here or not?
>>>That is a bit like my old incremental move generation.  I would make a move
>>>and update everything so that generating moves was always trivial.  The problem
>>>is that you make a move, update the stuff, then get a hash hit and don't
>>>use the updated info at all.  I gave up on that and decided to just update
>>>exactly when it is needed...
>>But how many hash hits do you get compared to the node and evaluation numbers?
>>I have a feeling the hash hit number is insignificant compared to the total node
>I get about 10-20% in the middlegame...  More as the game goes on, of course.
>And each hash hit has the potential of avoiding a move generation if the "best
>move" is good enough...
>As I said, not a huge savings.  But definitely better than nothing...

Hmm, I don't think it is that simple.
I need the information I incrementally update to generate moves and evaluate
better and faster, possibly also to prune. Looks we agree on the numbers, if you
add the killer move hits to the list, its about 20% IMO.
Therefore I still say optimizing for the remaining 80% is better.

One of the things I don't like about running it "fast and stupid" is, that you
have to design the rest of the program around this minimalistic information
approach. Like you don't do check evasions in the qsearch because it slows you
down too much. Say you could generate check evasions at 1/3 of the cost, would
it still slow you down too much or would it suddenly be worth it? Once you have
the information to do things quickly, you can and will use it in places where it
would normally be too expensive.

Since the move generation is only a small part of the total program, I prefer
spending a little extra time once and for all to prepare some information. Could
be I need that piece of information 5 times or 0 times, it will depend on the

I happen to think there are many different paths leading to the same goal, and
that mostly it's a matter of taste which road you take :)


This page took 0.05 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.