Stockfish
Stockfish | |
---|---|
Тип | Шахматный движок |
Разработчики | Торд Ромстад, Марко Костальба, Йоона Кииски, Гэри Линскотт |
Написана на | C++ |
Операционные системы | Windows, macOS, Linux, iOS, Android |
Первый выпуск | 2 ноября 2008 |
Последняя версия | 17 (6 сентября 2024) |
Репозиторий | github.com/official-stoc… |
Состояние | Развивается |
Лицензия | GNU GPLv3 |
Сайт | stockfishchess.org |
Медиафайлы на Викискладе |
Stockfish (букв. «вяленая рыба») — свободный шахматный движок[1] с поддержкой UCI с открытым исходным кодом, доступный для различных настольных и мобильных платформ. Он разработан Марко Костальбой, Джоной Кийски, Гэри Линскоттом и Тордом Ромстадом, при большом вкладе сообщества разработчиков с открытым исходным кодом.[2]
Stockfish занимает первые места большинства рейтинговых списков и соревнований среди компьютерных шахматных программ, и признаётся сильнейшей шахматной программой, не использующей GPU.[3][4] Он выиграл неофициальный чемпионат мира по компьютерным шахматам в 6 сезоне (2014), 9 сезоне (2016), 11 сезоне (2018), 12 сезоне (2018), 13 сезоне (2018), 14 сезоне (2019), 16 сезоне (2019), 18 сезоне (2020), 19 сезоне (2020), 20 сезоне (2021), 21 сезоне (2021) и 22 сезоне (2022), а также финишировал вторым в 5 сезоне (2013), 7 сезоне (2014), 8 сезоне (2015), 15 сезоне (2019) и 17 сезоне (2020).
Stockfish произошел от Glaurung, движка с открытым исходным кодом Торда Ромстада, выпущенного в 2004 году.
Особенности
[править | править код]Stockfish может использовать до 1024[5] потоков ЦП в многопроцессорных системах. Максимальный размер таблицы транскрипции составляет 128 ГБ. Stockfish реализует расширенный альфа-бета-поиск и использует битборды. По сравнению с другими движками, он отличается большей глубиной поиска, отчасти из-за более агрессивного альфа-бета-отсечения, и поздними сокращениями хода.[6][7]
Stockfish поддерживает шахматы-960, что является одной из особенностей, которая была унаследована от Glaurung.
Поддержка баз данных шахматных окончаний Syzygy, ранее доступная в форке, которую поддерживал Рональд де Ман, была интегрирована в Stockfish в 2014 году.[8] В 2018 году была добавлена поддержка 7-фигурных баз Syzygy, вскоре после того, как стала доступна.
В августе 2020 под влиянием бурного развития движков на основе ИИ Stockfish претерпел существенные изменения в архитектуре и стал использовать нейронные сети NNUE[9], оптимизированные под CPU и алгоритм поиска Stockfish наряду с традиционной оценочной функцией движка. Stockfish из классического движка стал гибридным, использующим оценочную функцию на базе нейронных сетей (есть возможность отключить использование нейронных сетей в настройках) в материально сбалансированных позициях и традиционную в остальных. Это изменение дало существенное усиление игры. После выхода очередной версии Stockfish в феврале 2024 года традиционная оценка была удалена и движок стал использовать исключительно нейронные сети, а также была добавлена дополнительная нейронная сеть, необходимая для быстрой оценки позиций.[10]
Стиль игры Stockfish, как и у любой другой сильной программы, — универсальный, но с уклоном в тактику[источник не указан 1400 дней].
Код программы работает на алгоритме распараллеливания LAZY_SMP (внедрён в 2015 году), который прекрасно распараллеливается на больших количествах ядер/потоков.
Имеет свой порт на языке ассемблера[11] и порт на языке Си[12] (обновляются почти параллельно с основным проектом).
История участия в TCEC
[править | править код]Сезон | Дата | Место | Соперник | Счёт | Примечания |
---|---|---|---|---|---|
6 | Май 2014 | Победитель | Komodo | 35½-28½ | |
7 | Декабрь 2014 | 2-е | Komodo | 30½-33½ | |
8 | Ноябрь 2015 | 2-е | Komodo | 46½-53½ | Программы играли на 24-ядерном сервере |
9 | Декабрь 2016 | Победитель | Houdini | 54½-45½ | 44-ядерный сервер |
10 | Ноябрь 2017 | 3-е | Houdini
Komodo |
Stockfish не прошёл в суперфинал1 | |
11 | Апрель 2018 | Победитель | Houdini | 59-41 | |
12 | Июль 2018 | Победитель | Komodo | 60-40 | |
13 | Ноябрь 2018 | Победитель | Komodo | 55-45 | |
14 | Февраль 2019 | Победитель | Leela Chess Zero | 50½-49½ | |
15 | Май 2019 | 2-е | Leela Chess Zero2 | ||
16 | Октябрь 2019 | Победитель | Alliestein | ||
17 | Апрель 2020 | 2-е | Leela Chess Zero | 47½-52½ | |
18 | Июнь 2020 | Победитель | Leela Chess Zero | 53½-46½ | |
19 | Октябрь 2020 | Победитель | Leela Chess Zero | ||
20 | Февраль 2021 | Победитель | Leela Chess Zero | 53-47 | |
21 | Август 2021 | Победитель | Leela Chess Zero | 56-44 |
1В 10 сезоне Stockfish не проиграл ни одной игры, но не прошёл в суперфинал по дополнительным параметрам (общее количество выигрышей).
2В мае 2019 Лила выиграла кубок TCEC, выиграв у Stockfish 10 в финале 5.5-4.5 (+2 =7 −1). Она также выиграла cуперфинал TCEC 15 против Stockfish.[23][24]
Рейтинг
[править | править код]По состоянию на 2024 год Stockfish является лидером многих рейтинг-листов шахматных движков[14][15][16].
Примечания
[править | править код]- ↑ Chabris, Christopher (2015-01-09). "The Real Kings of Chess Are Computers". Wall Street Journal. Архивировано 24 сентября 2015. Дата обращения: 15 августа 2019.
- ↑ James Eade. Chess For Dummies. — John Wiley & Sons, 2016-08-10. — 610 с. — ISBN 9781119280033. Архивировано 21 февраля 2020 года.
- ↑ CEGT Best Versions 40/20 (AMD 4200+) . archive.is (8 сентября 2012). Дата обращения: 15 августа 2019. Архивировано из оригинала 8 сентября 2012 года.
- ↑ CCRL 40/40 — Index . web.archive.org (2 октября 2011). Дата обращения: 15 августа 2019. Архивировано из оригинала 2 октября 2011 года.
- ↑ Stockfish Development Versions . abrok.eu. Дата обращения: 7 сентября 2022. Архивировано 7 сентября 2022 года.
- ↑ Stockfish depth vs. others; challenge — TalkChess.com . www.talkchess.com. Дата обращения: 15 августа 2019. Архивировано 30 ноября 2018 года.
- ↑ Chess Daily News (англ.). Chess Daily News. Дата обращения: 15 августа 2019. Архивировано 28 августа 2019 года.
- ↑ Stockfish Development Versions . web.archive.org (11 ноября 2014). Дата обращения: 15 августа 2019. Архивировано из оригинала 11 ноября 2014 года.
- ↑ NNUE - Chessprogramming wiki . www.chessprogramming.org. Дата обращения: 24 августа 2020. Архивировано 6 августа 2020 года.
- ↑ Stockfish NNUE - Chessprogramming wiki . www.chessprogramming.org. Дата обращения: 24 августа 2020. Архивировано 9 августа 2020 года.
- ↑ Форк lantonov/asmFish Архивная копия от 13 июля 2018 на Wayback Machine с последними патчами Stockfish.
- ↑ Cfish . Дата обращения: 15 марта 2018. Архивировано 13 июля 2018 года.
- ↑ TCEC Season Archive . tcec.chessdom.com. Дата обращения: 28 декабря 2014. Архивировано из оригинала 3 мая 2015 года.
- ↑ Рейтинг компьютерных шахматных программ CCRL 40/40 Архивная копия от 13 апреля 2009 на Wayback Machine.
- ↑ IPON-Rating-List . www.inwoba.de. Дата обращения: 7 апреля 2018. Архивировано из оригинала 12 июня 2011 года.
- ↑ FastGMs Rating Lists (FGRL) . www.fastgm.de. Дата обращения: 7 апреля 2018. Архивировано 7 апреля 2018 года.