ivanhoe stuff

Code, algorithms, languages, construction...
Post Reply
benstoker
Posts: 110
Joined: Thu Jun 10, 2010 7:32 pm
Real Name: Ben Stoker

ivanhoe stuff

Post by benstoker » Mon Jul 12, 2010 11:37 pm

Does anyone know what these parameters are/do in IvanHoe's "common.h" header file?

Code: Select all

#define TempoValue 5
#define TempoValue2 5
#define PrunePawn 160
#define PruneMinor 500
#define PruneRook 800
#define PruneCheck 10

#define LazyValue 150
#define LazyValue2 300
What in theory happens to the search if the prune values are lowered significantly?

BB+
Posts: 1484
Joined: Thu Jun 10, 2010 4:26 am

Re: ivanhoe stuff

Post by BB+ » Tue Jul 13, 2010 2:55 am

Grepping for Prune shows that these are used in qsearch, presumably for delta pruning. So if you are behind by more than 160 cp, you ignore pawn captures. Same for minors and rooks. If you reduce this too much, you will often ignore everything except queen captures. Reasonable "lower limits" would maybe be like 110, 350, 550.

benstoker
Posts: 110
Joined: Thu Jun 10, 2010 7:32 pm
Real Name: Ben Stoker

Re: ivanhoe stuff

Post by benstoker » Fri Aug 06, 2010 7:17 pm

BB+ wrote:Grepping for Prune shows that these are used in qsearch, presumably for delta pruning. So if you are behind by more than 160 cp, you ignore pawn captures. Same for minors and rooks. If you reduce this too much, you will often ignore everything except queen captures. Reasonable "lower limits" would maybe be like 110, 350, 550.
I am fairly certain that your numbers above result in a +15 ELO or more improvement, at least in 15s + 0.1 inc games.

hyatt
Posts: 1242
Joined: Thu Jun 10, 2010 2:13 am
Real Name: Bob Hyatt (Robert M. Hyatt)
Location: University of Alabama at Birmingham
Contact:

Re: ivanhoe stuff

Post by hyatt » Fri Sep 17, 2010 11:07 pm

I know this term "Delta Pruning" came from Crafty, because I happened to choose the variable name "delta". But this is really just a form of futility pruning. One can compute the difference between material score and alpha (delta = alpha - material_score) and then you know that if a capture doesn't win at least that much material, it is a hopeless capture to search. But this is simply futility pruning. I hate to somehow create a new name for something that is really an old idea... and this is a very simple and old idea that did not originate in Crafty at all. It was at least in Cray Blitz and I suspect Slate used it as well...

Post Reply