CCRL Engine Authors' Tournament (will start October 1st)

Discussion of computer chess matches and engine tournaments.

Moderator: Ras

D Sceviour
Posts: 570
Joined: Mon Jul 20, 2015 5:06 pm

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by D Sceviour »

Graham Banks wrote:All went well until Schooner inexplicably made a blunder with plenty of time to spare.
Thank you for the effort Graham. The debug files are probably more useful than the game itself for the type of problem being examined. However, the pgn does show that Schooner used 00.00.00 time for the final moves indicating an explicable timer crash using ChessGUI.

Simply put, xboard engines are not designed to accept the move count number from the setboard command. If there were any WB engines that try to do this, they would be putting themselves at a disadvantage with UCI engines, and violating Chess Engine Communication Protocol. It would be unfair to demand that WB engines adapt for this, as some engines are no longer under development. There may be no trick to get out of this problem. You might ask the Winboard community in general what their experiences are with ChessGUI timer problems, and if they have any suggestions.
User avatar
Graham Banks
Posts: 45342
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by Graham Banks »

D Sceviour wrote:
Graham Banks wrote:All went well until Schooner inexplicably made a blunder with plenty of time to spare.
Thank you for the effort Graham. The debug files are probably more useful than the game itself for the type of problem being examined. However, the pgn does show that Schooner used 00.00.00 time for the final moves indicating an explicable timer crash using ChessGUI.

Simply put, xboard engines are not designed to accept the move count number from the setboard command. If there were any WB engines that try to do this, they would be putting themselves at a disadvantage with UCI engines, and violating Chess Engine Communication Protocol. It would be unfair to demand that WB engines adapt for this, as some engines are no longer under development. There may be no trick to get out of this problem. You might ask the Winboard community in general what their experiences are with ChessGUI timer problems, and if they have any suggestions.
It was only the last move (the blunder) that used 0 seconds.

[Event "CCRL Authors Group D"]
[Site "ChessGUI"]
[Date "2016.10.23"]
[Round "25.1"]
[White "Schooner 1.5.7 64-bit"]
[Black "Chexa 0.4.9991"]
[Result "0-1"]
[Time "8:37:17 a.m."]
[ECO "A00"]
[Opening "Benko; Barczay; Bilek; Hungarian"]
[TimeControl "40/1500:40/1500:40/1500"]
[PlyCount "142"]
[Number "73"]
[Termination "GUI TB Mate in 18"]
[BlackType "program"]
[WhiteType "program"]
[Variant "normal"]

