Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Should an engine using SEE beat another not using it?

Author: Carlos del Cacho

Date: 02:34:26 01/28/01

Go up one level in this thread


On January 27, 2001 at 17:17:31, Severi Salminen wrote:

>
>>Just a quick test. Two runs on WAC 5 sec/problem:
>>
>>   - SEE pruning in Quiescent Search: 270
>>   - without it: 246
>>
>>So it is definitely a win for my program (Pepito).
>
>I have not yet tested my prog on suites, so hard to say. Could you play a few
>games between those versions to see how SEE affects strenght in "real life".
>
>>If I can get a cut with pos_eval + mat_gain I give up this capture. Another
>>question is if SEE is profitable in normal search. I also it there but kicking
>>it out would be a bit more difficult so I haven't tried yet :-). At the same
>>time captures are generated I assign them their MVV/LVA scores. Then I try
>>captures with positive scores and when this gets below zero I call SEE for
>>remaining moves. Losing ones are searched after all non captures.
>
>I'm doing this already and a little more. I generate all captures and assign a
>SEE score for all of them - except for moves where a piece or pawn is capturing
>a piece with higher value (PxN, NxR, RxQ...), in these cases I assign
>captured_piece_value-capturing_piece_value. Then I sort them and try all moves
>whose material(node)+see_score(move)+MARGIN>alpha and see_score(move)>=0. As my
>moves are sorted I can quit when the first move fails one of above criterias. I
>am very disappointed because the SEE version doesn't show tactical superiority
>to SEEless version. I have to make further testings.
>
>Severi

You may have a bug here. You are mixing up MVV/LVA scores with SEE ones so you
shouldn't quit in the first move that fails the test. Suppose knight takes rook.
You assign it a score of +2 (well, depends on your material eval but it should
be close). If you did SEE you might find that that rook is hung and can be
captured for free (that makes it +5). So you can only stop searching at the
first move if all your scores are SEE ones.

That's a 3 pawn difference. You could prune this winning move because of the
material(node)+see_score(move)+MARGIN>alpha condition, unless you have a MARGIN
of 3 pawns, which is probably ineficcient. Just a thought.

Greets,
Carlos "I've had this bug before... :-)))"



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.