Вы находитесь на странице: 1из 12

        *********************************************

        *    Komodo 9 for Windows, Linux and OSX    *


        *     (includes Komodo 9.1 through 9.4)     *
        *********************************************
          © 2016 Mark Lefler and Larry Kaufman

These instructions are for Komodo 9 through Komodo 9.4


versions.

Komodo 9 is an improvement over all previous Komodo


versions and supports multi-core computers and endgame
tablebases. Komodo has won highly respected engine
tournaments such as TCEC, CCT, and the World Blitz and
World Rapid championships. Komodo 9 is approximately +50
Elo stronger than Komodo 8 on one core according to the
independent IPON test as well as our own internal testing,
with the gain increasing with more cores, to about 60 Elo
on 4 cores based on our own tests. Independent testing by
CEGT puts the gain in the 47 to 65 Elo range at
intermediate time controls, depending on the exact time
control and number of cores.

Komodo 9.1 is about 15 elo stronger than Komodo 9 based on


averaging several rating lists.

Komodo 9.2 is about 15 elo stronger than Komodo 9.1,


probably more than this against weaker engines (and humans)
due to our new “contempt” feature described below.

Komodo 9.3 is about 10 elo stronger than Komodo 9.2 based


on the rating lists plus our own testing. Against Komodo 8
our tests show gains of nearly 100 elo on 1 and 4 threads.
 Komodo 9.3 is a slightly improved version of Komodo 9.3x
which won the TCEC Season 8 Championship, widely considered
to be the unofficial world computer chess championship. It
is also an upgraded version of the engine that decisively
defeated two strong Grandmasters in serious six game
matches despite giving odds of rook for knight or the f7
pawn.  

Komodo 9.4 further improves the Komodo 9 series, with a


gain over 9.3 of 15 elo based on 10,300 games at 2’ + 1” on
single thread. The gains appear to be slightly than this in
MP mode, using two, four, or many threads. Against Komodo 9
we have a plus 52 elo result after 1759 single-thread games
at 2’ + 1”, and a whopping plus 77 elo result on four
threads after just 110 games. It is an improved version of
the one that defeated World Champion Candidate and U.S.
Champion Hikaru Nakamura by 2.5 to 1.5 despite giving him
rook for knight, f2 pawn, f7 pawn, and four move handicaps.
There are two important new features “Contempt for White”
and “Dynamism” described below.    

Key features of Komodo 9:


 - Evaluation developed by a Grandmaster
 - Multi-core support (up to 64 cores)
 - Syzygy endgame tablebase support

What's new in Komodo 9:


 - Evaluation improvements
   - better assessment of mobility/activity
   - improved handling of drawish positions
   - improved understanding of attacks on the king
   - Improved search performance (much better time-to-
depth)
   - Chess 960 (Fischer Random Chess) support
   - Persistent Hash: save and restore analysis
   - Over 100 other improvements throughout the software

Changes for Komodo 9.01:


- improved sudden depth time allocation
- engine now ignores repeated commands from GUIs

Changes for Komodo 9.02:


- corrected a castling rights issue in reading fen
positions

Changes for Komodo 9.1:


- New Endgame term
- Revised LMR rules
- Re-tuned eval terms
- More efficient hash table
- speedups
- Revision to King Safety
- Improved MP scaling
- Improved trade-down incentives
- Revised Selectivity Default
- Improved Persistent Hash
- Better fen position parser

Changes for Komodo 9.2:


- New Contempt replaces Drawscore
- Major re-tuning of most eval and many search
parameters
- Improved in time management
- Improved move-ordering
- Increased weight on all “dynamic” terms

Changes for Komodo 9.3:


- Added “suppress” command to suppress communication
between the engine and GUI useful in remote
connections or very fast games
- Better tuning of evaluation
- Better time management
- Better handling of blocked positions tied with
improved Contempt
- Improved pruning
- Speedups
- Improved MultiPV
- Bishop outposts
- Stricter extension rules
- Smaller evals with equal material
- Improved MP on some NUMA machines
- Making forced moves more quickly
- Increased King Safety weight
- Increased Selectivity

Changes for Komodo 9.4:


- Added “Contempt for White” command to improve
analysis
- Added “Dynamism” which lets the user control the
weighting of dynamic evaluation terms. A low setting
will make Komodo play conservatively; a high setting
will encourage risky play.
- Various speedups
- Revised MP search
- Better threat evaluations
- New eval terms
- Reduced queen value and queen mobility, which were
too high in 9.3.
- Improved King Safety
- Improved passed pawn evaluation
- New Endgame knowledge
- Improved book handling
- Revised LMR and Extensions
- Revised quiescence search
- Hash table changes
- More than 70 evaluation and search changes