{ Intel i5 Quad }
1.g3 {[%eval 0,1] [%emt 00:00:00]} e5 {[%eval 0,1] [%emt 00:00:00]}
2.c4 {[%eval 0,1] [%emt 00:00:00]} c6 {[%eval 0,1] [%emt 00:00:00]}
3.d4 {[%eval 0,1] [%emt 00:00:00]} exd4 {[%eval 0,1] [%emt 00:00:00]}
4.Qxd4 {[%eval 0,1] [%emt 00:00:00]} Nf6 {[%eval 0,1] [%emt 00:00:00]}
5.Bg2 {[%eval 0,1] [%emt 00:00:00]} d5 {[%eval 0,1] [%emt 00:00:00]}
6.Nf3 {[%eval 0,1] [%emt 00:00:00]} Be6 {[%eval 0,1] [%emt 00:00:00]}
7.cxd5 {[%eval 0,1] [%emt 00:00:00]} cxd5 {[%eval 0,1] [%emt 00:00:00]}
8.O-O {[%eval 0,1] [%emt 00:00:00]} Nc6 {[%eval 0,1] [%emt 00:00:00]}
9.Qa4 {[%eval -11,14] [%emt 00:00:47]} Qb6 {(Bc5) [%eval 5,15] [%emt 00:00:37]}
10.Nc3 {(Nc3) [%eval -6,14] [%emt 00:00:46]} Bc5 {(Be7) [%eval -19,15] [%emt 00:01:18]}
11.Qf4 {(Qc2) [%eval -4,14] [%emt 00:00:46]} Be7 {(O-O) [%eval 13,14] [%emt 00:01:28]}
12.Ng5 {(Ng5) [%eval 2,13] [%emt 00:00:46]} O-O {(O-O) [%eval 21,14] [%emt 00:00:32]}
13.Nxe6 {(Rd1) [%eval -7,14] [%emt 00:00:35]} fxe6 {(fxe6) [%eval 28,14] [%emt 00:00:31]}
14.Bh3 {(Bh3) [%eval -16,15] [%emt 00:00:35]} e5 {(Nd8) [%eval 45,14] [%emt 00:00:30]}
15.Qf5 {(Qh4) [%eval -24,15] [%emt 00:00:47]} Kh8 {(Kh8) [%eval 67,13] [%emt 00:00:30]}
16.e3 {(a3) [%eval -16,15] [%emt 00:00:35]} Bb4 {(d4) [%eval 91,14] [%emt 00:00:29]}
17.Qd3 {(Qd3) [%eval -28,14] [%emt 00:00:48]} e4 {(Qa5) [%eval 105,15] [%emt 00:00:28]}
18.Qb5 {(Qb5) [%eval -41,19] [%emt 00:00:48]} Bxc3 {(d4) [%eval 102,15] [%emt 00:00:27]}
19.Qxb6 {(Qxb6) [%eval -37,20] [%emt 00:00:47]} axb6 {(axb6) [%eval 102,16] [%emt 00:00:27]}
20.bxc3 {(bxc3) [%eval -37,19] [%emt 00:00:36]} b5 {(Ne5) [%eval 106,15] [%emt 00:00:26]}
21.Rb1 {(a3) [%eval -10,16] [%emt 00:00:47]} Ra5 {(Ra5) [%eval 59,16] [%emt 00:00:25]}
22.a3 {(a4) [%eval -18,16] [%emt 00:00:36]} Ne5 {(Ne5) [%eval 90,14] [%emt 00:00:25]}
23.Rd1 {(Rd1) [%eval -16,16] [%emt 00:00:37]} Nf3 {(Nc4) [%eval 78,14] [%emt 00:00:24]}
24.Kg2 {(Kg2) [%eval -13,18] [%emt 00:00:50]} Rg8 {(Re8) [%eval 77,14] [%emt 00:00:24]}
25.Be6 {(Be6) [%eval -4,17] [%emt 00:00:50]} Rd8 {(Rd8) [%eval 75,15] [%emt 00:00:23]}
26.h4 {(Bh3) [%eval -8,16] [%emt 00:00:37]} Ne5 {(Ne5) [%eval 64,14] [%emt 00:00:22]}
27.Bb2 {(Kg1) [%eval -19,16] [%emt 00:00:38]} Nd3 {(Nd3) [%eval 107,14] [%emt 00:00:22]}
28.Bc1 {(Bh3) [%eval -19,15] [%emt 00:00:39]} Rf8 {(Re8) [%eval 121,14] [%emt 00:00:21]}
29.Kg1 {(Bf5) [%eval -25,17] [%emt 00:00:53]} Ra6 {(g6) [%eval 95,14] [%emt 00:00:21]}
30.Bh3 {(Bh3) [%eval 0,20] [%emt 00:00:53]} Ne8 {(Ra5) [%eval 46,15] [%emt 00:00:44]}
31.Bf1 {(f4) [%eval 26,20] [%emt 00:00:53]} Nxc1 {(Nxf2) [%eval 30,14] [%emt 00:00:19]}
32.Rdxc1 {(Rdxc1) [%eval 43,20] [%emt 00:00:53]} Rxa3 {(Rxa3) [%eval 0,16] [%emt 00:00:18]}
33.Bxb5 {(Bxb5) [%eval 29,19] [%emt 00:00:40]} Nd6 {(Ra2) [%eval -31,17] [%emt 00:00:18]}
34.Rd1 {(Rd1) [%eval 66,19] [%emt 00:00:55]} Rxc3 {(Rxc3) [%eval -32,18] [%emt 00:00:33]}
35.Rxd5 {(Rxd5) [%eval 76,22] [%emt 00:00:41]} Nxb5 {(Nxb5) [%eval -33,17] [%emt 00:00:17]}
36.Rdxb5 {(Rbxb5) [%eval 71,21] [%emt 00:00:43]} Rc2 {(Rc2) [%eval -65,16] [%emt 00:00:16]}
37.Rf1 {(Rf1) [%eval 71,21] [%emt 00:00:46]} Rc7 {(Rf7) [%eval -57,17] [%emt 00:00:16]}
38.Rb4 {(Rb4) [%eval 86,20] [%emt 00:01:07]} Re8 {(Re8) [%eval -56,16] [%emt 00:00:15]}
39.Ra1 {(Kg2) [%eval 104,21] [%emt 00:00:50]} g6 {(Kg8) [%eval -67,16] [%emt 00:00:28]}
40.Raa4 {(Rd1) [%eval 105,22] [%emt 00:01:24]} Rce7 {(Rce7) [%eval -62,16] [%emt 00:00:14]}
41.Ra7 {(Kg2) [%eval 102,21] [%emt 00:00:27]} Rb8 {(Rb8) [%eval -61,19] [%emt 00:00:51]}
42.g4 {(Kg2) [%eval 103,22] [%emt 00:00:28]} Kg7 {(Kg7) [%eval -64,18] [%emt 00:00:50]}
43.Kg2 {(g5) [%eval 104,20] [%emt 00:00:28]} Kh8 {(Kf6) [%eval -67,17] [%emt 00:00:49]}
44.Kg3 {(g5) [%eval 92,17] [%emt 00:00:38]} Kg7 {(Kg7) [%eval -65,19] [%emt 00:00:48]}
45.g5 {(g5) [%eval 96,17] [%emt 00:00:28]} Kg8 {(Kg8) [%eval -64,18] [%emt 00:00:46]}
46.Ra5 {(Kg2) [%eval 86,17] [%emt 00:00:28]} Rf8 {(Rf8) [%eval -59,18] [%emt 00:00:45]}
47.Rab5 {(Rab5) [%eval 88,18] [%emt 00:00:28]} Rf3 {(Rff7) [%eval -59,18] [%emt 00:00:44]}
48.Kg2 {(Kg2) [%eval 82,22] [%emt 00:00:39]} Rff7 {(Rff7) [%eval -59,18] [%emt 00:00:43]}
49.Ra4 {(Ra4) [%eval 84,17] [%emt 00:00:29]} Rf8 {(Re8) [%eval -64,17] [%emt 00:00:42]}
50.Rbb4 {(Ra7) [%eval 67,18] [%emt 00:00:39]} Ref7 {(Ref7) [%eval -59,18] [%emt 00:00:41]}
51.Ra2 {(Ra2) [%eval 75,20] [%emt 00:00:29]} Re7 {(Re8) [%eval -59,18] [%emt 00:00:40]}
52.Rbb2 {(Rb5) [%eval 75,18] [%emt 00:00:39]} Kg7 {(h6) [%eval -59,18] [%emt 00:00:39]}
53.Ra7 {(Ra7) [%eval 85,21] [%emt 00:00:39]} Rff7 {(Rff7) [%eval -71,18] [%emt 00:00:38]}
54.Rb4 {(Rb4) [%eval 76,20] [%emt 00:00:29]} h6 {(h6) [%eval -65,18] [%emt 00:00:37]}
55.gxh6 {(Kf1) [%eval 75,20] [%emt 00:00:30]} Kxh6 {(Kxh6) [%eval -81,18] [%emt 00:00:36]}
56.Raa4 {(Raa4) [%eval 89,22] [%emt 00:00:30]} Rc7 {(Rc7) [%eval -69,17] [%emt 00:00:35]}
57.Rxe4 {(Rxe4) [%eval 116,17] [%emt 00:00:30]} Rc2 {(b5) [%eval -81,17] [%emt 00:00:34]}
58.Rf4 {(Rf4) [%eval 123,21] [%emt 00:00:41]} b5 {(Rxf4) [%eval -74,19] [%emt 00:00:33]}
59.Rxf7 {(Rab4) [%eval 122,26] [%emt 00:00:41]} bxa4 {(bxa4) [%eval -58,16] [%emt 00:01:00]}
60.Ra7 {(Ra7) [%eval 122,30] [%emt 00:00:30]} Ra2 {(Rc4) [%eval -73,14] [%emt 00:00:31]}
61.e4 {(Kg3) [%eval 155,21] [%emt 00:00:41]} g5 {(a3) [%eval -17,15] [%emt 00:00:30]}
62.Ra6 {(Ra6) [%eval 118,24] [%emt 00:00:41]} Kh5 {(Kh5) [%eval -22,15] [%emt 00:00:29]}
63.hxg5 {(Ra5) [%eval 117,23] [%emt 00:00:31]} Kxg5 {(Kxg5) [%eval 0,14] [%emt 00:00:29]}
64.Kg3 {(e5) [%eval 117,21] [%emt 00:00:31]} Ra3 {(a3) [%eval -99,15] [%emt 00:01:15]}
65.f3 {(f3) [%eval 145,22] [%emt 00:00:43]} Ra1 {(Ra2) [%eval -110,15] [%emt 00:00:26]}
66.f4 {(f4) [%eval 260,21] [%emt 00:00:43]} Kh5 {(Kh5) [%eval -97,7] [%emt 00:00:00]}
67.f5 {(f5) [%eval 286,22] [%emt 00:00:32]} a3 {(Kg5) [%eval -117,14] [%emt 00:00:25]}
68.Kf4 {(Kf4) [%eval 329,23] [%emt 00:00:44]} Rf1 {(Rf1) [%eval -166,13] [%emt 00:00:25]}
69.Ke5 {(Ke5) [%eval 428,23] [%emt 00:00:33]} Rf3 {(Rf3) [%eval -185,16] [%emt 00:00:24]}
70.Ke6 {(Ke6) [%eval 489,22] [%emt 00:00:33]} Kg5 {(Kg5) [%eval -280,14] [%emt 00:00:53]}
71.Rxa3 {(e5) [%eval 1,1] [%emt 00:00:00]} Rxa3 {[%eval 677,15] [%emt 00:00:22]}
0-1


