Chess engines and chess programs

by Bill Wall


Chess engines are computer programs that analyzes chess positions and makes decisions on the best chess moves.  Chess engines are good for analyzing games and using it as a playing partner.  Chess engines support one or both major protocols called Chess Engine Communication Protocol, such as WinBoard (Windows)/XBoard (Unix), or Universal Chess Interface (UCI).  Chess engines increase in playing strength each year due to the increase in processing power that enables calculations to be made to greater depths or ply in a given time.  Some chess engines use endgame tablebases to increase their playing strength during the endgame.


The first record of the chess engine was around 1994.  The Chess Engine Communication Protocol was designed by Tim Mann, author of XBoard.  It was initially intended to communicate with the GNU Chess engine, which only accepted text input and produced text output.

The UCI standard was developed in November 2000.  The standard was worked out by Stephan Meyer-Kahlen (1968- ), a German programmer.  The UCI standard was presented by Rudolf Huber, a German computer scientist.  The UCI protocol, a rival to the older XBoard/WinBoard Communication protocol, was used by only a few programs until ChessBase began to support this protocol in 2002.

Almost all of the top engines are stronger than the world champion or any of the top grandmasters.  Chess engines make very few mistakes, if any.  They can calculate deeper and can see all tactics.  Chess engines are almost impossible now for humans to beat.  Chess engines don’t blunder. 

How does a chess engine work?  Brute force.  A chess engine tries to calculate every move in every position as deep as it can.  Then it uses a technique called alpha-beta pruning to discard variations that are less optimal.  What’s left are only the best moves.  They can calculate thousands of possible moves and possible outcomes in a matter of seconds.  In the early stages of the game, they may us a “book” of chess openings.

Here are some popular and strong chess engines and chess programs.

Arasan 17.5 by John Dart runs on Winboard or UCI protocol.  It can run on Windows 32/64, Linux, Mac, or Android.

BootChess is the world’s smallest chess program ever.  It was created in 2015 by French assembly coder Olivier Poudade, and uses only 487 bytes.  The previous record holder for the smallest chess program was the 672 byte 1K ZX Chess, built by David Horne in 1982 for a Sinclair computer.  BootChess runs on windows, Linux, OS X, DOS or BSD, but lacks a graphical chessboard.  Instead, the board squares are a grid of periods and the pieces are represented as PNBRQK.

Bouquet is a UCI compliant IPPOLIT derivative, first released in May 2012.  Its base is derived from public domain sources such as the Ippolit project.  The latest version is 1.8.

Chiron is a chess engine with support of both UCI and Winboard 2 protocols.  It was written by Ubaldo Andrea Farina.  Development of Chiron started in 2002.  In 2009 and 2010, it won the Italian championship for computers.  The engine was commercially released in October, 2011.  It uses the Polyglot and CTG opening book formats and various endgame tablebase and bitbase formats.  Chiron 2 was released in December 2013.

Comstock is a strong UCI chess engine developed from the IPPOLIT project.  It is a combined compilation from the base source code of Stockfish 3 and the Ippolit Robbobases.  The latest version is Comstock 3.

Crafty is a free, open-source computer chess program developed by Dr. Robert Hyatt.  The latest version is 23.4.  It is directly derived from Cray Blitz, which won the 1983 and 1986 World Computer Chess Championships.  Crafty uses the Chess Engine Communication Protocol and can run under the popular chess interfaces such as Winboard, XBoard, and Arena.  It is about 2800 in strength.

Critter is a cross-platform UCI chess engine written by Richard Vida of Slovakia.  The engine is free for non-commercial use.  The engine, written in C++, has been one of the top five engines on most official chess engine rating lists.  It most recent release is version 1.6a 64-bit, dated June 2012. 

Cyclone is a very strong open-source UCI chess engine based on Fruit and Toga.  It uses principle variation search, iterative deepening, transposition tables, and null-move pruning.  It is rated around 2900.

Daydreamer is a UCI compliant open source chess engine by Aaron Becker.  It was developed in 2009.  Its latest version is version 1.75.

Demon is an open-source UCI chess engine written in C++.  It is rated around 2200.

DON is a UCI chess engine derived from Glaurung.  Latest version is 1.0b.

Equinox  is a strong private and UCI compliant chess engine by Giancarlo Delli Colli, an Italian software developer.  Equinox was released in 2009.

Fire is a UCI chess engine by Norman Schmidt, released in 2013.  The latest version is Fire 3.0.

Firebird is one of the strongest open-source, free, multi-processor engines.  The anonymous Russian programmers (calling themselves Decemrists) have published the code as open-source.  Firebird was first released in October 2009 with its source code.

Fritz is a German chess program developed by Gyula Horvath and published by ChessBase.  The latest commercial version id Deep Fritz 14.  This version supports 64-bit hardware and 8-core multiprocessing by default.  In 1995, Fritz 3 won the World Computer Chess Championships in Hong Kong.  In 2002, Deep Fritz drew a match with world champion Vladimir Kramnik.  In 2003, X3D Fritz drew a four-game match against Garry Kasparov.  In 2013, Deep Fritz 14 switched engines from the original author Frans Morsch to Gyula Horvath, author of Pandix.

