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 

WB protocol (and UCI?) extension proposal
Post new topic    TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions Flat
View previous topic :: View next topic  
Author Message
Miguel A. Ballicora



Joined: 09 Mar 2006
Posts: 4436
Location: Chicago, Illinois, USA

PostPost subject: Re: WB protocol (and UCI?) extension proposal    Posted: Mon Mar 12, 2012 2:48 pm Reply to topic Reply with quote

hgm wrote:
It seems that WinBoard protocol does not provide any feature equivalent to UCI "searchmoves", which limits an analysis search to a given subset of root moves. People using engines for analysis seem to consider this a feature of crucial importance. In addition, it seems to be important to be able to assign scores to certain positions in the tree by hand. (A manual form of EGTB probing, as it were.) Some engines support a "session file" for this, and it seems desirable to have GUI support for manipulating the contents of this file.

What I propose is to add a new GUI->engine command

kill MOVE

which the GUI could use on engines that at startup say

feature exclude=1

to strike the mentioned root move from the current search. (Presumably this would mean that the search of the remaining moves would be restarted at low depth, but in cases where the previous iteration already had another move as best, it would be perfectly allowed to start from that iteration.)

Note that the Polyglot included with WinBoard 4.6.0 can also do this through an engine-defined option, called "Polyglot exclude move", which can be set by hand through the Engine Settings dialog, but for the GUI to use this command in response to some user mouse action, it seems better to enforce some standardization. This standardization could of course also be achieved by requiring the engine-defined option to have a specific name, but that goes a bit against the design philosophy of WB protocol.

For the session-file stuff I am less certain. The variety of implementations of this found in different engines is likely to be wider, making the use of an engine-defined option more natural. Also because in the most elaborate implementation, allowing the user to specify a score and depth to a given position, inherently seems to require keyboard input. And the Engine Settings dialog would be as good a popup for this to enter the required info as any.

There is one case where I imagine GUI assistence could be useful, though: the existing Adjudicate to White/Black and Adjudicate Draw items in the WinBoard Action menu could be used in a natural way to define the score of the current position as +/-30000 cP or 0, respectively, valid to any depth. But to achieve that, the GUI would need to know what option to send.

So it would seem useful to define an engine->GUI command

setscore SCORE DEPTH

which tells the engine to include the current position in its session file with SCORE centi-Pawn (from side-to-move POV, as always in WB protocol) with a depth limit of DEPTH ply. This would be subject to an initial

feature setscore=1

WB engines could use these options without problems, but setscores would only be implementable in Polyglot if there also was standardization of this option on the UCI side. (For "searchmoves" there already is.) I therefore want to propose UCI engines, wanting to make their session file approachable to the user through the GUI interface, would (as a minimum) supply the option

setoption name UCI_setscore SCORE

after the usual announcement

option name UCI_setscore type spin default 0 min LOSSSCORE max WINSCORE

so that Polyglot would know how to translate the setscore command. (Use of this option would imply validity of the given score to infinite depth.) It is up to the engine what other options it wants to provide for allowing the user access to its session file, and how long the effect of using the above option should last. (E.g. if there are buttons to clear (parts of) the session file, or save changes in it on a user-specified file.)


Gaviota has this implemented already, but it is called "exclude" rather than kill. So, if you want an engine to test this, it will take me seconds to change it and also send "feature exclude=1" at the beginning. But, why not use "exclude" rather than "kill"? (not really important).

I also have implemented "include", and "include all" (IIRC). Not sure it is needed, but only important if it is used manually in the terminal.

