Компьютер впервые обыграл чемпиона мира по шахматам в матче в мае 1997 года: суперкомпьютер IBM Deep Blue победил Гарри Каспарова со счетом 3,5:2,5. С тех пор разрыв только вырос: современные программы вроде Stockfish и AlphaZero играют так, что лучший гроссмейстер мира не имеет против них шансов. В го, где вариантов несравнимо больше, машина победила сильнейшего игрока лишь в 2016 году, когда AlphaGo обыграла Ли Седоля.

Компьютер обыграл человека в шахматы: от Deep Blue до AlphaZero и AlphaGo
Фото: Wilfredor, Wikimedia Commons, CC0.

Как шахматные программы шли к победе

Идею шахматной программы описали еще Клод Шеннон и Алан Тьюринг на рубеже 1940-х и 1950-х. Тьюринг даже разыграл партию по своему алгоритму на бумаге, сам выполняя вычисления за машину. Первые настоящие программы 1950–1960-х играли на уровне новичка.

В 1974 году на первом чемпионате мира среди шахматных программ в Стокгольме победила советская «Каисса», разработанная в Институте проблем управления. К 1980-м специализированные машины вроде Belle и Hitech уже обыгрывали мастеров, а программа Deep Thought, предшественница Deep Blue, в 1988 году впервые победила гроссмейстера в турнирной партии.

Главный принцип тех лет — перебор с оценкой. Программа строит дерево возможных ходов на несколько полуходов вперед, оценивает каждую конечную позицию по формуле (материал, активность фигур, безопасность короля, структура пешек) и выбирает ход, ведущий к лучшему результату при лучшей игре соперника. Метод альфа-бета-отсечения позволяет не рассматривать заведомо плохие ветки.

Deep Blue против Каспарова: два матча

Филадельфия, 1996 год

В феврале 1996 года Каспаров сыграл с Deep Blue матч из шести партий. Первую партию машина выиграла — это была первая победа компьютера над действующим чемпионом мира в партии с классическим контролем времени. Но затем Каспаров приспособился к стилю программы и выиграл матч 4:2.

Нью-Йорк, 1997 год

За год IBM серьезно усилила машину. Обновленный Deep Blue состоял из 30 процессоров и сотен специализированных шахматных чипов и оценивал около 200 миллионов позиций в секунду. Гроссмейстеры помогали настраивать оценочную функцию и дебютную книгу.

Каспаров выиграл первую партию, но во второй Deep Blue сыграл позиционно тонко, отказавшись от выгодного на вид взятия, и чемпион сдался. Ход машины показался ему настолько «человеческим», что он заподозрил вмешательство людей. Партии с третьей по пятую закончились вничью, а в шестой Каспаров допустил ошибку в дебюте и проиграл быстро. Итог — 3,5:2,5 в пользу машины.

Каспаров требовал реванша и распечаток расчетов, но IBM отказалась от продолжения и разобрала Deep Blue. Позже компания опубликовала журналы работы системы, а сам Каспаров в своей книге смягчил обвинения.

Stockfish и программы, которые сильнее любого человека

После 1997 года противостояние продолжалось недолго. В 2006 году чемпион мира Владимир Крамник проиграл программе Deep Fritz 2:4, причем она работала на обычном компьютере, а не на суперкомпьютере. К концу 2000-х матчи людей против сильнейших программ перестали проводить: исход был предсказуем.

Stockfish — бесплатная программа с открытым исходным кодом, которую с 2008 года развивают добровольцы по всему миру. Новые версии проходят миллионы тестовых партий на компьютерах участников. В 2020 году в Stockfish добавили небольшую нейросеть NNUE для оценки позиций, сохранив классический быстрый перебор. Рейтинг сильнейших программ по оценкам компьютерных рейтинг-листов превышает 3500 пунктов, тогда как рекорд человека, установленный Магнусом Карлсеном, составляет 2882.

AlphaZero: программа, которая научилась сама

В декабре 2017 года DeepMind представила AlphaZero. Ей не давали партий гроссмейстеров, дебютных книг и человеческих правил оценки, только правила игры. Программа играла сама с собой миллионы партий, а нейросеть училась предсказывать хорошие ходы и вероятность победы в позиции. В шахматах на это ушло около девяти часов обучения на специализированных чипах.

