02 August 2014

TCEC Season 6 - Chess960

After posting Stockfish, the Strong, winner of this year's TCEC Season 6 Special Event (chess960), I started looking at the games from the event. I couldn't find a crosstable, so I made one myself, shown below. The crosstable is simple, but doesn't conform completely to standard crosstable presentation -- the engines are listed on the horizontal axis in alphabetical order rather by descending score.

The difference in final score between the two top engines is due to their own mini-match (+2-1=1 for Stockfish) and to Houdini's relative failure against third placed Critter (+0-0=4). I was mildly surprised to see that different start positions (SPs) were chosen for each game. Since each engine played four games with the other engines, it might have been better to use the same SP in one pair of games between the same engines, giving both engines the chance to play White and Black.

The PGN for the event is worth a look. Shown below are the header and first two moves for the first game on the file.

[Event "TCEC Season 6 - FRC"]
[Site "http://tcec.chessdom.com"]
[Date "2014.06.28"]
[Round "1"]
[White "Fire 3.1"]
[Black "Tornado 5"]
[Result "1-0"]
[BlackElo "2778"]
[EventDate "2014.06.28"]
[FEN "rknqbbrn/pppppppp/8/8/8/8/PPPPPPPP/RKNQBBRN w KQkq - 0 1"]
[GameDuration "03:59:58"]
[PlyCount "90"]
[SetUp "1"]
[Termination "adjudication"]
[TerminationDetails "TCEC win rule"]
[TimeControl "7200+30"]
[Variant "fischerandom"]
[WhiteElo "3067"]


{ WhiteEngineOptions: Protocol=UCI; Hash=16384; Threads=16; UCI_Chess960=true; OwnBook=false; Ponder=false;, BlackEngineOptions: Protocol=UCI; Hash=16384; Threads=16; NalimovPath=C:/EGTB/Nalimov/; NalimovCache=32; UCI_Chess960=true; OwnBook=false; Ponder=false; }
1. Ng3 { d=27, pd=Ng6, mt=00:06:16, tl=01:54:13, s=22597 kN/s, n=8512418665, pv=Ng3 Ng6 d4 d5 e3 a5 a4 e6 Nd3 b6 b3 Nd6 Be2 Be7 Bc3 Bc6 f3 f6 Qd2 Qd7 Ka2 Kb7 Bb2 Nf7 f4, tb=0, R50=50, wv=0.02, }
e6 { d=30, pd=a4, mt=00:12:44, tl=01:47:45, s=6728 kN/s, n=3229899629, pv=e6 a4 a5 Ra2 d5 d4 Ng6 e3 Nb6 Nb3 Bxa4 Nxa5 Ra7 b3 Be8 c4, tb=0, R50=50, wv=0.11, }

I can't claim to understand all of the values in the notes ('{...}'), but most of them are self-explanatory if you are familiar with chess engines. In my next post I'll look at a game between the first and second placed engines.

1 comment:

GeneM said...

Interesting that the VARIANT value is "fischerandom" instead of the more broadly accepted "chess960".

Disappointing that KQkq is used in the FEN for castling rights, instead of the superior AGag (the start columns for the four rooks).

There simply must be two tags in the .PGN spec for the start position of the chess960 game. Something like:
[StartPosAH "RKNQBBRN"]
[StartPosNum "SP826"]

--------

However, Scharnagl's numbering system for chess960 setups is not well designed in my judgment. It is optimized to make the computer program that calculated it relatively short and elegant; which is something chess players do not care about. It is merely an unnecessary geek aesthetic.
The giant problem with Scharnagl's system is that, for example, the ID numbers are not reciprocal. By that I mean that SP826 and SP326 (exactly 500 difference) are *not* the reverse of each other, as shown next:
SP826 - RKNQBBRN
SP326 - NRBQKBRN (not reciprocal)

Instead of Scharnagl's "SP" numbering system, it would be better to use the "R#" system, so that humans can instantly determine the reciprocal setup, as shown next:
R#904 - RKNQBBRN
R#404 - NRBBQNKR (is reciprocal)

GeneM. 2014-Aug-03.