Чинук-программа побеждает человека в шашках

Учёных из Альберты, наверное, теперь тоже нельзя обыграть в шашки: уж они-то знают, что к чему! (фото с сайта halfords.com).

Шашки хакнули. Или, как ещё говорят, крякнули. Словом, «код шашек» взломан и ничего загадочного в этой игре не осталось. Все ходы не только записаны, но и заранее просчитаны. Поэтому сражения с компьютером больше не интересны: «железка» теперь знает, как действовать без проигрыша. Поэтому с ней сыграть можно только вничью (если очень постараться), либо проиграть ей. А третьего не дано.

Джонатан Шеффер (Jonathan Schaeffer), профессор университета Альберты (University of Alberta), заведующий тамошней кафедрой вычислительной техники объявил, что шашки больше не представляют для человечества никакой загадки.

Нельзя сказать, что и до этого-то шашки были для людей средоточием чего-то мистического. Но всё же, итог игры никогда не был полностью предсказуемым. Именно поэтому, между прочим, одни люди по сей день садятся играть в шашки друг с другом, а другие пишут «компьютерные шашки» — потому что интересно.

Доктор Джонатан Шеффер. Если посмотреть на картинки на его мониторе, можно подумать, что у него горит зуб на шахматы. Впрочем, это не так — учёного нынче заботит не эта игра, а покер (фото с сайта expressnews.ualberta.ca).

Раньше окончание и «живой», и «программной» шашечной партии можно было спрогнозировать лишь с определённой степенью вероятности. Приятным исключением на протяжении многих лет считался американский чемпион мира по шашкам Мэрион Тинсли (Marion Tinsley). С тех пор как он получил статус чемпиона мира в этой игре в 1954 году, Тинсли на официальных соревнованиях проиграл всего девять раз.

В конце 1980-х Шеффер начал работу над программой, которая позволяла бы найти оптимальную (то есть безошибочную) стратегию игры в шашки. Стратегия заключается в том, что если оба игрока будут её придерживаться, то рано или поздно придут к ничейному результату.

Чтобы смоделировать усилия такой настойчивой пары, потребовалось бы проанализировать 5×1020 (это число можно записать и просто как пятёрку с двадцатью нулями) позиций шашек на поле. Было бы занятно прикинуть, сколько миллиардов лет решал бы эту задачу самый опытный гроссмейстер, но Шеффер не стал этим забивать свою голову. Он просто решил просчитать все эти ситуации с помощью нескольких десятков компьютеров.

Учёные университета Альберты начали работу над «взломом» шашек ещё в 1989 году (фото Mitch Diamond).

Окончательной целью проекта было, естественно, создание программы, которая могла бы отвечать на ход соперника только оптимальными действиями, которые могут приводить только к выигрышу. Эту программу под названием Chinook сделали довольно скоро и постоянно её совершенствовали.

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

Компьютеры, а также программисты и математики из команды Шеффера старались изо всех сил, наращивая мощь «Чинука». Однако битва «Chinook против Тинсли», как правило, заканчивалась ничейным результатом. Победы бывали крайне редко — да и то в осоновном со стороны Тинсли.

Картина маслом. «Игра в шашки» (Game of Draughts), написана художником Алоизусом О'Келли (Aloysius O'Kelly) в 1889 году. Тогда вычислительной техникой для шашек особенно не пользовались. Однако компьютеры, которые использовала GAMES — исследовательская группа Шеффера — работали с 1989-го почти непрерывно. Как сообщается, максимальное количество рабочих станций, которое применялось для «взлома» шашек достигло двухсот (иллюстрация с сайта fortunecity.com).

Возможно, великий шашист одолел бы компьютер, но проблемы со здоровьем не дали ему возможности продолжить соревнования. В результате в 1994 году Chinook получил «звание» чемпиона мира по шашкам.

Герой, который сломил бы (в переносном, конечно, смысле) компьютер, наверняка тогда нашёлся бы, но Шеффер решил больше не заниматься такими соревнованиями. Вместо этого он направил ещё больше сил на окончательное доказательство «теоремы» о ничейном исходе оптимальной шашечной игры.

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