===================
If you have Windows
===================

The executables for Windows are in the /Windows


subdirectory in the zip file you received.  You will find
two versions:

  komodo-9.4-64bit.exe
  komodo-9.4-32bit.exe

We recommend using the 64-bit version as long as your


hardware and version of Windows supports it. The 32 bit
version will be slower than the 64 bit version. Please copy
the files from the zip file to a directory on your local
hard drive. Note that some antivirus programs may prevent
extracting executable files from zip files. You may need to
make an exception for the komodo zip files. We recommend
making one directory to keep all your komodo files in one
place (such as c:\engines), so they are easier to find and
add to your chess programs. You will find help on
installing in common GUIs here:

  http://komodochess.com/installation.htm

=================
If you have Linux
=================
The binary for Linux is in the /Linux subdirectory:

  komodo-9.4-linux : This version is optimized for present


day (2015) machines but should still run on older machines
that support 64 bits.

The program must have execute permissions to run. You can


set permissions with this command in a terminal window:

$ chmod +x komodo-9.4-linux

====================
If you have Mac OS X
====================

The binary for Mac OS X is in the /OSX subdirectory.

  komodo-9.4-64-osx

The file must have execute permissions to run. If you have


trouble getting your chess GUI to load Komodo 9.4, you can
try setting these permissions from the Terminal.app with
this command (run from the same directory as the Komodo OS
X executable):

$ chmod +x komodo-9.4-64-osx

Some suggested free GUIs for OSX are:

ChessX: http://chessx.sourceforge.net/node/3 
Scid vs Mac: http://www.macupdate.com/app/mac/47867/scid-vs.-mac

And a good paid GUI is HIARCS Chess Explorer:


http://www.hiarcs.com/mac-chess-explorer.htm 

================
Android Versions
================

Due to huge variations in hardware and OS versions, an


Android version is not included in the package, but can be
bought via this link to the Google Play Store for Komodo 9:

https://play.google.com/store/apps/details?
id=com.komodochess.komodo9

The Google Play Store automatically detects and installs


the appropriate version for your hardware and Android
version. Due to licensing, the Android version must be
installed by Google Play Store, then the App needs to be
opened once to register it.

==========
HOW TO RUN
==========

Komodo is a chess engine. It calculates moves but does not


include a chessboard. The Komodo web site recommends a few
'chessboard' programs (aka GUI) which can be used with
Komodo, some of them are open source and of very high
quality (http://komodochess.com/installation.htm). For best
play it is very important to set the Threads value to match
your system. If you do not already own a good UCI-compliant
GUI (such as Fritz, Chessbase, Hiarcs Chess Explorer or the
Shredder GUI), a good free one for Windows is Arena
(playwitharena.com), version 3.0.

Komodo's settings can be changed from the GUI. We will


explain the non-standard settings below. See setHash.txt
for additional information on setting the hash size based
on your specific machine and time control.

The most important settings to adjust for your computer are


Threads and Hash. They are described below.

Table Memory
------------

This parameter determines how much memory, in megabytes,


Komodo will allocate to various internal tables such as the
pawn structure hash table, evaluation cache and others.  If
you allocate too much memory it can negatively impact your
performance and if you allocate too little it can also
negatively impact your performance.  The default value of
64 is probably close to optimal for fast play on most
machines cira 2013 but you may want to experiment with
raising this value if you have a high performance machine.
For slower games (or analysis) and/or for machines with
many cores, higher values are appropriate. We have raised
the upper limit in Komodo 9.2 and higher to 1024 megabytes
since this may be appropriate for TCEC or similar use with
many cores and long time limits.

Use LMR
-------

LMR (Late Move Reductions) is a search technique that is


designed to aggressively prune moves from the search tree
so much deeper depths can be obtained. However this can
sometimes miss important moves.  Komodo gives you the
option to turn this on or off, along with another
parameter, reduction, to adjust it.  In general Komodo will
play much stronger with this option turned on, but one
might want to experiment with turning it off in order to
see if a much shallower, but more thorough search might
help in some position.

Null Move Pruning


-----------------

Like LMR, this is also a technique to aggressively prune


moves from the search tree.  Komodo plays much stronger
with this turned ON, but occasionally things can be missed,
especially very deep threats or zugzwang positions.  This
option allows you to experiment in the case that you have a
difficult position which cannot be resolved and want to see
if a much shallower, but more thorough, search would help.
Overhead ms
-----------

This is designed to compensate for slow user interfaces or


slow internet connections, where a fraction of a second can
be lost in the processing and transferring of information
back and forth from the engine to the interface.  The value
is in milliseconds (1/1000th of a second).  This should
probably be left alone unless you see the program starting
to forfeit games due to exhausting its time. If you see
such time forfeits, increase this value. The default is 30.
For internet play where lag is an issue a value of 60 is a
good first try, but may have to go to 100 or even higher.

Drawscore (Komodo 9.1 and earlier)


----------------------------------

In some programs this is called the "contempt factor" and


defines the value of a draw.   The default is -10 which
means that the program will have a slight tendency to avoid
a draw, even if its position is slightly worse. A value of
-100 would cause Komodo to avoid a draw unless it was at
least a pawn down. A value of 100 would cause Komodo to
seek draws unless it was at least a pawn ahead. In the
endgame Drawscore is automatically brought closer to zero
since the chance of winning from a slightly inferior
position is much lower in the endgame. Note Komodo 9.2 and
higher have replaced Drawscore with a new Contempt
parameter, documented below.

Contempt (Komodo 9.2 and higher)


--------------------------------

Contempt is used the computer’s evaluation to discourage


piece trades and draws early in the game. The default value
is 10 (in version 9.3 and higher) which should help against
weaker opponents.  Against near-equal opponents, set
Contempt to zero for best results. Against a human
opponent, Contempt should be at least 25 even if he is the
World Champion. Suggested values include 50 against
grandmasters, 75 against masters, and 100 against strong
amateurs. A good rule of thumb is to subtract the
opponent's Elo rating from 3400 (estimated rating of Komodo
9.3 on a quadcore machine) and divide by 15. Higher
Contempt values are especially appropriate when Komodo is
giving a handicap. For handicap play, a good rule of thumb
is to set Contempt for one third of the value of the
initial position based on a one minute search in infinite
analysis mode. For example, if giving knight odds, if an
initial one minute analysis search shows Komodo as down by
3.5 pawns, set Contempt to 117, which is 117 centipawns, or
a third of the disadvantage.  

