Computer Chess Club Archives




Subject: Re: Question for the MTD(f) experts

Author: Vasik Rajlich

Date: 03:46:08 04/15/04

Go up one level in this thread

On April 15, 2004 at 05:16:23, Tord Romstad wrote:

>On April 14, 2004 at 19:54:38, rasjid chan wrote:
>>I am now using the the simplest mdtf, nothing except adding about
>>10-20 lines at the root-search and it seems to work equally well as
>>my aspiration/pvs.
>Your aspiration/PVS was probably still rather clean and simple.  For a
>complex, highly developed and very efficient PVS search, changing to
>MTD would be a big and difficult rewrite.  There is a considerable amount
>of tricks and techniques which work well with one algorithm and not with
>the other.
>If you take a big and complicated PVS engine like Crafty and change it to
>use MTD, I think you would need several months to make it anywhere near
>as efficient as the current PVS search.
>>I have fail-soft, hash TT with 1 bound, only step +/-1.
>That's one of the reasons why you only had to add 10-20 lines of code, of
>course.  :-)
>>I don't need to change anything(yet)in other parts of my program. The
>>same hashing remains. But as Vasik mentioned before, it is crucial to
>>mdtf that fail-soft is w/o bugs and CORRECT. I think routinely
>>failing/hashing outside bounds itself may not be sufficient.
>This depends on your definition of sufficient, of course.  I still use a
>quick and dirty fail-soft which I wrote in a few minutes without even
>thinking.  I am sure it is nowhere near perfect, and this discussion has
>convinced me that I should take a look at it and see if I can find any
>improvements, but I find it hard to believe that I would get a big leap
>in playing strength by doing this.  My quick and dirty fail-soft seems
>to be doing OK.
>>I have not yet examine if other things need to be changed to make mdtf
>>efficient.I guess most who try mdtf will abandone it as it usually will be
>>clearly slower.
>If you already have a well-oiled and highly optimized PVS, this is probably
>correct.  But if you haven't yet reached that stage, I would claim precisely
>the opposite.  It is much easier to write an efficient MTD(f) than an
>efficient PVS.

The interesting thing is, nobody knows if PVS or MTD (f) is better.

I don't believe Plaat's claims. My intuition now tells me that the two should be
very close.

You can also forget about comparing them. No matter how much of a genius you
think you are, your first implementations of either of these will be bad. You
just pick one, and by the time you get it working reasonably well, it will make
no sense to switch. And if you did switch, the new one would be bad.

It's the same question re. your board representation. You make a decision when
you know next-to-nothing, and go from there.


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.