Затем AlphaZero сыграла матч из 100 партий против Stockfish того времени и выиграла 28 партий при 72 ничьих без единого поражения. Условия матча критиковали: Stockfish работал без дебютной книги и с ограничениями по времени. Но стиль AlphaZero поразил шахматистов сам по себе:

  • она охотно жертвовала пешки и фигуры ради долгосрочной инициативы;
  • активно продвигала крайние пешки, которые раньше считались второстепенными;
  • ставила соперника в позиции, где у него почти не было полезных ходов;
  • просматривала примерно в тысячу раз меньше позиций в секунду, чем Stockfish, зато оценивала их гораздо точнее.

Вслед за ней появилась открытая программа Leela Chess Zero, построенная по тем же принципам добровольцами.

Почему го сложнее шахмат

Го — древняя восточноазиатская игра на доске 19 на 19 линий, где игроки по очереди ставят черные и белые камни и стремятся окружить больше территории. Правила проще шахматных, но игра намного сложнее для компьютера.

ПараметрШахматыГо
Поле8 на 819 на 19
Ходов в позицииОколо 35Около 250
Длина партииОколо 80 полуходовОколо 150 ходов
Возможных позицийПорядка 10 в степени 44Около 10 в степени 170

Перебор вариантов, который сработал в шахматах, в го захлебывается. К тому же в го трудно написать формулу оценки позиции: сильные игроки опираются на интуицию о «форме» и влиянии камней, которую сложно выразить правилами. До середины 2010-х лучшие программы играли на уровне сильного любителя.

AlphaGo и Ли Седоль, Сеул, 2016 год

AlphaGo сочетала две нейросети — одна предлагала перспективные ходы, другая оценивала позицию — с поиском по дереву методом Монте-Карло. Сначала она училась на партиях сильных игроков, потом играла сама с собой. В 2015 году программа обыграла чемпиона Европы Фань Хуэя 5:0, а в марте 2016 года встретилась в Сеуле с Ли Седолем, одним из сильнейших игроков десятилетия.

AlphaGo выиграла матч 4:1. Во второй партии ее 37-й ход в непривычное место комментаторы сначала приняли за ошибку, а потом признали блестящим. Свою единственную победу Ли Седоль одержал в четвертой партии благодаря неожиданному 78-му ходу, после которого программа запуталась. Матч смотрели десятки миллионов зрителей, особенно в Китае, Корее и Японии.

В 2017 году новая версия победила лучшего игрока рейтинга Кэ Цзе 3:0, а AlphaGo Zero научилась играть с нуля, без человеческих партий, и превзошла все прежние версии. В 2019 году Ли Седоль завершил профессиональную карьеру, объяснив, что ИИ невозможно победить.

Как машины изменили игру людей

Проигрыш машинам не убил шахматы и го, а изменил их.

  1. Подготовка. Профессионалы готовят дебюты с программами на много ходов вперед, и теория популярных вариантов выросла в разы.
  2. Стиль. Игроки переняли идеи нейросетей: ранние продвижения крайних пешек в шахматах, новые варианты начала партии в го.
  3. Обучение. Любой любитель может разобрать свою партию с программой сильнее чемпиона мира и увидеть ошибки.
  4. Трансляции. Шкала оценки позиции на экране помогает зрителям понять, кто выигрывает.
  5. Честная игра. Появилась проблема подсказок от программ, поэтому турниры используют проверку металлоискателями и задержку трансляций, а онлайн-площадки анализируют ходы на совпадение с движком.

Исследования партий профессионалов го после 2016 года показали, что качество их ходов в среднем выросло, а количество новых, непривычных решений увеличилось.

Что еще спрашивают о компьютерах и шахматах

Может ли человек сейчас обыграть шахматную программу

Сильнейшую программу на мощном компьютере — практически нет. Против ослабленных версий или в специальных форматах с форой люди иногда побеждают.

Как назывался компьютер, который обыграл Каспарова

Deep Blue, суперкомпьютер компании IBM. Он выиграл у Каспарова матч в 1997 году, а годом раньше проиграл ему.

Решены ли шахматы полностью

Нет. Полностью просчитаны только позиции с небольшим числом фигур, до семи на доске. Для начальной позиции правильный исход неизвестен, хотя многие считают, что это ничья.

Обыгрывали ли люди AlphaGo-подобные программы позже

В 2023 году любитель го, использовав найденную другой программой слабость, выиграл много партий у сильного бота KataGo. Это показало, что даже сверхсильные системы могут иметь неожиданные слепые зоны.