Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Enhanced Transposition Cutoff

Author: Stuart Cracraft

Date: 11:05:49 07/28/04

Go up one level in this thread


On July 28, 2004 at 12:38:59, Richard Pijl wrote:

>On July 28, 2004 at 12:04:41, Stuart Cracraft wrote:
>
>>So in looking at ETC and implementing it (without much benefit
>>I might add, in a PVS/NEGASCOUT search), I thought a little more
>>and perhaps have a complete misunderstanding of it, hence the
>>implementation. Am reconsidering it for a recent MTD(f) implementation
>>that is at parity with the PVS/NEGASCOUT with very little work.
>>
>>From what I have read, ETC is a check prior to search() in the
>>main search of all child positions hashkeys after each child
>>makemove(). If any exist in the hash table and have length >=
>>current depth and provide a cutoff, then skip searching all
>>the children.
>>
>>Is that about it?
>
>I'm not sure if I understand you correctly.
>
>Before starting the main loop (that does a search of the children) ETC will
>check the positions reached by each of the children to check the hash signatures
>and whether a cutoff can be done. With perfect moveordering this will not get
>you anything. But when not the first but e.g. the third move will get you a beta
>-cutoff, ETC will enable you to do a cutoff fast, without searching the first
>two moves. In MTD, the chances that children's positions are already in the
>hashtable is bigger than in regular PVS, so the gain may be bigger there.
>
>But watchout for the pitfalls. Also consider extensions that you may do on
>certain moves to determine whether an entry found in the hashtable has
>sufficient depth.
>
>What I'm doing to make sure that the cutoff is ok, is that I do not do an
>immediate cutoff. Instead I replace the hashmove by the move that should create
>a cutoff according to ETC.
>This got me a few percent speedup although I'm using PVS.
>Oh, one thing more: As ETC costs a bit, only do it when the remaining depth is
>high enough to make up for the costs. I'm only doing ETC based moveordering when
>there are at least 4 ply to go.
>Richard.

Great -- 4 seems to be the number and I'll try it (and 3 and 2). :-)

What you said about the children is right from my understanding. perfect
moveordering what obviate the need for ETC and better-and-better move
ordering would render ETC less and less beneficial and eventually just
an overhead cost.

Stuart




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.