Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Razoring?

Author: Amir Ban

Date: 01:11:42 01/27/99

Go up one level in this thread


On January 26, 1999 at 22:08:21, Robert Hyatt wrote:

>On January 26, 1999 at 15:02:10, Peter Fendrich wrote:
>
>>On January 26, 1999 at 11:56:50, Steve Maughan wrote:
>>
>>>I've heard of this technique but am not sure exactly what it is.  Could someone
>>>please explain it?
>>>
>>>Regards
>>>
>>>Steve Maughan
>>
>>Like the term "selective program" I don't think there is only one definition.
>>The first time I heard about razoring in chess programs was in the article:
>>"Tree-Searching and Tree-Pruning Techniques" by John Birmingham and Peter Kent
>>at 1977. It was in "Advances in Computer Chess 1" wich I don't have but I got
>>the article from some other book.
>>They described razoring like this:
>>1) In a node make and search the first n (few) moves.
>>2) The rest of the moves are first evaluated by the static evaluator. If the
>>evaluator didn't reach alpha they just skipped the move instead of of searching
>>it.
>>
>>At that time it probably was a good idea when the programs reached a few plies.
>>This old style of razoring is better done by Null moves today, IMHO...
>>
>>A more modern approach can be found at Dark Thought's site, especially at the
>>page: http://wwwipd.ira.uka.de/Tichy/DarkThought/node29.html
>>They just shortens the depth if the razoring condition is true.
>>
>>//Peter
>
>The only definition of razoring I remember seeing is the one I use in Crafty:
>
>If I am at depth=2 (2 plies from the leaves, IE I have one more ply of
>full-width stuff to look at before I drop into the q-search code) and the
>current move is not 'interesting' (not a check, etc.) then I reduce the depth
>by 1 extra ply which means I drop right into quiesce.  I only do this if the
>move is uninteresting, and the static eval (including material) is so far below
>alpha that 'uninteresting' moves have little chance to bring it back up to a
>point where it won't fail low.
>
>works pretty well most of the time, and speeds the search by 25-50% generally.

But this is just futility pruning, which I guess most everybody does. Razoring
is supposed to be a sort of forward pruning where rather than skipping an entire
subtree, you search it to a reduced depth, typically one less than normal depth.
 The advantage is that you get most of the saving but with much lower risk than
pruning entire subtrees.

Razoring is the only forward pruning technique Junior uses, with a depth
reduction of one (half-ply).

Seems like Crafty uses the same definition. Grep the source and you'll find this
comment:

/*
 ----------------------------------------------------------
|                                                          |
|   now we toss in the "razoring" trick, which simply says |
|   if we are doing fairly badly, we can reduce the depth  |
|   an additional ply, if there was nothing at the current |
|   ply that caused an extension.                          |
|                                                          |
 ----------------------------------------------------------
*/

Amir



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.