Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Problem with eval code for bad trades in crafty

Author: Oliver Roese

Date: 05:52:36 06/01/00

Go up one level in this thread


On June 01, 2000 at 06:58:55, Kai Skibbe wrote:

>Today an experimental fritz engine of Gromit3 reaches the following
>position against Junior6.
>
>[D]1r6/5B2/n2n4/PN4kp/4P3/8/1K6/R7 w - - 0 48
>
>Here Gromit plays the move Bxh5 with an evaluation of +0.48. Junior says
>-5,09 in favour of black. After Rxb5+ Kc3 Kxh5 white is totally lost.
>I remember that I have implemented the evaluation code for bad trades
>similar to crafty and so it isn´t surprising that Crafty also want to play
>Bxh5 with a slightly negative evaluation (-0,28). The code in Crafty is :
>
>if (WhiteMinors != BlackMinors) {
>  if (WhiteMajors == BlackMajors) {
>    if (WhiteMinors > BlackMinors) {
>      if (WhiteMajors==1 && !TotalWhitePawns && TotalBlackPawns) {
>        score=0;
>        break;
>
>The last if-condition should be :
>
>if( WhiteMajors==1 && !TotalWhitePawns && TotalBlackPawns &&
>    1==(WhiteMinors-BlackMinors) )
>

And
...
  if (WhiteMajors == BlackMajors) {
    if( WhiteMajors>=1 && !TotalWhitePawns && !TotalBlackPawns &&
      1 < (WhiteMinors-BlackMinors) ) {

should be scored as won for white.
That means, being up two minor pieces is sufficient to start a mateattack, if
there is support by a major piece.


>So the materialscore isn´t set to 0, if one side is more than one minor up.
>
>Now Gromit didn´t play Bxh5 and after Bxh5 Gromit says -4,45 in favour for
>black.
>
>Bob, am I missing something or is this a bug in the crafty code ?
>
>
>Best regards
>Kai




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.