18 Best Chess Engines of 2020 | Based On Their Ratings

A chess engine usually analyzes thousands of outcomes before making an efficient move. Since the hardware and programming techniques are getting better year by year, chess engines are becoming more intelligent. Modern engines are more selective and have a better positional understanding.

If you construct a complete tree of all possible moves in a chessboard, you will get a total of 10120 moves. That’s an extremely large number.

To put this into perspective, there have been only 1026 nanoseconds since the Big Bang and estimated 1075 atoms in the entire universe. These numbers are dwarfed by the number of possible moves in chess, making it one of the most complex board games.

There are literally hundreds of ‘rating lists’ that measure the relative strength of chess engines, based on how many moves they make per minute. In addition to ranking chess engines from best to worst, these lists also provide margins of errors on the given ratings.

Among these rating lists, the most famous are CCRL (Computer Chess Rating Lists) and CEGT (Chess Engines Grand Tournament). Keeping both these ratings in mind, we are presenting the most advanced Chess Engines that demonstrate the machine’s domination over humanity.

18. Hannibal

CCRL Rating: 3229
CEGT Rating: 3094

Hannibal is a Universal Chess Interface (UCI) engine that incorporates ideas from earlier engines, Twisted Logic, and LearningLemming. It uses the alpha-beta technique with many other chess specific heuristics and relies on a selective search method.

Besides incredible endgame knowledge, the engine has a good understanding of material imbalances. It also understands the fortresses and trapped pieces and can sacrifice material for the initiative on king attacks.

Furthermore, Hannibal’s time management is tuned for the Fischer time controls.

17. Critter

CCRL Rating: 3232
CEGT Rating: 3098

Critter is the UCI chess engine available for Windows, Mac, Android, and Linux. You can use it for private purposes only. It was initially written in Delphi but later converted to C++ using Bitboard technology. This was done to enhance its performance on 64-bit processors.

This chess engine features null move pruning, forward pruning, principal variation search, parallel search with up to 8 threads, and blockage detection in the endgames.

16. Suger XPro

CCRL Rating: 3533

SugaR engine is derived from Stockfish and supports up to 128 cores. Like other popular engines such as Stockfish, SugaR is not a complete chess program. It requires compatible GUI, such as XBoard with Arena, PolyGlot, Shredder, Sigma Chess, and Chess Partner.

Since the engine is distributed under the General Public License, you are allowed to modify and sell it.

15. asmFish

CCRL Rating: 3506

asmFish is a Stockfish engine port written in x86 assembly language. It uses BMI2 and AVX2 instructions optionally. It is assembled with FASM for Linux and Windows platforms.

asmFish is built with some structural optimization techniques, such as the elimination of piece lists. Critical functions don’t conform to the x86 ABI, concerning the usage of register and calling convention. However, less time-critical functions were ported through GCC assembly output.

Nevertheless, the engine is NUMA (non-uniform memory access) aware and supports parallel search and large pages.

14. Chiron

CCRL Rating: 3241
CEGT Rating: 3123

Chiron is the commercial chess engine that supports both Universal Chess Interface and Chess Engine Communication Protocol, as well as several endgame tablebase and bitbase formats.

It applies a parallel search on multiprocessor architectures and implements pawn blockage detection that not only detects blockages in pawn endgame but also identifies other pieces on the board.

The latest version has been tuned deeply, especially in the context of passing pawns and mobility. Several advanced search enhancements have also been introduced, such as Lazy symmetric multiprocessing, forward pruning, and NUMA awareness

13. Equinox

CCRL Rating: 3253
CEGT Rating: 3122

Equinox is a symmetric multiprocessing chess engine primarily developed by Giancarlo Delli Colli. It is inspired by popular open-source engines like Stockfish, Crafty, and Ippolit.

Equinox is active in several private engine tournaments, including Italian Open Chess Software Cups and Thoresen Chess Engine Competition.

12. GullChess

CCRL Rating: 3261
CEGT Rating: 3183

GullChess is an open-source chess engine that applies magic bitboards to determine sliding piece attacks. It is mostly written in the C++ programming language and contains only one source file.

