Matthias Gemuh wrote:ChessGUI awards a loss on time even if an engine lacks only 1 millisec to finish a session. Use only ChessGUI 0.133 to eventually see what I mean.
I hear that Arena is not so strict.
I don't know how strict Winboard or other GUIs are.
I think the ChessGUI approach is fine. Or should a GUI tolerate a 1000 millisec failure to meet the TC ?
Matthias.
Yes,just like the Arena GUI,that will save a lot of trouble....
I will let the user set this margin in next ChessGUI.
Best,
Matthias.
Its better if broken engines get fixed
Margins will make things worse
Best
Fonzy
A perfectly functional engine can lose on time because of delays between the GUI and the engine. For instance, if you play with animation of the pieces, delays can be huge, and worse, unpredictable. For instance, with animation, in my system, there is an average of 150 ms delay in xboard when "animate" is used. In perfect conditions (no animation, blindfold etc.) the average delay is 7-8 ms. If a user decides to play ultrafast bullet with animation, do not blame the engine if there is one move that the GUI took 300 ms to deliver to the engine and this one loses on time. Generally, engines should set up a safety cushion, but it is impossible if the user chooses unpredictable conditions.
A user defined tolerance might not be a bad idea. I would set it to 10 ms for blindfold engine to engine matches and 200 ms for matches with animation that I want to witness.
My opinion is general because I am developing in Linux and I can't use ChessGUI.
Matthias Gemuh wrote:
A margin protects me from angry programmers who see their engines work without time losses in Arena, etc.
Anybody would be able to set the margin to 0 millisec at will.
Matthias.
I wouldn't worry about making allowances Matthias.
Only a few engines are affected and if it is the fault of the programmer, that's not your problem.
The change has now been made, default value is 0 ms
Version number remains at 0.133 !
The overstep margin can be set even for already running tournaments.
michiguel wrote:
A perfectly functional engine can lose on time because of delays between the GUI and the engine. For instance, if you play with animation of the pieces, delays can be huge, and worse, unpredictable. For instance, with animation, in my system, there is an average of 150 ms delay in xboard when "animate" is used. In perfect conditions (no animation, blindfold etc.) the average delay is 7-8 ms. If a user decides to play ultrafast bullet with animation, do not blame the engine if there is one move that the GUI took 300 ms to deliver to the engine and this one loses on time. Generally, engines should set up a safety cushion, but it is impossible if the user chooses unpredictable conditions.
A user defined tolerance might not be a bad idea. I would set it to 10 ms for blindfold engine to engine matches and 200 ms for matches with animation that I want to witness.
My opinion is general because I am developing in Linux and I can't use ChessGUI.
Miguel
ChessGUI is aware of what you describe here.
This scenario can only lead to a loss on time in ChessGUI if it is the last move of the session that has maximum time lag.
I think the danger of the use of margins is properly pointed out by the earlier posters. engine authors are strongly recommended to devop their programs with the margin set to zero, or using a GUI that has a non-adjustable zero margin.
Note that WinBoard (used in Open War and on WBEC) will not allow you any margin, and neither will Internet Chess Servers in on-line tournaments. If your engine is under the false impression that it will be allowed to overstep the time, by eveloping it under a GUI that applies margins, it is likely to forfeit most games that really count.
hgm wrote:I think the danger of the use of margins is properly pointed out by the earlier posters. engine authors are strongly recommended to devop their programs with the margin set to zero, or using a GUI that has a non-adjustable zero margin.
Note that WinBoard (used in Open War and on WBEC) will not allow you any margin, and neither will Internet Chess Servers in on-line tournaments. If your engine is under the false impression that it will be allowed to overstep the time, by eveloping it under a GUI that applies margins, it is likely to forfeit most games that really count.
The default is zero margin, so there is no harm. If an engine author or anyone else decides to change it, they are responsible for the consequences.
I am now testing 1200 engines in ChessGUI with overstep set to 0.
TC is "40 moves in 1 minute, repeating".
430 engines have already played, 3 overstepped and lost, some few games ended normally before move 40.