Stockfish (program de șah)

Batog uscat Imagine Descriere Stock logo.jpg.

informație
Prima versiune 2 noiembrie 2008
Ultima versiune 13 (19 februarie 2021)
Depozit github.com/official-stockfish/Stockfish
Scris in C ++
Sistem de operare Microsoft Windows , macOS , Linux , iOS și Android
Tip Motor de șah
Joc video gratuit ( d )
Licență Licență publică generală GNU
Site-ul web stockfishchess.org

Stockfish este un motor de șah gratuit dezvoltat în principal de Marco Costalba, Joona Kiiski, Gary Linscott, Stéphane Nicolet și Tord Romstad și, de asemenea, cu multe contribuții ale unei mari comunități de dezvoltatori open-source. Este distribuit gratuit sub licența GNU General Public License versiunea 3 sau ulterioară.

Începând cu anii 2010, Stockfish s-a clasat în mod constant pe primul sau aproape de topul majorității clasamentelor motoarelor de șah  ; este considerat cel mai puternic motor convențional de șah din această perioadă din lume. A câștigat în special Campionatele Mondiale Informale de Șah pe Computer în sezonurile 6 (2014), 9 (2016), 11 (2018), 12 (2018), 13 (2018), 14 (2019), 16 (2019).), 17 ( 2019) și 18 (2020). A terminat al doilea în sezonurile 5 (2013), 7 (2014), 8 (2015) și 15 (2019).

În Mai 2021, Stockfish este evaluat ca având un rating Elo echivalent cu 3.548 de puncte, ceea ce reprezintă un record mondial la acea dată.

Denumirea „Stockfish” se referă la comerțul cu stockfisch ( fileuri de pește uscat în aer liber) din Scandinavia până în Italia . Este, de asemenea, o aluzie la „peștele mic” Rybka , un alt program popular de șah.

Marco Costalba a scris programul Stockfish bazat pe programul open source „Glaurung” al lui Tord Romstad lansat în 2004.

Istoric

Stockfish provine de la Glaurung, un motor de șah open source creat de Tord Romstad și lansat în 2004. Marco Costalba a creat Stockfish 1.0 în noiembrie 2008, preluând versiunea 2.1 a Glaurung, rezolvând unele erori și inclusiv îmbunătățiri.

O vreme, idei noi și schimbări de cod au fost schimbate între cele două programe, până când Romstad a decis să închidă Glaurung în favoarea Stockfish, care era atunci versiunea motorului mai avansată. Ultima versiune a lui Glaurung datează din decembrie 2008.

La 30 decembrie 2010, Stockfish este pe locul al doilea pentru puterea de a juca printre programele testate de site-ul Computer Chess Rating Lists (CCRL), cu un rating Elo de 3.223 puncte, împotriva 3.262 puncte pentru Rybka , 3.182 pentru Naum și 3.180 pentru Critter. Ca reamintire, niciun jucător uman nu a atins 2.900 de puncte în clasamentul Elo, recordul fiind de 2.882 de puncte de Magnus Carlsen , actualul campion mondial .

În 2011, Romstad nu s-a mai implicat în Stockfish, preferând să petreacă timp pe o aplicație de șah pentru iOS .

În februarie 2013, Gary Linscott a creat o platformă de dezvoltare online numită Fishtest, permițând oricui să sugereze și să testeze îmbunătățiri pentru Stockfish pentru a accelera dezvoltarea sa.

În mai 2014, Stockfish 5 a preluat conducerea în Listele de evaluare a șahului computerului cu 3.369 de puncte Elo, Houdini 4 fiind al doilea cu 3.336 de puncte.

30 mai 2014, Stockfish câștigă super-finala turneului din sezonul 6 al competiției Thoresen Chess Engines (TCEC) împotriva Komodo 7x (+13 = 45 -6, cu scorul 35½ - 28½).

18 iunie 2014, Marco Costalba anunță că își reduce implicarea în dezvoltarea Stockfish și cere comunității să creeze o sucursală pentru versiunea actuală și să continue dezvoltarea acesteia. Un director oficial, condus de un grup select de dezvoltatori Stockfish, a fost creat la scurt timp și gestionează dezvoltarea proiectului din acea zi.

