Машинное обучение и видеоигры
Занимаясь алгоритмами машинного обучения я часто задаюсь вопросом "Как можно применить эту технологию в разработке игр?". Вычислительные мощности современных компьютеров (а точнее графических процессоров) позволяют обрабатывать большие объёмы данных и на их основе моментально генерировать вещи, на ручное создание которых потребовалось немало времени. Результатами разработок мы уже пользуемся в реальной жизни (вспомните различные фотофильтры или сервисы поиска людей по фото).
В видеоиграх, на самом деле, технологии машинного обучения используются давно, если в расчёт брать игры дополненной реальности типа 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 минут)
#МашинноеОбучение
#Мнение
Занимаясь алгоритмами машинного обучения я часто задаюсь вопросом "Как можно применить эту технологию в разработке игр?". Вычислительные мощности современных компьютеров (а точнее графических процессоров) позволяют обрабатывать большие объёмы данных и на их основе моментально генерировать вещи, на ручное создание которых потребовалось немало времени. Результатами разработок мы уже пользуемся в реальной жизни (вспомните различные фотофильтры или сервисы поиска людей по фото).
В видеоиграх, на самом деле, технологии машинного обучения используются давно, если в расчёт брать игры дополненной реальности типа 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 минут)
#МашинноеОбучение
#Мнение
PC Gamer
This Doom mod uses neural network image upscaling to improve on a classic
Let the machines do the work.
Обучение искусственного интеллекта видеоиграм
Как вы знаете, я занимаюсь машинным обучением - технологией, позволяющей компьютерным программам учиться выполнять действия, которые слабо подчинены алгоритмам. Не вдаваясь в подробности скажу, что эти технологии уже широко применяются в нашей повседневной жизни, начиная от масок в инстаграме и заканчивая беспилотными автомобилями.
Игровая индустрия совершает попытки применять искусственный интеллект (ИИ). И речь идёт не о виртуальных друзьях или врагах, чьё поведение на самом деле подчиняется строгой формальной логике. Я говорю о программах, которые способны обучаться играть в игры.
Один из знаменитых алгоритмов - 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
Вы можете спросить - к чему это всё? Разве это не хиханьки да хахоньки, которые не имеют практического применения?
Ответ прост. По мере развития технологий машинного обучения можно будет создавать мощные полигоны для тестирования и отладки игровых систем. Виртуальный болванчик будет проверять игровые правила и механики на прочность. В зависимости от полученных результатов обучения таких алгоритмом геймдизайнеры смогут быстро вносить исправления в геймплей для улучшения пользовательского опыта.
#МашинноеОбучение
Как вы знаете, я занимаюсь машинным обучением - технологией, позволяющей компьютерным программам учиться выполнять действия, которые слабо подчинены алгоритмам. Не вдаваясь в подробности скажу, что эти технологии уже широко применяются в нашей повседневной жизни, начиная от масок в инстаграме и заканчивая беспилотными автомобилями.
Игровая индустрия совершает попытки применять искусственный интеллект (ИИ). И речь идёт не о виртуальных друзьях или врагах, чьё поведение на самом деле подчиняется строгой формальной логике. Я говорю о программах, которые способны обучаться играть в игры.
Один из знаменитых алгоритмов - 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
Вы можете спросить - к чему это всё? Разве это не хиханьки да хахоньки, которые не имеют практического применения?
Ответ прост. По мере развития технологий машинного обучения можно будет создавать мощные полигоны для тестирования и отладки игровых систем. Виртуальный болванчик будет проверять игровые правила и механики на прочность. В зависимости от полученных результатов обучения таких алгоритмом геймдизайнеры смогут быстро вносить исправления в геймплей для улучшения пользовательского опыта.
#МашинноеОбучение
YouTube
MarI/O - Machine Learning for Video Games
MarI/O is a program made of neural networks and genetic algorithms that kicks butt at Super Mario World.
Source Code: http://pastebin.com/ZZmSNaHX
"NEAT" Paper: http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf
Some relevant Wikipedia links:
http…
Source Code: http://pastebin.com/ZZmSNaHX
"NEAT" Paper: http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf
Some relevant Wikipedia links:
http…
Применение нейронных сетей в создании видеоигр
Выходные - лучшее время для того, чтобы почитать что-нибудь научное, переварить и сохранить до лучших времён. На волне хайпа 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)
#НейроннаяСеть
#МашинноеОбучение
Выходные - лучшее время для того, чтобы почитать что-нибудь научное, переварить и сохранить до лучших времён. На волне хайпа 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
#МашинноеОбучение
Как вы знаете, я неродно дышу к технологиям машинного обучения и успешно их практикую. И если второе утверждение можно поставить под сомнение, то любовь к технологии подкрепляется ежедневно благодаря практике, учебникам и интернету. Казалось бы, при чём тут игры?
Мой тёзка Олег Чумаков на DevGAMM 2017 рассказал лекцию об использовании машинного обучения в играх. Он привёл примеры внедрения нейронных сетей в разработке игр, в том числе и VR. Основная область применения нейронных сетей в играх - это генерация реалистичных текстур высокого разрешения, текстов, звуков и планировки окружения. Кроме этого он рассказывает краткий экскурс в историю развития технологии.
https://www.youtube.com/watch?v=FS_6ptG-VjQ
#МашинноеОбучение
YouTube
Машинное обучение для игроделов
Слайды: https://yadi.sk/i/lKdYfv-p3JNUBW
По мотивам выступления на DevGAMM Москва 2017
https://luden.io
По мотивам выступления на DevGAMM Москва 2017
https://luden.io
Автоматизация процесса машинного обучения в мобильных играх
И ещё немного про машинное обучение написал Бен Вебер. В своей заметке Бен описал несколько сцениариев пользовательскоо поведения и то, как машинное обучение может помочь настроить геймплей в каждом из сценариев для конкретного игрока.
Не открывая статью, сможете ли вы быстро дать ответы на следующие вопросы, касаемые вашей игры:
1. Какими действиями игрок будет больше всего пользоваться в вашей игре?
2. Какую последовательность действий, выполняемую игроком, можно предугадать?
3. Как можно персонализировать пользовательский опыт, зная про поведение игрока в игре?
4. Какие пользователи хуже всего взаимодействуют с вашей игрой?
Автоматизация процесса улучшения пользовательского опыта включает в себя следующие компоненты:
1. Модель прогнозирования - предположение о том, как игрок будет себя вести в игре на осное знаний о его текущем поведении;
2. Рекомендательная модель - предложение игроку испытаний, которые ему нравятся больше всего;
3. Модель архетипов игроков - подбор испытаний и контента на основе знаний о том, к какой группе пользователей относится игрок;
4. Модель выявления аномалий - нужна для понимания природы изменения поведения игрока или выявления плохихи игроков;
5. Генерация возможностей - автоматизация создания контента для игроков в целом.
Подробнее, как всегда, можно прочитать в статье:
https://www.gamasutra.com/blogs/BenWeber/20191114/353773/Automating_Machine_Learning_for_MobileGames.php
#Геймдизайн #МашинноеОбучение
И ещё немного про машинное обучение написал Бен Вебер. В своей заметке Бен описал несколько сцениариев пользовательскоо поведения и то, как машинное обучение может помочь настроить геймплей в каждом из сценариев для конкретного игрока.
Не открывая статью, сможете ли вы быстро дать ответы на следующие вопросы, касаемые вашей игры:
1. Какими действиями игрок будет больше всего пользоваться в вашей игре?
2. Какую последовательность действий, выполняемую игроком, можно предугадать?
3. Как можно персонализировать пользовательский опыт, зная про поведение игрока в игре?
4. Какие пользователи хуже всего взаимодействуют с вашей игрой?
Автоматизация процесса улучшения пользовательского опыта включает в себя следующие компоненты:
1. Модель прогнозирования - предположение о том, как игрок будет себя вести в игре на осное знаний о его текущем поведении;
2. Рекомендательная модель - предложение игроку испытаний, которые ему нравятся больше всего;
3. Модель архетипов игроков - подбор испытаний и контента на основе знаний о том, к какой группе пользователей относится игрок;
4. Модель выявления аномалий - нужна для понимания природы изменения поведения игрока или выявления плохихи игроков;
5. Генерация возможностей - автоматизация создания контента для игроков в целом.
Подробнее, как всегда, можно прочитать в статье:
https://www.gamasutra.com/blogs/BenWeber/20191114/353773/Automating_Machine_Learning_for_MobileGames.php
#Геймдизайн #МашинноеОбучение
GAMASUTRA
Automating Machine Learning for Mobile Games
The following blog post, unless otherwise noted, was written by a member of Gamasutra's community. The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company. “One of the holy grails of machine learning is to automate…