Score of Berserk 11.1 vs Dragon 3.1: 321 - 54 - 625 [0.633]
… Berserk 11.1 playing White: 189 - 8 - 303 [0.681] 500
… Berserk 11.1 playing Black: 132 - 46 - 322 [0.586] 500
… White vs Black: 235 - 140 - 625 [0.547] 1000
Elo difference: 95.1 +/- 12.8, LOS: 100.0 %, DrawRatio: 62.5 %
1000 of 1000 games finished.

Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz
Cores: 8
Logical processors: 16
Installed RAM: 64.0 GB

CuteChess GUI 3.5.0
TC: 60+1
Hash: 128 MB
Threads: 1
Concurrent: 6
Ponder off
Syzygy 3-4-5 TB adjudication
ECO 8mv Opening Suite to 16ply

All 1000 games

Score of Stockfish 15.1 vs Berserk 11.1: 320 - 20 - 660 [0.650]
… Stockfish 15.1 playing White: 246 - 8 - 246 [0.738] 500
… Stockfish 15.1 playing Black: 74 - 12 - 414 [0.562] 500
… White vs Black: 258 - 82 - 660 [0.588] 1000
Elo difference: 107.5 +/- 11.8, LOS: 100.0 %, DrawRatio: 66.0 %
1000 of 1000 games finished.

Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz
Cores: 8
Logical processors: 16
Installed RAM: 64.0 GB

CuteChess GUI 3.5.0
TC: 60+1
Hash: 128 MB
Threads: 1
Concurrent: 6
Ponder off
Syzygy 3-4-5 TB adjudication
ECO 8mv Opening Suite to 16ply

All 1000 games

Score of Stockfish 15.1 vs SugaR AI SE: 59 - 83 - 858 [0.488]
… Stockfish 15.1 playing White: 49 - 11 - 440 [0.538] 500
… Stockfish 15.1 playing Black: 10 - 72 - 418 [0.438] 500
… White vs Black: 121 - 21 - 858 [0.550] 1000
Elo difference: -8.3 +/- 8.1, LOS: 2.2 %, DrawRatio: 85.8 %
1000 of 1000 games finished.

Intel(R) Core(TM) i5-10400 CPU @ 2.90GHz
Cores: 6
Logical processors: 12
Installed RAM: 12.0 GB

CuteChess GUI 3.5.0
TC: 60+1
Hash: 128 MB
Threads: 1
Concurrent: 2
Ponder off
Syzygy 3-4-5 TB adjudication
ECO 8mv Opening Suite to 16ply

All 1000 games

Score of Stockfish 15.1 vs Dragon 3.1: 381 - 16 - 603 [0.682]
… Stockfish 15.1 playing White: 277 - 1 - 222 [0.776] 500
… Stockfish 15.1 playing Black: 104 - 15 - 381 [0.589] 500
… White vs Black: 292 - 105 - 603 [0.594] 1000
Elo difference: 132.9 +/- 12.7, LOS: 100.0 %, DrawRatio: 60.3 %
1000 of 1000 games finished.

Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz
Cores: 8
Logical processors: 16
Installed RAM: 64.0 GB

CuteChess GUI 3.5.0
TC: 60+1
Hash: 128 MB
Threads: 1
Concurrent: 6
Ponder off
Syzygy 3-4-5 TB adjudication
ECO 8mv Opening Suite to 16ply

All 1000 games

In my endless quest to find the perfect TC for a rating list, there are a few considerations. One is speed. A rating list needs hundreds of engines, and needs to keep up with the pace at which they’re released. So you want to go as fast as possible. Another is number of games. You want a margin of error below the Elo difference, and you want the same number of games for every tournament — which means you need enough games that no matter how comparable two engines are, the margin of error will still be less than the difference between them. So you want as many games as possible. 200 isn’t enough, and 500 is barely sufficient. But I’m realizing these days that another is the willingness of others to accept the project. I think this is very important. I try to put myself in the place of someone looking at a rating list that they’ve found via Google, and deciding whether or not to trust it. What would they think if they saw 1+0.1? How far up do I go in this thought experiment before this theoretical user starts to trust the project? My guess is 60+1. I know someone who tests at 25+1, but I can see my theoretical user looking at that TC and being skeptical.

