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.