Miguel
_________________
http://sites.google.com/site/gaviotachessengine/
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Subject Author Date/Time
WB protocol (and UCI?) extension proposal H.G.Muller Mon Mar 12, 2012 8:52 am
      Re: WB protocol (and UCI?) extension proposal Julien MARCEL Mon Mar 12, 2012 12:18 pm
            Re: WB protocol (and UCI?) extension proposal H.G.Muller Mon Mar 12, 2012 12:59 pm
                  Re: WB protocol (and UCI?) extension proposal Miguel A. Ballicora Mon Mar 12, 2012 2:42 pm
            Re: WB protocol (and UCI?) extension proposal Ferdinand Mosca Mon Mar 12, 2012 3:34 pm
      Re: WB protocol (and UCI?) extension proposal Daniel Shawul Mon Mar 12, 2012 1:12 pm
            Re: WB protocol (and UCI?) extension proposal H.G.Muller Mon Mar 12, 2012 1:21 pm
                  Re: WB protocol (and UCI?) extension proposal Karlo Bala Jr. Mon Mar 12, 2012 8:56 pm
                        Re: WB protocol (and UCI?) extension proposal H.G.Muller Mon Mar 12, 2012 10:11 pm
      Re: WB protocol (and UCI?) extension proposal Ferdinand Mosca Mon Mar 12, 2012 1:46 pm
      Re: WB protocol (and UCI?) extension proposal Miguel A. Ballicora Mon Mar 12, 2012 2:48 pm
            Re: WB protocol (and UCI?) extension proposal H.G.Muller Mon Mar 12, 2012 3:51 pm
                  Re: WB protocol (and UCI?) extension proposal Miguel A. Ballicora Mon Mar 12, 2012 8:01 pm
      Re: WB protocol (and UCI?) extension proposal Evert Glebbeek Tue Mar 13, 2012 5:28 am
            Re: WB protocol (and UCI?) extension proposal H.G.Muller Tue Mar 13, 2012 10:05 am
                  Re: WB protocol (and UCI?) extension proposal Miguel A. Ballicora Tue Mar 13, 2012 4:39 pm
                        Re: WB protocol (and UCI?) extension proposal H.G.Muller Tue Mar 13, 2012 5:24 pm
                              Re: WB protocol (and UCI?) extension proposal Piero Teixeira Tue Mar 13, 2012 11:23 pm
                                    Re: WB protocol (and UCI?) extension proposal H.G.Muller Wed Mar 14, 2012 6:16 am
                              Re: WB protocol (and UCI?) extension proposal Miguel A. Ballicora Wed Mar 14, 2012 6:46 am
                                    Re: WB protocol (and UCI?) extension proposal H.G.Muller Wed Mar 14, 2012 7:47 am
                                          Re: WB protocol (and UCI?) extension proposal Michel Van den Bergh Wed Mar 14, 2012 3:16 pm
                                                Re: WB protocol (and UCI?) extension proposal Miguel A. Ballicora Wed Mar 14, 2012 3:55 pm
                                                Re: WB protocol (and UCI?) extension proposal H.G.Muller Wed Mar 14, 2012 4:17 pm
                                                      Re: WB protocol (and UCI?) extension proposal Michel Van den Bergh Wed Mar 14, 2012 5:30 pm
                                                            Re: WB protocol (and UCI?) extension proposal H.G.Muller Wed Mar 14, 2012 5:42 pm
                                                                  Re: WB protocol (and UCI?) extension proposal Michel Van den Bergh Wed Mar 14, 2012 6:30 pm
                                                                        Re: WB protocol (and UCI?) extension proposal H.G.Muller Wed Mar 14, 2012 7:27 pm
                                                                              Re: WB protocol (and UCI?) extension proposal Michel Van den Bergh Wed Mar 14, 2012 7:35 pm
                                                                                    Re: WB protocol (and UCI?) extension proposal Dadi Jonsson Thu Mar 15, 2012 10:01 am
                                          Re: WB protocol (and UCI?) extension proposal Miguel A. Ballicora Wed Mar 14, 2012 3:52 pm
      Re: WB protocol (and UCI?) extension proposal Ferdinand Mosca Sun Apr 01, 2012 6:41 am
            Re: WB protocol (and UCI?) extension proposal H.G.Muller Sun Apr 01, 2012 9:10 am
                  Re: WB protocol (and UCI?) extension proposal H.G.Muller Mon Apr 02, 2012 10:02 am
                        Re: WB protocol (and UCI?) extension proposal Ferdinand Mosca Mon Apr 02, 2012 11:04 am
                              Re: WB protocol (and UCI?) extension proposal H.G.Muller Mon Apr 02, 2012 3:18 pm
                                    Re: WB protocol (and UCI?) extension proposal Ferdinand Mosca Tue Apr 03, 2012 11:13 am
Post new topic    TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions

 
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