Note that Contempt inflates the reported score. On average


a setting of 10 will increase the score by ten centipawns
(0.1 in most GUIs), more in the opening and less in the
endgame. Contempt is turned off in Infinite analysis unless
“Contempt for White” (described below) is used.  
Contempt for White (Komodo 9.4 and higher)
------------------------------------------

The “Contempt for White” setting forces Komodo to always


use Contempt for White’s point of view, instead of from
whatever side Komodo is searching or analyzing now. A
positive score will discourage White from accepting a draw
or trading pieces. A negative score will encourage Komodo
to trade pieces and seek a draw.  For black, the opposite
sign should be used (for example, a negative score will
discourage black from exchanging pieces). “Contempt for
White” also prevents Komodo from automatically setting
Contempt to zero when running infinite analysis. This helps
make analysis consistent when switching sides and exploring
various lines and lets you include a non-zero Contempt in
your analysis. Note when playing against the computer, and
you wish to use a non-zero Contempt,  either turn off
“Contempt for White” so that Contempt will apply to the
Computer’s side, or you can use the above description to
set an appropriate Contempt for the side that Komodo is
playing.

Time Usage
----------

This provides the ability to manipulate Komodo's time


control heuristics, to make it allocate either more
aggressively or less aggressively.  The default is 0 which
is what we believe is the ideal setting but remains to be
tested.  You can make it play faster by using a negative
number or you can make it allocate time more aggressively
by setting it to a positive value.  The range of values is
between -9 and +9.  It's very unlikely extreme values will
be play well, so we suggest experimenting with relatively
modest changes to the default.

Threads
-------

For best performance it is very important to correctly set


the Threads value. The default is 1. For best performance
we suggest setting this to the number of "real" cores on
your machine. Consult your computer manufacturer to
determine how many cpu cores your machine has (not to be
confused with the number of cpu threads your machine has).

For example, on an i7 with hyperthreading, you typically


have 4 "real" cores and 4 hyper-threaded or virtual cores.
While the operating system may report 8 cores on this
machine, there are only 4 cores and so you setting Threads
to 4.

Note some GUIs, including ChessBase, change the default to


the number of cores reported by the operating system, so
you might need to change the default value in such cases.
 If you find your computer to be sluggish or unresponsive
when running Komodo, decrease the Threads value by 1. This
will free up a thread for the operating system and other
programs.
Hash
----

This defines the maximum amount of memory to use for the