I just downloaded all of the Schooner 1.5 64-bit games in the database and it doesn't have this issue.
gbanksnz at gmail.com
User avatar
Graham Banks
Posts: 45342
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by Graham Banks »

hgm wrote:OK, I see. This is very strange indeed. A GUI should never do that, when starting games from a book. It should always feed the moves of the opening line.

I am sure this would break many engines, not only Schooner. It would certainly break mine, and Sven just confirmed it would also break his. In fact I have severe doubts if there would be any WB engine it would not break.

When starting from a FEN suite in classical TC, the move counters of the FENs should all be at 1, if the GUI does not correct them so.

Results obtained for WB engines with ChessGUI in this book mode and at classical TC should be considered severely corrupted, as it wrecks their time management.
I downloaded the Joker games from our database as well and it doesn't have this issue either.
gbanksnz at gmail.com
User avatar
hgm
Posts: 28461
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by hgm »

I am not even sure the Joker version you use does support setboard. I remember having implemented that only very late, basically when I already stopped working on Joker itself, but in its spinoff Joker80 because there are so many different initialpositions for 10x8 Chess (Capablanca, Carrera, Bird, Gothic, Embassy, Schoolbook). Once I had the FEN reader I also ported that back toJoker, but I don't remember if I ever officially released that. Which version exactly are you using?
User avatar
Graham Banks
Posts: 45342
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by Graham Banks »

