Кодзима Гений - канал про геймдизайн
7.56K subscribers
460 photos
32 videos
20 files
1.27K links
Здесь рассказывают про геймдизайн и индустрию разработки видеоигр, делятся полезными материалами
Чат: @kojima_talks

Сотрудничество, реклама: @tkoff
Download Telegram
Машинное обучение и видеоигры

Занимаясь алгоритмами машинного обучения я часто задаюсь вопросом "Как можно применить эту технологию в разработке игр?". Вычислительные мощности современных компьютеров (а точнее графических процессоров) позволяют обрабатывать большие объёмы данных и на их основе моментально генерировать вещи, на ручное создание которых потребовалось немало времени. Результатами разработок мы уже пользуемся в реальной жизни (вспомните различные фотофильтры или сервисы поиска людей по фото).

В видеоиграх, на самом деле, технологии машинного обучения используются давно, если в расчёт брать игры дополненной реальности типа Pokemon Go. Правильное проецирование 3D модели покемона в реальном окружении - результат работы алгоритмов. Но я говорю о повсеместном применении, а не о единичных случаях.

Самое прострое, что может прийти в голову - улучшение графики в старых играх. Сейчас можно найти большое количество примеров улучшения графической составляющей в Doom, Quake и GTA: Vice City (например, здесь).

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

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

В статьях ниже предлагаются другие способы применения машинного обучения в играх. Рекомендую ознакомиться:
https://hub.packtpub.com/uses-of-machine-learning-in-gaming/ (~ 4 минуты)

https://hub.packtpub.com/5-ways-artificial-intelligence-is-transforming-the-gaming-industry/ (~7 минут)

#МашинноеОбучение
#Мнение
Обучение искусственного интеллекта видеоиграм

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

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

Один из знаменитых алгоритмов - MarI/O - научился проходить уровни из одноимённой игры:
https://www.youtube.com/watch?v=qv6UVOQ0F44

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

Более интересным выглядит обучение ИИ езде в GTA V:
https://www.youtube.com/watch?v=rvnHikUJ9T0&vl=ru (у автора канала целый плейлист посвящен обучению ИИ с нуля, рекомендую)
При обучении должно быть учтено множество факторов: окружающая среда, ландшафт, скорость, загрузка карты и так далее. Автор без пяти минут создал модель беспилотной езды на основе GTA ☺️

В ноябре 2018 года Towards Data Science опубликовала статью, в которой описывается один из способов обучения ИИ играть в змейку (с кодом на гитхабе впридачу):
https://towardsdatascience.com/how-to-teach-an-ai-to-play-games-deep-reinforcement-learning-28f9b920440a

Вы можете спросить - к чему это всё? Разве это не хиханьки да хахоньки, которые не имеют практического применения?

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

#МашинноеОбучение
​​Применение нейронных сетей в создании видеоигр

Выходные - лучшее время для того, чтобы почитать что-нибудь научное, переварить и сохранить до лучших времён. На волне хайпа DeepNude нейронные сети опять вылезли в топ поисковых запросов. Поэтому сегодня предлагаю к прочтению статью, посвящённую исследованию применения нейронных сетей к созданию NPC:
https://pdfs.semanticscholar.org/9a04/ecf1ecc083ee78306bf5ecb53b84fdf91262.pdf
(~25 минут, EN)

Исходя из статьи можно понять, что выбранный авторами подход использует те же методы обучения, что и обучение чат-ботов. Кроме этого персонаж должен сохранять такой параметр, как доверие, в то время как чат боту всё равно на ваше поведение.

Другая статья будет интересна тем, кто играл в Supreme Commander 2. Оказывается, в игре 2010 года во всю использовалась нейронная сеть для контроля боевого потенциала ботов-противников:
http://www.gameaipro.com/GameAIPro/GameAIPro_Chapter30_Using_Neural_Networks_to_Control_Agent_Threat_Response.pdf (~10 минут, EN)

#НейроннаяСеть
#МашинноеОбучение
Машинное обучение для игроделов

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

Мой тёзка Олег Чумаков на DevGAMM 2017 рассказал лекцию об использовании машинного обучения в играх. Он привёл примеры внедрения нейронных сетей в разработке игр, в том числе и VR. Основная область применения нейронных сетей в играх - это генерация реалистичных текстур высокого разрешения, текстов, звуков и планировки окружения. Кроме этого он рассказывает краткий экскурс в историю развития технологии.

https://www.youtube.com/watch?v=FS_6ptG-VjQ

#МашинноеОбучение
Автоматизация процесса машинного обучения в мобильных играх

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

Не открывая статью, сможете ли вы быстро дать ответы на следующие вопросы, касаемые вашей игры:
1. Какими действиями игрок будет больше всего пользоваться в вашей игре?
2. Какую последовательность действий, выполняемую игроком, можно предугадать?
3. Как можно персонализировать пользовательский опыт, зная про поведение игрока в игре?
4. Какие пользователи хуже всего взаимодействуют с вашей игрой?

Автоматизация процесса улучшения пользовательского опыта включает в себя следующие компоненты:
1. Модель прогнозирования - предположение о том, как игрок будет себя вести в игре на осное знаний о его текущем поведении;
2. Рекомендательная модель - предложение игроку испытаний, которые ему нравятся больше всего;
3. Модель архетипов игроков - подбор испытаний и контента на основе знаний о том, к какой группе пользователей относится игрок;
4. Модель выявления аномалий - нужна для понимания природы изменения поведения игрока или выявления плохихи игроков;
5. Генерация возможностей - автоматизация создания контента для игроков в целом.

Подробнее, как всегда, можно прочитать в статье:
https://www.gamasutra.com/blogs/BenWeber/20191114/353773/Automating_Machine_Learning_for_MobileGames.php

#Геймдизайн #МашинноеОбучение