Author: Robert Hyatt
Date: 09:52:16 12/17/03
Go up one level in this thread
On December 17, 2003 at 10:24:52, Richard Pijl wrote: >On December 17, 2003 at 09:49:12, Andrew Williams wrote: > >>On December 17, 2003 at 07:48:55, Anthony Cozzie wrote: >> >>>On December 17, 2003 at 02:12:08, Andrew Williams wrote: >>> >>>>On December 16, 2003 at 21:22:56, Anthony Cozzie wrote: >>>> >>>>>Recently I experimented with adding MTD(F) into Zappa. It has been an >>>>>interesting experiment, but I am going back to PVS(). >>>>> >>>>>I thought that since Zappa has a [UL,LL] paired transposition table and an >>>>>evaluation granularity of only 1/100 of a pawn, MTD(f) would work quite well, >>>>>but that does not seem to be the case. The MTD(f) version of Zappa does >>>>>slightly better on test suites (113/183 @ecmgcp v 106 @ 10s/move) but in the >>>>>positional test suites it averaged about 3/4 of a ply less than the PVS() >>>>>version. My guess is that because MTD(F) tries all moves, some of the >>>>>"ridiculously losing captures" ordered near the end by PVS() are tried earlier, >>>>>which accounts for the increased test suite performance. >>>>> >>>> >>>>I don't understand the last part of this paragraph. Why would "ridiculously >>>>losing captures" be tried earlier (than what?) in MTD? >>>> >>>>>If anyone has any suggestions, I'm keeping the MTD(F) code in Zappa (just turned >>>>>off) and I'm willing to try anything. >>>>> >>>>>anthony >>>> >>>>Andrew >>> >>> >>>In most test suites the winning move is evaluated as losing by the SEE. So in >>>PVS() it gets tried last. In MTD(f) it goes through all the moves every time. >>> >>>anthony >> >>Sorry, I still don't understand? I would have thought that move ordering would >>be pretty much identical for both methods? Am I missing something? >> > >Moveordering is identical, but in PVS the 2nd move is only tried when the 1st >move is fully searched. In MTD(f) (as I understood it from Aske Plaat's paper) >you try all moves with the initial 0-window before, in which case the moves >ordered last are searched earlier than when using PVS. >Richard. That's a valid observation. In normal PVS the entire N-ply tree is searched before the last root move is searched. In mtd(f), the entire root move list including the last move is searched multiple times, giving that last move a chance to pop to the top significantly quicker... > >>My engine is MTD(f) but if I were to convert it to PVS I think it would still >>try all the moves in the same order, all things being equal. You should look at >>Tord's message as he has some very good advice in there. The convergence >>accelerator thing is *very* important. >> >>Andrew
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.