hgm wrote:I am not even sure the Joker version you use does support setboard. I remember having implemented that only very late, basically when I already stopped working on Joker itself, but in its spinoff Joker80 because there are so many different initialpositions for 10x8 Chess (Capablanca, Carrera, Bird, Gothic, Embassy, Schoolbook). Once I had the FEN reader I also ported that back toJoker, but I don't remember if I ever officially released that. Which version exactly are you using?
I checked the 1.1.14 games.
I guess it's possible that I may have used the wb2uci adapters though.
gbanksnz at gmail.com
User avatar
hgm
Posts: 28461
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by hgm »

This usage of time does look normal. It is not what you would get with most WB engines if the GUI was sending setboard commands, though.
User avatar
Graham Banks
Posts: 45342
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by Graham Banks »

hgm wrote:This usage of time does look normal. It is not what you would get with most WB engines if the GUI was sending setboard commands, though.
I use plenty of WB engines without problems - Crafty, EXchess and others.
gbanksnz at gmail.com
User avatar
hgm
Posts: 28461
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by hgm »

Graham Banks wrote:Check the ratings across a number of lists and see whether or not you find a significant discrepancy.
It is actually much easier to check: set the engine to 40 moves / min, feed it a FEN with move number 39, and see if it moves in 1-2 sec (assuming the 1 min it has is for 40 moves) or much longer (assuming it is for just 1 move).
Modern Times
Posts: 3808
Joined: Thu Jun 07, 2012 11:02 pm

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by Modern Times »

hgm wrote:
Graham Banks wrote:Check the ratings across a number of lists and see whether or not you find a significant discrepancy.
It is actually much easier to check: set the engine to 40 moves / min, feed it a FEN with move number 39, and see if it moves in 1-2 sec (assuming the 1 min it has is for 40 moves) or much longer (assuming it is for just 1 move).

I've just realised why I haven't noticed any strange behaviour with Winboard engines under ChessGUI. I play chess960, and there is no opening book, so this problem if indeed it is one, can't exist in that situation. Whenever I run an new engine for the first time I watch a few games to look for any strange behaviour, and this would explain why I haven't seen any.
Guenther
Posts: 4718
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: CCRL Engine Authors' Tournament (will start October 1st)

Post by Guenther »

Graham Banks wrote:
hgm wrote:I am not even sure the Joker version you use does support setboard. I remember having implemented that only very late, basically when I already stopped working on Joker itself, but in its spinoff Joker80 because there are so many different initialpositions for 10x8 Chess (Capablanca, Carrera, Bird, Gothic, Embassy, Schoolbook). Once I had the FEN reader I also ported that back toJoker, but I don't remember if I ever officially released that. Which version exactly are you using?
I checked the 1.1.14 games.
I guess it's possible that I may have used the wb2uci adapters though.
A last note here. This is one reason why only CCRL can efficiently check the game databases for this issue.
'We' don't know when WB2UCI was used and the second reason is that 40/4 games are not available with comments,
the third one would be that we cannot know when ChessGUI was used, except perhaps by typical PGN output.
For programs capable of UCI + WB I guess CCRL always uses UCI?