Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Extension of the UCI protocol

Author: Peter Schäfer

Date: 01:09:33 04/19/04

Go up one level in this thread


On April 17, 2004 at 14:08:06, Stefan Meyer-Kahlen wrote:

>On April 16, 2004 at 15:17:17, Peter Fendrich wrote:
>
>>On April 16, 2004 at 12:26:11, Stefan Meyer-Kahlen wrote:
>>
>>>
>>>Hello Peter,
>>>
>>>
>>>On April 16, 2004 at 12:14:37, Peter Schäfer wrote:
>>>>
>>>>Hello Stefan,
>>>>
>>>>Is there a chance that we will see further improvements to the UCI protocol ?
>>>
>>>
>>>Yes, there will be further improvements, but we have just released a new version
>>>so don't expect it to happen next week.
>>>
>>>
>>>>I guess these issues have been discussed before a lot, just to mention a few:
>>>>
>>>>- let the engine decide about resignation and draw.
>>>>  This is even more interesting if the engine can take the opponent's ELO
>>>>  into account (e.g. don't offer draws to weak opponents).
>>>
>>>
>>>We have discussed this in Paderborn and we sort of agreed that this would wreck
>>>the stateless design of the protocol. We integrated AnalysisMode and ucinewgame
>>>but we didn't want to go any further.
>>
>>
>>Why not another info tags: "resign" meaning "I want to resign" and "draw"
>>meaning "I want a draw". Then it's up to the GUI (the user) to handle it as
>>desired.
>
>
>In "pure" UCI the engine doesn't know (and doesn't need to know) that it is
>playing a game. The engine just gets positions to search. Actually the engine
>doesn't know what a game of chess is. Because of this the engine can't resign a
>game or offer draws in a game.
>
>Now we have added the "AnalyseMode" command, so the engine does at least know
>whether the positon to search belongs to a game or is just an analysis. Also
>with "ucinewgame" the engine knows to which "game" (actually it need not be a
>game for the engine, just that after ucinewgame the engine is searching on
>something different) a position belongs. We did this because of public demand
>and not because we really liked it.
>
>Those two changes are a step in the direction to explain the engine what a game
>is. If you want the engine to resign something you have to tell the engine what
>to resign. We didn't want to go that far. It is just a design or philosophical
>decision.
>

Hello Stafan,

this seems to be one more point in favor of a "stateful" protocol.
I don't want to start a discussion about it, because such a descision
needs careful consideration (and you certainly have discussed it before).

I just want to point out that many engines "de facto" already use a kind of
stateful approach, because it is common practice to transfer the complete move
list with every position.
It is not an elegant solution, but it demonstrates that there is a real demand
for a stateful protocol.

Best Wishes,
Peter




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.