Gull Engine features generic function templates in recursive search routines, as well as several other functions for move generation (excluding ‘hash move’ and ‘side to move’).

11. Schooner

CCRL Rating: 3284

Schooner uses alpha-beta search, late move reductions (LMR), principle search window (PVS), and single hash entry. It supports a subset of Universal Chess Interface to automatically play games without hogging a lot of resources.

Its performance has been improved significantly in recent years: a simpler evaluation inspired by Xiphos, staged move generation, and tons of testing and tuning are responsible for those improvements.

10. Xiphos

CCRL Rating: 3324
CEGT Rating: 3193

Xiphos is an open-source chess engine written in C and distributed under GNU General Public License. It’s a UCI compliant engine that utilizes bitboards with ERLEF mapping.

Xiphos uses sliding piece attacks, which are evaluated by either PEXT bitboards (for BMI2) or magic bitboards. If you want to try, you can run this engine on Windows, macOS, and Linux.

9. Deep Shredder

CCRL Rating: 3324
CEGT Rating: 3153

Shredder is a commercial chess engine developed in 1993. It has won more than 20 titles, including World Microcomputer Chess Championship (1996, 2000), World Computer Chess Championship (1999, 2003), World Chess Software Championship (2010), and World Computer Speed Chess Championship (5 times).

Deep Shredder is the multiprocessor version of Shredder. It comes with a graphical user interface, developed by Millennium Chess System, which supports Universal Chess Interface and is compatible with other UCI engines available for Mac OS, Windows, and Linux.

8. Booot

WCCC 2011, Booot vs. Alex Morozov 

CCRL Rating: 3326
CEGT Rating: 3234

Booot is an open-source chess engine written in Delphi 6. It determines sliding piece attacks with rotated bitboards. It is packed with lazy SMP and a fully redesigned evaluation function.

The engine applies PVS with all basic search enhancements like late move reductions, null move pruning, and internal iterative deepening. The latest version supports multiprocessor architecture and has several assembly variants for 32 and 64 bits.

7. Andscacs

CCRL Rating: 3337
CEGT Rating: 3209

First published in 2014, Andscacs soon evolved into one of the world’s best chess engines. It uses magic bitboard to speed up the attack calculations. It applies a principal variation search with a transposition table inside an iterative framework.

Andscacs features static exchange evaluation and threaded parallel search. And it tries a hash move in quiescence search.

In order to make the engine more powerful and efficient (or minimize the standard deviation of static evaluation), researchers optimized 200 evaluation features with 750,000 positions. 

Read: Google’s AlphaZero AI Masters Chess and Go Within 24 Hours

6. Fizbo

CCRL Rating: 3347
CEGT Rating: 3211

Fizbo is a Chess Engine Communication Protocol, first released in 2014. It is based on bitboard and uses population count instruction. For now, the engine is compatible with Windows and requires CPU with pop-count instruction.

Besides iterative deepening, Fizbo performs parallel searches based on an enhanced PV splitting algorithm. Furthermore, the transposition table with 8-byte entries is used in the quiescence search.

5. Ethereal

CCRL Rating: 3386
CEGT Rating: 3290

Ethereal is an open-source engine developed by Andrew Grant. It’s a UCI-compliant chess engine first released in 2016 under the GNU GPL license.

Ethereal is greatly influenced by Stockfish, MadChess, and Crafty. In addition to the conventional alpha-beta framework, it uses various improvements, ranging from reduction and pruning to extension.

4. Fire

CCRL Rating: 3430
CEGT Rating: 3319

Fire is a free chess engine that was used to be open source but later became a closed Windows executable, available for new Intel processors. It was initially known as Firebird and later renamed to Fire due to the trademark naming conflict.

The Fire engine features magic bitboards, Syzygy tablebases, configurable hash, and multiPV. You can configure it with over 70 Universal Chess Interface options, and apply SMP parallel search.

3. Komodo

CCRL Rating: 3508
CEGT Rating: 3424

