Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: search reductions?

Author: Tord Romstad

Date: 05:25:09 11/17/03

Go up one level in this thread


On November 17, 2003 at 07:30:59, Daniel Shawul wrote:

>you are right,i meant deeper? Do you know any good place sir?
>i have found rebel's programming
>topics(http://members.home.nl/matador/chess840.htm) but you know
>they evaluate each node of the tree,which is quite costy for my program.

Without evaluating interior nodes, how are you going to do any static
forward pruning or reductions at all?

>Also I tried to reduce the search depth by 1, if score + margin < alpha
>for depths greater than 3.

Techniques like this seem to be very common (even in strong programs like
Rebel), but I am becoming more and more convinced that they are
fundamentally unsound.  The problem is that you may encounter the same
position somewhere else in the search tree where the value of alpha is
different.  When you look up the old search results in the hash table,
you get a search inconsistency.

IMHO, it is a sounder idea to base forward pruning, extension and reduction
decisions on how each move affects the different components of the evaluation
function.  As an example, you could consider the following idea:

In a position where one of the pieces for the side to move is hanging,
reduce all moves which satisfies all of the following criterions:

1. The move is not a capture.
2. The move is not a check.
3. The move does not defend the hanging piece, nor bring the hanging
   piece into safety.
4. The move does not threaten any of the enemy pieces.
5. The move does not increase the pressure on the opponent's king.
6. The move does not increase the passed pawn evaluation (for instance
   by advancing a passed pawn, or by supporting an unblocked advanced
   passed pawn by a rook or a king).

Tord



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.