- 11 Ноябрь 2020
-
50919
-
0
Alpha Zero
Alpha Zero – алгоритм, основанный на нейронных сетях, разработанный компанией Google DeepMind. С помощью машинного обучения, которое было применено к созданию программы, 5 декабря 2017 года AlphaZero за 4 часа достигла сверхчеловеческого уровня игры в шахматы и разгромила один из сильнейших шахматных движков Stockfish. Матч состоял из 100 партий, в которых детище DeepMind одержало 28 побед при 72 ничьих, не проиграв ни разу.
Особенности Alpha Zero
Alpha Zero – это не традиционный шахматный движок. Это программа, которой не нужны ни дебютные, ни эндшпильные базы данных. Ей не были прописаны сложные алгоритмы вычисления оценки, как это было сделано для Komodo, для того же Stockfish и других движков. За считанные часы AlphaZero сыграла сама с собой многое множество партий и уяснила для себя, что и как.
История применения нейронных сетей и машинного обучения для шахматных движков на самом деле не нова. В 2015 году с помощью подхода, называемого «обучение с подкреплением» Мэтью Лай разработал Giraffe, шахматную программу уровня международного мастера. Оценочная функция Giraffe была полностью основана на нейронной сети, в отличие от классических шахматных программ, в которых функция оценки представляет собой набор критериев из фиксированных правил, хорошо известных шахматистам.
Позднее Мэтью Лай был приглашен в DeepMind. Он прекратил работу над Giraffe, но применил свои наработки для AlphaZero, которая тоже использует нейронные сети для оценочной функции. Но не только для этого. Переборный механизм в Giraffe был основан на классическом «поиске с основным вариантом», наследнике «alpha-beta-отсечения», разработанного еще в 1962 году. Однако AlphaZero для перебора применяет «метод Монте-Карло поиска по дереву», который тоже управляется нейронной сетью. Это принципиальное отличие AlphaZero от Giraffe и конечно от шахматных движков старой школы.
AlphaZero против Stockfish
К новости о разгромной победе никому неизвестной Альфа Зеро над великим и ужасным Стокфиш в шахматном мире отнеслись, как к революции. Но есть несколько следующих «но».
Из представленного DeepMind доклада «Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm» того же 5 декабря 2017 года и графика обучения в нем, видно, что разница в силе АльфаЗеро и Стокфиш совсем не велика, как могло показаться по итогу матча.
Программы играли на совершенно разном оборудовании. Стокфиш получил обычный CPU, пусть и 64-ядерный, а АльфаЗеро – 4 TPU (Tensor Processing Unit, тензорный процессор). А для обучения АльфаЗеро вообще было применено 5000 TPU первого поколения и 64 TPU второго поколения. Процессоры имеют разную архитектуру и сравнить их напрямую тяжело. Если оценить производительность по количеству операций с плавающей запятой в секунду, то система из 4-х TPU окажется на 2 порядка более мощной чем 64 ядра CPU. Задействовать Стокфиш на сравнимой мощности невозможно, таких CPU процессоров нет, а для архитектуры TPU Стокфиш не предназначен. Таким образом, сравнить программы на равных мощностях не получится.
Помимо этого, Стокфиш был лишен дебютной библиотеки, на которую ориентирован, а также играл с нетипичным контролем времени – 1 минута на ход. В довесок, противником АльфаЗеро был Стокфиш прошлогодней 8-й версии.
О превосходстве Alpha Zero
Говоря о скорости перебора, которую использовали программы, то данные конечно впечатляют: Альфа Зеро с помощью дерева поиска Монте-Карло просматривал 80 тысяч позиций в секунду, тогда как Стокфиш – 70 миллионов. Опять же здесь есть свои нюансы, если приводить скорость перебора в качестве аргумента силы. Однако нельзя не сказать о том, что Alpha Zero гораздо избирательнее и применяемый ею подход в какой-то степени ее «очеловечивает».
Кроме того, переход от перебора, управляемого множеством правил, которые могут содержать в себе изъяны, связанные с предубеждениями или субъективностью шахматных экспертов, к переходу, управляемому нейронной сетью, это бесспорно благо, которое быть может в будущем расскажет много нового о шахматах.
Подводя итог, учитывая, что разница в силе игры не такая большая и зная, что Alpha Zero имела оборудование значительно более мощное, нежели Стокфиш, однозначно сказать о превосходстве, не оставляющем сомнений, сложно. Но это на самом деле маловажно, потому что Альфа Зеро это не еще один шахматный движок. Это прикладной пример использования искусственного интеллекта против традиционного программного алгоритма и определенно большой и качественный шаг в области изучения и совершенствования интеллектуальных машин.
Скачать Alpha Zero
Скачать движок Alpha Zero, как многие пытаются, у вас разумеется не получится. Это объясняется причинами, которые были объяснены выше. Однако разработчики из DeepMind представили общественности 10 партий из 100, сыгранных их детищем против Stockfish. Скачать их можно прямо с официального сайта компании.
В заключении, экспертное мнение международного гроссмейстера и комментатора Сергея Шипова о явлении AlphaZero шахматному миру с обзором партий против Stockfish: