11 мая 1997 компьютер Deep Blue победил чемпиона мира по шахматам Гарри Каспарова с общим счетом 3,5 на 2,5 очка. Две партии выиграл компьютер, один раз человек, а три партии было сыграно вничью. Это событие вызвало настоящий фурор. Сегодня специализированные компьютеры и программы тоже соревнуются с людьми в различных играх. И обычно побеждают. Мы расскажем, почему так происходит, а также расскажем о самых известных противостояниях человека и искусственного интеллекта.
От шахмат до киберспорта
Компьютер Deep Blue компании IBM, обыгравший Каспарова, не был обычным суперкомпьютером. Его проектировали специально для решения шахматных задач. Он имел 480 специализированных шахматных процессоров и 30 многозадачных.
Каждый шахматный процессор работал на мизерной по современным меркам частоте – 24 МГц. Но при этом обрабатывал в секунду от 2 до 2,5 млн шахматных позиций, а в целом компьютер мог просчитывать до 200 млн позиций в секунду.
Однако даже такая мощность не позволила машине выиграть все партии, из которых складывался поединок. К тому же первый поединок с Deep Blue выиграл именно Каспаров, а от третьего отказалась IBM. Это позволило гроссмейстеру и журналистам обвинить компьютерщиков в не совсем честной игре. Мол, между партиями второго матча они внесли коррективы в шахматную программу, которая позволила Deep Blue подстроиться под стиль Каспарова и избежать его ловушек.
В 2007 году специализированная программа Chinook обсчитала все возможные комбинации шашек – это, на минуточку, 5 миллиардов миллиардов (именно так, «миллиардов миллиардов») позиций. То есть лучший игрок мира мог максимум свести игру вничью.
В мае 2017 года произошло еще одно знаменательное событие – искусственный интеллект победил Ке Дзе, чемпиона мира по стратегической игре го. Участники этой игры кладут на игровое поле черные и белые «камни», чтобы оградить своим цветом большую территорию, чем соперник.
Го гораздо более вариативная, чем шахматы. В ней значительно большее количество возможных ходов, а игровое поле может иметь различные размеры (по договоренности игроков). Новички, например, могут играть на поле 7 на 7, а профи – 19 на 19.
Победила чемпиона мира программа AlphaGo, которую разработали в компании DeepMind. Она базировалась на искусственной нейронной сети и использовала два учебных алгоритма. Сначала AlphaGo изучала игру, анализируя сыгранные людьми партии. Когда основы го стали понятны программе, она начала играть сама с собой. Такое обучение продолжалось три года, что в итоге позволило программе стать лучшим игроком в мире.
Есть много других примеров. В 2008 году покерный бот Polaris, разработанный командой из Университета Альберты, победил чемпиона мира по техасскому холдему (самая популярная разновидность покера) и еще одного профессионального игрока в игре один на один.
А специалисты из Университета Карнеги-Меллон разработали программу Libratus, которая в начале 2017 победила в игре один на один четырех профессионалов. Бот Libratus тоже использует в работе нейронные сети и учился покеру, играя сам с собой, и в конце концов научился даже блефовать так, что профессионалы обычно не разгадывали его намерений.
В начале августа 2017 бот OpenAI победил лучших киберспортсменов по дисциплине Dota 2. Этот случай стал первым, когда искусственный интеллект победил профессиональных киберспортсменов в их дисциплинах вообще.
Кто сильнее – человек или компьютер?
Можно ли сказать, что искусственный интеллект превзошел человека в большинстве популярных игр? Вероятно, нет. В каждом из описанных случаев с человеком играл специально разработанный для этого инструмент и, как правило, были особые условия. Так, разработчики AlphaGo говорят, что при изменении размеров поля программа сразу пасует, потому что училась играть только на размере 19 на 19, тогда как человек будет спокойно играть на любом поле, хоть 40 на 40.
Покерные боты, которые выносят чемпионов в игре один на один, провалятся в игре с девятью пьяными любителями в пиццерии. А бот, победивший в Dota 2, играл один на один (обычно играют пять на пять) и, скорее всего, имел доступ к информации, которой не было у человека (то есть, просто читерил). В то же время любой серьезный игрок в, например, StarCraft 2 без проблем побеждает лучших ботов для этой игры.
То есть искусственный интеллект, использующий технологии машинного обучения и нейронные сети, действительно может победить человека, но при соблюдении четких правил и условий и после долгой подготовки. Что же касается обычных программ на гаджетах или в интернете, ни одна из них не способна победить профессионального игрока в те же шахматы или го.
Также есть много областей, где искусственный интеллект пока совсем пасует, – это задачи без фиксированных правил или с контекстной зависимостью. Это, например, разгадывание ребусов и других головоломок. Хотя, например, в области кроссвордов прогресс – программа Dr.Fill, участвующая в американском чемпионате по кроссвордам, заняла в 2017 году 11 место, тогда как в 2013 было 92 место, а в 2015 – 55-е.
Конечно, если крупные IT-компании захотят создать искусственный интеллект, который победит человека в той или иной игре, они его создадут. Вопрос лишь в том, сколько ресурсов на это нужно. Вряд ли тот же Google захочет потратить $ 10 млрд на создание бота, который победит чемпиона по StarCraft 2 или займет первое место в решении кроссвордов.
Команды, которые создают искусственный интеллект для игр, обычно тестируют на них алгоритмы. Эти алгоритмы понадобятся для решения более серьезных задач. Например, покерный бот играет в игру с ограниченной информацией. Такие навыки могут в конечном итоге помочь торговать на бирже. А команда DeepMind, которая создала AlphaGo, отправила программу на покой, а сама занимается разработкой алгоритмов для поиска новых материалов и разработки лекарств. И опыт по AlphaGo помогает им в работе.
Поэтому можно спать спокойно – если вы действительно во что-то хорошо играете, смартфон вас не обыграет. Пока что.