Komodo was derived from an older search engine, Doch, as a major rewrite and a port of Komodo to C++11. Since it relies on evaluation (instead of depth), it has a quite different positional style.

The engine supports up to 64 cores, Syzygy endgame tablebase, and Fischer random chess. Kodomo lets you save the engine’s analysis of a position so you can check it later and resume analysis. You can also control how the engine makes long-term sacrifices of pawn structure for dynamic play.

Komodo has won three-times Top Chess Engine Championship.

2. Houdini

CCRL Rating: 3529
CEGT Rating: 3444

Houdini is known for its engine’s positional style, ability to defend strongly, tenacity in hard positions, and escape with a draw.

So far, it has won 3 seasons of Top Chess Engine Championship.

The new version of Houdini comes in 2 variations – Standard and Pro. While the previous version supported up to 8 processor cores only, the Pro version supports up to 128 cores and 128 GB of RAM. It is NUMA aware and can utilize Nailmov endgame table bases.

Read: 15 Advanced Artificial Intelligence Projects

2. Leela Chess Zero

CCRL Rating: 3463
CEGT Rating: 3467

Inspired by Deepmind’s research about AlphaZero and AlphaGo Zero, Leela Chess Zero relies on a self-taught neural network to make smart moves. The network learns through deep learning techniques by playing against itself millions of times.

Instead of using conventional AlphaBeta search with handcrafted evaluation function, it utilizes a type of Monte Carlo Tree Search (MCTS) known as puct. To achieve its full potential, you need to run the chess engine on CUDA-supported GPU.

1. Stockfish

CCRL Rating: 3564
CEGT Rating: 3512

Stockfish is an open-source UCI engine available for various desktop and mobile platforms. It is based on another open-source chess engine named Glaurung.

Read: 8 Best Artificial Intelligence Programming Languages

Written in C++, the engine can utilize up to 512 CPU cores. The maximum size of its transposition table is 1 Terabyte. Beside implementing an alpha-beta search, the engine features aggressive pruning and late move reductions.

Note: Since CCRL and CEGT rating lists change continuously, the ranking can differ from time to time.

Written by
Varun Kumar

Varun Kumar is a professional science and technology journalist and a big fan of AI, machines, and space exploration. He received a Master's degree in computer science from Indraprastha University. To find out about his latest projects, feel free to directly email him at [email protected] 

View all articles
Leave a reply

9 comments
    • Fritz is pretty far back. It hasn’t even been one of the top 10 engines for at least the past 5 years or so, if not longer. It’s ChessBase’s flagship product, but it’s not even close to the best. At this point, I don’t think it’s worth a purchase when the other engines are at least 200 rating points above it.

  • The problem with this list is that if you don’t update it for a year (as is exactly the case as I type this), it gets pretty out of date. Houdini hasn’t been number 1 in most rating lists for quite a long time (possibly for a lot longer than a year too!) – Stockfish now has that honour.

    If you want a rating list that actually keeps up to date and is Linux-friendly too (unlike most rating lists which run their tournamentts mostly on Windows and don’t care about Linux compatibility), then have a look at my new list at:

    https://linuxchess.richardlloyd.org.uk/

  • Leela 0 chess engine just has beaten Houdini and Kommodo and barely lost to Stockfish on recent engine tournament just by one point. She is the #2 chess engine and closing in on number one spot by the day. It is actually a downloadable artificial intelligence who learned chess by playing against herself millions of times. I would also put to the comment that the Google artificial intelligence called Alpha zero has annihilated Stockfish with ease but that one is not downloadable commercial engine, but Leela is which is the downloadable commercial version

  • Sugar X Pro and asmFish so back in the list?? No way! They should be at the top as long as Stockfish, they destroy both Houdini and Komodo. By the way, Komodo 12.3 is stronger than Houdini 6.03, so yet another error in the list.

  • The writer of this article seems to be really stupid using weird language and wrong ranking. I wasted 3 minutes of my life reading this garbage.

  • Stockfish is still one of the strongest engine and also most popular. It used in most chess calculatord like lichess, nextchessmove or some position calculators

    Leela is cool, but it still can miss tactics and lose the game because of that.