ChessUSA.com TalkChess.com
Hosted by Your Move Chess & Games
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Regarding options ponder flag
Goto page 1, 2, 3  Next
 
Post new topic       TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions Threaded
View previous topic :: View next topic  
Author Message
Juergen Precour



Joined: 28 Sep 2017
Posts: 18
Location: Karlsruhe, Germany

PostPosted: Wed Dec 06, 2017 1:03 pm    Post subject: Regarding options ponder flag Reply to topic Reply with quote

Hi,
i have problems to understand this flag. I hope y can help me to deal correctly as a GUI Smile

http://wbec-ridderkerk.nl/html/UCIProtocol.html saying:

* = Ponder, type check
this means that the engine is able to ponder.
The GUI will send this whenever pondering is possible or not.
Note: The engine should not start pondering on its own if this is enabled, this option is only
needed because the engine might change its time management algorithm when pondering is allowed.


picochess has alot of different modes. Basically they are:
normal, brain, analyse and variants of them.
normal = y play against the computer, ignore it - nothing with ponder.
Brain = y play against computer, but its pondering during y think
Analyse = all the time calc, and stops when y move.

My Question is now:
=============
what does that mean, if
a) there is no such ponder flag given by engine
b) its true
c) its false
concerning the different modes and if the engine supports them.
=============

As far i understand, when i dont have this flag, i cant enter "brain". And i dont allow any analyse mode...but for this im no longer sure.
Analyse im doing with "go infinite" Brain with "go ponder".

Jürgen
_________________
Create a dedicated chess computer based on tiny ARM computers with the DGT e-board on www.picochess.com
Back to top
View user's profile Send private message Visit poster's website
Marco Belli



Joined: 23 May 2010
Posts: 636

PostPosted: Wed Dec 06, 2017 1:52 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

From my point of view:
1) if an engine doesn't has the ponder option,it's not able to ponder and the brain mode should not be used by the gui.
2-3) there is no way to understand if it's enabled or disabled. When you enabled it you can also send go ponder, when it's disabled you should not send ponder.

Vajolet and some other engines doesn't check the ponder option value. It's only used to tell the gui it's supporting the brain feature.

Go infinite and go ponder are for different feature, but probably have similar result.
When you send the stop command the former give you bestmove, the latter doesn't.
_________________
http://vajoletchess.blogspot.it/
Back to top
View user's profile Send private message Visit poster's website
H.G.Muller



Joined: 10 Mar 2006
Posts: 22012
Location: Amsterdam

PostPosted: Wed Dec 06, 2017 2:58 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

Engines might want to use more time per move if they know they are playing in a ponder game, counting on ponder hits to give them extra time for the moves still to come. The Ponder option allows them to do that. UCI engines are not supposed to remember anything of any previous position-moves or go command. But they can remember their option settings. So if the get a "go movestogo 10 wtime xxx ..." they should consult the Ponder setting to know how much of the xxx to use for this move.

Unlike what is stated above, UCI engines should prit a bestmove when they are stopped after 'go infinite'. Note that 'go infinite' does nNOT necessarily mean the engine is analysing. It is perfectly valid for a GUI to implement a match mode where it decides itself how long to make the engine think, sending 'stop' if it thinks the engie has thought long enough. If an engine wants to know whether it is analyzing, it should look at the setting of the UCI_AnalyseMode option.
Back to top
View user's profile Send private message Visit poster's website
Juergen Precour



Joined: 28 Sep 2017
Posts: 18
Location: Karlsruhe, Germany

PostPosted: Wed Dec 06, 2017 3:25 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

Thanks marco, hgm!

forgive me ... i sum it up (as far i understood now) - dump J Wink

- if engine doesnt have this ponder flag, i disallow to enter the brain (ponder on opp time) mode. Whereas its perfectly ok, to let the engine doing a infinite search (=analysis).

- if user enters this brain mode i should send "ponder=true" before "go" or "false" if normal search/play or analysis.

- if user enters analysis mode, i send "UCI_AnalyseMode" if this flag is valid for the engine (ok, i can just send - should be ignored if invalid).
_________________
Create a dedicated chess computer based on tiny ARM computers with the DGT e-board on www.picochess.com
Back to top
View user's profile Send private message Visit poster's website
H.G.Muller