transposition table - a major factor in the performance of
modern chess programs. The default is set to 128 (in
megabytes) which is probably more than adequate for
standard use.  However, see the document setHASH.txt for
more specific information on how this should be set for
ultimate performance. All 64 bit versions allow up to 65536
megabytes (64 GB) to be allocated, assuming your system has
that much. The Windows 32 bit version limits this to 2048
megabytes due to hardware and operating system limitations.
Note Komodo’s hash entry size is a bit different from other
programs. If you allocate 16 megabytes, Komodo will only
use 12, and not use any more until you set it to 24, and so
on with each doubling. This is normal.  

Tablebase support
-----------------

Komodo supports Ronald de Man's 'Syzygy' endgame


tablebases. Endgame tablebases can be used to provide
absolute knowledge about chess positions in which only a
few pieces are left on the board (at the time of this
writing, the Syzygy bases support up to 6-man positions
[including the kings]).

The Syzygy tablebases are "Distance to Zero" (DTZ)


tablebases. This means that they report, in addition to a
definitive win/draw/loss (WDL) score, the distance to the
zeroing of the 50-move draw clock. Unlike other endgame
tablebases which report Distance to Mate (DTM), the Syzygy
bases won't always report the fastest win from a particular
endgame position, but you can be confident that the WDL
score (and moves) provided by a tablebase probe are
accurate.

How to get the Syzygy tablebases: at the moment, the best


way to get the required files is via the file-sharing
service BitTorrent (on OSX, Transmission is a good client,
on Windows and Linux, Vuze).  The necessary .torrent files
can be found at
http://oics.olympuschess.com/tracker/index.php. You should
get at least the 3-4-5-man set (approx. 2 GB). The 6-man
set is an additional approx. 138 GB large and will take a
while to download. The 3-4-5-man set is also available for
direct download from:

http://chess.cygnitec.com/tablebases/syzygy/.

Installing the Syzygy tablebases: create a folder on your


computer's hard drive and place the fully-downloaded .rtbw
(WDL files) and .rtbz (DTZ files) in it. If you have an SSD
drive, we recommend that you place the WDL files in a
folder on that drive, especially if you are using the 6-man
bases.

Understanding the Syzygy tablebase output: if the number of


pieces on the board is less than or equal to the 'Syzygy
Probe Limit' [see below] or the number of pieces supported
by your installation of the Syzygy bases, whichever is
less, Komodo will report a score which can be interpreted
as a win, draw or loss.

A score of +/- #1000 indicates a tablebase win or loss for


a root tablebase position, that is, for a 6-man position
with 6-man tablebases installed. For tablebase wins or
losses which are determined during search, for instance for
a 6-man position with 5-man tablebases installed, Komodo
will return +/- 250.00 respectively. Komodo will attempt to
resolve these scores to actual mate scores, although this
may take a long time.

Finally, a score of 0.00 or +/- 0.02 indicates a draw (+/-


0.02 is a draw which would be a win/loss if the 50-move
rule were not in effect).

Syzygy tablebase options: Komodo has a number of UCI


options to control its use of the tablebases.

Use Syzygy: when on (default), Komodo will try to use the


Syzygy tablebases specified in the 'SyzygyPath' option (see
below). When off, Komodo will not attempt to load the
bases.

SyzygyPath: this defines an absolute path on your computer


to the tablebase files. On Windows, multiple paths can be
separated with a semicolon (;) character. On OSX and Linux,
multiple paths should be separated with the colon (:)
character. For instance,

on Windows
"C:/Tablebases/Syzygy"
"C:/Tablebases/Syzygy;D:/SyzygyWDL"

on OSX and Linux


"/home/me/syzygy"
"/home/me/syzygy:/media/ssd/wdl"

Syzygy Probe Depth: this determines the depth at which


tablebases will be probed during search (note that the root
position will always be probed.  If 'Use Syzygy' is enabled
and the number of pieces on the board is less than or equal
to the 'Syzygy Probe Limit' [see below] or the number of
pieces supported by your installation of the Syzygy bases,
whichever is less).  A higher number means that Komodo will
wait longer to begin probing the tablebases for any
particular search.  The default depth is 2 half-plies.

Syzygy Probe Limit: this determines how many pieces need to


be on the board before Komodo begins probing (even at the
root).  By default, this is set to 6 (the current upper
limit of the Syzygy tablebases). Of course, if you have
only the 3-4-5-man set, Komodo will only begin probing the
bases when a 5-man position arises. Note 6 piece use can
take up both a lot of drive storage, but RAM during the
search.

Syzygy 50 Move Rule: when on (default), Komodo will respect


