Computer Chess Club Archives




Subject: Re: not using nullmove?

Author: martin fierz

Date: 05:53:42 02/15/04

Go up one level in this thread

On February 14, 2004 at 13:16:15, Christophe Theron wrote:


>What I have always tried to do is to hide the details of what's inside Chess
>Tiger (in order to protect my work a little bit) but still explain what my
>methodology (or work philosophy) was (in order to somehow give back to the
>I think it's important to have strong guidelines in your work. Some of them come
>from your knowledge of information processing in general (be careful not to
>create bugs, don't waste resources, never trust Microsoft...), and some of them
>are specific to the domain of chess programming and took me years to figure out.
>For example:
>* don't compute something in advance if you are not sure you will use it,
>because chances are that you will get a cutoff before you need it (remember it's
>just a guideline - sometimes you can break this rule).
>* you need a very accurate way of measuring progress, or you will not make
>progress at all.
>* Any change can make your program significantly weaker. You need to test your
>changes (with the method you have built) very often.
>* People believe that chess is about evaluation, but actually it's all about
>search (I'm trying very hard to break this rule, because it must be wrong from a
>mathematical point of view, but it's really difficult).

i'm not sure i agree with this one - but then i don't quite know what you mean
with that sentence :-)
my disagreement comes from the fact that improving your eval automatically
improves your search when you use any kind of pruning which depends on the
evaluation. nullmove is such an example, but this is a general observation which
works for other kinds of pruning decisions like futility pruning too. if you
evaluate better, you have a greater chance of searching/extending important
lines and pruning the irrelevant lines.

but perhaps you meant something different?!


>And the last one, maybe the most important:
>* It's very unwise to believe that I have understood the essence of chess
>programming. Therefore, all I know about this domain can be wrong, including the
>above guidelines (but not this one)!
>What you say about my posts being vague is interesting. If I told you what I do
>in Chess Tiger:
>1) over the years, maybe all you would create is a Tiger clone.
>2) where would be the fun for you?
>3) how would you get a chance to invent new ideas and to push the limits of our
>field if you were busy implementing my ideas?
>I see many people busy studying the Crafty source code and spending a lot of
>time improving the speed of their bitboard stuff. I think they are wrong and
>they will go nowhere.
>Computer chess needs a revolution. Chess programs at this time are just big
>calculators (mine included). It works, but it is so different from the way human
>players think that there must be a much better way.
>The wheel needs to be reinvented.
>    Christophe

This page took 0.09 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.