Unity плагин для управления игровыми персонажами на основе искусственных нейронных сетей
- Возможность использования различных типов исскуственных нейронных сетей (ИНС).
- Возможность использования различных типов систем обучения (СО).
- Возможность использования для вычисления нормализованных выходных данных популярных функций активаций (ФА).
- Расширение функционала плагина путём добавления новых ИНС, СО, ФА за счет паттернов проектирования, используемых в плагине.
- Редактирование и настройка ключевых параметров нейронных сетей, систем обучения ИНС.
- Сохранение и загрузка состояния нейронной сети, необходимой для использования результатов обучение ИНС в аналогичных приложениях.
- Наличие демонстрационного приложения на Unity, показывающее работу плагина.
- Unity в качестве игрового движка, для которого разрабатывался плагин и в качестве платформы на котором разработано демонстрационное приложение с использованием плагина.
- Язык С# для написания кода плагина и скриптов приложения.
- Visual Studio 2019 Community в качестве IDE для написания кода на C# и для компиляции скрипта плагина в dll.
- JSON используется как формат обмена данными, то есть формат для сохранения и загрузки состояния нейронной сети.
- Git в качестве системы контроля версий проекта и версий плагина.
- GitHub в качестве платформы размещения готового проекта для применения другими пользователями.
- Расширение встроенных искусственных нейронных сетей, систем обучения, функций активаций.
- Добавление разделения вычислений при обучении в потоки - создание многопоточности.
- Размещение проекта в официальный магазин Unity Asset Store.
Экономическая эффективность - привлечение пользователей за счет размещения плагина с основным функционалом в свободном доступе. Продажи за счет размещения плагина с расширенным функционалом в официальном магазине Unity Asset Store по фиксированной цене.
В современном мире сегмент видеоигр является наиболее крупным и прибыльным в индустрии развлечений. С развитием технологий разработки игровых проектов, увеличилось их разнообразие и выпускаемое количество.
Чтобы игровой продукт стал продаваемым и востребованным среди пользователей, многие разработчики добавляют реалистичность в игровой процесс. Достигается это различными способами: улучшение разрешения графики и моделей, создание открытого мира с детальной проработкой, написание не линейного сюжета и применение искусственного интеллекта (ИИ) для персонажей.
Во многих проектах используется ИИ, в котором уже заранее прописаны реакции на определенные события в игре, что делает персонажа предсказуемым. Чтобы создать более приближенный к реальности интеллект, нужно учесть и запрограммировать реакции на все события, на что уходит достаточно много времени при разработке, а также в случае непредвиденного события появляются ошибки.
Сейчас же применяют более современный вариант искусственного интеллекта, который базируется на использовании искусственных нейронных сетей. Использование такого интеллекта, делает действия объекта более реалистичными и не всегда предсказуемыми, но для этого требуется его обучение.
Для создания игр, многие используют игровые движки, которые является прослойкой между платформой и кодом. Они сокращают и упрощают разработку. На данный момент, Unity считается одним из наиболее популярных игровых движков, который позволяет создавать игровые проекты различной сложности и тематики под многие популярные платформы.И так как на данный момент решений для управления игровыми персонажами на основе ИНС для Unity практически нет, считаю задачу актуальной.