Chess engine
   HOME

TheInfoList



OR:

In computer chess, a chess engine is a
computer program A computer program is a sequence or set of instructions in a programming language for a computer to execute. Computer programs are one component of software, which also includes documentation and other intangible components. A computer program ...
that analyzes
chess Chess is a board game for two players, called White and Black, each controlling an army of chess pieces in their color, with the objective to checkmate the opponent's king. It is sometimes called international chess or Western chess to dist ...
or chess variant positions, and generates a move or list of moves that it regards as strongest. A chess engine is usually a back end with a command-line interface with no graphics or windowing. Engines are usually used with a front end, a windowed
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inst ...
such as Chessbase or
WinBoard XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows. Overview Original ...
that the user can interact with via a keyboard, mouse or touchscreen. This allows the user to play against multiple engines without learning a new user interface for each, and allows different engines to play against each other. Many chess engines are now available for mobile phones and tablets, making them even more accessible.


History

The meaning of the term "chess engine" has evolved over time. In 1986, Linda and Tony Scherzer entered their program Bebe into the 4th
World Computer Chess Championship World Computer Chess Championship (WCCC) is an event held periodically since 1974 where computer chess engines compete against each other. The event is organized by the International Computer Games Association. It is often held in conjunction with ...
, running it on "Chess Engine," their brand name for the chess computer hardware made, and marketed by their company Sys-10, Inc. By 1990 the developers of Deep Blue,
Feng-hsiung Hsu Feng-hsiung Hsu (born January 1, 1959) () (nicknamed Crazy Bird) is a Taiwanese-American computer scientist and the author of the book ''Behind Deep Blue: Building the Computer that Defeated the World Chess Champion''. His work led to the creati ...
and Murray Campbell, were writing of giving their program a 'searching engine,' apparently referring to the software rather than the hardware. In December 1991, ''Computer-schach & Spiele'' referred to Chessbase's recently released
Fritz Fritz originated as a German nickname for Friedrich, or Frederick (''Der Alte Fritz'', and ''Stary Fryc'' were common nicknames for King Frederick II of Prussia and Frederick III, German Emperor) as well as for similar names including Fridolin a ...
as a 'Schach-motor,' the German translation for 'chess engine. By early 1993, Marty Hirsch was drawing a distinction between commercial chess programs such as ''
Chessmaster ''Chessmaster'' is a chess-playing computer game series, which is owned and developed by Ubisoft. It is the best-selling chess franchise in history, with more than five million units sold . Timeline *1986: '' The Chessmaster 2000''. First publ ...
3000'' or ''
Battle Chess ''Battle Chess'' is a computer game version of chess with animated three-dimensional graphics. It was originally developed and released by Interplay Entertainment for the Amiga in 1988 and subsequently on many other systems, including 3DO Inter ...
'' on the one hand, and 'chess engines' such as ''
ChessGenius ChessGenius is the name of a chess-playing computer program written by Richard Lang who has in the past written programs that have won the World Computer Chess Championship on 10 occasions. History ChessGenius is a continuation of a series of ...
'' or his own ''
MChess Pro MChess Pro is the name given to a chess playing computer program written by Marty Hirsch which won the World Microcomputer Chess Championship in 1995. The program is no longer under development and is no longer commercially available and therefore ...
'' on the other. In his characterization, commercial chess programs were low in price, had fancy graphics, but did not place high on the SSDF (
Swedish Chess Computer Association The Swedish Chess Computer Association ( sv, Svenska schackdatorföreningen, SSDF) is an organization that tests computer chess software by playing chess programs against one another and producing a rating list. On September 26, 2008, the list was ...
) rating lists while engines were more expensive, and did have high ratings. In 1994, Shay Bushinsky was working on an early version of his ''
Junior Junior or Juniors may refer to: Arts and entertainment Music * ''Junior'' (Junior Mance album), 1959 * ''Junior'' (Röyksopp album), 2009 * ''Junior'' (Kaki King album), 2010 * ''Junior'' (LaFontaines album), 2019 Films * ''Junior'' (1994 ...
'' program. He wanted to focus on the chess playing part rather than the graphics, and so asked Tim Mann how he could get ''Junior'' to communicate with ''
Winboard XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows. Overview Original ...
.'' Tim's answer formed the basis for what became known as the Chess Engine Communication Protocol or Winboard engines, originally a subset of the
GNU Chess GNU Chess is a free software chess engine and command-line interface chessboard. The goal of GNU Chess is to serve as a basis for research, and as such it has been used in numerous contexts. GNU Chess is free software, licensed under the terms ...
command line interface. Also in 1994, Stephen J. Edwards released the
Portable Game Notation Portable Game Notation (PGN) is a standard plain text format for recording chess games (both the moves and related data), which can be read by humans and is also supported by most chess software. History PGN was devised around 1993, by Steven J. ...
(PGN) specification. It mentions PGN reading programs not needing to have a "full chess engine." It also mentions three "graphical user interfaces" (GUI):
XBoard XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows. Overview Origin ...
, pgnRead and Slappy the database. By the mid-2000s, engines had become so strong that they were able to beat even the best human players. In 2005, Michael Adams, a world top 10 player at the time, was comprehensively beaten 5½ - ½ by Hydra, drawing only one of the six games. Except for entertainment purposes, especially using engines with limited strength, matches between humans and engines are now rare; engines are increasingly regarded as tools for analysis rather than as opponents.


Interface protocol

Common Winboard engines would include ''
Crafty Crafty is a chess program written by UAB professor Dr. Robert Hyatt, with continual development and assistance from Michael Byrne, Tracy Riegle, and Peter Skinner. It is directly derived from Cray Blitz, winner of the 1983 and 1986 World Compu ...
,'' ''ProDeo'' (based on ''
Rebel A rebel is a participant in a rebellion. Rebel or rebels may also refer to: People * Rebel (given name) * Rebel (surname) * Patriot (American Revolution), during the American Revolution * American Southerners, as a form of self-identification; ...
''), ''Chenard,'' '' Zarkov'' and ''Phalanx.'' In 1995, Chessbase released a version of their database program including
Fritz Fritz originated as a German nickname for Friedrich, or Frederick (''Der Alte Fritz'', and ''Stary Fryc'' were common nicknames for King Frederick II of Prussia and Frederick III, German Emperor) as well as for similar names including Fridolin a ...
 4 as a separate engine. This was the first appearance of the Chessbase protocol. Soon after, they added the engines
Junior Junior or Juniors may refer to: Arts and entertainment Music * ''Junior'' (Junior Mance album), 1959 * ''Junior'' (Röyksopp album), 2009 * ''Junior'' (Kaki King album), 2010 * ''Junior'' (LaFontaines album), 2019 Films * ''Junior'' (1994 ...
and Shredder to their product line up, including engines in CB protocol as separate programs which could be installed in the Chessbase program or one of the other Fritz style GUI's. Fritz 1-14 were only issued as Chessbase engines, while '' Hiarcs,'' ''Nimzo,'' ''
Chess Tiger Chess Tiger is a strong chess program developed by Christophe Théron which achieved a number of tournament successes between 2000-2002. Although still commercially available, the Windows version has not been developed recently so has largely hist ...
'' and ''
Crafty Crafty is a chess program written by UAB professor Dr. Robert Hyatt, with continual development and assistance from Michael Byrne, Tracy Riegle, and Peter Skinner. It is directly derived from Cray Blitz, winner of the 1983 and 1986 World Compu ...
'' have been ported to Chessbase format even though they were UCI or Winboard engines. Recently, Chessbase has begun to include
Universal Chess Interface The Universal Chess Interface (UCI) is an open communication protocol that enables chess engines to communicate with user interfaces. History In November 2000, the UCI protocol was released. Designed by Rudolf Huber and Stefan Meyer-Kahlen, the au ...
(UCI) engines in their playing programs such as '' Komodo,'' ''
Houdini Harry Houdini (, born Erik Weisz; March 24, 1874 – October 31, 1926) was a Hungarian-American escape artist, magic man, and stunt performer, noted for his escape acts. His pseudonym is a reference to his spiritual master, French magician R ...
,'' ''
Fritz Fritz originated as a German nickname for Friedrich, or Frederick (''Der Alte Fritz'', and ''Stary Fryc'' were common nicknames for King Frederick II of Prussia and Frederick III, German Emperor) as well as for similar names including Fridolin a ...
15–16'' and '' Rybka'' rather than convert them to Chessbase engines. In 2000,
Stefan Meyer-Kahlen Stefan Meyer-Kahlen (born 1968, in Düsseldorf) is a German programmer of the computer chess program '' Shredder''. , his program had won 18 titles as World Computer Chess Champion. Four of the titles were blitz championships, and one was a Ch ...
and Franz Huber released the
Universal Chess Interface The Universal Chess Interface (UCI) is an open communication protocol that enables chess engines to communicate with user interfaces. History In November 2000, the UCI protocol was released. Designed by Rudolf Huber and Stefan Meyer-Kahlen, the au ...
, a more detailed protocol that introduced a wider set of features. Chessbase soon after dropped support for Winboard engines, and added support for UCI to their engine GUI's and Chessbase programs. Most of the top engines are UCI these days: '' Stockfish,'' '' Komodo,'' ''
Leela Chess Zero Leela Chess Zero (abbreviated as LCZero, lc0) is a Free and open-source software, free, open-source, and deep neural network–based chess engine and volunteer computing project. Development has been spearheaded by programmer Gary Linscott, who ...
,'' ''
Houdini Harry Houdini (, born Erik Weisz; March 24, 1874 – October 31, 1926) was a Hungarian-American escape artist, magic man, and stunt performer, noted for his escape acts. His pseudonym is a reference to his spiritual master, French magician R ...
,'' ''
Fritz Fritz originated as a German nickname for Friedrich, or Frederick (''Der Alte Fritz'', and ''Stary Fryc'' were common nicknames for King Frederick II of Prussia and Frederick III, German Emperor) as well as for similar names including Fridolin a ...
15-16,'' '' Rybka,'' '' Shredder,'' ''
Fruit In botany, a fruit is the seed-bearing structure in flowering plants that is formed from the ovary after flowering. Fruits are the means by which flowering plants (also known as angiosperms) disseminate their seeds. Edible fruits in particu ...
,'' '' Critter,'' '' Ivanhoe'' and ''Ruffian.'' From 1998, the German company Millenium 2000 briefly moved from dedicated chess computers into the software market, developing the Millennium Chess System (MCS) protocol for a series of CD's containing ''
ChessGenius ChessGenius is the name of a chess-playing computer program written by Richard Lang who has in the past written programs that have won the World Computer Chess Championship on 10 occasions. History ChessGenius is a continuation of a series of ...
'' or '' Shredder,'' but after 2001 ceased releasing new software. A more longstanding engine protocol has been used by the Dutch company, Lokasoft, which eventually took over the marketing of Ed Schröder's ''
Rebel A rebel is a participant in a rebellion. Rebel or rebels may also refer to: People * Rebel (given name) * Rebel (surname) * Patriot (American Revolution), during the American Revolution * American Southerners, as a form of self-identification; ...
.''


Increasing strength

Chess engines increase in playing strength continually. This is partly due to the increase in processing power that enables calculations to be made to ever greater depths in a given time. In addition, programming techniques have improved, enabling the engines to be more selective in the lines that they analyze and to acquire a better positional understanding. A chess engine often uses a vast previously computed opening "book" to increase its playing strength for the first several moves, up to possibly 20 moves or more in deeply analyzed lines. Some chess engines maintain a database of chess positions, along with previously computed evaluations and best moves, in effect, a kind of "dictionary" of recurring chess positions. Since these positions are pre-computed, the engine merely plays one of the indicated moves in the database, thereby saving computing time, resulting in stronger, faster play. Some chess engines use
endgame tablebase An endgame tablebase is a computerized database that contains precalculated exhaustive analysis of chess endgame positions. It is typically used by a computer chess engine during play, or by a human or computer that is retrospectively analysin ...
s to increase their playing strength during the
endgame Endgame, Endgames, End Game, End Games, or similar variations may refer to: Film * ''The End of the Game'' (1919 film) * ''The End of the Game'' (1975 film), short documentary U.S. film * ''Endgame'' (1983 film), 1983 Italian post-apocalyptic f ...
. An endgame tablebase includes all possible endgame positions with a small amount of material. Each position is conclusively determined as a win, loss, or draw for the player whose turn it is to move, and the number of moves to the end with best play by both sides. The tablebase identifies for every position the move which will win the fastest against an optimal defense, or the move that will lose the slowest against an optimal offense. Such tablebases are available for all chess endgames with seven pieces or fewer (trivial endgame positions are excluded, such as six white pieces versus a lone black
king King is the title given to a male monarch in a variety of contexts. The female equivalent is queen, which title is also given to the consort of a king. *In the context of prehistory, antiquity and contemporary indigenous peoples, the tit ...
). When the maneuvering in an ending to achieve an irreversible improvement takes more moves than the horizon of calculation of a chess engine, an engine is not guaranteed to find the best move without the use of an endgame tablebase, and in many cases can fall foul of the
fifty-move rule The fifty-move rule in chess states that a player can claim a draw if no has been made and no pawn has been moved in the last fifty moves (for this purpose a "move" consists of a player completing a turn followed by the opponent completing a tur ...
as a result. Many engines use
permanent brain In turn-based games, permanent brain (also called pondering) is the act of thinking during the opponent's turn. Chess engines that continue calculating even when it is not their turn to play end up choosing moves that are stronger than if they are ...
(continuing to calculate during the opponent's turn) as a method to increase their strength.
Distributed computing A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another from any system. Distributed computing is a field of computer sci ...
is also used to improve the software code of chess engines. In 2013, the developers of the Stockfish chess playing program started using distributed computing to make improvements in the software code. , a total of more than 745 years of CPU time has been used to play more than 485 million chess games, with the results being used to make small and incremental improvements to the chess-playing software. In 2019, Ethereal author Andrew Grant started the distributed computing testing framework OpenBench, based upon Stockfish's testing framework, and it is now the most widely-used testing framework for chess engines.


Limiting an engine's strength

By the late 1990s, the top engines had become so strong that few players stood a chance of winning a game against them. To give players more of a chance, engines began to include settings to adjust or limit their strength. In 2000, when
Stefan Meyer-Kahlen Stefan Meyer-Kahlen (born 1968, in Düsseldorf) is a German programmer of the computer chess program '' Shredder''. , his program had won 18 titles as World Computer Chess Champion. Four of the titles were blitz championships, and one was a Ch ...
and Franz Huber released the
Universal Chess Interface The Universal Chess Interface (UCI) is an open communication protocol that enables chess engines to communicate with user interfaces. History In November 2000, the UCI protocol was released. Designed by Rudolf Huber and Stefan Meyer-Kahlen, the au ...
protocol they included the parameters uci_limitstrength and uci_elo allowing engine authors to offer a variety of levels rated in accordance with Elo rating, as calibrated by one of the rating lists. Most GUIs for UCI engines allow users to set this Elo rating within the menus. Even engines that have not adopted this parameter will sometimes have an adjustable strength parameter (e.g. Stockfish 11). Engines which have a uci_elo parameter include
Houdini Harry Houdini (, born Erik Weisz; March 24, 1874 – October 31, 1926) was a Hungarian-American escape artist, magic man, and stunt performer, noted for his escape acts. His pseudonym is a reference to his spiritual master, French magician R ...
,
Fritz Fritz originated as a German nickname for Friedrich, or Frederick (''Der Alte Fritz'', and ''Stary Fryc'' were common nicknames for King Frederick II of Prussia and Frederick III, German Emperor) as well as for similar names including Fridolin a ...
15–16, Rybka, Shredder, Hiarcs,
Junior Junior or Juniors may refer to: Arts and entertainment Music * ''Junior'' (Junior Mance album), 1959 * ''Junior'' (Röyksopp album), 2009 * ''Junior'' (Kaki King album), 2010 * ''Junior'' (LaFontaines album), 2019 Films * ''Junior'' (1994 ...
, Zappa and Sjeng. GUI's such as Shredder,
Chess Assistant Chess Assistant is a commercial database program produced by Convekta, Ltd. The company started in Russia, but also has offices in England and the United States. The software is a management tool for organising chess information (databases of mill ...
, Convekta Aquarium, Hiarcs Chess Explorer or Martin Blume's Arena have dropdown menus for setting the engine's uci_elo parameter. The Fritz family GUI's,
Chess Assistant Chess Assistant is a commercial database program produced by Convekta, Ltd. The company started in Russia, but also has offices in England and the United States. The software is a management tool for organising chess information (databases of mill ...
and Aquarium also have independent means of limiting an engine's strength apparently based on an engine's ability to generate ranked lists of moves (called multipv for 'principle variation').


Comparisons


Tournaments

The results of computer tournaments give one view of the relative strengths of chess engines. However, tournaments do not play a statistically significant number of games for accurate strength determination. In fact, the number of games that need to be played between fairly evenly matched engines, in order to achieve significance, runs into the thousands and is, therefore, impractical within the framework of a tournament. Most tournaments also allow any types of hardware, so only engine/hardware combinations are being compared. Historically, commercial programs have been the strongest engines. If an amateur engine wins a tournament or otherwise performs well (for example, Zappa in 2005), then it is quickly commercialized. Titles gained in these tournaments garner much prestige for the winning programs, and are thus used for marketing purposes. However, after the rise of
volunteer Volunteering is a voluntary act of an individual or group freely giving time and labor for community service. Many volunteers are specifically trained in the areas they work, such as medicine, education, or emergency rescue. Others serve ...
distributed computing A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another from any system. Distributed computing is a field of computer sci ...
projects such as
Leela Chess Zero Leela Chess Zero (abbreviated as LCZero, lc0) is a Free and open-source software, free, open-source, and deep neural network–based chess engine and volunteer computing project. Development has been spearheaded by programmer Gary Linscott, who ...
and Stockfish and testing frameworks such as FishTest and OpenBench in the late 2010s,
free and open source Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
programs have largely displaced commercial programs as the strongest engines in tournaments.


List of tournaments

Current tournaments include: * Top Chess Engine Championship (TCEC) *
World Computer Chess Championship World Computer Chess Championship (WCCC) is an event held periodically since 1974 where computer chess engines compete against each other. The event is organized by the International Computer Games Association. It is often held in conjunction with ...
(WCCC and WCSC) **
World Computer Speed Chess Championship World Computer Speed Chess Championship is an annual event organized by the International Computer Games Association where computer chess engines compete against each other at blitz chess time controls. It is held in conjunction with the World Co ...
* Chess.com Computer Chess Championship (CCC) Historic tournaments include: *
Dutch Open Computer Chess Championship The Dutch pencomputer chess championship was a chess Chess is a board game for two players, called White and Black, each controlling an army of chess pieces in their color, with the objective to checkmate the opponent's king. It is sometim ...
* Internet Computer Chess Tournament (CCT) *
International Paderborn Computer Chess Championship The International Paderborn Computer Chess Championship was an annual chess tournament for computer chess programs held from 1991 until 2007. It was organized by the University of Paderborn Paderborn University (german: Universität Paderborn) ...
*
North American Computer Chess Championship The North American Computer Chess Championship was a computer chess championship held from 1970 to 1994. It was organised by the Association for Computing Machinery and by Monty Newborn, Professor of Computer Science at McGill University. It was one ...


Ratings

Chess engine rating lists aim to provide statistically significant measures of relative engine strength. These lists play multiple games between engines. Some also standardize the opening books, the
time control A time control is a mechanism in the tournament play of almost all two-player board games so that each round of the match can finish in a timely way and the tournament can proceed. Time controls are typically enforced by means of a game cloc ...
s, and the computer hardware the engines use, in an attempt to measure the strength differences of the engines only. These lists provide not only a ranking, but also margins of error on the given ratings. The ratings on the rating lists, although calculated by using the Elo system (or similar rating methods), have no direct relation to FIDE Elo ratings or to other chess federation ratings of human players. Except for some man versus machine games which the SSDF had organized many years ago (when engines were far from today's strength), there is ''no calibration'' between any of these rating lists and player pools. Hence, the results which matter are the ''ranks'' and the ''differences'' between the ratings, and not the absolute values. Missing from many rating lists are IPPOLIT and its derivatives. Although very strong and open source, there are allegations from commercial software interests that they were derived from a disassembled binary of Rybka. Due to the controversy, all these engines have been blacklisted from many tournaments and rating lists. Rybka in turn was accused of being based on
Fruit In botany, a fruit is the seed-bearing structure in flowering plants that is formed from the ovary after flowering. Fruits are the means by which flowering plants (also known as angiosperms) disseminate their seeds. Edible fruits in particu ...
, and in June 2011, the ICGA formally claimed Rybka was derived from Fruit and Crafty and banned Rybka from the International Computer Games Association World Computer Chess Championship, and revoked its previous victories (2007, 2008, 2009, and 2010). The ICGA received some criticism for this decision. Despite all this, Rybka is still included on many rating lists, such as CCRL and CEGT, in addition to
Houdini Harry Houdini (, born Erik Weisz; March 24, 1874 – October 31, 1926) was a Hungarian-American escape artist, magic man, and stunt performer, noted for his escape acts. His pseudonym is a reference to his spiritual master, French magician R ...
, a derivative of the IPPOLIT derivative Robbolito, and Fire, a derivative of Houdini. In addition, Fat Fritz 2, a derivative of Stockfish, is also included on most of the rating lists.


Differences between rating lists

There are a number of factors that vary among the chess engine rating lists: * Number of games. More games when testing each engine result in higher statistical significance. * Formulae used to calculate the elo of each engine. *
Time control A time control is a mechanism in the tournament play of almost all two-player board games so that each round of the match can finish in a timely way and the tournament can proceed. Time controls are typically enforced by means of a game cloc ...
: ** Longer time controls are better suited for determining tournament play strength, but also either make testing more time-consuming or the results less statistically significant. ** Increment time controls are better suited for determining tournament play strength since tournaments usually use increment time controls, but many rating lists use cyclic/repeating time controls instead. ** Consistent time controls throughout the rating list vs different time controls for each test. The latter results in a smaller statistical significance than the former because different time controls is a potential
confounder In statistics, a confounder (also confounding variable, confounding factor, extraneous determinant or lurking variable) is a variable that influences both the dependent variable and independent variable, causing a spurious association. Con ...
. This is particularly problematic for CCRL because CCRL switched from cyclic/repeating time controls (40/2) to increment time controls (2"+1') in its CCRL Blitz list yet maintains both time controls on the same list. * Opponents used in testing engines. Some rating lists only test an engine against the most recent version of each opponent engine, while other rating lists test an engine against the version(s) of each opponent engine closest in elo to the engine being tested. * Hardware used: ** Faster hardware with more memory leads to stronger play. ** 64-bit (vs. 32-bit) hardware and operating systems favor
bitboard A bitboard is a specialized bit array data structure commonly used in computer systems that play board games, where each bit corresponds to a game board space or piece. This allows parallel bitwise operations to set or query the game state, or de ...
-based programs ** Hardware using modern instruction sets such as
AVX2 Advanced Vector Extensions (AVX) are extensions to the x86 instruction set architecture for microprocessors from Intel and Advanced Micro Devices (AMD). They were proposed by Intel in March 2008 and first supported by Intel with the Sandy Bridge ...
or
AVX512 AVX-512 are 512-bit extensions to the 256-bit Advanced Vector Extensions SIMD instructions for x86 instruction set architecture (ISA) proposed by Intel in July 2013, and implemented in Intel's Xeon Phi x200 (Knights Landing) and Skylake-X CPUs; th ...
favor engines using vectors and vector intrinsics in their code, common in neural networks. **
Graphics processing units A graphics processing unit (GPU) is a specialized electronic circuit designed to manipulate and alter memory to accelerate the creation of images in a frame buffer intended for output to a display device. GPUs are used in embedded systems, mob ...
favor programs with
deep neural networks Deep learning (also known as deep structured learning) is part of a broader family of machine learning methods based on artificial neural networks with representation learning. Learning can be supervised, semi-supervised or unsupervised. ...
. ** Multiprocessor vs. single processor hardware. ** Consistent hardware throughout the rating list vs different hardware for every test. The latter results in a smaller statistical significance than the former because different hardware is a potential
confounder In statistics, a confounder (also confounding variable, confounding factor, extraneous determinant or lurking variable) is a variable that influences both the dependent variable and independent variable, causing a spurious association. Con ...
. This is particularly problematic for
CEGT Chess Engines Grand Tournament, also known as CEGT, is an organization that tests computer chess software by playing chess engines against one another and publishing a ratings table. CEGT routinely tests chess engines in various time controls suc ...
because multiple testers each with their own unique hardware are involved in testing each engine in CEGT. * Ponder settings (speculative analysis while the opponent is thinking) aka Permanent Brain. * Transposition table sizes. * Opening book settings. These differences affect the results, and make direct comparisons between rating lists difficult.


List of rating lists

Current rating lists and rating list organizations include:
Computer Chess Rating Lists
(CCRL) *
CCRL Blitz
*
CCRL 40/15
*
CCRL FRC
* Chess Engines Grand Tournament (CEGT) *
CEGT Blitz
*

*

*

*

*


FastGM's Rating List
(FGRL) *

*

*

*



(GRL)
Stefan Pohl Computer Chess
(SPCC)
Mac Chess Engine Rating List
(MCERL)
Ipman Chess
*
Ipman Chess Intel i9 7980XE
*
Ipman Chess Intel i7 11800H
*
Ipman Chess i7 2670QM
*
Ipman Chess i7 5960x
*
Ipman Chess List i3 M380


Historic rating lists and rating list organizations include:
FastGM's Rating List
(FGRL) *

*


Ipman Chess
*
Ipman Chess i7 970



Test suites

Engines can be tested by measuring their performance on specific positions. Typical is the use of test suites where for each given position there is one best move to find. These positions can be geared towards positional, tactical or endgame play. The
Nolot Nolot is a chess test suite with 11 very difficult positions from real games. They were compiled by Pierre Nolot for the France, French chess magazine Gambisco and posted on the rec.games.chess Usenet group in 1994. Some of these positions were p ...
test suite, for instance, focuses on deep sacrifices. The BT2450 and BT2630 test suites measure the tactical capability of a chess engine and have been used by
REBEL A rebel is a participant in a rebellion. Rebel or rebels may also refer to: People * Rebel (given name) * Rebel (surname) * Patriot (American Revolution), during the American Revolution * American Southerners, as a form of self-identification; ...
. There is also a general test suite called Brilliancy which was compiled mostly from ''How to Reassess Your Chess Workbook''. The Strategic Test Suite (STS) tests an engine's strategical strength. Another modern test suite is Nightmare II which contains 30 chess puzzles.


Kasparov versus the World (chess game played with computer assistance)

In 1999,
Garry Kasparov Garry Kimovich Kasparov (born 13 April 1963) is a Russian chess grandmaster, former World Chess Champion, writer, political activist and commentator. His peak rating of 2851, achieved in 1999, was the highest recorded until being surpassed by ...
played a chess game "
Kasparov versus the World Kasparov versus the World was a game of chess played in 1999 over the Internet. It was a , in which a World Team of thousands decided each move for the black pieces by plurality vote, while Garry Kasparov conducted the white pieces by himself. M ...
" over the
Internet The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a '' network of networks'' that consists of private, pub ...
, hosted by the
MSN Gaming Zone MSN Games (also known as Zone.com - formerly known as The Village, Internet Gaming Zone, MSN Gaming Zone, and MSN Games by Zone.com) is a casual gaming web site, with single player, multiplayer, PC download, and social casino video games. Games ...
. Both sides used computer (chess engine) assistance. The "World Team" included the participation of over 50,000 people from more than 75 countries, deciding their moves by
plurality vote Plurality voting refers to electoral systems in which a candidate, or candidates, who poll more than any other counterpart (that is, receive a plurality), are elected. In systems based on single-member districts, it elects just one member per ...
. The game lasted four months, ending after Kasparov's 62nd move when he announced a forced checkmate in 28 moves found with the computer program Deep Junior. The World Team voters resigned on October 22. After the game, Kasparov said: "It is the greatest game in the history of chess. The sheer number of ideas, the complexity, and the contribution it has made to chess make it the most important game ever played."


Engines for chess variants

Some chess engines have been developed to play
chess variants A chess variant is a game related to, derived from, or inspired by chess. Such variants can differ from chess in many different ways. "International" or "Western" chess itself is one of a family of games which have related origins and could be co ...
, adding the necessary code to simulate non-standard chess pieces, or to analyze play on non-standard boards.
ChessV ChessV (short for Chess Variants) is a free computer program designed to play many chess variants. ''ChessV'' is an open-source, universal chess variant program with a graphical user-interface, sophisticated AI, support for opening books and ot ...
and
Fairy-Max Fairy-Max is a free and open source chess engine which can play orthodox chess as well as chess variants. Among its features is the ability of users to define and use their own custom variant chess pieces for use in games. Fairy-Max was derived ...
, for example, are both capable of playing variants on a chessboard up to 12×8 in size, such as
Capablanca Chess Capablanca chess (or Capablanca's chess) is a chess variant invented in the 1920s by World Chess Champion José Raúl Capablanca. It incorporates two new pieces and is played on a 10×8 board. Capablanca believed that chess would be played out i ...
(10×8 board). For larger boards, however, there are few chess engines that can play effectively, and indeed chess games played on an unbounded chessboard (
infinite chess Infinite chess is any variation of the game of chess played on an unbounded chessboard. Versions of infinite chess have been introduced independently by multiple players, chess theorists, and mathematicians, both as a playable game and as a mo ...
) are virtually untouched by chess-playing software, although theoretically a program using a
MuZero MuZero is a computer program developed by artificial intelligence research company DeepMind to master games without knowing their rules. Its release in 2019 included benchmarks of its performance in go, chess, shogi, and a standard suite of Atar ...
-derived algorithm could handle an unbounded
state space A state space is the set of all possible configurations of a system. It is a useful abstraction for reasoning about the behavior of a given system and is widely used in the fields of artificial intelligence and game theory. For instance, the to ...
.


Graphical user interfaces

XBoard XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows. Overview Origin ...
/
Winboard XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows. Overview Original ...
was one of the earliest
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inst ...
s (GUI). Tim Mann created it to provide a GUI for the
GNU Chess GNU Chess is a free software chess engine and command-line interface chessboard. The goal of GNU Chess is to serve as a basis for research, and as such it has been used in numerous contexts. GNU Chess is free software, licensed under the terms ...
engine, but after that, other engines such as
Crafty Crafty is a chess program written by UAB professor Dr. Robert Hyatt, with continual development and assistance from Michael Byrne, Tracy Riegle, and Peter Skinner. It is directly derived from Cray Blitz, winner of the 1983 and 1986 World Compu ...
appeared which used the Winboard protocol. Eventually, the program
Chessmaster ''Chessmaster'' is a chess-playing computer game series, which is owned and developed by Ubisoft. It is the best-selling chess franchise in history, with more than five million units sold . Timeline *1986: '' The Chessmaster 2000''. First publ ...
included the option to import other Winboard engines in addition to the King engine which was included. In 1995, Chessbase began offering the
Fritz Fritz originated as a German nickname for Friedrich, or Frederick (''Der Alte Fritz'', and ''Stary Fryc'' were common nicknames for King Frederick II of Prussia and Frederick III, German Emperor) as well as for similar names including Fridolin a ...
engine as a separate program within the Chessbase database program and within the Fritz GUI. Soon after, they added the
Junior Junior or Juniors may refer to: Arts and entertainment Music * ''Junior'' (Junior Mance album), 1959 * ''Junior'' (Röyksopp album), 2009 * ''Junior'' (Kaki King album), 2010 * ''Junior'' (LaFontaines album), 2019 Films * ''Junior'' (1994 ...
and Shredder engines to their product line up, packaging them within the same GUI as was used for Fritz. In the late 1990s, the Fritz GUI was able to run Winboard engines via an adapter, but after 2000, Chessbase simply added support for UCI engines, and no longer invested much effort in Winboard. In 2000,
Stefan Meyer-Kahlen Stefan Meyer-Kahlen (born 1968, in Düsseldorf) is a German programmer of the computer chess program '' Shredder''. , his program had won 18 titles as World Computer Chess Champion. Four of the titles were blitz championships, and one was a Ch ...
started selling Shredder in a separate UCI GUI of his own design, allowing UCI or Winboard engines to be imported into it. Convekta's
Chess Assistant Chess Assistant is a commercial database program produced by Convekta, Ltd. The company started in Russia, but also has offices in England and the United States. The software is a management tool for organising chess information (databases of mill ...
and Lokasoft's ChessPartner also added the ability to import Winboard and UCI engines into their products. Shane Hudson developed
Shane's Chess Information Database Shane's Chess Information Database (Scid) is a free and open source UNIX, Windows, Linux, and Mac application for viewing and maintaining large databases of chess games. It has features comparable to popular commercial chess software. Scid is ...
, a free GUI for Linux, Mac and Windows. Martin Blume developed Arena, another free GUI for Linux and Windows. Lucas Monge entered the field with the free Lucas Chess GUI. All three can handle both UCI and Winboard engines. On Android, Aart Bik came out with Chess for Android, another free GUI, and Gerhard Kalab's Chess PGN Master and Peter Osterlund's Droidfish can also serve as GUIs for engines. The Computer Chess Wiki lists many chess GUIs.


See also

*
Chess variants A chess variant is a game related to, derived from, or inspired by chess. Such variants can differ from chess in many different ways. "International" or "Western" chess itself is one of a family of games which have related origins and could be co ...
* Computer chess * Correspondence chess *
Internet chess server An Internet chess server (ICS) is an external server that provides the facility to play, discuss, and view the board game of chess over the Internet. The term specifically refers to facilities for connecting players through a variety of graphical c ...
*
List of chess software Chess software comes in different forms. A chess playing program provides a graphical chessboard on which one can play a chess game against a computer. Such programs are available for personal computers, video game consoles, smartphones/ tablet ...


Notes


References


External links


Chess Engine's Polyglot Opening Book for WinBoard GUI
- A general (learning) purpose Chess Engine's Polyglot Opening Book for WinBoard GUI.
Chess Programming Wiki
{{DEFAULTSORT:Chess Engine Computer chess