Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Definition of branching factor?

Author: Robert Hyatt

Date: 20:04:40 02/01/01

Go up one level in this thread


On February 01, 2001 at 12:47:18, Larry Griffiths wrote:

>On January 31, 2001 at 11:18:56, Robert Hyatt wrote:
>
>>On January 31, 2001 at 03:29:12, Severi Salminen wrote:
>>
>>>>There are two terms that are intermixed often:
>>>>
>>>>1.  "branching factor" usually means the average number of branches from a
>>>>node, which for chess averages 35-38 (depending on who you believe) for the
>>>>whole game.
>>>>2.  "effective branching factor" is roughly calculated as you mentioned.  IE
>>>>nodes for iteration N-1 divided into nodes for iteration N.  Or you can use
>>>>the time.
>>>
>>>Ok, now I know the terms. Case 2 is what I indeed meant.
>>>
>>>What equation do you use for EBF calculation. I just thought that maybe one
>>>should not use the number of nodes in the equation I gave, but the number of
>>>leaf nodes.
>>>
>>>root_moves*EBF^(DEPTH-1)=leaf_nodes (not total nodes, I think)
>>>
>>>In initial position you have
>>>
>>>20*20^(2-1)=400 which is the number of leaves in ply 2.
>>>
>>>Using this I have EBF (in Vincent's position) of 3.8. So I still have to improve
>>>:)
>>>
>>>Severi
>>
>>
>>Since nodes per second is fairly constant for a program, you can either
>>use nodes(ply)/nodes(ply-1) or time(ply)/time(ply-1).  Those two numbers
>>should be pretty similar.
>>
>>doing it for leaf positions should also result in fairly comparable numbers,
>>although search extensions can affect this.  I would just use _all_ nodes
>>to keep it simple and to remain compatible with what others quote.
>
>Bob,
>
>Severi gave me this formula earlier.
>
>   ebf=pow(leaf_nodes/legal_root_moves, 1/(DEPTH-1));
>
>Are you suggesting that it should be:
>
>   ebf=pow(ALL_NODES/legal_root_moves, 1/(DEPTH-1));
>
>Larry.


the EBF you gave seems more like it is trying to approximate the true BF,
but it is effectively impossible to compute the BF based on leaf nodes and
root nodes.

The EBF most everyone uses is simply the 'multiplier' to compute how long
iteration N+1 will take, given the time taken to compute iteration N.



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.