В 15 сезоне турнира Top Chess Engine Championship (TCEC) - самом известном и престижном чемпионате компьютерных шахмат - нейронная сеть Leela Chess Zero (LC0) одержала победу, лидируя соперника (классического движка) Stockfish со счетом 50.5-43.0 (14 побед, 7 поражений, 73 ничьи).
Турнир будет продолжаться еще 6 партий (до 100 партий в целом), но LC0 уже набрала большинство очков и опередить ее уже невозможно.
А как же Alpha Zero?
Некоторые спросят, "а как же Alpha Zero? Разве эта программа уже не являлась сильнейшей?" И в самом деле, в декабре 2017 г. Google опубликовала статью, где утверждали, что их нейронная сеть Alpha Zero победила Stockfish с большим отрывом. Однако это невозможно считать официальным результатом по ряду причин:
1. Google не провели игры в открытом турнире, не открыли исходной код, и не предоставили протестировать Alpha Zero сторонним наблюдателям. О силе Alpha Zero оставалось лишь верить на слово Google.
2. Версия Stockfish в играх AlphaZero была устаревшей, играющей намного слабее последней версии.
3. Турнир AlphaZero проводился в режиме рапид (15 минут у каждой стороны), в то время как шахматные движки показывают сильнейшую игру в классическом тайм-контроле.
Турнир TCEC
Турнир TCEC - самый известный и признаваемый чемпионат компьютерных шахмат, проводится уже много лет в открытую, в нем участвуют все сильнейшие шахматные движки. Отборочные туры проводились по швейцарской системе, а финал - серией партий в 100 игр с полновесным тайм-контролем (90 минут + 10 секунд за ход). Используются самые последние версии движков. И наконец, LC0 имеет открытый исходной код, и протестировать ее может любой. Поэтому, в отличии от закрытого турнира Google, победу в TCEC можно считать официальным признанием первенства в компьютерных шахматах.
Архив всех проведенных партий можно посмотреть тут.
Используемое железо:
Поскольку классическим и нейронным движкам требуется разное железо (классическим - главное CPU и RAM, а нейронным - GPU), железо предоставлялось из расчета приблизительно одинаковой рыночной стоимости:
Stockfish:
CPUs: 2 x Intel Xeon E5 2699 v4 @ 2.8 GHz
Ядер: 44 физических
RAM: 64 GB DDR4 ECC
SSD: Crucial CT250M500 240 GB
Leela Chess Zero:
GPUs: 1 x 2080 ti + 1 x 2080
CPU: Quad Core i5 2600k
RAM: 16GB DDR3-2133
SSD:Samsung 840 Pro 256gb
О движке:
LC0 написана на С++ и обучалась с помощью TensorFlow. Первая версия появилась в январе 2018 г. Всего лишь за полтора года LC0, зная лишь основные правила движения фигур и пешек и ничего более, самообучилась до сильнейшей игры в мире, проведя с самой собой сотни миллионов партий.
В отличии от классических движков, использующих метод брутфорса (и предпочитающих тактический стиль игры), нейронные сети умеют оценивать обстановку на доске в целом, и предпочитают позиционный стиль. Так, в миттельшпиле, Stockfish каждую секунду способен перебирать приблизительно 50 миллионов позиций, а LC0 - лишь 50 тысяч (в 1000 раз медленнее!) Но анализ каждой позиции у LC0 - намного более глубокий, чем у Stockfish, и поэтому перевес все равно остается на стороне нейронной сети.
Как AlphaZero, так и LC0 ставят основной задачей не материальный перевес, а контроль над доской и захват пространства, часто жертвуя для этого материалом, а потом - сковав противника в маневре - доводят игру до победы.
Поскольку LC0 продолжает самообучаться, она играет все сильнее с каждым днем, даже на одном и том же железе (в то время как классические движки, в основном, улучшают игру лишь с более сильным железом). Поэтому есть все основания полагать, что нейронные сети сохранят лидерство в обозримом будущем, и будут показывать нам все более сильную шахматную игру.