But that’s only one extreme of the “willingness to accept”. The other, I think, is the prevalent way of looking at tests, that they should allow the engine enough time to do its best job. In this mindset, the STC is not really important anyway. But the LTC leaves us with tons of draws, which means that book makers will have less to work with, and it takes way more time. So if a short time control is 10+.1, and a long time control is 600+5, neither is going to work. There wouldn’t be universal acceptance of a rating list built on such a short TC, and there wouldn’t be enough time to test enough engines at ten minutes plus five seconds with one thousand games per match-up.

This is why I’ve settled on 60+1. When you factor in that a test needs to be legitimate, as well as produce as many games as possible, you have to go for the fastest acceptable TC.

But this does vastly slow down the production of the Chess Engine Rating List, which, of course that’s fine. It’s just a personal project taking away time from housework. One match-up takes a day now, instead of half an hour.

Vengeance is a powerful chess engine built with a bitboard representation. It incorporates several advanced techniques and features to enhance its playing strength and performance.

ReleasesHomeArchive • C++ • UCI • Amar Thapa (India)

    Hash = 16MB, Single Thread, Games = 512, TC = 8.0+0.08s

    Score of Vengeance-3.0.0 vs Vengeance-2.0.0: 335 - 124 - 53  [0.706] 512
    Vengeance-3.0.0 playing White: 177 - 54 - 25  [0.740] 256
    Vengeance-3.0.0 playing Black: 158 - 70 - 28  [0.672] 256
    White vs Black: 247 - 212 - 53  [0.534] 512

    Elo difference: 152.2 +/- 31.0, LOS: 100.0 %, DrawRatio: 10.4 %

    Current Elo: 2739 for Vengeance-2.0.0 (CCRL)

Avalanche is the first and strongest chess engine written in the Zig programming language, proving Zig’s ability to succeed in real-world, competitive applications.

This is my second attempt at computer chess, after dropping development of my MiniShogi (五将棋) engine.

Avalanche uses the new NNUE (Efficiently Updatable Neural Network) technology for its evaluation.

ReleasesHomeLichess Bot • Zig • UCI • Yinuo Huang (China)

CCRL

Avalanche 1.4.0 — 3211
Avalanche 1.3.0 — 3090
Avalanche 1.2.0 — 3027
Avalanche 1.1.0 — 2920
Avalanche 0.2.2 — 2579
Avalanche 0.2.0 — 2481

Invictus is a state of the art UCI compliant chess engine influenced by other excellent open source projects especially Stockfish, Ethereal, and Defenchess. Special thanks to Minic from which I learned the Texel tuning code.

ReleasesHomeInfo • C++ • UCI • Edsel Apostol (Phillippines)

CCRL

Invictus r382 — 3136
Invictus r340 — 3060
Invictus r323 — 2977
Invictus r305 — 2961

Cinnamon is a chess program for Windows, Linux, Mac OS, Android and Raspberry Pi, is a console-based chess engine for use with xboard, Arena, Tarrasch, Droidfish or any UCI-compatible GUI. Cinnamon is also a javascript library to play with chessboardjs or any js GUI.

ReleasesHomeInfo • C/C++ • XB/UCI • Giuseppe Cannella (Italy)


Cinnamon 2.4 — 2395
Cinnamon 2.5 — 2383
Cinnamon 2.3.3 — 2249
Cinnamon 2.3 — 2241
Cinnamon 2.2a — 2146

Glaurung 2 is a completely rewritten version of Glaurung. Apart from the parallel search code, almost no code is shared with Glaurung 1.2.1, the previous stable version. The new program is clearly stronger than the old, but has a less attractive style of play, because there are still a few major holes in its evaluation function (most notably space and development).

This version of Glaurung supports up to 8 CPUs, but has not been tested thoroughly with more than 2. The program tries to detect the number of CPUs on your computer and set the number of search threads accordingly, but please be aware that the detection is not always correct. It is therefore recommended to inspect the value of the “Threads” UCI parameter, and to make sure it equals the number of CPU cores on your computer.

ReleasesHomeInfo • C/C++ • UCI • Tord Romstad (Norway)

Absolute Zero is a bitboard chess engine written in C#. It was developed from scratch to learn about chess programming and game tree searching. By default it runs with its own GUI but it supports the UCI protocol when given the -u command-line parameter. While in UCI/command-line mode it also accepts commands such as perft and divide.

