Battle of the Goths 2012 (live broadcast)

Discussion of computer chess matches and engine tournaments.

Moderators: hgm, Rebel, chrisw

User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: Battle of the Goths 2012 (live broadcast)

Post by Evert »

I've uploaded a Win32 compile of my current version (r468): http://www.eglebbk.dds.nl/program/chess-download.html

I don't think it's much stronger than the old version, but there are some improvements. I'm currently running tuning matches, but it seems very hard to improve the current evaluation just by tuning. I guess I should actually get to work on fixing some of the things in there (and adding some of the things that aren't). ;)

The results from the test matches currently linked from your page looks odd to me. In local testing I get ~60% against Fairy-Max. It may just be difference in system setup of course (64 bit Linux vs 32 bit Windows). If that's the case it's something I guess I should look into...
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Battle of the Goths 2012 (live broadcast)

Post by hgm »

Well, as 468 immediately crashes when I start it, I will stick with 437 for now.
User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: Battle of the Goths 2012 (live broadcast)

Post by Evert »

hgm wrote:Well, as 468 immediately crashes when I start it, I will stick with 437 for now.
:shock:
I can't reproduce it here with Wine:

Code: Select all

$wine xsjaak.exe 
#[-]>new
#[Chess] 0w>variant gothic
#[Capablanca chess (Gothic)] 0w>sd 8
#[Capablanca chess (Gothic)] 0w>go
  2    5     0       126 Ag1-f3 
  3   14     0       514 Nb1-c3 Ce8-d6 
  4    5     3      2216 Nb1-c3 Ag8-f6 Ag1-f3 
  5   14     4      2982 Nb1-c3 Ag8-f6 Ag1-f3 Ce8-d6 
  6    6     9      7209 Nb1-c3 Ag8-f6 Ag1-f3 Ce8-d6 Ni1-h3 
  7   15    28     21598  d2-d4 Nb8-c6  d4-d5 Nc6-b8 Bc1-e3 Ni8-h6 
  8    4    99     82806 Ag1-f3 Ag8-f6 Ni1-h3 Ni8-h6 Ce1-d3 Ce8-d6 Cd3xd6 
move g1f3 
#[Capablanca chess (Gothic)] 1b>
Do you have a log that shows the crash?

EDIT: ok, never mind: it was crashing while printing the list of supported variants in response to the protover command. Fixed now; I've put 469 in the same archive as 468, so downloading it again should give you a working version. It differs only in this respect and I'll do a proper release & update later.
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Battle of the Goths 2012 (live broadcast)

Post by Ferdy »

hgm wrote:In a few hours I will start the Battle of the Goths 2012 general 10x8 championship.

Playing conditions:

Code: Select all

Core 2 Duo 2.4GHz (E6600)
WinBoard 4.5TM GUI
128MB hash
ponder off
1 CPU
25 min + 1sec/move
Replacements are allowed (but no guarantee as to when they can be performed!)
The following engines will participate:

Code: Select all

1. Bihasa          Ferdinand Mosca
2. Joker80         H.G. Muller
3. SMIRF           Reinhard Scharnagl
4. TJchess10x8     Tony Hecker
5. Nebiyu          Daniel Shawul
6. Spartacus       H.G. Muller
7. TSCP Gothic     Tom Kerrigan / Michel Langeveld
8. Sjaak           Evert Glebbeek
9. Fairy-Max       H.G. Muller
10.Heretic         Martin Sedlak
11.ChessV          Gregory Strong
12.ArcBishop80     Matthias Gemuh
13.BigLion80       Matthias Gemuh
Tournament format:

The tournament will start with a qualifier, played as a round-robin between numbers 5-10 of the above list. The three top-finishers will join 1-4 for the playoffs, a round-robin of seven. The three lowest-ranked engines of the qualifier will join 11-13 for the second-division, a round-robin of 6. Result from the qualifier will continue to count in the playoffs and second division, i.e. games between engines that both were in the qualifier will not be played again in the playoffs and second division.

There will be 8 games per pairing, from 4 different initial positions, each played with both colors. The initial positions are:

Code: Select all

