Page 1 of 1

WinBoard and time odds

PostPosted: 20 Feb 2008, 23:49
by H.G.Muller
I have added several new options to WinBoard:

/firstTimeOdds=N
/secondTimeOdds=N

(where N is an integer) divides all times mentioned in the time control for the first (second) engine by N. This applies to increment, base time and classical time control time supplements. It thus means that the first (second) engine has to play N times as fast. In addition, the opponent's time relayed by the 'otim' command will be converted to the engines own time scale, by multiplying the time on the WinBoard clock by the ratio of opponent's handicap factor and the engine's own handicap factor.
(Note that pndering tends to undo the effect of time odds, so this option is best used with ponder off.)

Options that follow the engine (in a tournament)

I made it possible for WinBoard options to be 'hidden' in the engine command line (which normally only specifies options for that particiular engine, like hash-table size). If the engine command line contains the word "WBopt", this word, and everything that follows it, is stripped from the line (i.e. not passed to the engine when the latter is started). In stead everything that follows the "WBopt" is passed to WinBoard, after the winboard.ini and command-line options have been read (in that order). This way, the options will overrule the options in .ini file or passed to WinBoard by the tournament manager.

Through this mechanism, an engine can tailor the WinBoard behavior to its needs. E.g., if it is known that a certain engine always exceeeds time by 1 sec, and we don't want to have it forfeit because of that, we could play that engine (and only that engine) with /autocallFlag=FALSE, by installing it as

"engine.exe -hash=128 WBopt /autocallFlag=FALSE"

and run the tournament with /autocallFlag=TRUE in the winboard.ini.

To make it possible to pass WB options that are dependent on if the engine is playing as 'first' or as 'second' engine, any '%s' occurring in the options after 'WBopt' will be replaced by WinBoard by "first" or "second" before parsing, depending on which engine provided the option. So by installing an engine as

"Smirfoglot -H32 WBopt /%sTimeOdds=2"

you would have a Smirf in the tournament with a hash table of 32MB, that always is given only half the time set for the tourney. The WB option would translate to /firstTimeOdds or /secondTimeOdds as was needed to handicap Smirf.

Re: WinBoard and time odds

PostPosted: 21 Feb 2008, 02:25
by Pablo
Hello Harm:
I suppose this new options are added to a new version of Winboard_F.
I wonder where I can download this new version.
Pablo Urzua

H.G.Muller wrote:I have added several new options to WinBoard:

/firstTimeOdds=N
/secondTimeOdds=N

(where N is an integer) divides all times mentioned in the time control for the first (second) engine by N. This applies to increment, base time and classical time control time supplements. It thus means that the first (second) engine has to play N times as fast. In addition, the opponent's time relayed by the 'otim' command will be converted to the engines own time scale, by multiplying the time on the WinBoard clock by the ratio of opponent's handicap factor and the engine's own handicap factor.
(Note that pndering tends to undo the effect of time odds, so this option is best used with ponder off.)

Options that follow the engine (in a tournament)

I made it possible for WinBoard options to be 'hidden' in the engine command line (which normally only specifies options for that particiular engine, like hash-table size). If the engine command line contains the word "WBopt", this word, and everything that follows it, is stripped from the line (i.e. not passed to the engine when the latter is started). In stead everything that follows the "WBopt" is passed to WinBoard, after the winboard.ini and command-line options have been read (in that order). This way, the options will overrule the options in .ini file or passed to WinBoard by the tournament manager.

Through this mechanism, an engine can tailor the WinBoard behavior to its needs. E.g., if it is known that a certain engine always exceeeds time by 1 sec, and we don't want to have it forfeit because of that, we could play that engine (and only that engine) with /autocallFlag=FALSE, by installing it as

"engine.exe -hash=128 WBopt /autocallFlag=FALSE"

and run the tournament with /autocallFlag=TRUE in the winboard.ini.

To make it possible to pass WB options that are dependent on if the engine is playing as 'first' or as 'second' engine, any '%s' occurring in the options after 'WBopt' will be replaced by WinBoard by "first" or "second" before parsing, depending on which engine provided the option. So by installing an engine as

"Smirfoglot -H32 WBopt /%sTimeOdds=2"

you would have a Smirf in the tournament with a hash table of 32MB, that always is given only half the time set for the tourney. The WB option would translate to /firstTimeOdds or /secondTimeOdds as was needed to handicap Smirf.

Re: WinBoard and time odds

PostPosted: 21 Feb 2008, 09:16
by H.G.Muller
http://home.hccnet.nl/h.g.muller/alpha.tst

is where I always upload the latest experimental version of winboard.exe. After download, just rename it to winboard.exe.

I tested the features, and they seem to work. I only tested this in two-machines mode; these new options make little sense in other modes, and their effect is not defined there. (E.g. when playing on IC the server maintains the clocks, not WinBoard.)

Re: WinBoard and time odds

PostPosted: 21 Feb 2008, 15:37
by Pablo
H.G.Muller wrote:http://home.hccnet.nl/h.g.muller/alpha.tst

is where I always upload the latest experimental version of winboard.exe. After download, just rename it to winboard.exe.

I tested the features, and they seem to work. I only tested this in two-machines mode; these new options make little sense in other modes, and their effect is not defined there. (E.g. when playing on IC the server maintains the clocks, not WinBoard.)


Hi Harm:
Thanks for your site info.
Pablo