Stockfish, one of the best modern chess engines, outperforms DeepBlue by magnitude. As of September 2022, Stockfish is the most robust CPU chess engine in the world, consistently placing first or close to first on most chess engine rating lists. In addition, it has won the Computer Chess Championship 19 times and the Top Chess Engine Championship 12 times.

The open-source development team behind Stockfish includes Marco Costalba, Joona Kiiski, Gary Linscott, Tord Romstad, Stéphane Nicolet, Stefan Geschwentner, and Joost VandeVondele. It is derived from Tord Romstad's open-source Glaurung engine, which was released in 2004.

Chess engine

The majority of chess engines follow a similar pattern: 

  • they abstract a chess position, 
  • find all potential moves, 
  • iterate through the tree of candidates up to a predetermined depth, and 
  • then evaluate each move's relevance to determine which is the best.

In multiprocessor systems, Stockfish can utilize up to 1024 CPU threads. Its transposition table can be as large as 32 TB. Stockfish makes use of bitboards and an advanced alpha-beta search. Its superior search depth when compared to other engines is a result, in part, of more aggressive pruning and late move reductions.

Stockfish can play Chess960, which was a feature that Glaurung gave it. The support for Syzygy tablebases, previously available in a branch that Ronald de Man kept up, was added to Stockfish in 2014. In 2018, support was added for the 7-men Syzygy soon after it became possible.

Features

On several platforms, Stockfish has been a prevalent engine. It has been bundled with the Stockfish, SmallFish, and Droidfish apps for mobile devices. Other graphical user interfaces (GUIs) that work with Stockfish are Fritz, Arena, Stockfish for Mac, and PyChess. We can run Stockfish in a browser by compiling it to WebAssembly or JavaScript. In addition to a server-side program, both chess.com and Lichess offer Stockfish in this form. There are C++ source code and precompiled release and development versions for Microsoft Windows, macOS, Linux 32-bit/64-bit, and Android.

Fishtest

Since 2013, Stockfish has been made with the help of a distributed testing framework called Fishtest. It is a way for volunteers to test improvements to the program by giving their CPU time.

Furthermore, the chi-squared test is used to check the results of tests on the framework. If the results are statistically significant, they are considered reliable and used to change the software code.

Conclusion

Glaurung, an open-source chess engine created by Romstad and first released in 2004, was the inspiration for the program. Costalba decided to fork the project four years later, inspired by the powerful open-source engine. Stockfish was named after it was "produced in Norway and cooked in Italy" (Romstad is Norwegian, Costalba is Italian). Stockfish 1.0, the first version, was released in November 2008. For a time, new ideas and code changes were transferred back and forth between the two programs until Romstad decided to discontinue Glaurung in favour of Stockfish, the more advanced engine. Glaurung's most recent version (2.2) was released in December 2008.

Later, Romstad decided to leave Stockfish around 2011 to devote more time to his new iOS chess app. Marco Costalba announced on June 18, 2014, that he had "decided to step down as Stockfish maintainer" and requested that the community create a fork of the current version and continue development. Soon after, an official repository was established, which is currently managed by a volunteer group of core Stockfish developers.

Want to publish your content?

Publish an article and share your insights to the world.

Get Published Icon
ALSO EXPLORE