Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Selectivity at depth == 1

Author: Tony Werten

Date: 23:17:23 01/16/06

Go up one level in this thread


On January 16, 2006 at 14:53:52, Stuart Cracraft wrote:

>Hi - does this make any sense?
>
>#ifdef SELECTIVE
>      // If depth is 1 and no reductions or extensions and eval is bad relative
>to alpha
>      // then search only captures, promotions or checking moves
>      if (depth == 1 && reduction == 0 && extension == 0)
>        if (eval(bd,QUIET) <= alpha+(1*uparams[pawn]))
>          if (!(sml[mvi].cap!=0||sml[mvi].pro!=0||incheck(bd))) {
>            unmakemv(bd);
>            continue;
>          }
>#endif
>
>I don't see any great improvement for 1*uparams[pawn], 3*uparams[pawn],
>and 5*uparams[pawn].
>
>The point is that if at depth == 1 and no reductions or extensions and
>eval is worse with respect to alpha and it is not a capture, promotion
>or the move didn't put us into check, then skip searching it.
>
>I sense the above is not doing anything at all and that what I'm seeing
>is just a non-change.
>
>Perhaps someone can see what is wrong with the above.

What do you expect to happen ?  I don't think the code isn't doing something. If
you don't reduce, you'll jump into qsearch, do an eval, get a score back that is
bigger than beta and jump back with score<alpha.

Pretty much the same you are doing now, except for 1 function call.

Tony



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.