Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: generating captures without bitboards

Author: Edward Screven

Date: 10:09:37 06/12/99

Go up one level in this thread


On June 11, 1999 at 20:51:00, vitor wrote:

>thanks for the reply. i'll definately give it a try.
>but im unclear about a couple things. why do you check for futility threshold?

i'm not sure if you are asking (a) why i included the futility threshold,
or (b) what a futility threshold is.  answer to (a): it's a win to
apply the futility threshold as soon as you can to avoid work generating
moves.  answer to (b): in a quiescing search, each side is always allowed
to stand-pat (not move).   that means that q-search moves that don't immediately
push the current static evaluation score over alpha cannot
help the side to move avoid failing low -- they are futile.

one way to identify futile q-search moves, is to compute a futility
threshold, something like

  threshold := alpha - (evalscore + HEDGE)

where HEDGE is a constant (or maybe non-constant) that approximates the
best expected non-material evalation impact of any move.  then consider any
q-search move which doesn't gain at least threshold material futile.  note
that unless you are very conservative with HEDGE, or you have only small
dynamic evaluation components this method of determining futility isn't
completely safe.  for example, a pawn capturing a pawn could cause a side
to go from one isolated passed pawn to a pair of connected passed pawns.
or capturing a bishop could deprive an opponent of the ability to queen an
outside passed pawn.

>and how would you go about updating the between[from][to] table?

between[fromsquare][tosquare] is a constant table of 64 bit values,
one bit per square, that describes the set of squares between
fromsquare and tosquare.  so the value of between[SQUARE_A1][SQUARE_H8]
will have six non-zero bits describing a diagonal.

  - edward



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.