How many nodes/evals are too many?

Discussion of chess software programming and technical issues.

Moderator: Ras

User avatar
stevemulligan
Posts: 117
Joined: Wed Jul 20, 2011 2:54 pm
Location: Ottawa, Canada

How many nodes/evals are too many?

Post by stevemulligan »

My engine is standard alpha beta search with quiescent search and transposition tables. I want to know how I compare to other engines in terms of total nodes searched and evals performed but I'm not sure which engine to compare against.

Eg, Let's say my search looks at 15640 nodes from the start position and Gaviota looks at 2714. I know it has Null move and I don't but that's about all I know about Gaviota.

A chart of approx node counts & evals expected in the type of search I'm using would really help me figure out where I need to direct my efforts.
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: How many nodes/evals are too many?

Post by michiguel »

stevemulligan wrote:My engine is standard alpha beta search with quiescent search and transposition tables. I want to know how I compare to other engines in terms of total nodes searched and evals performed but I'm not sure which engine to compare against.

Eg, Let's say my search looks at 15640 nodes from the start position and Gaviota looks at 2714. I know it has Null move and I don't but that's about all I know about Gaviota.

A chart of approx node counts & evals expected in the type of search I'm using would really help me figure out where I need to direct my efforts.
Gaviota has also LMR, which reduces the number of nodes significantly. but also have extensions, which makes things difficult to compare.

I would compare the engine with a proven good, bug free, but simple engine. I think that Fruit 1.0 would be a good idea. You can switch off null move with a UCI parameter, so you can make a good comparison. I used to use it for that purpose.

Take into account that sometimes evaluation has a big impact on tree size, so comparisons are only "ball park".

Miguel
User avatar
stevemulligan
Posts: 117
Joined: Wed Jul 20, 2011 2:54 pm
Location: Ottawa, Canada

Re: How many nodes/evals are too many?

Post by stevemulligan »

Ok for Fruit 2.1 from startpos to depth 5,

all pruning off - 10398 nodes.
only null move pruning - 1934 nodes. Nice.


That gives me some nice targets to shoot for. Going to try null move first based on this page (from Glaurung Chess for iPhone website).

I'm not sure what the search code example is based on (stockfish maybe?) but this little bit of code explained null move for me:

Code: Select all

// Null move search:
  if(ok_to_do_nullmove_at_this_node()) {
    make_nullmove();
    value = -search(-beta, -beta, -(beta-1), depth-4);
    unmake_nullmove();
    if(value >= beta) return value;
  }
I had spent hours reading descriptions of null move and never really got it until I saw that snippet.
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: How many nodes/evals are too many?

Post by michiguel »

stevemulligan wrote:Ok for Fruit 2.1 from startpos to depth 5,

all pruning off - 10398 nodes.
only null move pruning - 1934 nodes. Nice.


That gives me some nice targets to shoot for. Going to try null move first based on this page (from Glaurung Chess for iPhone website).

I'm not sure what the search code example is based on (stockfish maybe?) but this little bit of code explained null move for me:

Code: Select all

// Null move search:
  if(ok_to_do_nullmove_at_this_node()) {
    make_nullmove();
    value = -search(-beta, -beta, -(beta-1), depth-4);
    unmake_nullmove();
    if(value >= beta) return value;
  }
I had spent hours reading descriptions of null move and never really got it until I saw that snippet.
I was referring to Fruit 1.0 available here
http://wbec-ridderkerk.nl/html/download.htm

It is simpler, so it would be a more realistic target at the beginning (I think).

Miguel
User avatar
stevemulligan
Posts: 117
Joined: Wed Jul 20, 2011 2:54 pm
Location: Ottawa, Canada

Re: How many nodes/evals are too many?

Post by stevemulligan »

Sorry, grabbed the linux version out of habit.

Fruit 1.0 gives 16091 (with null move and aspiration search off - I think its very similar to what I'm using). That makes me feel a lot better.