První vydání | 9. ledna 2018 |
---|---|
Aktuální verze | 0.30.0 (21. července 2023) |
Typ softwaru | šachový motor, svobodný a otevřený software a distribuovaný počítačový systém |
Licence | GPLv3 GNU General Public License |
Web | lczero |
Některá data mohou pocházet z datové položky. |
Leela Chess Zero (zkráceně LCZero, lc0) je šachový engine s otevřeným zdrojovým kódem pracující pomocí neuronové sítě[1][2] a distribuovaného výpočtu. V čele vývoje stojí programátor Gary Linscott[3], který je zakladatelem tzv. Fishtestu, systému, který využívá šachový motor Stockfish pro své zlepšování. Leela Chess Zero vznikl vylepšením motoru Leela Zero, který hraje hru Go.[4] Ten byl založen pomocí algoritmu společnosti DeepMind, která vyvíjí AlphaGo Zero.[5] Byly také využity metody šachové AlphaZero od stejné společnosti.[2]
Stejně jako Leela Zero a AlphaGo Zero, začíná bez vlastních základních šachových znalostí, zná pouze pravidla hry. Poté se zlepšuje pomocí zpětnovazebního učení a hraje partie sama proti sobě.[2]
K srpnu 2019 hrála proti sobě více než 232 miliónů šachových her[6] a hraje na podobné úrovni jako Stockfish 12.[7][8]
Projekt Leela Chess Zero byl poprvé oznámen Garrym Linscottem na serveru TalkChess.com 9. ledna 2018.[3][4] Toto odhalilo Leela šachovou nulu jako otevřený zdrojový, samoučící se šachový motor, který by se stal známým jako s cílem vytvořit silný šachový motor.[3] Již během prvních několika měsíců tréninku dosáhla Leela úrovně velmistra, překonala stará vydání Rybky, Stockfishe a Komoda, přestože při používání MCTS vyhodnotila řádově méně pozic.
V prosinci 2018 publikoval v časopise Science tým AlphaZero příspěvek, kde odhalil dříve nezveřejněné podrobnosti o architektuře a parametrech pro trénink používaných pro AlphaZero.[9] Tyto změny byly brzy implementovány i do Leely a zvýšily jak její sílu, tak efektivitu tréninku.[10]
Práce na Leela Chess Zero inspirovala podobný projekt AobaZero hrající šógi.[11]
Metoda, kterou její vývojáři používají k tomu, aby se Leela Chess Zero naučila hrát šachy lépe než člověk je zpětnovazební učení. Jedná se o algoritmus strojového učení převzatý od AlphaZero, který Leela používá při hraní sama proti sobě.[4] Jelikož se jedná o svobodný software, odehrála Leela již stovky milionů her provozovaných dobrovolníky a pomocí algoritmu se tak zlepšila.[6] Aby bylo možné přispět k rozvoji motoru Leela Chess Zero, je nutné stáhnout nejnovější verzi motoru i příslušného klienta. Klient se pak musí připojit k serveru, kde jsou uloženy všechny informace ze všech her Leely sama proti sobě.[12]
Pokud by však někdo chtěl hrát proti motoru Leela Chess Zero, musí být síť stažena. Síť obsahuje vyhodnocovací funkci Leela Chess Zero, která je nutná pro soupeře, aby hrál proti motoru.[12] Hraní proti minulé formě motoru Leela Chess Zero je také možné, ačkoli hodnocení pro vlastní hru vypočtené pro motor se liší od klasického hodnocení Elo šachy. Aby bylo možné najít hodnocení Leely, je použít vzorec:
kde y je hodnocení hráčů a X je hodnocení Leely.[13]
V dubnu 2018 se Leela Chess Zero stal prvním šachovým motorem využívající neuronovou síť, který vstoupil do TCEC, a to ve 12. sezóně, kde hrála v poslední, tedy čtvrté divizi.[14] Tehdy si Leela dobře nevedla: z 28 partií vyhrála jednu, zremizovala dvě a ostatní prohrála; její jediné vítězství bylo v partii se Scorpiem 2.82.[15] Její úroveň se však rychle zlepšila. V červenci 2018 se umístila na sedmém z osmi míst na mistrovství světa v počítačových počítačích.[16] V srpnu 2018 vyhrála 4. divizi třinácté sezóny TCEC s rekordními 14 výhry, 12 remízami a 2 prohry.[17][18] Ve třetí divizi, které se také zúčastnila, dosáhla na16 z 28 bodů a skončila tak společně s motorem Arasan za motorem Ethereal. V tiebreaku ale pak nad Leelou zvítězil Arasan.[17][19]
V září roku 2018 se Leela stala konkurenceschopnou s nejsilnějšími šachovými motory na světě. V tomto roce se na CCCC umístila pátá z 24 účastníků.[20] Jelikož prvních osm motorů postupovalo do druhého kola, zúčastnila se jej i Leela a obsadila čtvrté místo.[21][22] Poté proti Komodu vyhrála zápas na 30 partií a celkově tak na turnaji skončila třetí.[23][24] Souběžně se Leela zúčastnila poháru TCEC, nové události, ve které mohly šachové motory z různých divizí TCEC hrát proti sobě. Motory z vyšších divizí, které Leela porazila byli Laser, Ethereal a Fire. Nakonec pak Leelu v semifinále porazil Stockfish.[25]
V říjnu a listopadu 2018 se Leela zúčastnila turnaje v tempu blitz na platformě chess.com.[26] Nakonec skončila třetí, a to za Stockfishem a Komodem.[27]
V prosinci 2018 se Leela zúčastnila 14. sezóny TCEC . Leela dominovala 3., 2. a 1. divizi, ve všech z nich snadno skončila první. V divizi P dominoval Stockfish, zatímco Houdini, Komodo a Leela společně soutěžili o druhé místo. Ve finálovém kole hrála Leela proti Stockfishi a aby skončila druhá před Komodem, musela s černými figury udržet remízu. To se jí nakonec podařilo a hrála tak proti Stockfishi superfinále. To úzce ztratila, když konečný výsledek byl 49,5-50,5 pro Stockfishe.[28]
V únoru 2019 dosáhla Leela svého prvního významného turnajového vítězství, když ve finále druhého poháru TCEC porazila motor Houdini. Za celý pohár ani jednu hru neprohrála.[29][30] V dubnu 2019 pak vyhrála sedmý CCCC a stala se tak prvním šachovým motorem využívající neuronovou sít, který tento turnaj vyhrál.[31]
V květnu 2019 obhájila Leela svůj titul v TCEC poháru, když tentokrát porazila Stockfishe 5,5-4,5 (+2 = 7 -1) poté, co Stockfish udělal hrubou chybu v koncovce se 7 figurkami a poslední hra tak skončila remízou.[32] Proti Stockfishi také Leela vyhrála superfinále 15. sezóny TCEC (53.5-46.5), když 14 her vyhrála, 7 prohrála a ostatních 79 skončilo remízou.[33][34]
Sezónu 16 ukončila Leela v divizi P (Premier) na 3. místě, do superfinále se místo ní kvalifikoval nový motor AllieStein, který pracuje také na bázi neuronové sítě. Leela však ani jednou v této divizi neprohrála a v jedné ze šesti her se Stockfishem jej porazila. Oproti motorům AllieStein a Stockfish však dokázala vyhrát jen devět partií, zatímco oné motory jich vyhrály 14. Leela totiž až na výjimky nedokázala porazit slabší motory a skončila tak půl bodu za AllieSteinem a bod za Stockfishem.[35] Ve čtvrtém poháru TCEC se kvalifikovala do finále, kde hrála proti Stockfishi. Po sedmi remízách vyhrál Stockfish osmou hru a tento pohár nakonec vyhrál.[36]
Vyhrála turnaje CCC11, CCC12 a CCC13. V sedmnácté sezóně TCEC se Leela dostala do superfinále, kde porazila Stockfish skórem 52,5 : 47,5.[37]
Sezóna | Divize 4 | Divize 3 | Divize 2 | Divize 1 | Divize P | Superfinále |
---|---|---|---|---|---|---|
12 (2018) | 8. | - | - | - | - | - |
13 (2018) | 1. | 3. | - | - | - | - |
14 (2018) | - | 1. | 1. | 1. | 2. | 2. |
15 (2019) | - | - | - | - | 2. | 1. |
16 (2019) | - | - | - | - | 3. | - |
17 (2020) | - | - | - | - | 1. | 1. |
událost | Rok | Časové kontroly | Výsledek | Ref |
---|---|---|---|---|
CCC 1: Rapid Rumble | 2018 | 15 + 5 | 3. | [24] |
CCC 2: Blitz Battle | 2018 | 5 + 2 | 3. | [27] |
CCC 3: Rapid Redux | 2019 | 30 + 5 | 2. | [39] |
CCC 4: Bullet Brawl | 2019 | 1 + 2 | 2. | [40] |
CCC 5: Eskalace | 2019 | 10 + 5 | 2. | [41] |
CCC 6: | 2019 | 10 + 10 | 2. | [42] |
CCC 7: Blitz Bonanza | 2019 | 5 + 2 | 1. | [31] |
CCC 8: Deep Dive | 2019 | 15 + 5 | 2. | [43] |
CCC 9: Gauntlet | 2019 | 5 + 2, 10 + 5 | 3. | [44] |
CCC 10: | 2019 | 10 + 3 | 3. | [45] |
CCC 11 | 2019 | 30 + 5 | 1. | [46] |
CCC 12: Bullet Madness! | 2020 | 1 + 1 | 1. | [47] |
CCC 13 | 2020 | 3+2, 5+5, 10+5, 15+5 | 1. | [48] |
V tomto článku byl použit překlad textu z článku Leela Chess Zero na anglické Wikipedii.