Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: WAC 141 blowup

Author: Tord Romstad

Date: 02:46:27 09/01/04

Go up one level in this thread


On September 01, 2004 at 05:26:18, Uri Blass wro

>I do not think that it is a good idea to use mate threat everywhere.
>
>I do not use mate threat extension today but if I decide to use it then it seems
>to me better to use it only when you are almost sure of fail high based
>on static evaluation.

In fact, this is not very far from what I do.  My code for the mate threat
extension is similar to this:

if(static eval > 0) mate_threat_extension = 45;  /* One ply=60 */
else if(static eval > -100) mate_threat_extension = 30;
else if(static eval > -200) mate_threat_extension = 20;
else mate_threat_extension = 0;

>I use fail hard and not fail soft so the only simple way for me to detect mate
>threats is simply to search for mates when the remaining depth is big enough.

A simple solution to this problem would be to use a hybrid algorithm
between fail hard and fail soft.  You could use a search which is *almost*
entirely fail hard, but which returns the scores rather than the bounds
in case of mate scores.

>One reason that I almost did not try mate threat extensions is that I think that
>Movei does not do enough pruning and I think that I need more pruning when I see
>that Gothmog usually outsearch movei in plies so I decided that having check
>extension and botvinik extension for repeated checks and some other more rare
>extensions like extending transition to pawn endgame is probably enough but I
>guess that mate extension in the right condition may help me(I did not try
>search changes in the last months and the time that I worked on movei was only
>about changing the code to be more readable and changing time management).
>
>I may test and decide to use mate extensions only if I get the following
>conditions:
>1)It often helps to solve test positions faster.
>2)It usually does not cause the program to need significantly more nodes to get
>speicific depth in positions that it does not solve faster.
>
>Test suites should be always the first test for new extensions and I think that
>if I do not get better results there then there is no point even to try them in
>games.

I am not entirely sure of this.  I have seen several people claim that
the recapture extension slows them down in test suites, but improves the
playing strength in games.  My own experience is that the recapture
extension makes very little difference, in test suites as well as in games.

>  They are usually not very expensive.
>>Do you use the mate threat information in move ordering?  If you don't,
>>this is definitely worth a try.  Order the mating move directly after
>>the hash table move.
>>
>>The Botvinnik-Markoff extension is also useful in WAC141.  With the
>>default extensions (3/4 of a ply for mate threats, 1/2 of a ply for
>>the BM extension), my program finds Qxf4 after only 6 plies and
>>12,993 nodes:
>>
>> 1       -0.06     0.00         14 Kg1
>> 2       -1.47     0.00        198 Kf1 Re2
>> 3       -1.25     0.00        611 Kf1 Nd3 Qd2 Re1+ Kg2
>> 4       -1.75     0.01       1442 Kf1 Nd3 Qd2 Re1+ Qxe1 Nxe1
>> 5       -1.22     0.04       5724 Kf1 Re2 Qb1
>> 6    >= -1.22     0.11      12993 Qxf4 Bxf4 Rxh5 gxh5 Rxh5
>> 6        1.50     0.16      21341 Qxf4 Bxf4 Rxh5 gxh5 Rxh5 Bh6 Rxh6
>
>Does it find it because of search or because of evaluation?

Search, definitely.  White's material disadvantage is so enormous that
none of my positional evaluation terms could possibly compensate.  It
is difficult to say exactly what happens in the search, though.  The
PV is truncated, and it is also possible that it contains incorrect
moves (because it is build from the hash table).

>If it evaluates the final position in the pv as +1.50 for white then it is part
>of the explanation why it finds it so fast.

To some extent, you are right.  Gothmog assumes that the result of
iteration n+1 is reasonably close to the result of iteration n.  When
the score makes a really big jump from one iteration to the next, the
engine will sometimes just give up trying to find the exact score, and
continues with the next iteration instead.  This is probably what happens
at iteration 6 in WAC141.

Tord




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.