rnbqckabnr/pppppppppp/10/10/10/10/PPPPPPPPPP/RNBCQKABNR w KQkq - 0 1 (Gothic)
rnabqkbcnr/pppppppppp/10/10/10/10/PPPPPPPPPP/RNABQKBCNR w KQkq - 0 1 (Capablanca)
rnbcqkabnr/pppppppppp/10/10/10/10/PPPPPPPPPP/RNBCQKABNR w KQkq - 0 1 (Bird)
ranbqkbncr/pppppppppp/10/10/10/10/PPPPPPPPPP/RANBQKBNCR w KQkq - 0 1 (Carrera)
The different setups will be played as 4 consecutive tourney cycles, with 2 consecutive games per pairing each. First all cycles of the qualifier will be played, to decide who qualifies where. Then the remaining games of the second division will be played. Finally the remaining games of the playoffs. These will also be played one opening setup after the other, with two consecutive games per pairing.

The highest-ranked engine of the playoffs can call itself "Battle-of-the-Goths general 10x8-chess champion 2012".

Games within one cycle will be played automatically through WinBoards intrinsic tournament manager, and can be viewed live through a JavaScript-enabled internet browser at

http://80.100.28.169/gothic/chess.html

This broadcast uses the ChessLive! viewer system, which includes a possibility for the spectators to chat about the game.
Qualifier - Capablanca variant update.

Code: Select all

Cross table, sorted by score percentage, Buchholz, SB

                              Sp ts Ne Fa Sj He
 1. Spartacus 1.02            ##       11 11 11  100%   6.0 (  4.0,   4.0)
 2. tscpgothic                   ## 11    11 1   100%   5.0 (  8.0,   8.0)
 3. NebiyuChess_1.42             00 ## 11    11   67%   4.0 ( 14.0,   4.0)
 4. Fairy-Max 4.8R            00    00 ## 11      33%   2.0 ( 20.0,   0.0)
 5. Sjaak 437                 00 00    00 ##       0%   0.0 ( 26.0,   0.0)
 6. Heretic 0.1               00 0  00       ##    0%   0.0 ( 25.0,   0.0)
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Battle of the Goths 2012 (live broadcast)

Post by hgm »

First cycle of the qualifier has been completed:

Code: Select all

                              Sp ts Ne Fa Sj He
 1. Spartacus                 ## 11 10 11 11 11   90%   9.0 ( 42.0,  35.0)
 2. tscpgothic                00 ## 11 01 11 11   70%   7.0 ( 46.0,  23.0)
 3. NebiyuChess               01 00 ## 11 11 11   70%   7.0 ( 46.0,  23.0)
 4. Fairy-Max                 00 10 00 ## 11 11   50%   5.0 ( 50.0,  11.0)
 5. Sjaak                     00 00 00 00 ## 11   20%   2.0 ( 56.0,   0.0)
 6. Heretic                   00 00 00 00 00 ##    0%   0.0 ( 60.0,   0.0)
TSCP Gothic surprised by beating Nebiyu twice. Fairy-Max did also transcend his usual level by beating Sjaak twice, and TSCP once. Spartacus profited from these unexpected losses of its nearest competitors by taking a firm lead.

In the second cycle, which I just started, we play from the Capablanca setup.
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Battle of the Goths 2012 (live broadcast)

Post by Ferdy »

hgm wrote:First cycle of the qualifier has been completed:

Code: Select all

                              Sp ts Ne Fa Sj He
 1. Spartacus                 ## 11 10 11 11 11   90%   9.0 ( 42.0,  35.0)
 2. tscpgothic                00 ## 11 01 11 11   70%   7.0 ( 46.0,  23.0)
 3. NebiyuChess               01 00 ## 11 11 11   70%   7.0 ( 46.0,  23.0)
 4. Fairy-Max                 00 10 00 ## 11 11   50%   5.0 ( 50.0,  11.0)
 5. Sjaak                     00 00 00 00 ## 11   20%   2.0 ( 56.0,   0.0)
 6. Heretic                   00 00 00 00 00 ##    0%   0.0 ( 60.0,   0.0)
TSCP Gothic surprised by beating Nebiyu twice. Fairy-Max did also transcend his usual level by beating Sjaak twice, and TSCP once. Spartacus profited from these unexpected losses of its nearest competitors by taking a firm lead.

In the second cycle, which I just started, we play from the Capablanca setup.
I was wrong with my post earlier, the first set of round-robin should be gothic.
BTW how is Spartacus different from Joker?
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Battle of the Goths 2012 (live broadcast)

