Шахматные кентавры
11 мая 1997 года на Гарри Каспарове, одном из сильнейших игроков в истории шахмат, был синий костюм в мелкую белую клеточку, кремовая рубашка и темный широкий галстук с полосками в цвет сорочки. Напротив него сидел один из программистов команды IBM и переставлял шахматные фигуры по указаниям суперкомпьютера Deep Blue, занимавшего два больших шкафа. Это была битва машины и человека. У Каспарова — блокнот, ручка и взволнованный взгляд, у компьютера — 480 процессоров. Впервые в истории компьютер одолел действующего чемпиона мира по классическим шахматам: это была последняя, шестая партия матча в котором Deep Blue победил с суммарным счетом 3 ½ — 2 ½ . После той игры Каспаров был в гневе. Еще в 1988 году он заявлял, что как минимум до 2000 года компьютеры не смогут конкурировать с шахматными гроссмейстерами. Позже, когда в 1994 году немецкая программа Fritz 3 выиграла партии у Владимира Крамника, Вишванатана Ананда и других гроссмейстеров, это лишь скорректировало его мнение: Каспаров был уверен, что перед его творческой игрой бездушная машина не устоит. В 1996 году, сразу после первого матча с Deep Blue (его Каспаров выиграл со счетом 4−2) он снисходительно писал в журнале Time: «Хотя я и заметил признаки интеллекта, у компьютера все-таки была неэффективная и негибкая манера игры». Но в мае 1997 года все пошло не так. Первую партию против компьютера Каспаров уверенно выиграл, но уже во второй он по ошибке сдался в стопроцентно ничейной позиции. В трех следующих партиях гроссмейстер выходил из дебюта с явным перевесом над Deep Blue, но потом машина идеально защищалась от всех атак и игры сводились к ничье. В шестой, решающей партии, Каспаров пошел на риск: он подставлял компьютер под позиционную жертву ферзя, но был уверен, что машина не будет отдавать фигуру только ради неочевидного стратегического перевеса. Авантюра не сработала — на восьмом ходу Deep Blue отдал ферзя и уже на девятнадцатом Каспаров сдался. Это было самое быстрое поражение в его карьере. После игры шахматные эксперты спорили, какой именно ход стал решающей ошибкой гроссмейстера, а Каспаров требовал распечаток с ходами и обвинял IBM в обмане — по его мнению важнейшие ходы компьютеру подсказывал человек. Но все это уже не могло поменять главного: 11 мая 1997 года компьютер обыграл действующего чемпиона мира по шахматам. Как работал Deep Blue Deep Blue родился из другого шахматного компьютера — Deep Thought, который с середины 80-х годов практически без официального финансирования разрабатывали аспиранты университета Карнеги-Меллон. К началу 90-х их проект сильно продвинулся. В 1989 Deep Thought выиграл чемпионат мира по шахматам среди компьютеров, а к лету 1990 года он побеждал уже примерно в половине игр с гроссмейстерами и в 90% игр с мастерами международного класса. После этих успехов программистов переманил к себе IBM — так начался проект Deep Blue. В основе обоих компьютеров лежат примерно одни и те же подходы. Главный из них — минимаксный алгоритм. Каждый ход компьютер строит дерево следующих ходов: он перебирает все свои возможные действия и после каждого из них оценивает положение на доске, потом перебирает все ответные ходы соперника и оценивает уже их перспективы. После этого компьютер продолжает анализ: он смотрит, как можно ответить на ходы противника, и так повторяется до тех пор, пока не закончится время, отведенное на принятие решения. В конце компьютер выбирает тот ход, который в конечном счете приведет к наилучшему положению (отсюда слово «макси» в названии алгоритма) при оптимальной игре соперника (отсюда слово «мини» - компьютер всегда идет по ветви дерева, где соперник делает худший для компьютера ход). Каждый ход в шахматах у игрока есть примерно 30 вариантов действий. За один ход черными и белыми набегает около 900 вариантов развития событий (30*30), за два — примерно 810 000, а за восемь число вариантов уже превышает количество атомов во Вселенной. Конечно, перебрать все эти ходы абсолютно невозможно. Поэтому создатели Deep Blue оптимизировали алгоритм, чтобы он отсекал лишние варианты: во время перебора программа запоминает лучший ход, а те ветви, которые заведомо не могут привести к более выгодной позиции — игнорирует. Но даже такие уловки не помогают ни Deep Blue, ни другим компьютерам просчитать всю партию до конца. Поэтому в компьютерных шахматах многое завязано на вычислительной мощности: чем больше операций в секунду совершает компьютер, тем дальше в партию он может заглянуть. В максимальной конфигурации Deep thought работал на 6 процессорах и просчитывал не более двух миллионов позиций за секунду, у Deep Blue в матче с Каспаровым было 480 процессоров и он управлялся с 330 миллионами позиций. Каждый ход он заглядывал вперед в среднем на три своих шага и три шага противника. Этого оказалось вполне достаточно для победы. Впрочем, без людей тоже не обошлось. Кроме программистов, в команде IBM был гроссмейстер Джоэл Бенжамин. Он играл пробные партии с Deep Blue, отлавливал ошибки алгоритма, оптимизировал его оценку позиции (в конечной версии для этого использовалось более 8000 разных характеристик вроде количества фигур на доске) и составлял дебютную книгу компьютера (первые ходы алгоритм не просчитывал возможности на доске, а разыгрывал одну из наиболее подходящих случаю комбинаций, записанных в его архив). Так что в каком-то смысле Каспаров был прав — машине подсказывал человек, но не во время партии. Deep Blue и современные компьютерные шахматы После своей победы полная версия Deep Blue больше не сыграла ни одного официального матча и со временем была сдана в музей IBM, но другие шахматные компьютеры становились все совершеннее. Программисты использовали возможности своего железа все лучше и лучше, и в результате машины стали заметно сильней даже самых лучших гроссмейстеров. В ноябре-декабре 2006 года Deep Fitz разгромила другого действующего чемпиона, Владимира Крамника, со счетом 4−2, и этот матч стал последним громким шахматным соревнованием между человеком и машиной. У шахматистов есть рейтинг Эло, основанный на статистике личных встреч. Согласно нему, сила Каспарова на пике его формы оценивалась в 2851 балл и это почти самый высокий рейтинг в истории шахмат. Больше было только у нынешнего чемпиона, норвежца Магнуса Карлссена — 2882 балла, но эти цифры не идут ни в какое сравнение с 3341 баллами у Stockfish — самой сильной шахматной программы современности, которая даже на мощностях смартфона может обыграть гроссмейстера. Сейчас профессиональные шахматисты очень много используют компьютеры в своей работе. С помощью них они разбирают сыгранные партии, ищут ошибки и анализируют игру будущих соперников. Былое пренебрежение к компьютерным шахматам давно забыто. Цифровые кентавры Шахматы традиционно считаются атрибутом ума и поэтому поражение Каспарова выглядело грандиозным событием в истории компьютеров: никто четко не понимал, что такое искусственный интеллект, но было очевидно, что машины обошли людей в одном из аспектов интеллектуального поведения. Уже в июне 1998 года он сыграл первый в истории матч в «продвинутые» (advanced) шахматы, где друг против друга выступают не просто живые люди, а пары человек-компьютер: соперником Каспарова и его искусственного помощника стал болгарский гроссмейстер Веселин Топалов, тоже «усиленный» компьютером. Матч закончился со счетом 3−3: немного разочаровывающий результат для Каспарова, который тогда в классических шахматах был сильнее болгарина, но зато в этот раз Каспаров остался доволен взаимодействием с компьютером. Он назвал матч весьма впечатляющим опытом и даже сравнил адванс (сокращенное название продвинутых шахмат) с Формулой-1, где гонщикам нужно не только филигранно пилотировать, но и в совершенстве знать свой болид. С годами адванс становился все популярнее — собирались команды, проводились чемпионаты. И формула успеха, выдвинутая Каспаровым, становилась все очевиднее: на соревнованиях раз за разом побеждали не маститые шахматисты с высокими рейтингами Эло, а скромные любители, отлично ладящие с компьютерными помощниками. Так шахматисты стали одними из первых «цифровых кентавров». Им пришлось учиться не просто работать на компьютерах, чтобы лучше играть с живыми соперниками, но и работать вместе с компьютерами, чтобы играть партии в адванс. Пожалуй, свободней в таком сотрудничестве должны себя чувствовать только авиапилоты, которые берут на себя управление самолетом только при взлете, посадке и в экстренных ситуациях. В прошлом году компьютерам сдался еще один интеллектуальный бастион. Программа AplhaGo, разработанная одной из дочерних компаний Google, победила человека в го — древнюю китайскую игру, где количество вариантов ходов множится еще быстрей, чем в шахматах. Машина обыграла одного из лучших игроков, южнокорейца Ли Седоля. У программы были принципиально другие алгоритмы, чем у Deep Blue. АlphaGo работает на самообучающихся нейронных сетях, которые способны, к примеру, сами — без ручных установок тренеров — на основе огромной статистики партий постепенно понимать, какие позиции на доске выгодны, а какие нет. Кроме победы в го нейронные сети за последние два года научились неплохо справляться со многим другими интеллектуальными и творческими задачами, которые традиционно считались под силу только человеку. Теперь они сочиняют стихи и рассказы, пишут музыку и рисуют картины в стилях известных художников, а на очереди стоит медицинская диагностика. Это немного пугает. Одни боятся за свою работу, другие предчувствует неминуемую машинную деградацию искусства, третьи вообще предрекают победу искусственного интеллекта над человеческим уже в планетарных масштабах, но пример с Deep Blue может немного остудить этот футурологический пыл. Шахматы (и шахматисты) еще живы — они только немного перестроились. Научились жить и работать бок о бок с машинами.