Окно компьютерной программы, показывающей возможные варианты ходов. Все эти версии компьютеры просчитывали на протяжении 18 лет. Кстати, чинук — это название племени индейцев. Также чинук — это тёплый зимний ветер на побережье Канады. Чинук — это ещё много чего, но всё это к шашкам раньше не имело отношения. А теперь чинук — это ещё и программа. Ну и дела! (иллюстрация University of Alberta)

И вот недавно Шеффер в статье в журнале Science заявил, что проблемы шашек больше не существует. Это значит, что его «Чинук» теперь стал беспроигрышной программой, и теперь она знает все правильные ходы для любой ситуации.

Главный редактор «Журнала Международной ассоциации компьютерных игр» (International Computer Games Association Journal), профессор математики, Яап ван ден Херик (H. Jaap van den Herik), взявшийся прокомментировать работу Шеффера (непосредственного участия в ней он не принимал), признал её «воистину знаменательным успехом в области искусственного интеллекта».

Сделаем небольшое уточнение. Создание Chinook — это действительно прорыв в области искусственного интеллекта. Однако сама программа как окончательный продукт к какому-либо интеллекту, пожалуй, имеет мало отношения. Chinook не «думает» — вместо этого он выбирает из базы данных оптимальный ход, который соответствует данному расположению шашек на доске.

Мэрион Тинсли на турнире 1992 года, во время которого он сражался с «Чинуком». «Chinook запрограммирован Джонатаном, а я запрограммирован Богом», — говаривал Тинсли, который, кстати, был не только выдающимся шашистом, но и доктором математики, а также служил пресвитером в баптистской церкви (фото с сайта cs.ualberta.ca).

Ван ден Херик поделился заодно своими размышлениями по поводу судьбы прочих игр.

Что касается, например, крестиков-ноликов, то их «проблема», как известно, решается тривиально. Уровень сложности этой игры минимален и написать «софтину», которая будет всегда либо выигрывать, либо сводить партию к ничьей, может практически любой программист.

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

Решая проблему беспроигрышных шашек, американские военные предложили понимать слово «ходить» в буквальном смысле. Не помогло (фото с сайта diggerhistory3.info).

И если то, что он выложил — действительно «Чинук», то обыграть его у вас не получится — максимум удастся довести партию до ничьей. Так что тема шашек закрыта. «Увы» или «к счастью»? Кому как…

Пока что так и не удалось «раскусить» шахматы, но, если верить ван ден Херику, то это только вопрос времени. По его оценкам, сделать это получится «если не во время нашей жизни, то при наших детях — где-то между 2060 и 2070 годами». Напомним, что некогда это пытались сделать усилиями собственного мышления Крамник и Каспаров. Частенько это удавалось, но секрет всего лишь в слабости техники.

Для игры го перспективы более далёкие, хотя и светлые. Если общее количество расстановок фигур в шахматах составляет порядка 1046, то для го это число примерно равно 10100, и чтобы сделать новую беспроигрышную «го-программу», потребуется ещё лет сто.

Бывают, кстати, ещё и стоклеточные шашки, но математики одолели пока только те, которыми играют на поле из 64 клеток (фото с сайта damz.nl).

Впрочем, Шеффер сомневается, что это возможно сделать с теми средствами, которые есть у нас сейчас. «Такие игры, как шахматы и го, невозможно разгадать с теми технологиями, которыми мы располагаем в наше время», — сетует математик. Не исключено, впрочем, что это произойдёт вскоре после того, как закон Мура окончательно выйдет в третье измерение.

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

Стоп, погодите… «Рыба»!



Мексиканская программа научилась сама сочинять сказки

7 февраля 2007

Компьютер обыграл человечество в шахматы

6 декабря 2006

Новая техника вычислит необычное поведение в общественных местах

5 сентября 2006

Робот-режиссёр показывает дорогу в 20-мерном пространстве

3 апреля 2006

В ЮАР создают роботов-юристов

11 ноября 2005