Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Bruce Moreland - Examples, please :)

Author: David Rasmussen

Date: 15:54:55 01/15/03

Go up one level in this thread


On January 15, 2003 at 17:55:53, Russell Reagan wrote:

>
>[D]8/2p5/b4p2/8/8/2N1k3/8/4K3 w - - 0 1
>
>This is similar to one of Bruce's examples. If black had just played 1. ... Ke3
>(from f3), and white (your program) only had time for a shallow search, it would
>see that 2. Kd5+ <any> 3. Nxf6 would win a pawn, and so it would play Nd5+. If
>black plays Kf3 to get out of check, and your program thinks that if a position
>is repeated it must be a draw (only two repetitions, instead of three), it will
>see that Nc3 is a draw, and Nxf6 gives a score of -1.00 (based on material), so
>the program would play Nc3.
>

I understand what he's saying. What I would like is a test position that I can
use for testing a repetition scheme for a certain problem. In this case, I would
like a position that I could start with, enter some (suboptimal) moves manually
to get the positions in the game history position list, and then do a search
from the resulting position, that would result in the problem described, if the
repetition scheme used had the bug/problem in question.

>
>The method TSCP uses can sometimes incorrectly claim a draw. For example, from
>the opening position you can do this:
>
>tscp> new
>tscp> g1f3
>tscp> g8f6
>tscp> f3e5
>tscp> f6e4
>tscp> e5g4
>tscp> e4g5
>tscp> g4h6
>tscp> g5h3
>tscp> h6g8
>tscp> h3g1
>tscp> g8h6
>tscp> g1h3
>tscp> h6g8
>tscp> h3g1
>1/2-1/2 {Draw by repetition}
>tscp>
>
>Or in SAN...
>1. Nf3 Nf6 2. Ne5 Ne4 3. Ng4 Ng5 4. Nh6 Nh3 5. Ng8 Ng1 6. Nh6 Nh3 7. Ng8
>Ng1
>
>[D]rnbqkbNr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBnR w KQkq - 0 8
>
>The method TSCP uses is that if all of the same squares are empty, it thinks the
>position is the same, which is not correct, of course.
>
>[D]4K3/2R3QQ/8/qp6/5q2/3r4/8/4k3 w - - 0 1
>
>In this position, if the computer was playing black, and white (for some reason)
>wants to exchange rooks, so he plays Rd7. Your program doesn't want to and has
>to play a move quickly in time pressure, so it moves its hanging rook to c3,
>Rc3. White really wants to exchange rooks, so he plays Rd3. Now your program
>could play Rc7! and win a queen for a rook, but since your program uses the same
>method as TSCP and thinks two repetitions is a draw (instead of three), it
>thinks that Rc7 is a draw, since the same squares are empty as the initial
>position, so it exchanges rooks.

Thanks for the explanation.

/David



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.