Как Forza 5 и Xbox One используют облачные вычисления для работы самообучающегося ИИ

Руководитель проекта Forza 5 рассказывает об опыте использования облачных технологий Microsoft для работы самообучающейся системы Drivatar.

В октябре 2013 года журналист издания Ars Technica написал статью по итогам разговора с руководителем проекта Forza 5 Дэном Гринавальтом (Dan Greenawalt). Гринавальт рассказал, как работает самообучающийся ИИ в игре, и какие возможности для него открывают облачные программные интерфейсы Microsoft.

DTF публикует перевод статьи.

Как Forza 5 и Xbox One используют облачные вычисления для работы самообучающегося ИИ

Вот уже несколько месяцев Microsoft расхваливает способность игр на Xbox One использовать облачные вычислительные ресурсы для решения независимых от времени задач, которые невозможно просчитать на одной локальной консоли. Хотя Microsoft и раскрыла несколько деталей о том, как этот процесс будет работать, по большей части представители компании только загадочно размахивали руками и рассказывали, что «магия облака» сделает всё мощнее.

Поэтому, когда мы получили шанс поговорить с руководителем проекта Forza Motorsport 5 Дэном Гринавальтом, мы решили углубиться в то, как игра использует облачные ресурсы Microsoft для работы своей адаптивной самообучающейся системы ИИ под названием Drivatar. Мы узнали, как обработка огромного количества данных на серверах Microsoft открывает возможности, которые были недоступны на консолях предыдущего поколения.

Оно учится

Команда Drivatar в комплексе Microsoft Research в Кембридже создавала адаптивный ИИ для оппонентов, основанный на реальных пользователях, ещё с момента релиза первой Forza Motorsport на Xbox в 2005 году. Но предыдущие игры могли учиться только на отдельных гонках и должны были обрабатывать эти данные на локальном железе. Гринавальт говорит, что возможность собирать и обрабатывать информацию в облаке даёт результаты, которые «как небо и земля» по сравнению с прошлыми.

Мы и не думали об облаке, когда создавали Drivatar, но уже самая первая версия системы была построена на обучении. Мы хотим, чтобы поведение противников было очень похоже на человеческое.

Проблема в том, что системе нужно обрабатывать очень много данных. Ни Xbox, ни Xbox 360, ни Xbox One не обладают достаточной мощностью, чтобы делать то, на что способны несколько серверов. Я и не знал, что нам нужно было облако, пока оно у нас не появилось.

Дэн Гринавальт, руководитель проекта Forza 5

Прежде чем начинается магия, Forza Motorosport 5 записывает всю информацию о том, как вы играете, на вашу консоль. «Каждый раз, когда вы играете, когда я играю, консоль, а не облако, записывает данные о том, где вы были, в какой машине, как вы использовали газ, где были остальные машины на трассе. Удивительное количество деталей», — говорит Гринавальт.

Помимо данных о вашей машине игра также следит за всей связанной информацией, устанавливая соотношение между вашими действиями и действиями других машин на трассе. По словам Гринавальта, это может помочь ответить на вопросы о том, когда и почему игроки совершают определенные действия. «Зачем вы выезжаете за пределы трассы? Потому, что вы плохой водитель или просто объезжаете кого-то? Это всего лишь данные, но мы перезаписываем их, потому что любой кусочек этой информации, типа мест нахождения других машин, будет важен для самообучения системы».

Как Forza 5 и Xbox One используют облачные вычисления для работы самообучающегося ИИ

После каждой гонки Xbox One загружает несколько килобайт данных о состязании на серверы Microsoft, где алгоритмы Drivatar непрестанно «прочёсывают» массив информации в поисках характерных шаблонов. «Если подумать, мы пытаемся вскипятить океан, — говорит Гринавальт. — Есть миллионы и миллионы результатов, а машинное обучение соотносит и обобщает. Эта задача не совсем для ПК. Он смог бы её выполнить, но это заняло бы очень много времени».

Сейчас этот океан информации больше похож на тихий ручеёк — пока что только около 400 членов команды Forza вносят данные в Drivatar.

Несмотря на это, система смогла сама по себе выучить некоторые образцы поведения на трассе, проанализировав тысячи гонок

«Мы вообще не программировали поведение системы, — говорит Гринавальт. — Она берёт данные, обрабатывает их, сопоставляет, обобщает и создает шаблон. Например: "О, я заметила, что 20% игроков, когда перед ними была машина на Laguna Seca, выезжали на внешнюю сторону, а потом ныряли во внутреннюю". Мы видим это и думаем: "Ого, он его обманул". Компьютеру необязательно знать название действия, он просто знает, что мы сделали так в такой же ситуации. Так он научился обманному маневру».

