Обзор статьи «PCGRL», в которой представлен новый подход к процедурной генерации уровней игры путем обучения агентов RL.

Процедурная генерация контента (или PCG) - это метод использования компьютерного алгоритма для генерации большого количества контента в игре, такого как огромная среда открытого мира, игровые уровни и многие другие ресурсы, которые используются при создании игры.

Сегодня я хочу поделиться с вами статьей под названием PCGRL: процедурная генерация контента с помощью обучения с подкреплением, в которой показано, как мы можем использовать самообучающиеся алгоритмы ИИ для процедурной генерации 2D-игровых сред. Обычно мы знакомы с использованием метода искусственного интеллекта, называемого обучением с подкреплением, для обучения агентов искусственного интеллекта игре в игры, но эта статья обучает агента искусственного интеллекта разрабатывать уровни этой игры. По словам авторов, это первый раз, когда RL используется для задачи PCG.



Сокобан Игровая среда

Давайте посмотрим на центральную идею статьи. Рассмотрим простую игровую среду, как в игре Сокобан.

Мы можем рассматривать эту карту или игровой уровень как двумерный массив целых чисел, которые представляют это состояние игры. За этим состоянием наблюдает агент обучения с подкреплением, который может редактировать игровую среду. Выполняя такие действия, как добавление или удаление определенного элемента игры (например, сплошной коробки, ящика, игрока, цели и т. Д.), Он может редактировать эту среду, чтобы дать нам новое состояние.

Теперь, чтобы гарантировать хорошее качество среды, создаваемой этим агентом, нам нужен какой-то механизм обратной связи. Этот механизм построен в этой статье путем сравнения предыдущего состояния и обновленного состояния с использованием вручную созданного калькулятора вознаграждений для этой конкретной игры. Добавляя соответствующие награды за правила, которые делают уровень более увлекательным, мы можем обучить агента RL создавать определенные типы карт или уровней. Самым большим преимуществом этой структуры является то, что после завершения обучения мы можем генерировать практически бесконечное количество уникальных игровых уровней одним нажатием кнопки, без необходимости создавать что-либо вручную.

В документе также содержится сравнение различных подходов, которые агент RL может использовать для просмотра и редактирования среды. Если вы хотите получить более подробную информацию о сравнении производительности этих методов, вот полный текст результатов исследования.

Общее направление исследований

Хотя игры, которые использовались в экспериментах в этой статье, являются простыми 2D-играми, это направление исследований волнует меня, потому что мы можем опираться на эту работу для создания больших трехмерных игровых сред с открытым миром.

Это может изменить опыт многопользовательской онлайн-игры. Представьте себе, если бы в начале каждой многопользовательской игры с открытым миром мы могли каждый раз создавать новую уникальную тактическую карту. Это означает, что нам не нужно ждать, пока разработчики игр будут выпускать новые карты каждые несколько месяцев или лет, но мы можем делать это прямо в игре с помощью ИИ, что действительно круто!

Спасибо за чтение. Если вам понравилась эта статья, вы можете следить за моими работами на Medium, GitHub или подписываться на мой канал на YouTube.