Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Node counting in Crafty 14.2 and 15.20

Author: Robert Hyatt

Date: 10:10:25 11/03/98

Go up one level in this thread


On November 03, 1998 at 07:48:50, Ernst A. Heinz wrote:

>On November 02, 1998 at 16:27:39, Robert Hyatt wrote:
>>
>>On November 02, 1998 at 09:49:34, Ernst A. Heinz wrote:
>>
>>>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
>>>>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.
>>>
>>>We do *not* count illegal positions for our NPS numbers.
>>>
>>>IMO counting illegal positions is not a good idea because they require so much
>>>less work than legal nodes. Actually, there is not much to do beside
>>>make/unmake move at illegal nodes.
>>>
>>>=Ernst=
>>
>>What about in the quiescence search?  Do you cull illegal captures before
>>making them?
>
>Some yes, some not.
>
>>Or not count them when you notice they are illegal.
>
>Exactly -- we do not count them although we called "expand_node" and made the
>move. This way your NPS number goes up if you generate less illegal moves.
>
>>I think
>>counting or not-counting makes little difference overall since in my case,
>>the number is already "mixed" since normal search weeds illegal moves out
>>while the q-search does not...
>
>If you do not count illegal positions you can actually measure the improvement
>made by generating less of them (see above).
>
>BTW, do you roughly know how many of your reported nodes are illegal ones?
>
>=Ernst=

at one time I did count illegal positions when I hit them, and that is what
led to the "GenerateCheckEvasions()" procedure I use to generate moves when I
start off in check.  It only generates legal moves, and *greatly* cut down that
illegal position count to the point I stopped counting them.  It is small, but
I'll try to go back and add a counter to see what they look like.  But I'd
suspect very few overall...



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.