Fruit is a chess engine developed by Fabien Letouzey.  It is freeware.  In 2005, Fruit was vice world computer chess champion, finishing second behind Zappa.  The latest version is Fruit 2.3.1 from Ryan Benitez.  Fruit 2.3.1 was one of the top 3 free UCI chess engines.

GarboChess JS is a strong javascript chess engine, written by Gary Linscott.  The latest version is 3.0.

Glaurung is an UCI-compatible open source chess engine developed by Tord Romstad under the General Public License (GPL) 3 license.  It is the forerunner of Stockfish.  It was first released in 2004.  In February 2014, a modified and tuned version of Glauring became the chess engine of Play Magnus.

GreKo is a Chess Engine Communication Protocol compliant open source engine written by Vladimir Medvedev.  It is written in C++.  Development began in 2002.  In April 2011, GreKo was ported to the Android by Aart Bik using the GUI of his Chess for Android application.

GullChess is a UCI compliant open source chess engine in the public domain.  It was written by Vadim Demichev.  Gull 2.1 was released June 2013.  Gull 2.8 beta was released January 2014.

Hannibal is a UCI compliant chess engine developed by Sam Hamilton and Edsel Apostol.  Its latest version is 1.4b.

HIARCS is the reigning World Chess Software Champion.  It is a propriety UCI chess engine developed by Mark Uniacke.  Its name is an acronym standing for Higher Intelligence Auto-Response Chess System.  It was first released in 1980.  The latest is version 14, released in August 2012.  It has its own GUI (Chess Explorer).

 Houdini 4 chess engine currently leads all the major computer chess rating lists.  It is a UCI chess engine developed by Belgian programmer Robert Houdart.  It was first released in May, 2010.  The current version was released in November 2013. Houdart was a structural engineer working on nuclear power plants who created a chess program in his spare time.

IPPOLIT is an open-source chess program.  The program is a console application that communicates with a chess GUI via UCI protocol.  IPPOLIT is a bitboard chess engine optimized for 64-bit architecture.  It was first released in May 2009.

IvanHoe is a free UCI compliant open-source chess engine of the Ippolit and RoboLito series of programs.  It was first released in January 2010

Javalin is an xboard/winboard chess engine written in Java by Andrew Brooks.  The latest version is Javalin 2.0.  It was written in Java and C for Mac/Windows.

Junior (Deep Junior) is a computer chess program written by Amir Ban and Shay Bushinsky of Israel.  Junior won the World Computer Chess Championship in 2002, 2004, 2006, 2009, 2011, and 2013.  It is considered the most successful program ever.

Komodo is a UCI chess engine that won the 2012 CCT and the 2013 TCEC tournament.  The engine was developed by Don Dailey (1956-2013), Mark Lefler, and supported by grandmaster Larry Kaufman.  The engine was initially released in January 2010.  The latest version is Komodo 8, which uses multiple processors.

Loop is a chess program by Fritz Reul.  It is the chess engine of Wii Chess.

Naum is a chess engine by Aleksandar Naumov of Canada.  The program supports both UCI and Winboard protocols.  It was first released in April 2004.  The final release was version 4.2 in March 2010.  Development of Naum was discontinued in 2012.  In 2008, it tied for 1st place in the Internet Computer Chess Tournament.

PanChess is a strong UCI chess engine.  The latest version is 0.537.  PanChess is part of the IPPOLIT series of chess engines.

Pro Deo is the last free version of the formerly commercial program, Rebel. 

Protector is a UCI compliant open source chess engine written by Raimund Heid.  It was first developed in 2000.  Protector is bitboard based.

Quazar is a free simple UCI engine.  It uses alpha-beta search and bitboards.  It was developed by Dmitry Morozov.

REBEL was a world champion chess program developed by Ed Schroeder.  It was first developed in 1980 on a TRS-80.  The last version of REBEL was released in 204 as the freeware chess engine Pro Deo.

RobboLito  is a strong UCI engine that was part of the IPPOLIT family of engines.  Versions were further developed by Norman Schmidt and Sentinel.  It may have been the world’s strongest single processor chess engine.

Rybka is one of the strongest UCI chess engines in the world, programmed by International Master Vasik Rajlich.  It won four consecutive World Computer Chess Championships from 2007 to 2010, but was stripped of these titles after a games association panel  concluded  that Rybka plagiarized code from both Crafty and Fruit.  The finding has been disputed.  The latest version is Deep Rybka 4.1.

Saros is a strong UCI engine.  Its latest version is 4.1.6.

Scorpio is an open source chess engine by Daniel Shawul.  It is compliant to the Chess Engine Communication Protocol.

Senpai is a UCI compliant open source chess engine by Fabien Letouzey.  It was released in March, 2014.

