Author: Stuart Cracraft
Date: 16:36:03 12/22/05
Go up one level in this thread
On December 22, 2005 at 19:30:50, Dann Corbit wrote: >On December 22, 2005 at 19:20:15, Stuart Cracraft wrote: > >>On December 22, 2005 at 18:18:02, Stuart Cracraft wrote: >> >>>The only selectivity of which I am aware is progressive, >>>narrowing of # of moves searched at each ply as the tree >>>deepens - disadvantages can include throwing out good moves. >>>Requires lots of knowledge and sophisticated evaluation >>>to avoid that and even then it does. We're back in the A. >>>vs. B arena. This is 40+ year-old concept from looking >>>at MacHack. >>> >>>But about 20-25 years ago, selectivity of a different sort >>>(I think) started making its rounds. I remember Larry Kaufman >>>and John Stanback talking about it quite a bit and saying >>>they'd get somewhat deeper searches and improved results >>>even though it was ostensibly less accurate. >>> >>>So I want to ask EXACTLY how you are implementing selectivity >>>in your program. >>> >>>I threw together something and it did far poorer in a tactical >>>suite - so obviously my conception of selectivity is poor itself. >>> >>>I seek enlightenment from the august programmer members of this >>>board in "What is selectivity?" >>> >>>Stuart >> >>I am discounting null move search, extensions, and reductions. >> >>I am interested in other types of selective. >> >>Are there any that work? > >Did you read Ernst Heinz's book: >"Scalable Search in Computer Chess" > >He has something he describes as AEL pruning that is clearly selective >searching. >The "A" stands for Adaptive Null Move, so that part does not fit your criteria. > >For NULL MOVE reductions he uses 3 plys reduction sometimes and 2 plies >reduction sometimes according to the formula: >/* The formula below is from Ernst A. Heinz's book "Scalable Search in Computer >Chess" > * It comes from pages 35-37 and is described elsewhere in the book. > * This method is called 'Adaptive Null Move Pruning' with R(adapt) = 3(6)~2. > * In English, the NULL move depth reduction is equal to two ply by default. > * However, if either (a) both sides have fewer than 3 pieces and the current >depth > * is 8 ply or more or (b) at least one side has greater than 2 pieces and the >current > * depth is 6 ply or more then increase the depth reduction to 3 full ply. */ > return TWOPLY + ((depth) > ((6*ONEPLY) + (((cwp < 3 && cbp < 3) ? TWOPLY : >0))) ? ONEPLY : 0); > >The E stands for Extended Futility Pruning >And the L stands for Limited Razoring. > >Here is a paper that talks about that part of it: >http://digilander.libero.it/gargamellachess/papers/AEL%20pruning.zip Yes, I implemented something near to this and compared it with what I have and didn't see a startling improvement. I wonder how many rating points Ernst feels its worth.
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.