Computer Chess Club Archives




Subject: Re: Draw by 2nd repetition?

Author: Dave Gomboc

Date: 13:29:16 04/05/99

Go up one level in this thread

On April 01, 1999 at 13:11:29, Bruce Moreland wrote:

>On April 01, 1999 at 05:51:55, Inmann Werner wrote:
>>On March 31, 1999 at 16:11:27, Bruce Moreland wrote:
>>>On March 31, 1999 at 15:36:02, Will Singleton wrote:
>>>>I've seen similar situations.  My opponent makes a mistake, then I move, he then
>>>>moves the piece back where it was (unusual), and I now repeat instead of taking
>>>>advantage of the better situation.  This can occur only when I want the draw, of
>>>>course, and usually it's not harmful.  But it could be.
>>>>Is this worth fooling with?
>>>I think it is good to fix, yes.  I forgot to mention I've seen other cases as
>>>well, the one that I used is just easiest to describe.
>>One new thought for this discussion.
>>I changed from rep in 3 to rep in 2, and my program got a lot faster!(also the
>>cache should recognize the repetition?) If I find repetition, I stop the search
>>and return 0. 0 scores, I never put into Hashtables.
>>On the other hand, you are true with your irregular examples.
>>It is difficult to say, which thing is better.
>What I do is make a little table of positions that I don't want to repeat, and
>incrementally update this throughout the search.
>And position found during the search is in this table (of course it's removed
>from the table after the move is unmade).
>If I put every position that has actually occurred in the *game* in this table
>as well, I would have something that returned on 2x repetition, and which would
>exhibit the behavior I mentioned.
>But what I do is only include *game* position that have occurred *twice*.  A
>position that occurs *once* is not included in this table.

And you can clear out this table after every non-reversible move, yes?

>So, my program will repeat moves without going crazy expecting a draw, but will
>understand all the appropriate 3x repetition cases, and will find draws in the
>search more quickly, because if you repeat twice in the *search* you probably
>really should score it as a draw.
>Of course, there are other problems now.  My program will repeat positions a
>lot, and if it's in an ending where progress is slow, it runs up against the
>50-move rule.
>It also bugs the hell out of its opponents when it does this, but I'm not sure
>if that's a good thing or a bad thing.

It's a good thing. :)


Dave Gomboc

This page took 0.01 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.