Not logged inRybka Chess Community Forum
Up Topic Rybka Support & Discussion / Rybka Discussion / Rybka @ Mainz 3rd Chess960 WCCC
- - By Vasik Rajlich (Silver) Date 2007-08-18 17:05 Edited 2007-08-28 12:02
The 3rd Livingston Chess960 Computer World Championship has finished and Rybka has won, defeating Shredder in the final.

As chess960 is played without any opening books and as local hardware was provided by the organizers, our active team was quite small this time:

Engine help: Larry Kaufman
Operator & Engine: Vasik Rajlich

I'd like to especially thank the organizers - Hans-Walter Schmitt, Eric van Reem, Mark Vogelgesang - and the tournament director, Hans Secelle - for an absolutely superb job with the organization of the event. We had:

- live broadcast of all games
- web coverage
- locally-provided hardware to remove the burdens of remote play from the participants
- a centrally-placed stage among the very interesting Mainz Chess Classic 2007 event
- an excellent round-robin-and-final format, much more worthy of "world championship" status than the usual swiss
- free accomodations, food, drink and more drink :)
- all sorts of little things that push an event over the top, ie. nice stage area, and so on

This is really the gold standard in computer chess organization, I was very impressed.

Rybka got off to a slow start, losing to Spike in the very first round. Rybka misplaced her queen and weakened her a-pawn right in the opening, and the counterplay along the b-file was not enough. Things improved after that, but Shredder proved a tough nut to crack - altogether, Rybka played five times against Stefan's program and only once could she outplay him positionally. These games felt to me nearly balanced. In the end, Rybka managed to pull away.

In general, it was a really fun event. My vocal cords were more-or-less shot after three days. It was interesting to see the other programmers (and webmasters), and also to talk to many of the top human players and to see the interest which computer chess draws.

Report and games from the site can be found here:

A photo report by our webmaster, Felix Kling, who himself played in the human events, can be found here:

Parent - - By Ray (****) Date 2007-08-19 08:46
I may have missed it, but what was the time control for the tournament ?
Parent - By M ANSARI (*****) Date 2007-08-19 11:24
Congrats and good job on yet another medal for Rybka to add to its portofolio.
Parent - - By Lukas Cimiotti (Bronze) Date 2007-08-19 11:33
It was 20min + 5sec. /move
Parent - - By Ray (****) Date 2007-08-19 20:41
Was that the same as Mainz 2006, do you know ?
Parent - By Felix Kling (Gold) Date 2007-08-20 10:25
Yes, it was. but in 2005 it was 25+0 because they had not enough digital clocks...
Parent - - By VP (*) Date 2007-08-19 22:38
Parent - By Gryphus (**) Date 2007-08-20 22:00
Congratulations Vasik and all time the Rybka. Shredder x Rybka is the best game. Very good.
Parent - - By Fischerandom Date 2007-08-21 10:46
Congratulations to the Chess960 Computer World Championship title!
I love Fischerandom Chess very much and I am so happy that Rybka can play it!
When can we play Fischerandom Chess with Rybka? The latest (2.3.2a) version
does not have the function to play Fischerandom Chess, right? What program is needed
to play a Fischerandom Chess with Rybka UCI version?
Could it be possible that this version that won the title be available soon or must
we wait for Rybka 3? I want to play now!!! :)

I think that the programmers of the best and strongest Fischerandom Chess programs, Rybka,
Shredder, HIARCS, etc., should defenitely work out standard protocols and specifications around the
whole issue of Fischerandom Chess in software, such as a table with the 960 possible starting positions,
and maby some source code that produces such a table in their own software, that developers can copy
and paste, etc. This documentation should be available from the websites of those that develop the
standard, like the specification for the UCI protocol is available at the shredderchess website, etc.

Also what should be discussed is how positions are selected by a computer (server, etc),
so that we can expect that each of the 960 possible positions have exactly the same probability of
appearing. Wrong is to compute the position while shuffling if the computing does not always take
exactly the same amount of time for each position. It would be inelegant anyway. As I see it the best is
a uniform world standard table for the 960 stating position, with C source code also public to produce
that table. Then the shuffler in the user's computer, or in a server that has the task to set up a
Fischerandom Chess starting position, shall use a counter running 0..959 at some fast rate (Bobby Fischer
specified that in his explanation of the Fischerandom Computerized shuffler to be 20 milion positions
shuffled per second, etc) but here it is also important to note what stops the shuffler. Because if the
"stop" that is noted by the computer that shuffles the position, not at any time with a very high resolution,
like 20 MHz, but instead maby at the rate of some system timer like 100 Hz, then the counter (0..959) may
end up more often on some numbers than others due to this fact of syncing with a slow clock,
I am worried about thease things. There is many ways to do the automatic computerized shuffling, and
several ways in that it can go wrong. But of course, its better that we get a Fischerandom Chess starting
position at all even if it is not so shuffled as a 20 MHz rate counter can produce with a human pushing
a button and it stops exactly there and then, not being dependent on a computer with a OS, etc. Just
an embedded system. Yes that is the most correct and hopefully such shufflers will be used.
But a server can not use them so still the problem shall be given some thought I think.

