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 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.