ReleasesHome • C# • Zong Zheng Li (China)

Eubos chess is a multi-threaded Java chess engine. It is rated around 2098 ELO against other engines, not humans. It uses the UCI protocol.

Features

Eubos uses a standard alpha beta negamax algorithm with transposition hashing and quiescence search extension.

The evaluation function takes account of the following factors

  • material balance
  • piece mobility
  • pawn structure
  • king safety

It knows about draws by 3-fold repetition and insufficient material.

ReleasesHomeLichess Bot • Java • UCI • Chris Bolt (UK)


CCRL

Eubos 2.15 — 2246
Eubos 2.17 — 2235
Eubos 2.12 — 2150
Eubos 2.10 — 2140
Eubos 2.11 — 2101
Eubos 2.6 — 1916
Eubos 2.4 — 1872
Eubos 2.2 — 1838
Eubos 2.0 — 1627
Eubos 1.1.6 — 1528
Eubos 1.1.2 — 1468
Eubos 1.0.8 — 1453
Eubos 1.0.6 — 1434
Eubos 1.1.0 — 1383
Eubos 1.0.2 — 1221

Monolith is a powerful open source chess engine written in C++17, compliant with the Universal Chess Interface (UCI) protocol. It uses the alpha-beta search algorithm. The search and parallelization-algorithms, the position evaluation principles, the fast move-generating methods, the support for opening books and endgame table-bases, all of it wasn’t newly invented in this engine. Monolith is rather a new original implementation of many well-established concepts of computer chess, resulting in its own unique personality as a chess playing entity.

ReleasesHomeInfo • C++ • UCI • Jonas Mayr (Germany)


CCRL

Monolith 2.01 — 3066
Monolith 2 — 3022
Monolith 1.0 — 2826

Clover is a chess engine, written in C++, inspired by my favorite plant. Since the 2020 lockdown, I got bored and decided to combine the 2 things I love the most: chess and programing, into making a program that can beat me.

ReleasesHomeInfo • C/C++ • UCI • Luca Metehau (Romania)


CCRL Blitz

Clover 4.0 — 3397
Clover 3.3.1 — 3357
Clover 3.2.1 — 3321
Clover 3.1 — 3288
Clover 3.0 — 3216
Clover 2.4 — 3189
Clover 2.3.1 — 3123

This is a UCI chess engine written in Haskell.

Currently it is very weak (compared to other engines; but for a human opponent it could be still interesting! I can’t beat it, and I’m about 1800 Elo).

It has one big known bug — it does not handle en-passant captures. This will be corrected soon. Also for short time controls sometimes is losing by time.

ReleasesHomeInfo • Haskell • UCI • Nicu Ionita (Austria)


UCI Info

id name Abulafia 0.61 last
id author Nicu Ionita
id name Abulafia 0.63
id author Nicu Ionita

Little Beast is a powerful bullet and blitz engine for slow computers! I developed the engine for my laptop playing at about 2500 kns on the game servers. The engine has a very fast search and an active playing style. The network is embedded. In my ENET-2023 test, the engine still manages 99 out of 110 solutions. If you play with a slow computer, you should choose aggressive openings and an aggressive style. Fast computers are stronger in positional play. In a short test with Ponder ON, Little Beast was able to stand up to Stockfish dev in Bullet 2 min + 0.1s

C++ • UCI • Stockfish clone • Eduard Nemeth (Germany)


   # PLAYER             :  RATING  POINTS  PLAYED   (%)    W    D    L  D(%)
   1 Little Beast SL    :    3723   207.0     400  51.8   92  230   78  57.5
   2 Little Beast       :    3715   202.0     400  50.5   80  244   76  61.0
   3 Stockfish 15.1     :    3713   201.0     400  50.3   93  216   91  54.0
   4 ShashChess GZ      :    3704   195.5     400  48.9   84  223   93  55.8
   5 EMAN 8.91          :    3702   194.5     400  48.6   83  223   94  55.8

White advantage = 152.85
Draw rate (equal opponents) = 50.00 %

Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz
CuteChess GUI 1.5.0
Hash Size 256
Threads 1
Concurrent 10
UHO Opening Suite to 12 ply
Syzygy TB-6 adjudication
10s + 0.5s (200ms margin)


UCI Info

