Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: questions?

Author: Harald Lüßen

Date: 06:04:15 04/08/04

Go up one level in this thread


On April 08, 2004 at 07:10:29, Daniel Shawul wrote:

>Hi
>Here are some questions
>
>2.In Ed's paper there are some tricks done at horizon.
>   trick one     if(score - (margin + largest hanging piece) > beta)
>                        don't do quiescence
>   trick two     if(score - 900 > beta)
>                        don't do quiescence
>   My question is every body does
>              score=eval()
>              if(score > beta)
>                   don't do quiescence;
>   So i don't see how the tricks work?

His alpha is our beta and vice versa.

I do:
int search( depth, alpha, beta )
{
  score = evaluate();
  // pruning tricks here
  while ( moves )
  {
    do_move();
    score = -search( depth-1, -beta, -alpha );
    undo_move();
  }
}

Ed perhaps does:
int search( depth, alpha, beta )
{
  while ( moves )
  {
    do_move();
    score = evaluate();
    // pruning tricks here
    score = -search( depth-1, -beta, -alpha );
    undo_move();
  }
}

Translated to my function his tricks would look like:
trick one   if(score + margin + opponents_largest_hanging_piece < alpha)
                   don't do quiescence
trick two   if(score + 900 < alpha)
                   don't do quiescence
And that I can understand.

Harald



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.