Как Forza 5 и Xbox One используют облачные вычисления для работы самообучающегося ИИ

Гринавальт вспомнил реальный случай, когда Drivatar удивил его выученным движением. «Я увидел, как три машины в ряд входили в поворот, и подумал: "Посмотрим, что будет". Они видели друг друга и смогли войти в поворот, а потом одна из них вырвалась вперед, и я пристроился за ней. Затем я увидел, как два оставшихся водителя, в общем-то, обманывали друг друга через весь поворот. Один выехал на внешнюю сторону, другой пошел во внутреннюю, первый нырнул внутрь, второй его объехал, и получился двойной обход».

«Так делают люди, но ИИ никогда, разве что если выполняет скрипт, — продолжил он. — Я ни разу не видел, чтобы в игре такое происходило без скриптов. И компьютер научился этому потому, что мы так делали. Он сделал так из-за нас, и это очень круто».

Давить троллей и персонализировать ИИ

Опасности обучения у настоящих игроков заключаются, разумеется, в том, что система может научиться у людей, которые или плохо играют сами по себе, или специально дурачатся в игре. Даже в ограниченной выборке разработчиков, как признается Гринавальт, «есть придурки, с которыми мне приходится работать. Они уже пытаются научить систему неправильно, поиздеваться над ней».

Как Forza 5 и Xbox One используют облачные вычисления для работы самообучающегося ИИ

И тут на сцену выходит человеческое суждение, чтобы почистить Drivatar от самых неудачных моделей поведения. «Мы вручную говорим ей, что не нужно учить, — объясняет Гринавальт. — Она создает новое поведение, говорит: "Я видела много подобного, я буду делать так же". А мы отвечаем: "Не делай ничего из этого, а если увидишь, что кто-то поступает так, просто забудь"».

Модели поведения, прошедшие проверку, загружаются на консоль в форме различных Drivatar, которые представляют обобщённые навыки настоящих пользователей. Эти персонализированные гонщики становятся тем лучше, чем больше данных им передается, но Гринавальт говорит, что система хорошо вычисляет, что должен делать ваш Drivatar, основываясь на вашем поведении в похожих игровых ситуациях.

Вы видели башни из бокалов шампанского? Представьте, что каждый бокал — это состояние гонки. Чем больше вы вливаете, тем лучше они становятся сверху донизу. Затем мы просто исключаем устаревшие данные и получается среднее значение навыков пользователей. В игре надо пройти три гонки для настройки Drivatar, и они дают нам хороший набор моделей поведения для персонализации.

Дэн Гринавальт, руководитель проекта Forza 5

Гринавальт говорит, что возможность использовать облачные программные интерфейсы для Drivatar — это самое большое отличие Xbox One от предыдущих поколений консольного железа, больше, чем все графические улучшения или возможности физического моделирования. Он утверждает, что системы типа Drivatar — это лишь «верхушка айсберга» возможных применений для этой технологии.

«Эта идея с Drivatar сработала бы и в шутере от первого лица, — сказал он. — Если подумать о том, какие выборы мы совершаем в шутерах, то можно увидеть определенные маршруты, любимые виды оружия, точность, процентные соотношения. Я думаю, это возможно, хоть и не знаю, будет ли подобное реализовано. У нас есть свой вариант использования мощности облака, другие разработчики придумают что-то ещё».

2020
5 комментариев

Не бывает самообучающегося ИИ. Любой ии следует написанным функциям. Кто изобрет самообучение ИИ получит Нобеля...

Ответить

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

5
Ответить

Спасибо за перевод

1
Ответить

Кто играл в Horza? Что там ИИ правда лучше чем в других гонках?

Ответить

Там два вида ИИ, условно обычный.. и тот, который называется Драйватар. В статье речь идет именно о втором. Драйватар сам по себе не является видом ИИ, который симулирует вождение, он симулирует поведение живых людей. Причем не каких то там усредненных и эфемерных, а вполне конкретных из списка друзей Xbox Live, которые тоже играют в Форцу. Его назначение не сделать гонки похожими на настоящие, а сделать так, что бы игрок верил в то, что он играет с каким-то конкретным человеком, особенности игры которого он знает. Судя по отзывам, справляется Драйватар со своей задачей более, чем успешно http://www.vesti.ru/doc.html?id=2806191&cid=9

1
Ответить