Шахматы
Русский

Шахматы › О шахматах ›

Компьютерные шахматы: от Deep Blue до Stockfish и ИИ

Как играет компьютер, как Deep Blue победил Каспарова и почему современные движки так сильны, что человек их уже не обыгрывает.

Другие названия:Computer chess、Chess engine、Шахматный движок、Шахматная программа、Deep Blue、Stockfish、AlphaZero

Сегодня на телефоне можно сыграть с компьютером сильнее чемпиона мира, а несколько десятилетий назад это было мечтой учёных. В этой статье — путь от первых программ на бумаге до Deep Blue, Stockfish и ИИ, а заодно рассказ о том, откуда взялись соперники на этом сайте. Хотите сначала помериться силами с компьютером — можно сразу играть в шахматы онлайн бесплатно.

Всё началось с программы на бумаге

В 1950 году американский математик Клод Шеннон опубликовал статью, в которой впервые всерьёз разбирался вопрос «как научить компьютер играть в шахматы». Его идея: просмотреть каждый возможный ход на несколько ходов вперёд, оценить каждую позицию и выбрать ход с лучшей оценкой. На этой идее компьютерные шахматы держатся до сих пор.

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

Deep Blue побеждает чемпиона мира

Deep Blue от IBM — компьютер, построенный специально для шахмат. В 1996 году он впервые сыграл с чемпионом мира Гарри Каспаровым: одну партию выиграл, но матч проиграл со счётом 2:4. В 1997 году после доработки состоялся реванш, и Deep Blue победил 3,5:2,5. Впервые компьютер обыграл действующего чемпиона мира в официальном матче.

В решающей шестой партии Каспаров играл чёрными Защиту Каро-Канн и на седьмом ходу перепутал порядок ходов:

Чёрные играют h6, чтобы прогнать коня, а Deep Blue сразу жертвует его на e6. Чёрный король застрял в центре и рокироваться уже не сможет.

Эта жертва давно была известна дебютной теории: стоит чёрным ошибиться в порядке ходов, и белые отдают коня за долгую атаку. У чёрных был лишний конь, но их короля атаковали без передышки, и уже на 19-м ходу они сдались:

Здесь Каспаров сдался. Белые ферзь, ладья и слоны нацелены на чёрного короля, а чёрный конь вот-вот будет потерян.

Как играет компьютер

Счёт вперёд: перебор

Компьютер расписывает всё подряд: «я хожу так, соперник отвечает так, потом я…» — получается дерево, которое растёт и растёт. Хороший движок сразу отсекает явно плохие ветки и тратит время на перспективные ходы, поэтому за секунду успевает просмотреть десятки миллионов позиций.

Оценка позиции

На какой-то глубине надо остановиться и оценить позицию: у кого больше материала, в безопасности ли король, хороша ли пешечная структура, активны ли фигуры. Оценку обычно считают в «пешках»: +1 значит, что у белых перевес примерно в одну пешку.

Готовые ответы: таблицы эндшпиля

Когда на доске остаётся не больше семи фигур, компьютеру не нужно считать: результаты всех таких позиций уже просчитаны и сохранены в базе данных — таблицах эндшпиля. В статьях об эндшпиле на этом сайте результаты подтверждены именно ими.

AlphaZero и нейросети

В 2017 году AlphaZero от DeepMind, зная только правила, сыграл сам с собой миллионы партий и за несколько часов превзошёл сильнейший на тот момент движок. В матче из 100 партий он выиграл 28, сделал 72 ничьи и не проиграл ни одной.

AlphaZero играет очень по-человечески: охотно жертвует материал ради долгосрочных выгод и любит ставить фигуры на активные поля. Позже открытый проект Leela Chess Zero повторил тот же подход, чтобы им мог пользоваться кто угодно.

Stockfish — сильнейший движок сегодня

Stockfish — бесплатный движок с открытым исходным кодом, который улучшают добровольцы со всего мира. С 2020 года он, помимо классического перебора, оценивает позиции небольшой нейросетью и стал ещё сильнее. Сегодня он почти всегда побеждает в соревнованиях компьютеров, а его сила намного выше, чем у любого человека.

ИИ, который играет как человек: Maia

Новичку от сильнейшего движка мало толку: он слишком силён, а когда его специально ослабляют, делает странные ходы, которых человек не сделал бы. Исследователи из Университета Торонто создали Maia, обученную на огромном числе партий живых людей. Её цель — не выиграть, а угадать, «как сыграл бы здесь человек с таким рейтингом». Поэтому она ошибается так же, как люди, и играть с ней естественнее.

Соперники на этом сайте

Четыре уровня на сайте используют как раз эти два вида ИИ: за «Новичка», «Среднего» и «Сильного» играет Maia, за «Мастера» — Stockfish. Все они работают прямо в вашем браузере, без подключения к серверу. Какому рейтингу примерно соответствует каждый уровень, читайте в статье рейтинг и звания; как выбрать уровень — в статье соперники и уровни сложности.

Частые вопросы

Может ли кто-то сегодня обыграть сильнейший компьютер?

В обычной партии — практически нет. Лучшие движки намного сильнее чемпиона мира, и даже для гроссмейстера ничья с ними — уже большое достижение.

Как профессиональные шахматисты пользуются компьютером?

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

Что стало с Deep Blue?

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

Попробуйте сами

Хотите почувствовать, каково это — когда тебя давит движок? Идите играть в шахматы онлайн и выберите «Мастера». Хотите партию поспокойнее — выберите «Новичка» или «Среднего» и посмотрите, какие ошибки делает ИИ, подражающий людям.

Потренироваться в партии