id name Little Beast
id author E. Nemeth and the Stockfish developers (see AUTHORS file)

option name Debug Log File type string default
option name Threads type spin default 1 min 1 max 1024
option name Hash type spin default 16 min 1 max 33554432
option name Clear Hash type button
option name Ponder type check default false
option name MultiPV type spin default 1 min 1 max 500
option name Skill Level type spin default 20 min 0 max 20
option name Move Overhead type spin default 10 min 0 max 5000
option name Minimum Thinking Time type spin default 100 min 0 max 5000
option name Slow Mover type spin default 100 min 10 max 1000
option name nodestime type spin default 0 min 0 max 10000
option name UCI_Chess960 type check default false
option name UCI_AnalyseMode type check default false
option name UCI_LimitStrength type check default false
option name UCI_Elo type spin default 1320 min 1320 max 3190
option name UCI_ShowWDL type check default false
option name SyzygyPath type string default <empty>
option name SyzygyProbeDepth type spin default 1 min 1 max 100
option name Syzygy50MoveRule type check default true
option name SyzygyProbeLimit type spin default 7 min 0 max 7
option name Use NNUE type check default true
option name EvalFile type string default nn-e1fb1ade4432.nnue
id name Little Beast sl
id author E. Nemeth, K. Omar and the Stockfish developers

option name Debug Log File type string default
option name Threads type spin default 1 min 1 max 1024
option name Hash type spin default 16 min 1 max 33554432
option name Clear Hash type button
option name Ponder type check default false
option name MultiPV type spin default 1 min 1 max 500
option name Skill Level type spin default 20 min 0 max 20
option name Move Overhead type spin default 10 min 0 max 5000
option name Minimum Thinking Time type spin default 100 min 0 max 5000
option name Slow Mover type spin default 100 min 10 max 1000
option name nodestime type spin default 0 min 0 max 10000
option name UCI_Chess960 type check default false
option name UCI_LimitStrength type check default false
option name UCI_Elo type spin default 1320 min 1320 max 3190
option name UCI_ShowWDL type check default false
option name SyzygyPath type string default <empty>
option name SyzygyProbeDepth type spin default 1 min 1 max 100
option name Syzygy50MoveRule type check default true
option name SyzygyProbeLimit type spin default 7 min 0 max 7
option name Book1 type check default false
option name Book1 File type string default <empty>
option name Book1 BestBookMove type check default true
option name Book1 Depth type spin default 100 min 1 max 350
option name Book2 type check default false
option name Book2 File type string default <empty>
option name Book2 BestBookMove type check default true
option name Book2 Depth type spin default 100 min 1 max 350
option name Experience Enabled type check default true
option name Experience File type string default Beast.exp
option name Experience Readonly type check default false
option name Experience Book type check default false
option name Experience Book Best Move type check default true
option name Experience Book Eval Importance type spin default 5 min 0 max 10
option name Experience Book Min Depth type spin default 27 min 4 max 64
option name Experience Book Max Moves type spin default 100 min 1 max 100
option name Use NNUE type check default true
option name EvalFile type string default nn-e1fb1ade4432.nnue

UCI chess engine written in Rust, the successor of Proxima b, Proxima b 2.0 and Cosette. The project is written after hours, with the goal to reach a strength of 3000 Elo. Perfect as a sparring partner for other chess engines, since it was heavily tested using very fast games. Supports Syzygy tablebases, MultiPV, pondering and multithreading.

ReleasesHomeLichess Bot • Rust • UCI • Pawel Osikowsky (Poland)


   # PLAYER          :  RATING  POINTS  PLAYED   (%)    W    D    L  D(%)
   1 Cheese 3.1.1    :    2937   444.0     600  74.0  366  156   78  26.0
   2 Inanis 1.2.0    :    2838   363.0     600  60.5  272  182  146  30.3
   3 Inanis 1.1.1    :    2763   296.5     600  49.4  202  189  209  31.5
   4 Inanis 1.1.0    :    2755   288.5     600  48.1  189  199  212  33.2
   5 4ku 2.0         :    2705   244.0     600  40.7  165  158  277  26.3
   6 Inanis 1.0.1    :    2700   240.0     600  40.0  148  184  268  30.7
   7 Inanis 1.0.0    :    2682   224.0     600  37.3  144  160  296  26.7