Post by hgm »

Spartacus was written from scratch to avoid all the design errors I had made in Joker. (e.g. Joker had only partial move sorting). They share no code. Spartacus was set up to be variant friendly; it uses 24x10 mailbox board, and a more flexible encoding scheme for special moves. So it can play all variants with the same engine, just re-initializing its piece-square tables. (Joker does not have PST, just a centralization table shared by P ,B ,N and end-game K.) Joker uses SEE to sort captures, Spartacus uses BLIND. Spartacus has an 'inverted' move generator for captures, using 0x88 methods to generate them in MVV order, so it can do staged move generation. It is designed to work from an incrementally updated attack table to speed this up, but that does not work yet, so it is currently disabled. Spartacus has a Pawn hash and a material table, more aggressive LMR, but poorer evaluation (especially King Safety).
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Battle of the Goths 2012 (live broadcast)

Post by hgm »

Evert wrote:The results from the test matches currently linked from your page looks odd to me. In local testing I get ~60% against Fairy-Max. It may just be difference in system setup of course (64 bit Linux vs 32 bit Windows). If that's the case it's something I guess I should look into...
I have not really analyzed the stats of the test games (only scanned them for time losses, false claims, illegal moves and such), but I admit Sjaak seems to be playing weaker than I expected. I can't detect any irregularities, though. I monitor with the task manager, and there are no hanging engine processes (and we have one spare core, just in case), and it does have a plausible memory foot print (101MB), and uses 50% CPU (=1 core) when thinking.

It could be that it was just unlucky, I see there were only 6 test games between them. As to the real games, it is 3 vs 1 now, which even with 60% in favor of Sjaak has 15% probability (as we seem to have almost no draws...), where the 'normal' reversed result would have 34% . I don't know if it can hurt Sjaak much that we are running 32-bit. I don't expect Windows vs Linux to have much of an impact.

I do notice that Sjaak thinks quite long (with 25+1) over the first few moves, which could leave it at a disadvantage when it later gets into critical positions.

The Fairy-Max compile I am using is not special in any way; it is just the one that comes with the WinBoard install (made with gcc under Cygwin from the source in my repository). It is not even a PGO compile.
User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: Battle of the Goths 2012 (live broadcast)

Post by Evert »

hgm wrote: I have not really analyzed the stats of the test games (only scanned them for time losses, false claims, illegal moves and such), but I admit Sjaak seems to be playing weaker than I expected. I can't detect any irregularities, though.
Nothing jumped out in the games to me either.
I don't know if it can hurt Sjaak much that we are running 32-bit.
It can.
Sjaak uses 128 bit integers to represent boards with more than 64 squares. This isn't so bad in 64 bit with SSE instructions to handle them, but it probably hurts more than it does for normal chess when going to 32 bit...
I do notice that Sjaak thinks quite long (with 25+1) over the first few moves, which could leave it at a disadvantage when it later gets into critical positions.
That could also be an issue, athough I don't think I've changed the time control algorithm over what it was for Spartan, so it should have had the same problem there.
I'll have a look anyway.
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Battle of the Goths 2012 (live broadcast)

Post by hgm »

After two cycles (Gothic and Capablanca) the cross table is:

Code: Select all

                              Spar Nebi tscp Fair Sjaa Here
 1. Spartacus                 #### 10=1 1111 1111 1111 1111   92%  18.5 (166.0, 142.8)
 2. NebiyuChess               01=0 #### 0011 1111 1111 1111   77%  15.5 (178.0, 105.8)
 3. tscpgothic                0000 1100 #### 0111 1111 1111   65%  13.0 (188.0,  75.5)
 4. Fairy-Max                 0000 0000 1000 #### 1110 111=   37%   7.5 (210.0,  30.3)
 5. Sjaak                     0000 0000 0000 0001 #### 1101   20%   4.0 (224.0,  12.0)
 6. Heretic                   0000 0000 0000 000= 0010 ####    7%   1.5 (234.0,   7.8)
An appreciable gap is forming between numbers 3 and 4, which incidentally coincides with the the qualification threshold. Only Fairy-Max was so far able to bridge that gap, by stealing away a point from TSCP Gothic.

Now we started a cycle of Bird Chess.