Joined: 10 Mar 2006
Posts: 22012
Location: Amsterdam

PostPosted: Wed Dec 06, 2017 4:12 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

Well, I think you should leave Ponder set for the entire game if it is a ponder game. Also during commands other than 'go ponder'. It informs the engine of whether future moves can be expected to use extra time over what is now on the clock, because they get ponder hits.

Worst defect of UCI is that there is o way to know whether the egine supports 'searchmoves' with the 'go' command.
Back to top
View user's profile Send private message Visit poster's website
Marco Belli



Joined: 23 May 2010
Posts: 636

PostPosted: Wed Dec 06, 2017 4:47 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

as stated by hgm, simply send option ponder befor the start of the game, not before every go command Smile
_________________
http://vajoletchess.blogspot.it/
Back to top
View user's profile Send private message Visit poster's website
Juergen Precour



Joined: 28 Sep 2017
Posts: 18
Location: Karlsruhe, Germany

PostPosted: Wed Dec 06, 2017 4:50 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

indeed.
i only put engines inside which supports all features of picochess incl. "alternative move" => searchmoves needed.
My beloved chess engine dev's are sometimes abit "behind" Rolling Eyes on implementing all uci features.

OK, now i know how to deal with this flag. Thanks again.
(forbit analysis on a non-ponder-flag engine was too hard - my problem)
_________________
Create a dedicated chess computer based on tiny ARM computers with the DGT e-board on www.picochess.com
Back to top
View user's profile Send private message Visit poster's website
Rasmus Althoff



Joined: 30 Aug 2016
Posts: 894

PostPosted: Wed Dec 06, 2017 5:28 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

elcabesa wrote:
Go infinite and go ponder are for different feature, but probably have similar result.

There is an important difference. From the UCI spec concerning the ponder move:
Quote:
However, if the engine decides to ponder on a different move, it should not display any mainlines as they are likely to be misinterpreted by the GUI because the GUI expects the engine to ponder on the suggested move.

Consequence: using ponder for analysis runs the risk of suddenly not getting PVs anymore. Therefore, ponder should not be used for analysis.
Back to top
View user's profile Send private message Visit poster's website
Rasmus Althoff



Joined: 30 Aug 2016
Posts: 894

PostPosted: Wed Dec 06, 2017 5:35 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

hgm wrote:
Worst defect of UCI is that there is o way to know whether the egine supports 'searchmoves' with the 'go' command.

This isn't a UCI defect, but an engine defect because 'searchmoves' is not optional with UCI, and engines not implementing it are not UCI-conforming. Actually, they are not UCI engines.

For dealing with these engines, there is a workaround how you can determine whether 'searchmoves' is supported: send a position where some moves lead to being mated in 1 and other moves are fine. Then send searchmoves with only the self-mating moves allowed. If the engine returns a best move that is in the 'searchmoves' list, it supports this command, and otherwise, it doesn't.
Back to top
View user's profile Send private message Visit poster's website
Fulvio Benini



Joined: 12 Aug 2016
Posts: 89

PostPosted: Wed Dec 06, 2017 7:39 pm    Post subject: Re: Regarding options ponder flag Reply to topic Reply with quote

LocutusOfPenguin wrote:

Analyse im doing with "go infinite" Brain with "go ponder".


When pondering, are you sending 2 "go" for each move, right?

>> setoption name Ponder value true
>> ucinewgame
>> isready
wait for readyok

>> position startpos moves
>> go movetime 1000

after 1 second the engine replies:
<< bestmove d2d4 ponder d7d5

and immediately the GUI sends:
>> position startpos moves d2d4 d7d5
>> go ponder

When the user moves:
>> stop
wait for bestmove

>> ponderhit (if the user played the ponder move) or position
>> go movetime 1000
etc...
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic       TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions All times are GMT
Goto page 1, 2, 3  Next
Threaded
Page 1 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum




Powered by phpBB © 2001, 2005 phpBB Group
Enhanced with Moby Threads