Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Enhanced Transposition Cutoff

Author: Richard Pijl

Date: 09:38:59 07/28/04

Go up one level in this thread


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.
>
>Stuart
>
>P.S. The word I've heard in another thread is that ETC can
>help MTD(f) more than it can help PVS/NEGASCOUT... my MTD(f)
>uses a fairly well-debugged PVS/NEGASCOUT, so I don't know
>what will happen with ETC but want to try it out (again) as
>long as my understanding of it (see above) isn't flawed.



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.