While we are already in 2023, it feels like it was just yesterday when the world was amazed at how GM Garry Kasparov lost a match against a machine. Since then, the world's top chess engines have evolved to a new level, and are now much more selective, accurate, and efficient.
What's the secret behind the world's leading chess engines? Let's dig together to find out!
Constructing a tree of possible moves is a standard method top chess engines use to estimate the best move. If you do that manually, you will get 10120 options from your starting position. For a simple comparison, there are approximately 1075 atoms in the universe.
Impressive, isn't it?
With rapid advancements in both hardware and software, it is no surprise that modern chess engines can analyze millions of outcomes in minutes. This allows top chess engines to quickly identify the most efficient move, saving time and energy.
Nevertheless, before we try to name the best chess engine, we must acknowledge that each top engine has its unique functionality and calculation methodology.
Hundreds of available rating lists for chess engines measure the strength of top chess engines based on the moves they make per minute. These ratings can range from low to very high, with error margins to account for discrepancies.
The two most famous rating lists are Computer Chess Rating Lists (CCRL) and Chess Engines Grand Tournament (CEGT). Our analysis of the top chess engines will be based on the key status statistics provided by these two rating lists at the time of writing.
Today, our top pick features the following chess engines: Stockfish, Leela Chess Zero, Houdini, Berserk, Koivisto, Komodo, and asmFish.
Let's see what each engine has to offer and analyze its capabilities.
CCRL: 3533
CEGT*: 3682
Compatibility: Windows, Linux, macOS, Android and iOS
Initially launched in November 2008, Stockfish is a free, open-source engine to help chess players with tactics and strategy. Since then, Stockfish has become one of the top contenders in the engine rating lists - and our top pick for 2023.
Stockfish is an open-source engine for chess players to analyze and develop their strategies. The engine can have up to 512 CPU threads and a maximum transposition table size of 32 terabytes.
Using a static evaluation function, the engine has heuristic algorithms that provide accurate assessments and in-depth analysis of the entire game. The minimax algorithm forms the basis of its calculations, minimizing the maximum possible loss for a player. With the help of positional evaluations, the algorithm helps Stockfish identify the best possible move for the current position.
The process behind the Stockfish minimax algorithm results in an exponentially growing game tree. With each "layer" of alternative moves for white and black, the total number of possible moves increases, making it very important to prune the search tree effectively. And here comes the alpha-beta pruning method.
At first, the engine generates potential variations based on the current node in the game tree and orders it by its promise. The moves with higher promise or a higher static evaluation payoff are considered first. As the evaluation function evaluates each alternative move, the pruning method filters out the outcomes worse than the opponent's best alternative move. This combination of minimax algorithms and alpha-beta pruning allows Stockfish to maximize the probability of offering the player the best move.
Here is some example of alpha-beta pruning.
The current best evaluation white can go for is 5 (alpha), and the best evaluation black can go for is 3 (beta). As we already said, moves are ordered by their promise, which means white can get at least 5 because the next evaluation will be higher than 5. Now we see that black will not go down with that branch because it already has a better option (3) available. This observation means we don’t have to west any computation on evaluating the right branch. We have pruned it from the tree.
CCRL: 3463
CEGT: 3467
Compatibility: Windows, macOS, Linux, Ubuntu, Android
Leela Chess Zero (LCZero) is a top chess engine developed by Gary Linscott and his team. It's an open-source self-learning chess engine that runs a search algorithm based on an artificial neural network. The engine was first released in 2018 and has become one of the top contenders in the engine rating lists.
LCZero utilizes a combination of Monte Carlo Tree Search (MCTS) and a neural network trained with the PUCT (Probabilistic Upper Confidence bounds applied to Trees) algorithm.
It uses a neural network, trained on a large number of chess positions and outcomes, to estimate the value of a position and the outcome probabilities of the possible moves. This neural network is called the value network, and it is trained using a variant of the AlphaGo Zero algorithm called AlphaZero.
The key idea behind MCTS is that it can make good decisions even when it does not have a perfect understanding of the game. Instead of relying on a perfect evaluation function, it can make decisions by simulating random games and using the statistics of those games to guide its search.
The MCTS algorithm has four main steps:
PUCT (Probabilistic Upper Confidence bounds applied to Trees) is a variation of the Monte Carlo search tree (MCTS) algorithm that is used in games such as Go, chess, and poker. It is a balance between the exploration of new nodes and the exploitation of known information to make decisions.
The key difference between PUCT and other MCTS variations, such as UCT, is the way it balances exploration and exploitation. PUCT uses the outcome probabilities to make the decision, while UCT uses a specific formula.
In PUCT, the selection of the next move is based on a combination of the following three factors:
MCTS used in LCZero differs from textbook MCTS. It is guided by the network: during selection, the network is queried for move probabilities in a position. Child nodes have then selected the moves with the highest probabilities. Second, for simulation, there are no random playouts. Instead, the network is queried with the position of the node, and the value that the network outputs is employed instead of using the results of random playouts.
The network itself is also trained using MCTS. A number of games are self-played by the engine. For each move, an MCT search is conducted using the current state of the network. The MCT search results in a more accurate assessment of a position the evaluation value and the best moves. Positions of these games together with the results of the MCT search for that position as well as the final outcome of the played game are then used as training data for the network.
CCRL: 3383
CEGT: N/A
Compatibility: Windows, macOS, Linux
Perhaps the most controversial and scandalous chess engine, Houdini was launched by Belgian computer chess programmer Robert Houdart in 2010. Being a real state-of-the-art engine for computers running on Windows, Houdini is a highly sophisticated program that offers top-notch performance and lightning speed. As a commercial engine, Houdini is available for free download only as a learning edition. The more advanced versions require payment depending on the player’s needs and preferences.
Still, there have been a lot of controversies regarding its efficiency, as there have been reports of plagiarism from other engines. Houdini 1.0 was considered an IPPOLIT derivative plagiarized from Rybka. Shortly after this claim was made, Houdini 5.0 and 6.0 were accused of being Stockfish 8 derivatives. Nevertheless, there is no direct proof to support these allegations.
That is why Houdini has recently been added to the rating lists.
While it has a predictable playing style, many chess professionals consider it the best chess engine in the world. Houdini typically opens a game with the Sicilian defense and builds a strong center. Still, its playing style involves quickly adapting to any position.
Some of its key features include:
CCRL: 3793
CEGT: 3532
Compatibility: Android, macOS, Windows, and Linux
Debuted in February 2021, Berserk was developed by Jay Honnold. With a native network architecture and a step-by-step control system, this chess engine indeed ranks high among the best chess engines of 2023.
Berserk is written in the C programming language as a UCI-compliant open-source chess engine. This gives it high speed and top performance, allowing it to tackle complex chess problems in seconds.
Some of its key features include:
CCRL: 3467
CEGT: 3562
Compatibility: macOS, Linux, Windows
Released in 2020 by Kim Kahre and Finn Eggers, Koivisto can play chess either with itself, other engines, or humans. The engine has a syzygy tablebase probing with an external C library called Fathom. The latter implies it has access to the exact outcome of some endgame positions. Koivisto also includes a sophisticated move ordering system that uses history heuristics. It constantly switches between search algorithms, looking at quiescence and shallow-depth searches.
Due to its neural network trained on several billions of positions, Koivisto is competitive in today's market. Based on the UCI protocol, the engine employs search based on the improved version of the minimax algorithm. It has a configurable search depth adding various strategies to identifying promising variations.
CCRL: 3737
CEGT: 3659
Compatibility: Linux, Windows, macOS X, Android
Komodo, also known as Dragon or Komodo Dragon, is a chess engine originally designed by Don Dailey and GM Larry Kaufman in the mid-2000s. It utilizes a search algorithm more robust than most top engines of its time, such as Rybka and Fritz.
The engine has been around for over a decade, and it is still one of the top engines in terms of rating. It was rated in the top 2 on the CCRL 40/40 list in 2015 and also ranked in the top 10 on the CEGT 40/40 list.
Komodo is a top chess engine that offers features like extended search trees, advanced positional evaluation and top-notch speed. It uses a unique algorithm to detect tactical opportunities in positions and exploit them.
Players using Komodo as the main train engine are often labeled aggressive players. The engine relies heavily on static evaluation functions and is well-known for its accuracy in positional assessment.
Komodo uses probability techniques to find the best move, and it is also able to adjust its behavior to match certain positions. This allows it to adapt to different opponents, increasing the difficulty of beating it. Such processes are known as programmatic chess, implying that the engine is able to learn from its mistakes and adjust its playing style accordingly.
CCRL: 3400
CEGT: N/A
Compatibility: Windows, Linux
First released in June 2016, asmFish is a relatively new chess engine that has risen to the top of the rating list. It's port of Stockfish in x86-64 assembly language created by Mohammed Li. Built with structural optimization techniques, asmFish is renowned for its top-notch speed and accuracy.
The engine is written in assembly code, which allows it to be relatively faster. It implements a state-of-the-art search algorithm, detecting complex positions and exploiting the opponent's weaknesses.
AsmFish also uses advanced evaluation functions, such as mobility, king safety, and control of squares.
Its search trees are highly selective so that it can find the best moves in less time than some advanced engines.
Overall, the chess engines we discussed today are pushing the limits of chess-playing technology. These engines' top-of-the-line performance and advanced features make chess more enjoyable for everyone involved.
Today, as professional players look for advanced and reliable chess engines, top-tier chess engines like Stockfish, LCZero, and others have become the top choice. Still, using every engine at once may be challenging for some, as players need to install professional software on their PCs. In such cases, an online full-featured platform like Chessify provides an all-in-one solution that merges top-tier chess engines. Favored by the world's renowned players, including GM Levon Aronian and GM Anish Giri, Chessify is a web platform providing in-depth analysis and top-of-the-line performance, allowing players to get the most out of their chess experience.
Whether you are an amateur or an experienced player, analyzing your game strategy via the Chessify plugin or its web version will give you access to all the best chess engines discussed today!
You are in Riga. It is just the start and you are still hopeful.
You have been lazy all year long, you have nothing to play, but you've got 3 hours left before the game.
You log in to chessbase cloud, but all good engines are taken. You panic.
Don't panic, try @ChessifyMe.
Scanning and analyzing have never been so easy!
@ChessifyMe Rocks!
White to Play, can you see it?
Full game: @lichess https://t.co/ezBWxKcymy
Graphics Credit @ChessifyMe
FIDE and @ChessifyMe, the No. 1 cloud service for chess engine analysis, partnered on the 44th Chess Olympiad to power the chess game analysis of top games.
Thanks to this partnership, the Chess Olympiad Gold medallists in the Open and Women’s categories, both teams and individual boards, will be awarded GrandMaster packages by Chessify, with the opportunity of leveraging premium chess game analysis from the strongest chess engines.
Discover how these startups use #AI and powerful #cloud analysis to help players take their performance to the next level.
Some would call it an ad, but I see it as a friendly reminder.
When I am not tweeting, playing or streaming, I am working on my game with @ChessifyMe.
Join 300+ GMs on Chessify Cloud to level up your training. Analyze securely with user-dedicated cloud servers at up to 1 BIllion NPS speed