Как работает искусственный интеллект в играх?

Как работает искусственный интеллект в играх?

Все IT-сферы сделали огромный скачок в развитии, та же самая тенденция наблюдается и в игровой индустрии. Вначале создания были простейшие игры наподобие Pac-Man и Pong, и даже они позволили забыть игрокам о реальности на недели. Современные проекты по созданию игр уже стали полноценным хобби, настолько распространённым, что сегодня каждый четвёртый житель играет в World of Warcraft, World of Tanks, Call of Duty и т. п.


Для многих остаётся загадкой, какую роль в развитии игр имеет искусственный интеллект. Сегодня постараемся понять, за что он отвечает именно в играх.

Что такое ИИ в играх?

Чтобы было всем понятно, искусственный интеллект отвечает за модуляцию или имитацию естественного поведения игроков или отдельных объектов. В играх их называют ботами. Принцип сводится к имитации поведения, объектами управляет не человек. Иначе говоря, ИИ является искусственной заменой человеческого интеллекта.



В некоторых играх используется простейший ИИ, включающий лишь небольшой набор правил. Нередко ИИ является сложным алгоритмом действий, который отвечает за работу целой команды или армии противников

Есть ли отличая ИИ в играх от обычного?

В традиционном представлении ИИ, его основная цель -  создание полноценного интеллекта, но искусственными средствами. Такой ИИ может самостоятельно обучаться, давать ответы на вопросы, в общем – он развивается без программирования алгоритмов со стороны человека. Сегодня уже делаются попытки создания полноценного ИИ, одним из перспективных проектов является Kismet, проводящийся в Массачусетском технологическом институте. ИИ должен уметь подстроиться к социальным, физическим и эмоциональным составляющим.



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

Назначение ИИ в игровой индустрии

ИИ может выполнять всевозможные задачи: от обработки общего набора правил, отвечающих за поведение базовых объектов, до управления персонажами. К работе ИИ принято относить представление заранее описанных событий. Иллюстрация: в игре в игре F.E.A.R девочка-призрак, которая наводит ужас на игроков – это заблаговременно написанный сценарий.



Говоря об ИИ, в голову у большинства игроков сразу приходят мысли о ботах, управляемых компьютером. Все перечисленные роли исполняет один единственный актёр – ИИ.

Что нужно для ИИ в играх

Требовательность к системным ресурсам напрямую зависит от предназначения и требований, предъявляемых к ИИ. Чем сложнее разработана система, тем большее количество ресурсов тратится на обработку ИИ. На простейшем уровне для понимания – потребуется мощность и время работы процессора для расчёта следующих действий в мире. В сложных играх потребуются различные средства, способствующие анализу окружающей среды ИИ, фиксации пользовательских действий и оценки предыдущих достижений.

Простейший пример ИИ

Самая простая форма ИИ – это система, построенная на наборе правил. Можно даже поспорить, является ли данная система ИИ. В любом случае она далека от традиционного представления об искусственном интеллекте. Поведение игровых объектов происходит за счёт уже установленных алгоритмов, учитывающими определённые факторы игры. Из-за разнообразных действий может отличаться конечный результат. Подобную систему нельзя назвать интеллектуальной.


Самым известным приложением, работающим по аналогичной системе, является Pac-Man. За игроком гонятся 4 приведения, каждое действует на основании заложенного простейшего набора правил. Одно из них постоянно поворачивает влево, второе всегда идёт вправо, третье может поворачиваться в любую сторону, а четвертое преследует игрока.



Если разделить приведения, их алгоритм действий легко определить и предугадывать. Пользователю оказалось бы слишком просто спасаться от приведений.

Конечные автоматы

Подразумевается машина, имеющая конечное количество состояний. Она является методом проработки и преобразования состояния отдельных объектов или их групп. Используется в отношении объектов, которые изменяются в зависимости от определённых условий. Для представления каждого состояния могут использоваться физические условия: одежда, погода, эмоциональное состояние и т. п.


Есть несколько простых способов реализовать конечный автомат при использовании системы объектов:

  • способ 1. Представить все состояния в качестве переменных, которые легко проверить в функции. Преимущественно проверка реализуется при помощи громоздких конструкций переключения;
  • способ 2. Применить указатели функций – это основа игр на языке C. В объектно-ориентированных языках, наподобие C++ используется понятие виртуальная функция.

Адаптивный ИИ

В многочисленных современных играх необходимы сильные противник, действия которых сложно или невозможно предсказать. Динамическое поведение и адаптация к текущим условиям требует использование полноценного ИИ.


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



В ИИ системе регистрируется выбор, осуществлённый игроком в ходе переломных событий. Все переменные (решения) должны оцениваться и на их основании строится будущее поведение. Проиллюстрировать ситуацию помогут: состояние здоровья, количество времени, наличие преимуществ и т. д. в боевых играх. При нанесении урона противнику учитывается: показатель защиты, наличие одежды, урон от оружия, дополнительные бонусы.


В играх, построенных на тактике, ИИ может учитывать способы победы игрока в предыдущих играх и изменять поведение, переходя от нападения в оборону или наоборот. ИИ может «экономно» вести бои с минимальными потерями, выбирать сбалансированную трату войска на победу или идти в наступление не учитывая потери. В играх, где игроку предоставляется помощник, ИИ обеспечивает приспособление персонажа к стилю игры игрока.

Заключение

Многие действия и события в играх происходят за счёт ИИ, который принимает самые разнообразные формы: от простейших наборов правил до адаптивной системы самосовершенствования.

()
17 Октября 2018

Возврат к списку