Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: UCI (=universal chess interface)

Author: Tim Mann

Date: 18:42:26 11/29/00

Go up one level in this thread


On November 29, 2000 at 02:45:34, Stefan Meyer-Kahlen wrote:

>On November 28, 2000 at 15:34:51, Edward Screven wrote:
>
>>objection: i strongly dislike the way pondering is supposed to work.
>>i don't mind having a command that says "start pondering now", but
>>the assumptions built into the protocol - that it is always a search
>>based on an opponent move guess computed as a side affect of a
>>previous search - are too limiting.  what about the first move out
>>of book?  what if no guess move is immediately available because
>>the previous search ended in a fail-high?  in these cases my engine
>>does a short search to guess at the opponent move, but it doesn't do
>>that until it is time to start pondering.  i don't see how to
>>fit this into the uci protocol.
>
>You are right, but the engine can take the last move sent in a "go ponder"
>command as a suggestion on what to do. It can ponder or do anything it likes, it
>only has to execute that particular move after the "ponderhit" command.
>
>We thought that it was absolutely necessary to send a "go ponder" as you can't
>tell for sure what the engine is doing if there is no such command.
>
>>if you did make the current position an argument to go, then you
>>could easily support pondering in a more general way too.  you could
>>just say that "go ponder <position_1>" informs the engine that the
>>opponent is on move from the described position, and the engine is
>>free to use the CPU any way it wishes.  if the engine next receives
>>"go <position_2>" (no ponder flag), and <position_2> was reached
>>from <position_1> by the engine's notion of a ponder move, then the
>>engine could simply continue the current search.
>
>This is eqivalent to what we are doing if you take the move as a suggestion. see
>above.

Well, there's also one subtle difference: the GUI doesn't expect the engine to
take the move only as a suggestion, and so the GUI thinks it needs to *make* a
suggestion.  So the GUI might well decide for itself to tell the engine to do a
short search (as if the engine were on move), then turn around and feed the
output of that search into the engine as the suggested ponder move.  (I
understand that some current GUIs -- ChessBase? -- actually do this.)  If the
engine doesn't pay attention to the suggestion and does its own short search (or
uses some other method), the time to do the initial short search was wasted.

	--Tim



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.