Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: SEE 101

Author: Andreas Guettinger

Date: 15:54:11 08/06/04

Go up one level in this thread


Two small glitches in my example:

The array of values should be:
mat_value[13] = {INFINITY, 900, 500, 300, 300, 100, 0, 100, 300, 300, 500, 900,
INFINITY};

and after looking for hidden figures the next_fig has to be updated to the next
figure that takes part in the attack.

For the minimax part, it's best to look at an examples and print out all the
steps at first for debugging.
Ok, this is maybe not the best example, just one that I came quickly up with.
The scores in the minimax column derive from whether to back up the scores or
stand pat, by following the if <= or >= part.


[D]1k1q4/p7/1pp5/3n4/4B3/P4Q2/1PP5/2K5 w - -

move: Be4xd5


counter  swapscore[counter]      stm flag    minimax swap
0:       300                      1            0
1:       300 + (-300) = 0        -1            0 (back up)
2:       0 + 100 = 100            1         -800 (don't back up)
3:       100 - 900 = -800        -1         -800 (back up)

backed up score = 0 (only exchange, net gain 0)


[D]1k1q4/p7/1pp5/3n4/2P1B3/P4Q2/1P6/2K5 w - -

move: c4xd5


counter  swapscore[counter]      stm flag     minimax swap
0:       300                      1           300
1:       300 + (-100) = 200      -1           300 (back up)
2:       200 + 100 = 300          1           300 (back up)
3:       300 - 300 = 0           -1           900 (don't back up)
4:       0 + 900 = 900            1           900 (back up)

backed up score = 300 (win a knight)


regards
Andy



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.