Shredder is a commercial chess program by Stefan Meyer-Kahlen.  It was first developed in 1993.  Since 1996, it has won 17 titles as World Computer Chess Champion.  In 2013, it won the world computer chess blitz championship.

SparkChess is a commercial chess program designed by Armand Niculescu.  The most recent version is 7.0.5, released in February 2014.

Spike is a chess engine that uses the Winboard or UCI protocols.  Spike is the first computer chess world champion in Chess960 (Fischer Random Chess).  Spike was written by Ralf Schafer and Volker Bohm.

Stockfish is an open source (GPL license) UCI chess engine, developed by Tord Romstad, Marco Costalba and Joona Kiiski.  It is derived from Glauring, and open source engine by Romstad.  Stockfish is an alpha-beta searcher and uses a bitboard representation.  Stockfish is usually in the top three in all major computer chess rankings.

Strelka is a computer chess engine for Windows, developed by Yuri Osipov.   The current version is 5.5, released in May 2012, and one of the strongest programs in the world.  Strelka first appeared in May 2007.

Toga (Toga II) is a chess engine by Thomas Gaksch and Fabien Letouzey.    The engine derived from Fruit 2.0/2.1.  Toga first appeared in early 2005.  It is one of the strongest open-source engines.  Version Toga II 3.0 is maintained by Jerry Donald, released in May, 2013.

WildCat is a UCI engine developed by Igor Korshunov of Belarus.  The latest version is 8.0.

Zappa is a UCI chess engine written by Anthony Cozzie and Zach Wegner.  It was first released in February 2005.  In 2005, it won the world computer chess championships, beating both Junior and Shredder.  In 2006, a commercial version dubbed Zap!Chess running under the Frits GUI was released by ChessBase.  In 2010, an improved Zappa engine was completed under the name Rondo.  A version of Zappa called Zappa Mexico is sold by Shredder Computer chess.  It is compatible with Windows and Linux computers and supports the Nalimov endgame tablebases.

Computer Chess Rating sites include the following:

Chess Engines Grand Tournament (CEGT).  This site was founded in 2006 and hosted by Heinz van Kempen.The top engines (40 moves in 2 hours) are: Komodo 8.0 (3094), Stockfish 5.0 (3092), Stockfish DD (3074), Komodo 7.0a (3068), Houdini 4.0 (3065), Houdini 3.0 (3061), Komodo 6.0 (3055), Gull 3.0 (3026), Stockfish 4.0 (3017), and Komodo 5.0 (3002).

Computer Chess Rating List (CCRL).  CCRL was formed in 2006.  There are 22 engines rated 3000 or better.  The top 10 engines (time control of 40 moves in 40 minutes) are: Komodo 8 (3303), Stockfish 5 (3284), Houdini 4 (3274), Fire 4 (3217), Gull 2.8b (3200), Equinox 3.20 (3187), Critter 1.6a (3174), Rybka 4 (3161), Bouquet 1.8 (3157), and BlackMamba 2.0 (3138).

IPON is a German site for rating chess engines.  It was founded in 2009 and hosted by Ingo Bauer.  The top 10 are: Stockfish 6 (3178), Komodo 8 (3138), Houdini 4 (3123), Gull 3(3075), Equinox 3.30 (3000), Critter 1.6a (2993), Deep Rybka (2959), Deep Fritz 14 (2896), Texel 1.05 (2890), and Chiron 2 (2886).

Jurek Chess Ranking (JCR) or Jurek Chess Engines Rating (JCER).  There are constant computer engine matches and computer engine tournaments that Jurek keeps track of.  The top 10 programs are: Stockfish 14090421 (3196), Houdini 4 (3150) Stockfish 5 (3143), Komodo 8 (3131), Gull 3 (3089), DON (3066), Strelka (3062), Fire 3.0 (3035), Heron (3007), and Amitis (3001).

Svenska Schackdatorforeningen (SSDF), is the Swedish Chess Computer Association, founded in 1984.  It has 26 chess engines over 3000.  Their top 10 list include: Komodo 7 (3295), Komodo 5.1 (3254), Deep Rybka 4 (3209), Stockfish 3 (3207), Deep Hiarcs 14 (3200), Deep Rybka 3 (3194), Naum 4.2 (3147), Naum 4 (3119), Deep Junior Yokoh (3119), and Deep Junior 13.3 (3113).

The Thoresen Chess Engines Competition (TCEC) is hosted by Martin Thoresen and chessdom.  The top engines included: Komodo 1331, Stockfish 301114, Houdini 4, Gull 3,  Protector 1.8b2, Junior 13.3, Chiron 2, and Critter 1.6a.

Top free chess engines are: Stockfish DD , Komodo 5, Houdini 1.5a, Critter 1.6a, Gull 2.3, Bouquet 1.8, Rybka 2.3.2a, Strelka 5.5, Protector 1.5, Fruit 2.3, and Crafty 23.8.