I myself have made a function in C++ that produces a table with the 960 starting positions. Very good I think.
The problem is that I am possible the only one that uses that table and that algorithm to produce it.
Only you Vasik and the other top programmers can have this meetings and discussions to form a real
standard, with a few protocols and documentations and also make some source code public to produce the
table. It does not help that a programmer like me show this to the world, you guys have to do it. Then
the standard will have some value!

I think that maby Bobby Fischer himself might be interested to discuss Fischerandom Chess with you guys
if you start on an attempt to create a strong standard around Fischerandom Chess. Why not?
For example, several algorithms in C to produce different tables with the 960 possible starting positions
and ask Fischer which one he thinks should be selected, if he has a preferrence, though mathematically it
should not matter which table that is selected. And what he thinks should be the name for the game he
invented. If he accepts any other name than "FISCHERANDOM CHESS"? Maby he dislikes the name change
but if the name Chess960 helps to popularize Fischerandom Chess then maby he is O.K. with that?

One last thing! I think that it is wonderfull that Fischerandom Chess has become more and more popular
but I only see speed chess games played in Fischerandom Chess. Fischer was a bit dissapointed that no
tournaments/matches played by the top players with standard tournament times was used in Fischerandom
Chess events. I agree!
Its defenitely time for that. For example, I'd like to see a public match between Rybka and Shredder playing
a long Fischerandom Chess match with time controls like 40/120, etc. It does not have to cost anything
and no title have to be at stake. Just do! I guess you already did as a preparation for the 3rd Livingston
Chess960 Computer World Championship.

Thank you for the time taken to read this and congrattulations once again to the new World Champion title!
Parent - - By Vasik Rajlich (Silver) Date 2007-08-22 10:06
960 Rybka is private for now. Releasing something always takes some time, we'll probably end up waiting until Rybka 3.

There is a UCI extension for 960, however the GUIs are quite inconsistent in following it. Stefan's GUI is 100% consistent with the UCI protocol.

As for the starting positions, in Mainz various players would roll the dice to place the pieces, one by one. This probably doesn't give a completely equal distribution to each position. 960-compatible GUIs also have a 'random position' function. I don't know how these are implemented.

Parent - - By Felix Kling (Gold) Date 2007-08-22 11:40 Edited 2007-08-22 11:43
"in Mainz various players would roll the dice to place the pieces, one by one. This probably doesn't give a completely equal distribution to each position"


OK, they didn't do it in the most clever way (you need a W4, a W6 and a W5 (or W10) to do it best) with their W6 (=dice with 6 sides), but of course every position had the same chance. I would do it like this:

First place the bishops, every bishop has 4 possible squares (4 black and 4 white), so we take the W4 and get the positions of the two bishops.

Then we take the W6 and place the queen.

Then we take a W5 and place one knight, and a W4 to place the other knight.

3 squares remain for the king+rooks and since the king has to be between the rooks...

So you can get the position by rolling the dice with a completly equal distribution of positions.

Some GUIs have a random position option for FRC, like Arena if I remember right.
Parent - - By Zruty (*****) Date 2007-08-22 11:57
By the way, this way we get 4*4*6*5*4 = 1920 'different' positions.
Since the two knights are identical, this means that we counted each position twice.
1920/2 = 960 :)
Parent - By Felix Kling (Gold) Date 2007-08-22 13:05 Edited 2007-08-22 13:07
To get 960 by multiplying the "Ws", we would need a W10 for the knights and define e.g.
1=1+5 (this means knight on the first and fifth remaining square)

(we have 2 over 5=10 possibilities to place the knights)

but this is quite complex to do in practise if compared with my solution, since you have to know the table.
Parent - By Vasik Rajlich (Silver) Date 2007-08-24 09:15
Ok, maybe you're right. We didn't really discuss these things at the player's meeting :)

Parent - By Vempele (Silver) Date 2007-08-22 12:16

> There is a UCI extension for 960, however the GUIs are quite inconsistent in following it.

The engines are, too. Generally, if a 960 engine works in Arena it won't work in Shredder and vice versa.

