UCI specification contains UCI_AnalyseMode option, meant to inform the engine that it is analyzing and not playing right now. So far, so good. Yet when I implemented opening book in Rodent and wanted to disable it during analysis using that very option, I noticed that Arena and (old) FritzGui use "go infinite" instead. The difference is that FritzGui still shows the check box controlling that option, whereas Arena hides it.
Now, what wolud be the correct course of action:
- disable opening book on "go infinite" (hoping that there are no evil GUIs attempting to take over the world... er... time control using exclusively "go infinite" and "stop")
- rename the option so that it gets visible (I'm inclined to do that)
- do nothing, assuming that GUIs aren't implementing the protocol correctly
the problem with missing UCI_AnalyseMode is even more pronounced when using asymmetric king safety eval. the user might want to initiate three scenarios
- analysis with symmetric eval
- analysis with skewed eval
- normal gameplay
what do You think is correct solution?
Analysis under UCI
Moderators: hgm, Rebel, chrisw
-
- Posts: 895
- Joined: Mon Jan 15, 2007 11:23 am
- Location: Warsza
-
- Posts: 2571
- Joined: Fri Nov 26, 2010 2:00 pm
- Location: Czech Republic
- Full name: Martin Sedlak
Re: Analysis under UCI
Well I think that go infinite suffices for analysis.
All GUIs support that.
Analysis with symmetric eval seems more logical IMHO. Noone wants to analyse with contempt I think.
The point of analysis is getting accurate eval.
All GUIs support that.
Analysis with symmetric eval seems more logical IMHO. Noone wants to analyse with contempt I think.
The point of analysis is getting accurate eval.
-
- Posts: 27895
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Analysis under UCI
Correct use of the protocol would be to not let the user interrfere in handling this option (because it is a UCI_ standard option), and let the GUI clear it while playing a game, and set it otherwise (e.g. during analysis).
Whether the GUI plays a game using 'go infinite' + 'stop', or implements analysis through 'go infinite', 'go depth', 'go nodes' or 'go ponder' is upto the GUI. This would all be legitimate use of UCI.
If you want the user to be able to switch on/off book use or learning, you should let the engine support separate options for that.
Whether the GUI plays a game using 'go infinite' + 'stop', or implements analysis through 'go infinite', 'go depth', 'go nodes' or 'go ponder' is upto the GUI. This would all be legitimate use of UCI.
If you want the user to be able to switch on/off book use or learning, you should let the engine support separate options for that.