White advantage = 84.53
Draw rate (equal opponents) = 50.00 %

UCI Info

id name Inanis 1.0.0
id author Pawel Osikowski
option name Hash type spin default 2 min 2 max 1048576
option name Move Overhead type spin default 10 min 0 max 3600000
option name Threads type spin default 1 min 1 max 1024
option name Ponder type check default false
option name Clear Hash type button
id name Inanis 1.0.1
id author Pawel Osikowski
option name Hash type spin default 2 min 2 max 1048576
option name Move Overhead type spin default 10 min 0 max 3600000
option name Threads type spin default 1 min 1 max 1024
option name Ponder type check default false
option name Crash Files type check default false
option name Clear Hash type button
id name Inanis 1.1.0
id author Pawel Osikowski
option name Hash type spin default 2 min 2 max 1048576
option name Move Overhead type spin default 10 min 0 max 3600000
option name MultiPV type spin default 1 min 1 max 256
option name Threads type spin default 1 min 1 max 1024
option name SyzygyPath type string default <empty>
option name SyzygyProbeLimit type spin default 8 min 1 max 8
option name Ponder type check default false
option name Crash Files type check default false
option name Clear Hash type button
id name Inanis 1.1.1
id author Pawel Osikowski
option name Hash type spin default 2 min 2 max 1048576
option name Move Overhead type spin default 10 min 0 max 3600000
option name MultiPV type spin default 1 min 1 max 256
option name Threads type spin default 1 min 1 max 1024
option name SyzygyPath type string default <empty>
option name SyzygyProbeLimit type spin default 8 min 1 max 8
option name Ponder type check default false
option name Crash Files type check default false
option name Clear Hash type button
id name Inanis 1.2.0
id author Pawel Osikowski
option name Hash type spin default 2 min 2 max 1048576
option name Move Overhead type spin default 10 min 0 max 3600000
option name MultiPV type spin default 1 min 1 max 256
option name Threads type spin default 1 min 1 max 1024
option name SyzygyPath type string default <empty>
option name SyzygyProbeLimit type spin default 8 min 1 max 8
option name SyzygyProbeDepth type spin default 6 min 1 max 32
option name Ponder type check default false
option name Crash Files type check default false
option name Clear Hash type button

Altair is a UCI-protocol chess engine that succeeds my old python engine Antares.

ReleasesHome • C++ • UCI • Alexander Tian (China)

Zappa is a chess engine, or a program that plays chess. It is similar to Deep Blue — only much better — and is best known for its good parallel speedup. It has competed in many computer chess tournaments with its best result coming at the World Computer Chess Championship in 2005, where it took first place with the score of 10.5 / 11. Like Fritz or Shredder, it is a standard chess engine, which in technical terms means it is a brute force alpha-beta searcher with a heuristical evaluation.

HomeInfoInfo • XB/UCI • Anthony Cozzie (USA)

A UCI compliant private chess engine written by Frank Schneider in C++, the development started in fall 2014 after further improvements of Frank’s earlier 0x88 engine Anaconda were diminishing.

Info • C++ • UCI • Frank Schneider (Germany)

Rebranded by ChessBase as Fritz 17.

A free and open source chess engine and the successor to the original Viridithas.

ReleasesHomeLichess Bot • Rust • UCI • Cosmo Bobak (UK)

A chess engine by primary author Vasik Rajlich, from 2007 until 2010 reigning World Computer Chess Champion, but in June 2011 disqualified by the ICGA from all previous and future World Computer Chess Championships.

HomeInfoInfo • C++ • UCI • Vasik Rajlich (USA)

Ethereal is a UCI-compliant chess engine operating under the alpha-beta framework, paired with a Neural Network for positional evaluations. Ethereal is inspired by a number of open source projects and aims to serve as both a high-end engine and reference for other authors.

ReleasesHomeInfo • C • UCI • Andrew Grant (USA)

Provided free without NNUE, and for $60 for the full engine, paid directly to the author.

Revenge is a strong original chess engine in development since 2013 with the name of Pedone. It is one of the 10 best original chess engines in the world.

HomeInfo • C • UCI • Fabio Gobbato (Italy)

€20 paid to the author.

Captain is a UCI compliant chess engine written in C++. It can work with any chess GUI that supports UCI.

DownloadHome • C++ • UCI • Narbeh Mouradian (USA)