Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Shredder wins in Graz after controversy

Author: Bob Durrett

Date: 20:47:02 12/09/03

Go up one level in this thread


On December 09, 2003 at 23:37:58, Robert Hyatt wrote:

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

I will try to come up with a counter-example when I return from Christmas
Vacation.  I have seen quite a few since I spend many hours per day doing
analysis, but didn't see any need to save them.  I think you are correct in
saying how chess programs ought to be and maybe how Crafty actually is.  I do
use Crafty, but the counter-examples come from the other top engines:  Hiarcs,
Shredder, Fritz, Tiger, and Junior.

: )

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.