Changes

Jump to: navigation, search

Stockfish

3,659 bytes added, 01:46, 13 December 2022
Authors
'''Stockfish''',<br/>
an [[UCI]] compatible [[:Category:Open Source|open source]] chess engine developed by [[Tord Romstad]], [[Marco Costalba]], [[Joona Kiiski]] and [[Gary Linscott]] <ref>[http://www.talkchess.com/forum/viewtopic.php?t=58779 Stockfish 7] by [[Joona Kiiski]], [[CCC]], January 02, 2016</ref>, licensed under the [[Free Software Foundation#GPL|GPL v3.0]]. Marco forked the project from version 2.1 of Tord's engine [[Glaurung]], first announced by Marco in November 8, 2008 <ref>[http://www.talkchess.com/forum/viewtopic.php?t=24675 Stockfish 1.0] by [[Marco Costalba]], [[CCC]], November 02, 2008</ref>, and in early 2009 Joona's [[Smaug]], a further Glaurung 2.2 derivative, was incorporated <ref>[http://www.talkchess.com/forum/viewtopic.php?t=26971&start=1 Re: Smaug: a new chess engine based on glaurung] by [[Marco Costalba]], [[CCC]], March 12, 2009</ref> . Starting out among the top twenty engines, Stockfish has quickly climbed in [[Playing Strength|strength]] to become the world strongest chess entity as of 2018 - at least concerning the [[AlphaZero]] hype <ref>[[David Silver]], [[Thomas Hubert]], [[Julian Schrittwieser]], [[Ioannis Antonoglou]], [[Matthew Lai]], [[Arthur Guez]], [[Marc Lanctot]], [[Laurent Sifre]], [[Dharshan Kumaran]], [[Thore Graepel]], [[Timothy Lillicrap]], [[Karen Simonyan]], [[Demis Hassabis]] ('''2017'''). ''Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm''. [https://arxiv.org/abs/1712.01815 arXiv:1712.01815]</ref>, public available chess entity. The name "Stockfish" reflects the ancestry of the engine. Tord is Norwegian and Marco Italian, and there is a long history of [https://en.wikipedia.org/wiki/Stockfish stockfish] trade from Norway to Italy (to Marco's home town of [https://en.wikipedia.org/wiki/Vicenza Vicenza], in fact). Stockfish also referred another famous "little fish", the then strongest chess engine [[Rybka]]. In 2011, Marco Costalba and Joona Kiiski stepped down as Stockfish maintainers <ref>[http://www.talkchess.com/forum/viewtopic.php?t=40610 Stockfish on github] by [[Marco Costalba]], [[CCC]], October 02, 2011</ref>. From that, the project is being developed and maintained by the [[:Category:Stockfish Contributor|Stockfish community]].
In 2011, Marco Costalba and Joona Kiiski stepped down as Stockfish maintainers <ref>[http://www.talkchess.com/forum/viewtopic.php?t=40610 Stockfish on github] by [[Marco Costalba]], [[CCC]], October 02, 2011</ref>. From that, the project is being developed and maintained by the [[:Category:Stockfish Contributor|Stockfish community]]. A synergy effect with the [[Shogi]] community led to the promising branch of [[Stockfish NNUE]], courtesy of [[Hisayori Noda|Nodchip]], who introduced [[NNUE]] to Stockfish in 2019 <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=74059 Stockfish NN release (NNUE)] by [[Henk Drost]], [[CCC]], May 31, 2020</ref>. On September 02, 2020, '''Stockfish 12''' was released with a huge jump in [[Playing Strength|playing strength]] due to NNUE and further [[Automated Tuning|tuning]] of the engine <ref>[https://blog.stockfishchess.org/postblog/6281728108529254402020/stockfish-12 / Stockfish 12], The Stockfish Team, [https://blog.stockfishchess.org/ Stockfish Blog], September 02, 2020</ref>. The release of '''Stockfish 13''' on February 19, 2021, has been triggered by the start of sales of the [[Fat Fritz#Fat Fritz 2|Fat Fritz 2]] engine by [[ChessBase]], based on a recent development version of Stockfish with minor modifications <ref>[https://blog.stockfishchess.org/postblog/6435707071424921602021/stockfish-13 / Stockfish 13], The Stockfish Team, February 19, 2021</ref>. '''Stockfish 14''', released on July 02, 2021, further improved due to efforts by [[Tomasz Sobczyk]] and [[Gary Linscott]] in designing a new [[Stockfish NNUE#HalfKA|NNUE architecture]] in conjunction with a [[GPU]] accelerated trainer written in [https://en.wikipedia.org/wiki/PyTorch PyTorch]. Further, the collaboration with the [[Leela Chess Zero]] team payed off, in providing billions of positions to train the new NNUE <ref>[https://stockfishchess.org/blog/2021/stockfish-14/ Stockfish 14], The Stockfish Team, July 02, 2021</ref>.
=Science versus Commerce?=
<span id="EvaluationGuide"></span>
=Evaluation Guide=
Since April 2017 the interactive '''Stockfish Evaluation Guide''' is available to explore Stockfish's [[Evaluation|evaluation]] with a [[JavaScript]] implementation running in a [https://en.wikipedia.org/wiki/Web_browser browser] <ref>[http://www.talkchess.com/forum/viewtopic.php?t=64025&start=27 Re: How far away are we from deep learning Stockfish, Komodo] by [[Gary Linscott|Gary]], [[CCC]], May 21, 2017</ref> . One may enter a [[Forsyth-Edwards Notation|FEN]] string of a [[Chess Position|position]], to get the resulting [[Score|score]] of the main evaluation term considering the [[Game Phases|game phases]] within its [[Tapered Eval|tapered evaluation]], and may navigate through the tree of subterms and features with its particular characteristics for the given position <ref>[https://hxim.github.io/Stockfish-Evaluation-Guide/ Stockfish Evaluation Guide]</ref>, also supporting [[Stockfish NNUE]] nets <ref>[https://hxim.github.io/Stockfish-Evaluation-Guide/?p=nnue Stockfish Evaluation Guide - NNUE]</ref> .
=Tournament Play=
<ref>if not mentioned otherwise, based on the sources of Stockfish 6</ref>
==[[Board Representation]]==
* [[8x8 Board]]
* [[Bitboards]] with [[Square Mapping Considerations#LittleEndianRankFileMapping|Little-Endian Rank-File Mapping (LERF)]]
* [[Magic Bitboards]]
: [[BMI2#PEXTBitboards|BMI2 - PEXT Bitboards]] (not recommend for [[AMD]] [https://en.wikipedia.org/wiki/Ryzen Ryzen] <ref>[https://www.reddit.com/r/Amd/comments/60i6er/ryzen_and_bmi2_strange_behavior_and_high_latencies/ Ryzen and BMI2: Strange behavior and high latencies] by DonnieTinyHands, [https://en.wikipedia.org/wiki/Reddit Reddit], March 20, 2017</ref> prior to [https://en.wikipedia.org/wiki/Zen_3 Zen 3])
* [[Piece-Lists]] until Stockfish 12 <ref>[https://github.com/official-stockfish/Stockfish/blob/sf_12/src/position.h#L193 Stockfish/position.h at sf_12 · official-stockfish/Stockfish · GitHub]</ref> <ref>[https://github.com/official-stockfish/Stockfish/pull/3247 Remove piece lists by syzygy1 · Pull Request #3247 · official-stockfish/Stockfish · GitHub]</ref> <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=7&t=69364&start=12 Re: piece lists advantage with bit-boards?] by [[Ronald de Man]], [[CCC]], December 26, 2018</ref>
==[[Search]]==
* [[Iterative Deepening]]
** [[Quiescence Search]]
==[[Evaluation]]==
* [[NNUE]]** [[Stockfish NNUE#HalfKP|HalfKP]] (Stockfish 12)** [[Stockfish NNUE#HalfKA|HalfKAv2]] (Stockfish 14): ''See also'' [[Evaluation Philosophy]] <ref>[http://www.talkchess.com/forum/viewtopic.php?topic_view=threads&p=135133&t=15504 The Art of Evaluation] by [[Tord Romstad]], [[CCC]], August 2, 2007</ref> <ref>[https://hxim.github.io/Stockfish-Evaluation-Guide/ Stockfish Evaluation Guide]</ref> and [[NNUE]]
* [[Tapered Eval]]
* [[Score#Grain|Score Grain]]: ~1/256 of a [[Pawn Advantage, Win Percentage, and Elo|pawn unit]]
** [[King Safety#SquareControl|Square Control]]
* [[Evaluation Patterns]]
 
==Misc==
* [[Chess960]]
* [[Stockfish NNUE|Stockfish 12]] - September 02, 2020
* Stockfish 13 - February 19, 2021
* Stockfish 14 - July 02, 2021
* Stockfish 15 - April 18, 2022
* Stockfish 15.1 - December 04, 2022
<span id="ports"></span>
 
=Ports=
* [[asmFish]]
* [[CFish]]
* [[DroidFish]]
* [[Fat Titz]]
* [[Portfish]]
* [[Rustfish]]
=Authors=
==Founders of the Stockfish project and Fishtest infrastructure==
* [[Marco Costalba]]
* [[Joona Kiiski]]
* [[Gary Linscott]]
* [[Tord Romstad]]
 
==Authors and inventors of NNUE, training, NNUE port==
* [[Yu Nasu]]
* [[Motohiro Isozaki]]
* [[Hisayori Noda]]
 
==All other authors of the code==
 
There are 196 authors, counted to version 15.1.
 
* [[:Category:Stockfish Contributor|Contributors]]
* [[NNUE]]
* [[Stockfish NNUE]]
** [[Stockfish NNUE#HalfKP|HalfKP]] (Stockfish 12)
** [[Stockfish NNUE#HalfKA|HalfKAv2]] (Stockfish 14)
=Publications=
* [[Shu Yokoyama]], [[Tomoyuki Kaneko]], [[Tetsuro Tanaka]] ('''2015'''). ''Parameter-Free Tree Style Pipeline in Asynchronous Parallel Game-Tree Search''. [[Advances in Computer Games 14]] , [http://www.graco.c.u-tokyo.ac.jp/~kaneko/papers/acg2015-yokoyama.pdf pdf] » [[Shu Yokoyama#PGPP|P-GPP]]
* [[Jean-Marc Alliot]] ('''2017'''). ''Who is the Master''? [[ICGA Journal#39_1|ICGA Journal, Vol. 39, No. 1]], [http://www.alliot.fr/CHESS/draft-icga-39-1.pdf draft as pdf] <ref>[http://www.alliot.fr/CHESS/ficga.html.en Who is the Master?] from [[Jean-Marc Alliot|Jean-Marc Alliot's]] [http://www.alliot.fr/fpro.html.en professional website]</ref>
* [[Bill Jordan]] ('''2020'''). ''Calculation versus Intuition: Stockfish versus Leela''. [https://www.amazon.com/Calculation-versus-Intuition-Stockfish-Leela-ebook/dp/B08LYBQDMB/ amazon] » [[TCEC]], [[Leela Chess Zero]]
=Forum Posts=
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77503&start=55 Re: will Tcec allow Stockfish with a Leela net to play?] by [[Connor McMonigle]], [[CCC]], June 17, 2021
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77599 Stockfish 14 release round the corner] by Prasanna Bandihole, [[CCC]], July 02, 2021
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77602 Before things become more messy than they already are] by [[Ed Schroder|Ed Schröder]], [[CCC]], July 02, 2021
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77605 Stockfish 14 has been released] by Madeleine Birchfield, [[CCC]], July 02, 2021
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77762 Stockfish: Our lawsuit against ChessBase] by Kurt Lanc, [[CCC]], July 20, 2021
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=78030 The Great Stockfish NPS Debate] by Dietrich Kappe, [[CCC]], August 27, 2021
'''2022'''
* [https://www.talkchess.com/forum3/viewtopic.php?f=7&t=79588 Stockfish search] by Werewolf, [[CCC]], March 26, 2022 » [[Lazy SMP]]
* [https://www.talkchess.com/forum3/viewtopic.php?f=2&t=79713 Stockfish 15 is ready] by Mehmet Karaman, [[CCC]], April 19, 2022
* [https://www.talkchess.com/forum3/viewtopic.php?f=2&t=79793 Stockfish 15's Immortal Game?] by [[Graham Banks]], [[CCC]], May 01, 2022
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=80608 Are tablebases useless for Stockfish15?] by [[Jouni]], [[CCC]], September 02, 2022
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=81105 Stockfish 15.1 is ready] by [[Mehmet Karaman]], [[CCC]], December 05, 2022
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=81108 SF branching factor] by [[Jouni]], [[CCC]], December 05, 2022
=Blog Posts=
* [https://rjlipton.wordpress.com/2015/10/06/depth-of-satisficing/ Depth of Satisficing] by [[Kenneth W. Regan|Ken Regan]], [https://rjlipton.wordpress.com/ Gödel's Lost Letter and P=NP], October 06, 2015 » [[Depth]], [[Match Statistics]], [[Pawn Advantage, Win Percentage, and Elo]], [[Stockfish]], [[Komodo]] <ref>[http://www.talkchess.com/forum/viewtopic.php?t=57890 Regan's latest: Depth of Satisficing] by Carl Lumma, [[CCC]], October 09, 2015</ref>
* [https://rjlipton.wordpress.com/2016/01/21/a-chess-firewall-at-zero/ A Chess Firewall at Zero?] by [[Kenneth W. Regan|Ken Regan]], [https://rjlipton.wordpress.com/ Gödel's Lost Letter and P=NP], January 21, 2016
* [https://blog.stockfishchess.org/postblog/1526995581422016/stockfish-8 / Stockfish 8], November 01, 2016* [https://blog.stockfishchess.org/postblog/1806908341472018/stockfish-9 / Stockfish 9], February 09, 2018* [https://blog.stockfishchess.org/postblog/1806910112372018/stockfish-10 / Stockfish 10], December 01, 2018
==2020 ...==
* [https://blog.stockfishchess.org/postblog/1903989913022020/stockfish-11 / Stockfish 11], The Stockfish Team, January 15, 2020* [https://blog.stockfishchess.org/postblog/6258280913438965772020/introducing-nnue-evaluation / Introducing NNUE Evaluation], August 07, 2020* [https://blog.stockfishchess.org/postblog/6281728108529254402020/stockfish-12 / Stockfish 12], The Stockfish Team, September 02, 2020* [https://blog.stockfishchess.org/postblog/6435707071424921602021/stockfish-13 / Stockfish 13], The Stockfish Team, February 19, 2021* [https://stockfishchess.org/blog/2021/stockfish-14/ Stockfish 14], The Stockfish Team, July 02, 2021* [https://stockfishchess.org/blog/2021/our-lawsuit-against-chessbase/ Our lawsuit against ChessBase], The Stockfish Team, July 20, 2021 » [[ChessBase]], [[Fat Fritz#Fat Fritz 2|Fat Fritz 2]], [[Houdini#Stockfish|Houdini 6]]* [https://stockfishchess.org/blog/2021/stockfish-14-1/ Stockfish 14.1], The Stockfish Team, October 28, 2021
=External Links=
* [https://tests.stockfishchess.org/tests Stockfish Testing Framework] » [[Stockfish#Fishtest|Fishtest]]
* [https://hxim.github.io/Stockfish-Evaluation-Guide/ Stockfish Evaluation Guide] » [[Stockfish#EvaluationGuide|Stockfish Evaluation Guide]]
: [https://hxim.github.io/Stockfish-Evaluation-Guide/?p=nnue Stockfish Evaluation Guide - NNUE]
* [https://github.com/glinscott/fishtest GitHub - glinscott/fishtest: Stockfish testing]
: [https://github.com/glinscott/fishtest/wiki/Creating-my-first-test Creating my first test · glinscott/fishtest Wiki · GitHub]

Navigation menu