Author: Dan Honeycutt
Date: 10:21:27 07/06/04
Go up one level in this thread
On July 06, 2004 at 12:30:48, Jeff GAZET wrote:
>Hi,
>
>i'm not sure about the way to limit extensions into the search tree.
>I think some code will be easier to understand than my english. Example :
>
>search(int depth,int alpha,int beta...)
>{
>int base_extended=0, extended;
>
>if(InCheck(side)) {depth++; base_extended+=ONEPLY;}
>
>foreach(move)
> {
> extended=0;
>
> if(is_pawnn_push_7(move)) {depth++; extended+=ONEPLY;}
> if(is_recapture(move)) {depth++; extended+=ONEPLY;}
>
> if(extended>ONEPLY) {extended=ONEPLY;}
> if(base_extended+extended>TWOPLY) {extended=0;}
>
> domove()
> score=-search(...);
> undomove()
>
> if(extended) {depth-=extended;}
> }
>}
>
>Is that right ?
>
>Regards.
Why don't you extend the move rather than the position. ie:
foreach move
domove(move);
extended=0;
if(is_pawnn_push_7(move)) extended+=ONEPLY;
if(is_recapture(move)) extended+=ONEPLY;
if(is_check(move)) extended+=ONEPLY;
if (extended > LIMIT) extended = LIMIT;
score = -search(depth+extended, ...);
undomove(move);
Dan H.
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.