Author: Robert Hyatt
Date: 19:53:31 11/28/98
Go up one level in this thread
On November 28, 1998 at 16:49:25, Christophe Theron wrote: >On November 28, 1998 at 14:25:45, Frank Phillips wrote: > >>Thanks. Order seems important . Killer moves are a big help in >>some positions. > >Yes. You should not find them to be a waste of time. > > >>>>And on which planet? :) >>Earth. > >Oh! So we are neighbours! :) > > >> If my question seemed strange put this down to inexperience. This is my >>first attempt. But I thought that the number of moves that the search >>considered out of each position?s (node?s) move list would be an important >>performance indicator. Mine averages around 9 in the middle game, which seems >>high. > >I see. You are talking about the branching factor! > >To measure it, I think you should display the number of moves seen at the end of >each iteration and compute the average of > > nb_of_nodes(iteration N) / nb_of_nodes(iteration N-1) > >(the number of nodes of iteration N-1 is also counted in the number of nodes of >iteration N) > >Notice that it is different depending if N is odd or even. > >For example you could average the result for iteration 7 and iteration 8 to have >a better measure. Do this for a number of different positions to have an even >better number. > >The measured branching factor should definitely be under 6. > >9 is way too high. > >Some good programs have a branching factor under 4. It is maybe the case of >Crafty. > > >>I got the impression from posts here that 2 or 3 is probably closer to >>the norm? My program manages about 7-8 ply (plus check and recapture >>extensions, and quiescent search) in 10 seconds at about 80k nps. > >This does not sound too bad... > > >>Crafty, at >>twice this speed, goes disproportionately deeper. > >Really? Are you sure? > > >>Something badly messed up I >>guess. > >Compute your branching factor and you will get an idea. > >Maybe others compute it differently. I don't know if there is a "standard" way >to compute it... > > > Christophe I compute this as nodes(N)/nodes(N-1) where N does not include N-1's nodes. or you can do this with time(N)/time(N-1) where the time for N is computed as ending_time(N)-starting_time(N), for all iterations... there you should get in the 2-4 range, with 4 being on the upper end of acceptable... although there will always be positions where the branching factor goes to 6-7-8 or even way higher, when move ordering is not so good because of the dynamics of the position.
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.