УДК 004.89
Баринова Е.С. студент 2 курса
факультет информационных систем и технологий
Арисова Д.А. студент 2 курса
факультет информационных систем и технологий ФГБОУ ВО «Поволжский государственный университет
телекоммуникаций и информатики» научный руководитель: Коняева О.С.
старший преподаватель Россия, г. Самара ПРИМЕНЕНИЕ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА В ИГРАХ
Аннотация: В статье рассматриваются различные разновидности искусственного интеллекта в компьютерных играх. Его применение к различным объектам. Простые и сложные алгоритмы имитации реального мира. Специальные требования к ИИ в играх.
Ключевые слова: Нейронные сети, искусственный интеллект, игровой искусственный интеллект, потоки поведения, конечные автоматы, адаптивный ИИ, система на основе правил.
Barinova E.S. student
2 year, Faculty of Information Systems and Technology «Povolzhskiy State University of Telecommunications and Informatics»
Russia, Samara Arisova D.A. student
2 year, Faculty of Information Systems and Technology «Povolzhskiy State University of Telecommunications and Informatics»
Russia, Samara Scientific adviser: Konyaeva O.S.
Senior Lecturer
APPLICATION OF ARTIFICIAL INTELLECT IN GAMES
Summary: The article examines various varieties of artificial intelligence in computer games. Its application to various objects. Simple and complex real-world simulation algorithms. Special requirements for AI in games.
Keywords: Neural networks, artificial intelligence, game artificial intelligence, behavior flows, finite automata, adaptive AI, system based on rules.
Нейронные сети - одна из моделей обучения, имитирующая человеческий мозг. Её можно представить графически, как объект и исходящие из него лучи - атрибуты объекта. Получая входные данные, сеть
сравнивает их с уже известными данными по этим атрибутам и получает результат. Если он положительный - отдается предпочтение пути в нейронной сети, который привел к правильному ответу. После тысячи таких операций система повысит точность своих результатов. Благодаря описанным возможностям, нейронные сети могут найти применение в играх, повысив их увлекательность.
Примером использования нейронных сетей в играх является Игровой искусственный интеллект — набор методов, используемых для имитации человеческого поведения или мышления у персонажей, управляемых компьютером.
Реализация ИИ сильно влияет на системные требования игры, игровой процесс, а так же на затраченный бюджет, поэтому разработчики используют разного рода упрощения, обманы и эмуляции. Ему не нужно обучаться чему-то вне рамок игры, а его главная задача - имитация разумного поведения. ИИ может превосходить человеческие возможности (например, в прицельной стрельбе), поэтому способности бота с ИИ занижаются специально. Или если персонажи должны использовать максимально приближенную к человеку модель поведения (собраться у точки или идти по одиночке), то для этого на уровнях используются контрольные точки или точки сбора. Так как ИИ не обладает тактическим мышлением, его часто наделяют преимуществами: большим количеством жизней или снарядов, чем у игрока, видимостью всей карты. Это позволяет создать иллюзию конкуренции и равной борьбы. Кроме того, один бот с ИИ может взаимодействовать с другим, что несомненно, добавляет разнообразия в игровой процесс.
Основным принципом, которому нужно обучить ИИ будет принятие решений. Система будет высчитывать потоки поведения, вбирать наилучшее решение, а затем сообщит окружающим объектам - такой вариант поведения удобен в стратегиях реального времени, где ИИ анализирует общий ход событий во всей игре. Другой вариант - когда объект обращается к ИИ, чтобы «обновить» себя.
Для принятия решений, системе требуется иметь представление об окружении - то есть иметь некое восприятие. Оно варьируется от простого положения предмета в пространстве, до выстраивания маршрутов. Разработчикам при этом необходимо определить способ получения ИИ информации об игровом мире.
Простейшая форма ИИ - система на основе правил. Здесь поведение объектов определяется набором правил или алгоритмов, оно может меняться, в зависимости от состояния объекта. Как раз эта система часто используется для установки стратегии поведения напарников (атаковать, рассредоточиться, защищаться). Создается иллюзия командования и подчинения.
Конечные автоматы в качестве ИИ - это модели, где объект имеет
несколько состояний и сменяет их в течение «жизни». Состояния могут быть физическим состоянием объекта (например, уменьшение количества листвы на деревьях с наступлением осени) и сменяют друг друга по наступлению каких-либо условий.
В играх со сложной механикой и возможностью выбора используется адаптивный ИИ. Он обладает способностью развиваться, приспосабливаться и адаптироваться, что делает его интересным и сложным соперником.
Наделив напарников игрока адаптивным ИИ, существенно повысится комфортность игры, что позволит полностью погрузиться в игровой мир.
Для срабатывания у неигровых персонажей каких-либо сценариев, создаются пустые объекты. В игре существует множество временных объектов: следы от пуль, брошенные вещи и другие последствия сражений. Мы легко можем их распознать с помощью зрения, как раз для имитации человеческого зрения и создаются эти пустые объекты. Они сообщают боту, что здесь что-то произошло и переключают их поведение.
После принятия решения ИИ будет выбирать способ его реализации. Ему нужно понять, как из точки А перейти в точку Б. Алгоритм прост: выбирается кратчайший маршрут и, если встречается какое-либо препятствие, осуществляется переопределение на направление, ближайшее к объекту. В более сложных системах, бот будет запоминать проложенные ранее маршруты, что позволит избежать «застревание» на одном месте или выбора неправильного курса.
Итак, игровой искусственный интеллект создан, чтобы имитировать поведение объектов реального мира или человека. Это не сложно, если рассматривать с базовых компонентов - от низкоуровневых правил и алгоритмов поиска путей до более высокого уровня, на котором работает тактический и стратегический ИИ. При этом, не стоит забывать об оптимизации, бюджете игры, игровом процессе и системных требованиях -игра не должна использовать излишнее количество ресурсов. Только тогда мы сможем создать более интересных и сложных противников для игроков, которые будут с нетерпением ожидать продолжения игры.
Использованные источники:
1. Создание искусственного интеллекта для игр, Intel AI Academy [Электронный ресурс] — режим доступа: https://software.intel.com/ru-ru/articles/designing-artificial-intelligence-for-games-part-1 (дата обращения: 25.02.2018);
2. Восемь потрясающих игр с искусственным интеллектом от компании Google, Geektimes [Электронный ресурс] — режим доступа https://geektimes.ru/post/282694/ (дата обращения: 25.02.2018);
3. Игровой искусственный интеллект, Википедия я [Электронный ресурс] — режим доступа: https: //ru.wikipedia. org/ wiki/Игровой_искусственный_интеллект (дата обращения: 25.02.2018);