28 ianuarie 2015, versiunea 6 a Stockfish îi permite să ocupe prima poziție în clasamentul programelor de șah înainte de Komodo 8.

Caracteristici

Stockfish poate folosi până la 512 nuclee într-un sistem multiprocesor . Dimensiunea maximă a tabelului de transpunere  (în) ( dimensiunea hash ) este de 32 de terabyți . Stockfish implementează, de asemenea, o versiune avansată de cercetare alfa-beta și bitboards . În comparație cu alte motoare, programul se caracterizează prin adâncimea jocului important, parțial datorită tăierii și tăierilor agresive ale loviturilor târzii  ( reduceri de mișcare târzie (în) ).

Programul acceptă Chess960 (o caracteristică moștenită din programul Glaurung), un mod de joc în care este considerat reperul.

Modulul integrează, de asemenea, în mod nativ tabelele finale de 6 piese și mai puțin de la versiunea sa 6 (2014), datorită tabelului final „Syzygy endgame tablebases”. Disponibilă anterior într-o furculiță întreținută de Ronald de Man, tabelul Syzygy este implementat în Stockfish începând cu această dată. În 2018, a fost adăugat suport pentru masa Syzygy de 7 bucăți sau mai puțin, la scurt timp după ce a devenit disponibil.

În iunie 2020O furcă a rețelei neuronale care poate fi actualizată eficient ( rețea neuronală actualizabilă eficient  (în) , nud) introdusă de programatorii shogi pe computer numită Stockfish nude, este discutată de dezvoltatorii de Stockfish. În iulie 2020, site-ul chess.com a raportat că Stockfish NNUE deschide un nou drum „în domeniul șahului computerizat prin încorporarea unei rețele neuronale în deja incredibil de puternicul motor de șah Stockfish”. Se anunță apoi o fuziune NNUE în Stockfish, iar versiunile de dezvoltare devin disponibile.

În Septembrie 2020Versiunea Stockfish 12 încorporează îmbunătățirea rețelei neuronale NNUE menționată anterior. Potrivit unei postări pe blogul pentru dezvoltatori Stockfish, această nouă versiune a programului „joacă mult mai greu decât oricare dintre predecesorii săi”, câștigând de obicei de zece ori mai multe jocuri decât pierde atunci când este. Comparativ cu versiunea sa 11.

Joacă forța

Stockfish, un program open source gratuit, a fost cel mai bun software de șah necomercial din lume din mai 2014. Dintre toate software-urile, este considerat unul dintre cele mai bune cu Komodo 9.3 și Houdini 4 .

El deține recordul istoric mondial de puncte în clasamentul Elo , cu 3.548 de puncte pe punctul de referință CCRL 40/15 dinMai 2021.

Stockfish coboară mai repede și mai adânc în arborele său de analiză decât majoritatea celorlalte programe, ceea ce îl face puternic atât în tactică (în special la împingerea pionului), cât și în finală , unde își poate folosi apoi tabelele finale .

Rezultatele concursului

Campionatul de top al motorului de șah

În 2013, Stockfish s-a clasat printre finaliștii sezoanelor 4 și 5 din Top Chess Engine Championship (TCEC), cu un scor de 23 contra 25 împotriva lui Houdini 3 în finală și mai târziu împotriva Komodo 1142. Sezonul 5 este remarcabil pentru echipa de victorie Komodo, în sensul că acceptă recompensa postumă pentru creatorul programului, Don Dailey  (în) , care a cedat bolii în ultima perioadă a evenimentului. În cinstea sa, a fost lansată o versiune a Stockfish, „Stockfish DD”.

5 decembrie 2016, Stockfish a câștigat sezonul 9 al TCEC, învingându-l pe Houdini cu 54,5 la 45,5. A terminat pe locul trei în sezonul 10 al TCEC, în spatele lui Houdini 6.02 și Komodo 1959 și a câștigat turneul rapid TCEC sezonul 10 înaintea lui Houdini.

Ianuarie până la noiembrie 2018, câștigă succesiv super-finale din sezonurile 11, 12 și 13, respectiv împotriva lui Houdini (cu un scor de 59-41) în sezonul 11, împotriva lui Komodo (cu un scor copleșitor de 60-40) în sezonul 12 și din nou împotriva Komodo (cu un scor de 55-45) în sezonul 13.

