• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2024/2025

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

Статус: Курс по выбору (Программная инженерия)
Направление: 09.03.04. Программная инженерия
Когда читается: 3-й курс, 3, 4 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для всех кампусов НИУ ВШЭ
Язык: русский
Кредиты: 5

Программа дисциплины

Аннотация

Дисциплина фокусируется на искусственном интеллекте (ИИ) в компьютерных играх. Однако полученные знания могут быть использованы и в других сферах, например, при создании приложений виртуальной и дополненной реальности, геймифицированных пространств и симуляций. В рамках дисциплины студенты познакомятся с основами ИИ в играх, познакомятся с понятием интеллектуального агента, подробней ознакомятся со сферой их применения и на практики попробуют основные подходы к их разработке. Мы на примерах подробно рассмотрим особенности реализаций ИИ в компьютерных играх начиная с низкого уровня, т.е. примитивных движений и заканчивая высоким, т.е. вариантами интеллектуального поведения NPC, построения и отображения отображения виртуальных миров. Мы поговорим о математических моделях, их описаниях, приложениях для разных жанров игр, миров и проч. Для реализации используется движок Unreal Engine 5, Blueprints и С++.
Цель освоения дисциплины

Цель освоения дисциплины

  • Изучить основные подходы и пайплайны для разработки интеллектуальных агентов и использования моделей и сред обучения для их создания
Планируемые результаты обучения

Планируемые результаты обучения

  • 1) Основные подходы к backend-разработке для многопользовательских игр 2) Написание простых приложений для обслуживания многопользовательских игр 3) Написание асинхронных приложений для обслуживания многопользовательских игр. 4) Развертывание виртуального окружения с помощью технологии Docker, docker-compose. 5) Знание методов компенсации лагов.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • сети. Модель OSI, TCP/IP, IP-адреса, порты. RFC 1122. WireShark. синхронный Unix сервер. IPC-сокет. RFC 681
  • синхронный UDP сервер на python. Библиотека socket. RFC 768.
  • синхронный TCP сервер и TLS сервер. Библиотека socket, tls. RFC 793
  • синхронный ftp сервер и http сервер. Ftps сервер и https сервер. Библиотека ftplib, pyftpdlib, requests, http, ssl, flask. Postman, Curl.
  • асинхронный python. GIL, event loop. Библиотека asyncio. Асинхронный http на asyncio. Https сервер, ssl-context
  • асинхронный WebSockets. Библиотека websockets.
  • Multiplayer Networking. Tickrate, Компенсация лага. Prediction и линейная интерполяция движения. Серверная коррекция движения. Ping
  • Docker, docker-compose. Образ, контейнер, виртуализация.
Элементы контроля

Элементы контроля

  • неблокирующий КДЗ
  • блокирующий Экз.
Промежуточная аттестация

Промежуточная аттестация

  • 2024/2025 4th module
    0.5 * КДЗ + 0.5 * Экз.
Список литературы

Список литературы

Рекомендуемая основная литература

  • Design games for architecture : creating digital design tools with Unity, Westre, A., 2014

Рекомендуемая дополнительная литература

  • Программирование в Unreal Engine 5 для начинающего игродела : основы визуального языка Blueprint, Максименкова, О. В., 2023

Авторы

  • Буцкая Евгения Александровна
  • Веселко Никита Игоревич
  • Лебедев Сергей Аркадьевич