the 50-move rule in its tablebase evaluation (a won
position which requires more than 50 moves without a pawn
move or capture to win will be scored as a draw).  When
off, Komodo will ignore the 50-move rule in its evaluation
(the same position would receive a winning score).

Selectivity
-----------

You can adjust how aggressively Komodo prunes using the


"Selectivity" parameter.  Higher values will encourage
Komodo to prune more at low search depths, leading to a
deeper overall search at an increasing risk of missing some
moves.  The default in Komodo 9.4 is 131. A setting of 246
(or more) will set selectivity to the maximum.

Reduction
---------

This controls how deeply Komodo searches.  Higher


"Reduction" values will cause Komodo to reduce parts of the
tree more, increasing overall search depth but possibly
missing some good lines.  The default is 0, meaning no
adjustment to what we consider best. We are fairly
confident that the best value on a single thread is close
to zero, but we have not yet determined whether other
values may be better on many threads, so feel free to
experiment.

King Safety
-----------

This controls how highly Komodo scores king safety.  The


higher the value, the greater the effects of attacks on the
king in Komodo's evaluation.  The default is 65 in Komodo
9.3 and 70 in Komodo 9.4.

Persistent Hash
---------------

This is useful for long analysis.  It allows you to save


the current Hash Table to your hard drive, then reload it
later.  First, set a name for the file in the "Hash File
Name" option. Most GUIs will require you to close the
dialog box with an OK to “set” the name. You should then
stop the search/analysis, return to the UCI parameters
then, then click the "Save Hash to File" button.  To later
reload the saved information, first make sure the "Hash
File Name" is for the file you want, then click "Load Hash
from File".  Once it loads, you may continue analysis.  You
must make sure the current hash filename is the same as
what was used when you saved the file.  Note that hash
files can be very large and can take a lot of time to save
and load, so make sure you have enough disk space to use
them.

Suppress
--------
This feature allows you to reduce the data Komodo outputs
for the first X ply of a search. For example, with a value
of 8 Komodo will not print move sequences or scores for the
first 8 ply. This can save on communication overhead with
the GUI and is useful when Komodo is running over a network
connection or is playing at fast time controls. The default
value is 0, meaning all data is reported and nothing is
suppressed.

Dynamism
--------

Introduced in Komodo 9.4, Dynamism lets you control how


important Komodo thinks the dynamic part of the evaluation
is. The default is 100.  Values under 100 reduce the
dynamic evaluation, and above 100 increase the dynamic
evaluation.  Lower values will make Komodo play more
conservatively, and with higher values it will play riskier
moves. More static parts of the evaluation like material
and pawn structure are not changed by Dynamism. Although
the parameter can be set from 0 to 200, single-digit values
will cause bizarre play. A value around 80 will in general
produce more realistic evaluations than the default 100,
although it will weaken play by 20 to 30 elo points.  

Opening Books
-------------

Komodo can use Polyglot opening books. When playing with a


book, Komodo will move instantly if it finds a legal move
leading to a position in the book. We have a free book with
lots of variety on our site on this page:

https://komodochess.com/downloads.htm

Just click the download link next to "Komodo Polyglot book"


near the bottom of the page. You can find more Polyglot
opening books on the internet.

Komodo’s default book name is komodo.bin, which is what the


free book above is named. So after downloading it, open the
ZIP file and copy the komodo.bin book to the same directory
you put the your komodo executable in. Also, make sure the
OwnBook UCI option is checked, and that "Book File" is also
set to komodo.bin. The option “Best Book Line” when set
will make Komodo play the best scoring book move, or
randomly select between two or more book moves with the
same score. When off, it will tend to play the best scoring
move more often, but still give the weaker moves some play.
 Komodo 9.4 better handles opening books modified using the
free scid program
(https://sourceforge.net/projects/scid/files/).

Credits
-------
Authors: Larry Kaufman, Don Dailey and Mark Lefler.

We wish to thank Jeremy Bernstein for his fine work in


adding Syzygy tablebase support to Komodo. We also wish to
thank our webmaster Jesse Gersenson who makes us look good
on the web, and who has organized a series of matches with
Komodo giving handicaps to Grandmasters and operated Komodo
in them.  And another big thanks to all the people who have
offered to test and run matches with Komodo.

WARNING: Komodo Chess and this readme file are © 2016 by


Mark Lefler and Larry Kaufman.

FBI Warning
The unauthorized reproduction or distribution of a copyrighted work is
illegal. Criminal copyright infringement, including infringement without
monetary gain, is investigated by the FBI and is punishable by fines and
federal imprisonment.

Вам также может понравиться