Rybka 3.0 – All you need to know about the new program

by ChessBase
7/29/2008 – Does it run on 64-bit machines? Is it optimised for the 64-bit environment? Do we get two engines, one for 32 and one for 64 bit systems? These were the most common questions we received after announcing our new Rybka 3 chess engine. And what are the most important new functions? How do they help with training and analysis? Here are the answers.

ChessBase 17 - Mega package - Edition 2024 ChessBase 17 - Mega package - Edition 2024

It is the program of choice for anyone who loves the game and wants to know more about it. Start your personal success story with ChessBase and enjoy the game even more.


All you need to know about Rybka

To answer the most pressing qustion first: actually there are not two but a total of sixteen Rybka engines on the program DVDs – each of the two products, Rybka 3 and Deep Rybka 3, is delivered with eight engines. The 64-bit versions run only under Windows 64 bit, the 32-bit versions run both under Windows 32 bit and Windows 64 bit.

Here is an overview of the engines:

Rybka 3

Single 32 bit




Chess 960

Single 64 bit




Chess 960

Deep Rybka 3

Multi 32 bit




Chess 960

Multi 64 bit




Chess 960

The engine labelled “Chess” is the standard chess engine. The one labelled “Human” has a different evaluation, one that is closer to the way human grandmasters think. If you play these two engines against each other the pure chess engine is likely to win. However, the Human engine will often deliver better results in long-time analysis and in analysis of your own games. In the opening phase the Human engine plays moves that match GM games 20% more often than the standard engine does. In addition the evaluation of winning chances in GM games is more balanced in the Human engine. This is achieved with more and higher static analysis.

The “Dynamic” version of Rybka is almost exactly the opposite. It evaluates dynamic factors higher than the standard version. Such factors play a role for instance in certain gambit lines, which the Human version may find dubious, while the Dynamic version sees good compensation for the sacrificed material.

The Chess 960 engines play both Chess 960 as well as classical chess. Since Chess 960 requires additional code there is a special version for this variation of the game.

The Rybka 64 bit version is 60% (on average) faster than the 32 bit version. Rybka benefits from the 64 bit OS more than most other engines. It is the most inexpensive was to get a better performance, let's say if you have a just single core PC.

Handicap book

Larry Kaufman provides us with a little delicacy: a special handicap book. This is automatically installed, together with the normal book. The handicap book, which is just three moves deep, can be used in normal games against the engine. There are also a few variations for handicap positions, which can be loaded under File – New – Handicap position. In every case it is White to move, and depending on which way around the board is, you get to play with the white or black pieces.

Multiple variations

The ability to analyse a position with the best, next best, etc. move displayed by the engine, has been extended. There is a new dialog box that allows you to determine how many lines are displayed and give an evaluation window for them.

In this example Rybka will display five alternate lines, but only if they lie within the margin of +/– 50 pawn units (half a pawn) from the best line found so far. The engine may sometimes display fewer than five lines, or in fact just one line, if it is clearly better than anything else (i.e. it is “forced”). This not only makes the analysis display easier to follow, it also has a technical advantage. The evaluation window speeds up the search. Until now one had to make a choice between more information in the form of alternate lines, which however leads to a shallower depth of search, and the highest possible speed with a minimum of information (just one main line). Now the engine keep up its search speed and decide itself how many lines to display.

Find better / clearly better move

This works something like “Next best move”, with an important difference: you can give the engine a minimum requirement for the alternative move. If this value is not available then no alternate line will be displayed. This may not seem so useful, since it will often retrieve nothing. But it can dramatically increase the speed of the search. If you think there must be something better than the currently displayed main line you can switch it off with this function. The engine will then not waste any time generating the previous main line but concentrate its full attention on the alternatives, reaching its conclusions much faster than it otherwise would.

When searching for a better move the evaluation for the current main line is used as the lower boundary for the search, and a new line is displayed only if it is better than the old main line. The window defines how much better the new line must be (in our example above four tenths of a pawn). Setting a high value for the better move window causes the engine to go very deep very quickly and find incredible alternatives if they are hidden in the position.

Shared analysis

Another interesting function is the shared analysis. If you use this function a number of things happen. First of all the currently working Rybka releases half of the processor or processors that it is using. It is also fixed to the current position. At the same time a second Rybka engine is started, using the free processor capacity. You can recognize it by the “B” given behind the engine name. Both engines run in analysis mode. If you are playing through a game or analysing a position the B-engine will follow the moves on the board, while the base engine continues to work on the original position.

Now comes the most important part: both engines use the same hash tables. Engine B is entering values in the hash tables that the base engine will encounter and use, allowing it to profit from deep interactive analysis performed by the B-engine together with its human operator. What you are doing is to feed interesting ideas to the base engine, which uses them in its own full-width search.

If you want to analyse a different position then you simply unlock the base Rybka, which automatically jumps to the board position and locks itself onto it. You can continue analyzing with the B-engine. If you want to quit the parallel analysis mode you simply close the B-engine.

Monte Carlo Analysis

This is a new method of analysing a position. The engine plays a large number of very fast games, internally, and produces a statistically relevant evaluation.

The results produced by the Monte Carlo analysis are not like the usual position evaluation of chess engines. In our example above Rybka is telling us that statistically White can be expected to score 65.3% if Black plays 16...Qa5, and 60.6% if he plays 16...h6 (evaluations are always given from the point of view of White). Since the games are played all the way to a decision the long-term chances are better evaluated than in a traditional search.

The quality of the statistical evaluation produced in a Monte Carlo search is improved by a greater number of games, rather than a greater search depth. The latter can be set in the dialog box shown above. Every extra ply of search depth halves the number of games the engine is able to play in a period of time. If you are going to give it just a couple of minutes then a five-ply search is fine; if you allow the engine to analyse all night you will want to use a deeper search.

The Monte Carlo search is always conducted in single-engine mode. This is because at shallow search depths a parallel search is not efficient: two single engines are almost twice as fast as a dual engine. So it is better to start a number of engines (depending on how many cores your processor has), which will then work on different variations at the same time.


Multi-processor version: Deep Rybka 3   99.90 Euro
Single processor version: Rybka 3   49.99 Euro
Rybka 3 Book   24.99 Euro

Note that Rybka 3 includes a database of one million games, and that the purchase of the program entitles you to one year of access to the chess server Playchess.com. Rybka 3 is a UCI engine, with 32 and 64-bit versions included in the package. Rybka can be made the default engine in ChessBase 10.

Order Rybka now
Delivery starts on August 1st 2008

Reports about chess: tournaments, championships, portraits, interviews, World Championships, product launches and more.


Rules for reader comments


Not registered yet? Register