>Stefan's GUI is 100% consistent with the UCI protocol.

It'd be worrying if it weren't. :)
Parent - - By Banned for Life (Gold) Date 2007-08-22 14:32
"In Mainz various players would roll the dice to place the pieces, one by one."

Are you serious? This is insanity. Store the 960 starting positions in a database, choose one by generating a uniform random number between 1 and 960, and be done with it. If the FRC proponents can't get this trivial task right, there is no hope for having it catch on with the masses.

Parent - - By Ray (****) Date 2007-08-22 16:45
I don't think it matters how the random positions are selected, by computer or by the dice. I like the dice method actually for these small number of games - I think it's kind of quaint (the definition of that word that I like: agreeably odd, especially in an old-fashioned way, strange in an interesting or pleasing way)
Parent - By Vasik Rajlich (Silver) Date 2007-08-24 09:17
Yes, exactly. Hans Secelle definitely had a lot of fun with this, it was a kind of ceremony.

Parent - - By Guenther RWBC (**) Date 2007-08-23 10:04
Hi Vas,

I am not too much interested in FRC, but I have a lot of interest in a Rybka version, which also plays
unusual and small openings quite good. Would this FRC Rybka also be able to play normal chess?
(without setting it up as FRC engine)

I am asking because I did an extensive test for curiosity's sake. The main reason for my test was to experience
something about what is really playable or not playable in _all_ randomly selected 2 plies start positions.
(There are 400 possibilities for the first 2 plies)
As most others I expect chess to be a drawn game with best play and I wanted to know something about
what moves in the first 2 plies already would disturb that balance, or if the balance would still be there,
whatever 2 plies are randomly chosen.
I expected a nearly 100% score for several of the openings which outright sack a pawn in the first 2 plies,
to my surprise it did not happen that frequently.
I am still working through the data and through the conclusions. Of course it is also possible that there
is some distorting effect from the fast time controls. (Because of the huge number of games I could only
do 2 tests with 800 games each at 40/1 and 40/4.)

Anyhow a side effect of all this was that it amplified some weaknesses in Rybkas opening play and
king safety(relatively seen of course ;) ).Practically _all_ quick losses from those 1600 games came from
Rybka and that was at least some surprise for me.(The opponent for both matches was Fruit 051103,
still Rybka of course won with around 60%, but the test was not about that)
Of course one can say it is just unimportant what a program would do without book in weird 2 ply
positions, but still it is interesting for some scientific approach.

BTW the average score with white was around 54%, which is less a surprise to me as some positions really
should favour white, actually I would have expected even a higher score for it, because of the pawn sack
positions. It seems to be just a coincedence that this is the same score as in normal play.(where both try
to play _always_ the best move)
What would be the explanation BTW that White gets around 54% normally despite we(or most) agree on
a draw as normal outcome of the game? +/- 4% over all games is just a lot for something which doesn't really exist?

Parent - - By turbojuice1122 (Gold) Date 2007-08-23 14:54
Based on my experience and tests, the best engine in the very early opening phase of the game beginning from the normal board setup is Ktulu 8--yes, better than Rybka 2.3.2a.  The next best is Loop 10.32f.
Parent - - By Lee Ma Hong (**) Date 2007-08-23 15:29
Can you qualify/elaborate why ktulu 8 and loop 10.32f are better than rybka 2.3.2a in the very early opening phase from the normal board setup?
Parent - By turbojuice1122 (Gold) Date 2007-08-23 20:40
Because these engines score very well in large double-round robin tournaments without opening books.  Loop 10.32f scores noticeably better than Rybka 2.3.1 and about the same as Rybka 2.3.2a; Ktulu 8 scores near Rybka 2.3.1.  The reason that the Rybkas are so far up is because they play the middlegame and early endgame extremely well, so they're able to make up for their opening mistakes.  Among the programs at the top, you can get an impression of opening play ability by taking performance rating minus actual rating, since the actual ratings are calculated based on beginning with positions that are middlegame positions.
Parent - By Vasik Rajlich (Silver) Date 2007-08-24 09:21
FRC Rybka is just normal Rybka adapted to the 960 castling.

Do you mean that in your test, Rybka lost quickly more often than Fruit? That would be surprising.

Re. a position like 1. e4 b5, that's a clean pawn and white should probably score 75-80%, depending on the TC and the strength of the players. I would think that overall, white would score better in your experiment.

As for white in normal chess, obviously white has better practical chances.

Up Topic Rybka Support & Discussion / Rybka Discussion / Rybka @ Mainz 3rd Chess960 WCCC

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill