Страница 17 из 68
Шахматы — особенно удачный пример. Несмотря на то что это древняя игра, шахматные программы составляют процветающую категорию компьютерных игр, основанную на десятилетиях обширных технических исследований и развития и предлагающую программы для лиц любого возраста и любого уровня мастерства (и побеждающие их всех). Подобный успех сделал компьютерные шахматы богатым источником данных о процессах принятия решений человеком.
Уже тысячи лет мы учимся на играх. Они развивают нас физически. Их используют учителя для облегчения процесса преподавания алгебры, грамматики и химии. А теперь они используются, в виде программных приложений, чтобы помогать нам избавляться от лишнего веса. Такие игры, как Twister и Olympics учили нас легче уживаться друг с другом. Теперь же мы узнаем из них нечто совершенно новое о границах наших возможностей и о нашей логике. Это радикально новый шаг в будущее нашего рынка труда и глобальной экономики. Я полагаю, что то, каким образом мы играем в шахматы с компьютером сейчас, представляет собой модель, которая будет взята на вооружение работниками верхнего сегмента зарплат в ближайшие годы и десятилетия.
Чтобы лучше разобраться в вопросе умных машин и их влияния на наше будущее, можно обратиться к определению, которое дал Александр Кронрод: «Шахматы — это дрозофила искусственного интеллекта». Другими словами, шахматы позволяют понять более широкую картину, как в свое время плодовая мушка (дрозофила) помогла нам в расшифровке человеческого генома.
Еще в период после Второй мировой войны пионеры компьютерной науки Алан Тьюринг и Клод Шеннон предвидели, что однажды компьютеры смогут играть в шахматы, и описали это в своих новаторских работах. Гений Тьюринга позволил ему предсказать, каким образом компьютеры будут играть в шахматы, еще до того, как многие ученые вообще задумались о создании компьютеров. Позднее шахматы были выбраны в качестве проверочного средства при разработке компьютерного разума и получили значительную финансовую подпитку со стороны компьютерного гиганта, корпорации IBM, преследующей собственные рекламные цели. Детищу корпорации, компьютеру Deep Blue, удалось победить Гарри Каспарова — возможно, лучшего игрока в шахматы. В то время, в 1997 г., Каспаров был, вероятно, еще более сильным игроком, чем сейчас, а проиграл он компьютеру во многом из-за того, что потерял самообладание. Однако с тех пор многое изменилось. В 2005 г.— последний раз, когда проводилось серьезное публичное состязание между машиной и человеком, компьютер Hydra разгромил Майкла Адамса со счетом 5,5 : 0,5. Полбалла указывает на то, что Адамсу удалось вырвать ничью, и здесь ему еще повезло. В других партиях он ничего не смог противопоставить компьютеру, несмотря на то что занимал в то время седьмую строчку в мировом рейтинге гроссмейстеров.
Шахматные «движки», как называют эти программы, с тех пор получили широкое распространение. Небольшие компании-разработчики этих программ предлагают свою продукцию в Интернете за сумму меньше стоимости кроссовок.
В качестве примера взаимодействия между техническим развитием и человечеством шахматы хороши тем, что мы в состоянии весьма точно измерить результаты данного взаимодействия. Нам известно, кто выиграл, а кто проиграл. Здесь нельзя срезать трассу или выиграть за счет того, что ветер дует в спину. Мы в состоянии достаточно точно определить относительную силу игроков и программ. Потратив немного времени, мы в состоянии определить, был ли тот или иной ход правильным или нет. Данные характеристики облегчают понимание того, где применение машинного разума окажется удачным, а где — нет. Шахматная игра с компьютером позволяет точно выявить пробелы в подготовке даже необычайно талантливых, хорошо подготовленных и обладающих отличным логическим мышлением гроссмейстеров. В конечном счете это — дверь в стратегии, которые работники верхнего сегмента зарплат будут использовать в своем взаимодействии с умными машинами.
Компьютерные игры
В технологическом развитии компьютерных игр произошло важное и значимое событие. Теперь мы можем наблюдать за шахматными состязаниями между компьютерами. Однако постойте! Что мы можем узнать, наблюдая за игрой двух машин? И как это вообще выглядит?
23 мая 2011 года. Программа Stockfish версии 2.11 против программы Spark версии 1.0. Эти две программы пытаются «перехитрить» одна другую — слишком трудно отказаться от определений, используемых в отношении человека. Мастерство программ превосходит мастерство любого из игроков-людей.
Моему слабому человеческому разуму казалось, что исход партии, изобилующей до невозможного сложными тактическими ходами, продуманными в ходе целых цепочек логических рассуждений, постоянно висит на волоске. К двадцать пятому ходу игра потеряла свою стройность, и с каждым новым ходом казалось, что наступил поворотный момент игры и развязка уже близка. К тридцатому ходу большая часть фигур покинули свои исходные позиции и их расстановка не напоминала игру, которую ведет опираю -щийся на логические размышления гроссмейстер.
Мне было несложно определить, кто именно выигрывает, но только благодаря тому, что другой компьютер, использующий более раннюю версию Stockfish, «наблюдал» за игрой в Интернете и подсказывал мне, что происходит, посредством цифровой оценки меняющейся расстановки фигур. Естественно, меня одолевали сомнения. Если более слабая версия Stockfish уверяет вас, что более мощная версия Stockfish выигрывает — против другой компьютерной программы, — стоит ли ей верить? Слишком уж это напоминает постоянные самозаверения человека в том, что он прав. Однако вдвоем программам Stockfish удалось убедить меня в том, что одна их них имеет значительное преимущество.
К пятидесятому ходу у Stockfish, играющей белыми, оказалось явное численное превосходство в фигурах, однако по-прежнему оставалось неясным, смогут ли белые пробиться сквозь оборонительные порядки противника и закончить игру победой. Следившие за игрой зрители стали задаваться в своих комментариях вопросом, не оказались ли черные в позиции цугцванга. Другие комментаторы начали использовать в отношении программы Stockfish местоимение «она» (в английском языке для шахматных программ обычно используется местоимение «он») и злословить на тему того, а достаточно ли Stockfish хороша для разворачивающегося финала. Сама программа хранила молчание.
Я был готов поставить хорошие деньги на победу Stockfish, однако я не был полностью в ней уверен. Обычно компьютеры не используются в тех областях, где особенности их оценочных функций делают их слабее человека. При этом оценочные функции не всегда позволяют верно судить о том, возможен ли прорыв в игре в более долгосрочной перспективе. Горизонты прогнозирования данных программ ограничены определенным количеством ходов. Иногда оценочная функция компьютера предсказывает победу, хотя нет никакой возможности избежать ничейного исхода. Это один из пока еще не исправленных недостатков шахматных «движков». Компьютер может рассмотреть множество дополнительных вариантов, но он не в состоянии понять, что некоторые построения противника просто-напросто не могут быть взломаны, независимо от числа и сочетания ходов, которые можно было бы для этого предпринять. К шестьдесят первому ходу я уже разуверился в том, что Stockfish сможет взломать оборону своего оппонента. Я был настроен весьма скептически, несмотря на заверения младшего Stockfish, наблюдавшего за игрой в Интернете, в том, что его старший брат обладает подавляющим преимуществом. У меня засосало под ложечкой — словно от страха. Две черные ладьи оппонента казались непробиваемой защитой...
Однако на шестьдесят втором ходу Spark убедился в неминуемом поражении и в соответствии со своими программными командами сдался. Но действительно ли позиция белых была выигрышной? Чтобы выяснить это, я воспроизвел сделанные в ходе игры ходы в установленной на моем ноутбуке программе Rybka и просчитал игру на несколько ходов вперед. Судя по всему, Spark оказался прав. Что означало, что Stockfish и его младший брат также были правы. И они предугадали исход игры задолго до того, как это сделал я. Тем временем на том же турнире спустя всего мгновение после поражения Spark другая программа, Junior, начала еще один развеселый матч — против программы Naum.