Sezonul 14 a fost unul foarte apropiat, cu Stockfish câștigând finala împotriva LCZero (50.5-49.5).

5 decembrie 2017, AlphaZero , programul de inteligență artificială al companiei DeepMind bate Stockfish 8 într-un meci de 100 de jocuri 64-36 (25 de jocuri câștigate cu alb, 3 cu negru, 72 egaluri) fără nicio pierdere, ceea ce corespunde cu 100 de puncte Elo de diferență.

AlphaZero folosește rețele neuronale și un algoritm de învățare de întărire de tip Monte-Carlo , spre deosebire de Stockfish, care folosește cercetări alfa-beta de înaltă performanță și dezvoltă un arbore de căutare mare. În timp ce învăța jocul, AlphaZero (care știa doar regulile de bază ale șahului ) ar fi jucat 44 de milioane de jocuri împotriva sa. Pentru jocul său de pre-sezon, a jucat 1.200 de jocuri de 1 secundă pe mișcare împotriva unei versiuni a Stockfish.

AlphaZero a folosit 5000 de unități de procesare tensorială (TPU ) de prima generație pentru a genera jocurile jucate împotriva sa și 64 de TPU-uri de a doua generație pentru a antrena rețelele neuronale. Cu 4 TPU-uri pentru joc, a depășit performanța Stockfish după doar 4 ore de învățare. La rândul său, pentru acest meci, Stockfish a folosit un computer cu un procesor de 64 de fire și 1 GB de dimensiune hash ( tabel de transpunere  (în) ). AlphaZero prelucra în jur de 80.000 de poziții pe secundă, comparativ cu 70 milioane Stockfish 8.

Cu toate acestea, Stockfish ar fi fost dezavantajat în timpul meciului, prin rata de joc (1 min / mutare), precum și prin puterea inferioară de calcul a mașinii pe care a rulat, deși majoritatea marilor maeștri umani cred că loviturile de „AlphaZero au arătat superioritate calitativă în judecata pozițională . De asemenea, Stockfish nu avea acces la biblioteca sa de deschideri sau la masa finală , ceea ce pune (dar nu anulează) performanța AlphaZero.

În decembrie 2018, un set de jocuri mult mai mare, jucat cu diferite versiuni de Stockfish (cadențe, acces sau nu la biblioteci etc.) a confirmat superioritatea AlphaZero, cu o dominare însă puțin mai mică.

Fishtest

Din 2013, Stockfish a fost dezvoltat folosind un cadru de testare distribuit numit „Fishtest”. Acest lucru permite voluntarilor să dedice timpul mașinii testării modificărilor programului.

Modificările sunt acceptate sau respinse în funcție de rezultatele obținute după simularea a sute de mii de jocuri, jucate folosind cadrul față de o versiune veche a programului. Aproximativ 700 de testeri participă la proiect.

În octombrie 2015, Fishtest avea peste 320 de ani de calcul, cu peste 200 de milioane de jocuri jucate. După sosirea Fishtest, Stockfish a crescut cu 120 de puncte Elo în doar 12 luni, plasându-l printre cele mai bune programe de șah de pe piață.

Este posibil să vedeți evoluția modului jucând împotriva versiunii 7 a Stockfish în 30 de minute +0,3, rulând pe un computer cu un procesor dual Xeon E5-2670 cu 16 nuclee.

Platforme

Versiunile stabile și de dezvoltare ale Stockfish sunt disponibile în cod sursă C ++ și sunt compilate pentru Microsoft Windows , Mac OS X și Linux în variante pe 32 și 64 de biți. „DroidFish” este versiunea pentru Android a Stockfish, în timp ce „SmallFish” este versiunea iOS a programului.

Versiuni

Note și referințe

