Winboard protocol and fractional increments

Discussion of chess software programming and technical issues.

Moderators: hgm, Harvey Williamson, bob

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Post Reply
jdart
Posts: 3753
Joined: Fri Mar 10, 2006 4:23 am
Location: http://www.arasanchess.org

Winboard protocol and fractional increments

Post by jdart » Tue Sep 25, 2012 3:00 pm

The Winboard protocol definition http://www.open-aurec.com/wbforum/WinBo ... -intf.html talks only about the "level" command providing the increment time in seconds, but in fact if a fractional increment is specified to Winboard/xboard (for example -inc 0.3), it will be passed to the engine.

The problem is, though, most Winboard-compatible engines currently are only expecting an integer so won't process the fraction. (I have looked at: Exchess, Gnuchess 5, and Crafty, I think they all do this, so does Arasan, although I have a fix for it, not published yet).

I noticed this because my fast bullet testing, which does use fractional increments, seemed to result in games that were "too fast", because with the fraction ignored they were in effect sudden-death games.

It would be nice for engines to support fractional increments.

--Jon

User avatar
hgm
Posts: 23308
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: Winboard protocol and fractional increments

Post by hgm » Tue Sep 25, 2012 3:16 pm

This is partly compensated by the fact that the GUI does add the time. So although the engine doesn't count on the extra time, it will see as a pleasant surprise on the next move that there is extra time on its clock. The way I saw these small increments was that they would mainly serve to compensate communication lags, so that it would just be misleading to the engine to tell it it gets an increment. But these delays turned out a lot faster then I thought, once I started measuring them (in -noGUI mode).

But I agree it would be nice if more engines would support fractional increment.

User avatar
Guenther
Posts: 2883
Joined: Wed Oct 01, 2008 4:33 am
Location: Regensburg, Germany
Full name: Guenther Simon
Contact:

Re: Winboard protocol and fractional increments

Post by Guenther » Sun Sep 25, 2016 7:06 am

I tried some book tests overnight with a tc of 20s+0.25s and I noticed that the inc does not appear in the pgn header.
Can this be fixed or do I need to change some setting/option?
[Event "RWBC"]
[Site "CAPPUCCINO"]
[Date "2016.09.24"]
[Round "1"]
[White "StockfishASM_150916-64"]
[Black "StockfishASM_150916NB-64"]
[Result "1/2-1/2"]
[TimeControl "20+0"] => 20+0.25 in reality
[Number "1"]
[Annotator "11. -0.06 3... -0.45"]

User avatar
hgm
Posts: 23308
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: Winboard protocol and fractional increments

Post by hgm » Sun Sep 25, 2016 8:42 am

I suppose I could have the fraction printed there. I will look into it.

User avatar
Evert
Posts: 2923
Joined: Fri Jan 21, 2011 11:42 pm
Location: NL
Contact:

Re: Winboard protocol and fractional increments

Post by Evert » Sun Sep 25, 2016 4:00 pm

jdart wrote: It would be nice for engines to support fractional increments.
Agreed (all of mine do).

bob
Posts: 20373
Joined: Mon Feb 27, 2006 6:30 pm
Location: Birmingham, AL

Re: Winboard protocol and fractional increments

Post by bob » Sun Sep 25, 2016 6:25 pm

jdart wrote:The Winboard protocol definition http://www.open-aurec.com/wbforum/WinBo ... -intf.html talks only about the "level" command providing the increment time in seconds, but in fact if a fractional increment is specified to Winboard/xboard (for example -inc 0.3), it will be passed to the engine.

The problem is, though, most Winboard-compatible engines currently are only expecting an integer so won't process the fraction. (I have looked at: Exchess, Gnuchess 5, and Crafty, I think they all do this, so does Arasan, although I have a fix for it, not published yet).

I noticed this because my fast bullet testing, which does use fractional increments, seemed to result in games that were "too fast", because with the fraction ignored they were in effect sudden-death games.

It would be nice for engines to support fractional increments.

--Jon
I don't really use that info for much. The time/otim seems to solve this for me, since it is in 1/100th of a second and I get one after each move which will include the increment already added in...

I am not sure how you would go "too fast" if you accept the "time" command.

User avatar
hgm
Posts: 23308
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: Winboard protocol and fractional increments

Post by hgm » Mon Sep 26, 2016 8:10 am

Engines in general cannot sensibly decide upon the thinking time based on time/otim alone. The latter commands relay only what is currently on your clock. If that is, say, 11 sec, you might want to think only 0.35 sec in a sudden-death game. However, if you are playing 5min + 10sec/move, you would probably want to think 6-10 sec. The only way to know whether you are playing sudden-death or 5+10 is by looking at the 'inc' info in the 'level' command.

Post Reply