Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Node counting in Crafty 14.2 and 15.20

Author: Koen van Dijken

Date: 08:59:53 11/02/98

Go up one level in this thread


On November 02, 1998 at 08:24:08, Robert Hyatt wrote:

>On November 02, 1998 at 02:49:14, Koen van Dijken wrote:
>
>>mr Hyatt,
>>
>>I was comparing the speed in nps of my own program against that of Crafty. I
>>have the sources for 14.2 and 15.20. I noticed that in Search there is a
>>difference in node counting between 14.2 and 15.20. In 14.2 you do not count
>>illegal moves, in 15.20 you do. Is there a reson for this?
>>
>>15.20
>>    } else tree->nodes_searched++;
>>    UnMakeMove(tree,ply,tree->current_move[ply],wtm);
>>
>>Is this maybe the way nodecounting is done in other programs as well, for better
>>comparising?
>>
>>Koen van Dijken.
>
>
>That was the main idea.  However it turned out to have no effect... because now
>I increment nodes_searched at the top of search, and I *never* get there unless

Well, as far as i understand, you count nodes at the top of Search() both in
14.2 and 15.20, but in 15.20 also in the else branch of

    MakeMove(tree,ply,tree->current_move[ply],wtm);
    if (tree->in_check[ply] || !Check(wtm)) {
...
    } else tree->nodes_searched++;
    UnMakeMove(tree,ply,tree->current_move[ply],wtm);

>the position is "legal"... so for search() it doesn't matter.  In quiesce, I
>do count illegal positions... but the point is counting "work" really... and if
>I do a MakeMove() and so forth, I "searched" that node whether it was legal or
>not.

I agree with Ernst Heinz that only counting legal moves is cleaner and allows
for a more fair comparison with other programs (as far as it has any use to
compare programs on nps).




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.