Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Shredder wins in Graz after controversy

Author: Bob Durrett

Date: 06:41:18 12/10/03

Go up one level in this thread


On December 09, 2003 at 23:22:12, Robert Hyatt wrote:

>On December 09, 2003 at 19:36:05, Bob Durrett wrote:
>
>>On December 09, 2003 at 13:21:35, Robert Hyatt wrote:
>>
>>>On December 09, 2003 at 13:02:56, Bob Durrett wrote:
>>>
>>>>On December 09, 2003 at 11:13:56, martin fierz wrote:
>>>>
>>>>>On December 09, 2003 at 10:50:23, Sune Fischer wrote:
>>>>>
>>>>>[snip]
>>>>>
>>>>>>If the bare engine had been playing he would have had to add a few things the
>>>>>>GUI normally takes care of.
>>>>>>For UCI engines it is expected that the GUI handles certain (trivial) things.
>>>>>
>>>>>claiming a draw on 3-fold repetition is *not* a trivial thing. there are
>>>>>different possible cases:
>>>>>
>>>>>1) if your opponent avoids it, he loses
>>>>>2) if your opponent avoids it, he wins
>>>>>
>>>>>in case 2) you should of course claim the draw, because perhaps he will notice
>>>>>he could avoid it. in case 1) however, you can safely repeat the moves, and not
>>>>>claim the draw. it is *not* mandatory to claim a draw on the 3rd repetition. so
>>>>>you should basically not claim it if you might win if your opponent avoids the
>>>>>draw.
>>>>>
>>>>>how do you expect a GUI to make the right decision? imagine the following
>>>>>absurdity: jonny is running without GUI and happily repeats moves against
>>>>>shredder, and does not claim the draw because the engine doesn't know about it.
>>>>>shredder has a bug and allows a 3-fold repetition but will deviate before the
>>>>>fourth repetition. now shredders GUI stops shredder from moving, and says "i
>>>>>claim a draw with my move XY because of 3fold repetition" - this would have been
>>>>>hilarious for everybody except SMK :-)
>>>>>
>>>>>since 3fold repetition is something you claim or don't claim based on the
>>>>>current position, it is clearly something the GUI shouldn't be doing!
>>>>>
>>>>>cheers
>>>>>  martin
>>>>
>>>>THIS suggests the obvious changes which should be made to engines and GUIs ASAP
>>>>by all chess programmers.
>>>>
>>>>Before an engine &/or GUI claims a draw, it should evaluate the position and
>>>>determine whether or not it has a strong advantage.
>>>
>>>The engine already _does_ this.  It searches every root move individually
>>>and chooses the one that produces the best score.  If you get a draw
>>>score back, you can safely assume that no other move will give you a
>>>"strong advantage" since the score of 0.00 was better than any other move.
>>>
>>>QED.  It chose the drawing move, thinking a draw was the best outcome
>>>possible in this particular position.
>>>
>>>
>>>> If it does have a strong
>>>>advantage, then claiming a draw would be precluded by the programmer.  In other
>>>>words, the software would be programmed in advance to make the sensible choice.
>>>
>>>Which it already does, as I explained.
>>>
>>>
>>>>
>>>>Similarly, the engine/GUI should be programmed to claim a draw by repetition in
>>>>cases where repetition can be played and when also the engine evaluates the
>>>>position as being a strong disadvantage.
>>>>
>>>
>>>The engine will evaluate the position as 0.00 in the above case.
>>>
>>>
>>>
>>>>Obviously, humans avoid claiming repetition draws whenever they are winning and
>>>>claim repetition draws whenever they can if they are losing otherwise.  In
>>>>positions perceived to be equal, humans may or may not claim the draw by
>>>>repetition depending on other factors such as tournament standing.
>>>
>>>If you play a move that repeats for the third time. You can claim the
>>>draw.  Or your opponent can claim the draw immediately when it is his
>>>move.  Playing a repetition for the 3rd time and wishing your opponent
>>>would not notice reminds me of "Grumpy old men".  "You can wish in one
>>>hand and crap in the other, and see which one fills up first."
>>>
>>>:)
>>>
>>>>
>>>>Chess computers should be programmed similarly.
>>>>
>>>>Bob D.
>>
>>Bob Hyatt:  I don't mean to be unkind, but perhaps you should read my bulletin
>>again.
>>
>>Bob D.
>
>I also don't mean to be unkind, but must respond "why".  Do you think I
>missed something or misunderstood something?
>
>This nonsense about playing a 3-repeat move and hoping the opponent won't
>see it is totally ridiculous in the context of alpha/beta searching that we
>are all using.

Another relevant thought:

I have seen engines play a move [and display 0.00] which is obviously intended
to give the opponent an opportunity to repeat the position a third time.  Upon
further extensive analysis, I have sometimes found that the engine's doing so
was a terrible mistake.  Two types of "terrible mistakes" can occur:

(a)  the engine could have played a much stronger move but didn't, or
(b)  the opponent engine does not repeat the position a third time but instead
plays a much stronger move which could have been prevented.

In my view, engines which make these mistakes have "bugs" in them, or simple
programming errors.

Bob D.



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.