Видеоигры продолжают бросать вызов миллиардам игроков по всему миру. Возможно, вы еще этого не знаете, но алгоритмы машинного обучения также начали справляться с этой задачей.
В настоящее время проводится значительное количество исследований в области ИИ, чтобы выяснить, можно ли применять методы машинного обучения к видеоиграм. Существенный прогресс в этой области свидетельствует о том, что обучение с помощью машины агенты могут использоваться для имитации или даже замены игрока-человека.
Что это значит для будущего видеоигры?
Являются ли эти проекты просто развлечением или существуют более глубокие причины, по которым так много исследователей сосредотачиваются на играх?
В этой статье будет кратко рассмотрена история ИИ в видеоиграх. После этого мы дадим вам краткий обзор некоторых методов машинного обучения, которые мы можем использовать, чтобы научиться побеждать в играх. Затем мы рассмотрим несколько успешных применений нейронные сети изучать и осваивать определенные видеоигры.
Краткая история ИИ в играх
Прежде чем мы перейдем к тому, почему нейронные сети стали идеальным алгоритмом для решения видеоигр, давайте кратко рассмотрим, как ученые-компьютерщики использовали видеоигры для продвижения своих исследований в области ИИ.
Можно утверждать, что с самого начала видеоигры были горячей областью исследований для исследователей, интересующихся ИИ.
Хотя по происхождению это не совсем видеоигра, шахматы были в центре внимания на заре ИИ. В 1951 году доктор Дитрих Принц написал программу для игры в шахматы, используя цифровой компьютер Ferranti Mark 1. Это было еще в те времена, когда этим громоздким компьютерам приходилось читать программы с бумажной ленты.
Сама программа не была полноценным шахматным ИИ. Из-за ограничений компьютера Принц смог создать только программу, которая решала шахматные задачи на мат-в-два. В среднем программе требовалось 15-20 минут, чтобы просчитать все возможные ходы белых и черных игроков.
Работа над улучшением шахматного и шашечного ИИ неуклонно улучшалась на протяжении десятилетий. Прогресс достиг своего апогея в 1997 году, когда компания IBM Deep Blue победила российского шахматного гроссмейстера Гарри Каспарова в паре матчей из шести партий. В настоящее время шахматные движки, которые вы можете найти на своем мобильном телефоне, могут победить Deep Blue.
Оппоненты с искусственным интеллектом начали набирать популярность в золотой век аркадных видеоигр. Space Invaders 1978 года и Pac-Man 1980-х — одни из пионеров отрасли в создании ИИ, способного бросить вызов даже самым опытным аркадным геймерам.
В частности, Pac-Man был популярной игрой для экспериментов исследователей ИИ. Различный соревнования for Ms. Pac-Man были организованы, чтобы определить, какая команда сможет придумать лучший ИИ, чтобы победить в игре.
Игровой ИИ и эвристические алгоритмы продолжали развиваться по мере того, как возникала потребность в более умных противниках. Например, популярность боевого ИИ росла по мере того, как такие жанры, как шутеры от первого лица, становились все более популярными.
Машинное обучение в видеоиграх
По мере того как популярность методов машинного обучения быстро росла, различные исследовательские проекты пытались использовать эти новые методы для видеоигр.
Такие игры, как Dota 2, StarCraft и Doom, могут стать для них проблемой. алгоритмы машинного обучения решать. Алгоритмы глубокого обучения, в частности, смогли достичь и даже превзойти производительность человеческого уровня.
Ассоциация Аркадная обучающая среда или ALE предоставил исследователям интерфейс для более чем сотни игр Atari 2600. Платформа с открытым исходным кодом позволила исследователям оценить производительность методов машинного обучения в классических видеоиграх Atari. Google даже опубликовал свои собственные бумаги используя семь игр из ALE
При этом такие проекты, как ВизДум предоставил исследователям ИИ возможность обучать алгоритмы машинного обучения играть в 3D-шутеры от первого лица.
Как это работает: некоторые ключевые понятия
Нейронные сети
Большинство подходов к решению видеоигр с помощью машинного обучения включают тип алгоритма, известный как нейронная сеть.
Вы можете думать о нейронной сети как о программе, которая пытается имитировать работу мозга. Подобно тому, как наш мозг состоит из нейронов, передающих сигнал, нейронная сеть также содержит искусственные нейроны.
Эти искусственные нейроны также передают сигналы друг другу, причем каждый сигнал представляет собой фактическое число. Нейронная сеть содержит несколько слоев между входным и выходным слоями, называемая глубокой нейронной сетью.
Укрепление обучения
Еще одна распространенная техника машинного обучения, имеющая отношение к обучению видеоиграм, — это идея обучения с подкреплением.
Этот метод представляет собой процесс обучения агента с использованием поощрений или наказаний. При таком подходе агент должен иметь возможность найти решение проблемы методом проб и ошибок.
Допустим, мы хотим, чтобы ИИ узнал, как играть в игру «Змейка». Цель игры проста: набрать как можно больше очков, потребляя предметы и избегая своего растущего хвоста.
С помощью обучения с подкреплением мы можем определить функцию вознаграждения R. Функция добавляет очки, когда змея поглощает предмет, и вычитает очки, когда змея сталкивается с препятствием. Учитывая текущую среду и набор возможных действий, наша модель обучения с подкреплением попытается вычислить оптимальную «политику», которая максимизирует нашу функцию вознаграждения.
Нейроэволюция
Продолжая тему вдохновения природой, исследователи также добились успеха в применении машинного обучения к видеоиграм с помощью техники, известной как нейроэволюция.
Вместо того, чтобы использовать градиентный спуск для обновления нейронов в сети мы можем использовать эволюционные алгоритмы для достижения лучших результатов.
Эволюционные алгоритмы обычно начинают с создания начальной популяции случайных особей. Затем мы оцениваем этих людей по определенным критериям. Лучшие особи выбираются в качестве «родителей» и скрещиваются вместе, чтобы сформировать новое поколение особей. Затем эти люди заменят наименее приспособленных людей в популяции.
Эти алгоритмы также обычно вводят некоторую форму операции мутации на этапе скрещивания или «разведения» для поддержания генетического разнообразия.
Пример исследования машинного обучения в видеоиграх
OpenAI Пять
OpenAI Пять — это компьютерная программа от OpenAI, предназначенная для игры в DOTA 2, популярную многопользовательскую мобильную боевую арену (MOBA).
Программа использовала существующие методы обучения с подкреплением, масштабированные для обучения на миллионах кадров в секунду. Благодаря распределенной системе обучения OpenAI мог каждый день играть в игры за 180 лет.
После периода обучения OpenAI Five смогла достичь производительности экспертного уровня и продемонстрировать сотрудничество с игроками-людьми. В 2019 году OpenAI Five смогла поражение 99.4% игроков в публичных матчах.
Почему OpenAI выбрал эту игру? По словам исследователей, DOTA 2 имела сложную механику, которая была за пределами досягаемости существующих глубоких усиление обучения алгоритмы.
Супер Марио
Еще одним интересным применением нейронных сетей в видеоиграх является использование нейроэволюции в таких платформерах, как Super Mario Bros.
Например, это участие в хакатоне начинается с отсутствия знаний об игре и постепенно создает основу того, что необходимо для прохождения уровня.
Саморазвивающаяся нейронная сеть воспринимает текущее состояние игры как сетку плиток. Сначала нейронная сеть не понимает, что означает каждая плитка, а только то, что плитки «воздух» отличаются от «плиток земли» и «плиток врагов».
Реализация нейроэволюции в рамках проекта хакатона использовала генетический алгоритм NEAT для выборочного размножения различных нейронных сетей.
Значение
Теперь, когда вы видели несколько примеров нейронных сетей, играющих в видеоигры, вам может быть интересно, в чем смысл всего этого.
Поскольку видеоигры предполагают сложные взаимодействия между агентами и их окружением, это идеальный полигон для тестирования ИИ. Виртуальные среды безопасны и управляемы, а также обеспечивают бесконечный поток данных.
Исследования, проведенные в этой области, дали исследователям представление о том, как можно оптимизировать нейронные сети, чтобы научиться решать проблемы в реальном мире.
Нейронные сети вдохновлены тем, как мозг работает в естественном мире. Изучая поведение искусственных нейронов при обучении игре в видеоигры, мы также можем получить представление о том, как человеческий мозг работ.
Заключение
Сходство между нейронными сетями и мозгом привело к пониманию в обеих областях. Продолжающиеся исследования того, как нейронные сети могут решать проблемы, могут когда-нибудь привести к более продвинутым формам искусственный интеллект.
Представьте себе использование искусственного интеллекта, адаптированного к вашим спецификациям, который может сыграть всю видеоигру до того, как вы ее купите, чтобы вы знали, стоит ли она вашего времени. Будут ли компании, занимающиеся видеоиграми, использовать нейронные сети для улучшения игрового дизайна, настройки уровня и сложности противников?
Как вы думаете, что произойдет, когда нейронные сети станут лучшими игроками?
Оставьте комментарий