Разработка Искусственного интеллекта в компьютерных играх

Разработка Искусственного интеллекта в компьютерных играх
Разработка Искусственного интеллекта в компьютерных играх 22.05.2020

Разработка Искусственного интеллекта в компьютерных играх

Постановка задачи.

В настоящее время в мире насчитывается около 2.2 миллиарда игроков. По оценкам, на июль 2018 года из 7,6 миллиардов человек, живущих на земле, это означает, что почти треть людей на этой планете - геймеры. Из этих 2,2 миллиарда игроков 1,2 миллиарда тех, кто играет в игры, играют в игры на ПК.

Это связано с огромным разнообразием игр в мире. Например, только в Steam существует более 14 000 игр.

Многие игры используют искусственный интеллект (ИИ) в качестве основы, это делает игры более реалистичными. Самый известный AI был использован в Packman. После этого появилось много игр, использующих в качестве основы искусственный интеллект. Например, S.T.A.L.K.E.R., Far Cry, StarCraft II, Dota 2.

Есть два основных вида алгоритмов, которые используют ИИ в играх. Во-первых, это конечные автоматы.

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

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

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

• структура игрового мира;

• реализация игрового мира;

• методы контроля движения.

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

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

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

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

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

Цель - разработать модель в среде разработки Intellij Idea Ultimate 2019.3.2 для изучения генетического алгоритма в компьютерных играх. Используйте выбор, чтобы определить удовлетворительное поведение бота для данной карты.

Для реализации программы была использована библиотека JavaFX, благодаря которой был создан пользовательский интерфейс для отображения работы гена.



Назва конкурсу:  Конкурс «Вирішення практичних задач із застосуванням штучного інтелекту»
ПІБ конкурсанта:  Кошман Володимир Євгенович
Країна:  Україна
Область:  Харківська область
Назва НЗ:  Національний технічний університет «Харківський політехнічний інститут»
Учасник фіналу:  Ні

Повернення до списку