(fr) Acest articol este preluat parțial sau în întregime din articolul din Wikipedia în engleză intitulat „  Stockfish (șah)  ” (a se vedea lista autorilor ) .
  1. "  https://blog.stockfishchess.org/post/643570707142492160/stockfish-13  "
  2. „  Lansarea 13  ” ,19 februarie 2021(accesat la 20 martie 2021 )
  3. (în) Șah pentru manechini , Hoboken, NJ, Wiley ,2016, 416  p. ( ISBN  978-1-119-28003-3 , OCLC  960819719 , citit online ) , p.  476.
  4. (în) „  CCRL 40/15  ” pe computerchess.org.uk ,11 ianuarie 2010.
  5. (ro) CCRL , „Stockfish 13 64-bit 4CPU” , computerchess.org.uk .
  6. (în) „  De ce Stockfish? Este un pește :) Este produs în Norvegia și gătit în Italia.  " - "  Note de lansare pentru Stockfish 1.0  " pe blogul Stockfish, stockfishchess.org , 2 noiembrie 2008.
  7. CCRL 40/40 .
  8. (în) „  Stockfish este noul mare campion CERI  ” , pe Chessdom.com .
  9. (în) „  Grupuri Google  ” pe groups.google.com
  10. Organizarea noului director , groups.google.com
  11. Larry Kaufman , „  Adâncimea peștilor vs. alții; provocare  ” , pe talkchess.com ,24 noiembrie 2013(accesat la 8 martie 2014 )
  12. Clasament CCRL 40/4 în FRC
  13. (în) „  Syzygy tablebases endgame  ” , syzygy-tables.info (accesat la 19 ianuarie 2020).
  14. (în) „  Versiuni de dezvoltare Stockfish  ” [ arhivă11 noiembrie 2014] , pe abrok.eu .
  15. nodchip, „  Stockfish NNUE  ” (accesat la 3 august 2020 ).
  16. „  SF NNUE. Numărul nr. 2728 oficial-pește  ” ,27 iunie 2020(accesat la 3 august 2020 )
  17. (ro-SUA) Wilhelm Canary-Reed (the_real_greco) , „  Stockfish + NNUE, cel mai puternic motor de șah existent vreodată, pentru a concura în CCCC  ” , pe Chess.com (accesat la 24 iulie 2020 )
  18. Joost VandeVondele, „  official-stockfish / Stockfish, NNUE merge  ” ,25 iulie 2020(accesat la 3 august 2020 )
  19. abrok.eu, „  Versiuni de dezvoltare Stockfish NNUE  ” (accesat la 3 august 2020 )
  20. (în) „  Stockfish 12  ” , echipa Stockfish, blog.stockfishchess.org , 2 septembrie 2020}
  21. (în) „  clasificare CCRL 40/40  ” pe computerchess.org.uk ,8 mai 2021
  22. „  IPON-Rating-List  ” , la inwoba.de
  23. (în) „EGTC 4/40 (2GHz)” (versiunea din 13 martie 2016 pe Internet Archive ) , pe husvankempen.de
  24. (în) „  CCRL 40/15 - Lista completă  ” pe computerchess.org.uk
  25. Vezi Jocuri notabile: Stockfish vs Houdini, Thoresen Chess Engines Engures Competition (TCEC) S2, Etapa 4, 6.3, 1–0, Houdini vs Stockfish, TCEC S2, Etapa 3, 17.4, 0-1, Komodo vs Stockfish, TCEC S6, Superfinală, 4, 0-1
  26. în: Concursul Thoresen Chess Engines
  27. (în) „  Note de lansare pentru Stockfish DD  ” , stockfishchess.org , 29 noiembrie 2013.
  28. (în) David Silver, Thomas Hubert Julian Schrittwieser și Ioannis Antonoglou, „  Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm  ” , arXiv: 1712.01815 [cs] ,5 decembrie 2017( citește online )
  29. (în) Peter Doggers, „  AlphaZero: Reactions from Top GM Stockfish Author  ” pe Chess.com ,8 decembrie 2017
  30. (în) „  Cum este Alpha Zero„ mai uman ”?  » , Pe chess.stackexchange.com ,13 decembrie 2017
  31. Analiză pe jeux-aux-echecs-en-ligne.com
  32. (în) Publicarea Deepmind în decembrie 2018
  33. (în) „  Cadrul de testare Stockfish  ” pe tests.stockfishchess.org .
  34. (în) "  Cadrul de testare  " , chessprogramming.wikispaces.com .
  35. (în) „  Stockfish Development Builds  ” , nextchessmove.com
  36. https://github.com/official-stockfish/Stockfish/releases/tag/sf_13
  37. https://github.com/official-stockfish/Stockfish/releases/tag/sf_14

Vezi și tu

Articol asociat

linkuri externe