Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Shredder wins in Graz after controversy

Author: Robert Hyatt

Date: 20:37:58 12/09/03

Go up one level in this thread


On December 09, 2003 at 23:30:41, Bob Durrett wrote:

>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.
>
>Yes, indeed.  In fact, one of the mistakes I see engines making often in
>analysis is going for the 0.00 move when there is better.  I am not talking
>about Crafty.

The point is that an engine won't go for 0.00 if there is something better
that it can _see_ within its search horizon...  If it can't "see" it, it
doesn't exist, however.






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.