MIRA: модель мира целиком симулирует Rocket League, не требуя установки самой игры

MIRA world model rocket league simulation AI

Команды General Intuition, Kyutai и Epic Games представили MIRA — мировую модель (world model), которая целиком симулирует игровую среду Rocket League для четырёх игроков одновременно и рисует каждому свою картинку в реальном времени. Ключевой момент: движка игры тут нет вообще. Нет физического движка, который считает столкновения мяча и машин, нет рендерера, который рисует арену. Всё это заменяет одна нейросеть, которая по нажатиям кнопок игрока сама дорисовывает следующий кадр. По сути игра целиком «живёт» внутри весов модели, и запустить её можно локально, без установки оригинальной Rocket League. Авторы выложили код обучения и инференса на Github, датасет из ~10 000 часов геймплея на Hugging Face. Поиграть можно прямо в браузере в демо-версии.

Обычно мировая модель — это нейросеть, которая учится предсказывать, как изменится сцена в ответ на действия игрока, и таким образом работает как управляемый симулятор. Раньше такие модели умели слушаться одного игрока, а всех остальных считали просто частью окружения. MIRA слушается сразу четверых и учится понимать, чьё действие к какому изменению на экране привело.

Зачем вообще нужна многопользовательская мировая модель

Идея мировой модели в том, чтобы нейросеть выучила динамику среды прямо из опыта: строит внутреннее скрытое представление мира и предсказывает будущие состояния с учётом действий. Внутри такого выученного симулятора можно тренировать агентов, проверять их и имитировать последствия действий до того, как совершить их в реальной среде. Но большинство существующих моделей смотрят на мир глазами одного агента. Это мешает применять их там, где важен явный контроль над несколькими участниками: обучение с подкреплением через игру с самим собой (self-play), мультиагентное обучение, оценка контрфактических стратегий.

Авторы взяли Rocket League потому, что это удобный полигон. Это игра с быстрой физикой, где машинки и мяч сталкиваются на скорости, а игроки одновременно и соперничают, и кооперируются. При этом игра позволяет легко собирать данные в огромных объёмах и точно логировать действия. Сложность в том, что переход от одного игрока к четырём это не просто добавление входов: модель должна научиться приписывать изменения сцены правильному игроку, представлять взаимодействия между ними и оставаться связной при любых комбинациях действий. Появляются новые способы сломаться, которых не было раньше: модель может перепутать, кто на что влияет, проигнорировать действия одного из игроков или смешать эффекты нескольких.

Четыре ряда (виды четырёх игроков) и три столбца (три момента времени t0, t0+6с, t0+8с). Модель воображает динамичную игровую сцену, согласованную между всеми видами

Как это устроено внутри

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

Сам кодек — это видео-автоэнкодер, построенный на замороженном экстракторе признаков DINOv3-L. Ключевая находка: если строить скрытое пространство поверх предобученного экстрактора признаков, а не учить его с нуля, то предсказывать в таком пространстве получается заметно легче и стабильнее на длинных горизонтах. Экстрактор признаков остаётся замороженным, обучаются только линейное «бутылочное горлышко» и декодер.

Схема метода: кодировщик сжимает виды четырёх игроков в скрытые кадры, мировая модель предсказывает следующий скрытый кадр с учётом действий, декодер разворачивает его обратно в четыре вида

Сама мировая модель — это диффузионный трансформер на 5 миллиардов параметров с факторизованным пространственно-временным вниманием. Обучают её через согласование потоков (flow matching). Важный приём здесь диффузионное форсирование (diffusion forcing): каждому кадру в обучающей последовательности достаётся свой уровень шума, поэтому модель тренируется на частично испорченном контексте. Это имитирует ситуацию на инференсе, где модель опирается на собственные несовершенные предсказания, и не даёт мелким ошибкам накапливаться и уводить картинку в сторону на длинном горизонте.

Чтобы четыре вида были согласованы, картинки четырёх игроков складывают в одну сетку и предсказывают вместе. Пространственное внимание тогда охватывает сразу все виды, и модель рисует общий мир, мяч и чужие машины одинаково со всех четырёх ракурсов за один проход. Действия каждого игрока кодируются отдельно и подаются в модель через адаптивную послойную нормализацию (adaptive layer normalization). Ещё есть приём случайного отключения действий (action dropout): во время обучения действия случайного игрока иногда заменяют на специальный токен «действие отсутствует», и модель учится предсказывать этого игрока по одной только сцене. На инференсе это позволяет самой модели играть за любого игрока, которым пользователь не управляет

Как обучали и на каких данных

Датасет состоит из 10 000 часов записанных матчей Rocket League в режиме 2 на 2, полностью сгенерированных ботами, которые играют сами с собой. Человеческих данных в обучающем наборе нет. За каждый матч получается четыре синхронизированные записи от первого лица, по одной на игрока. Каждая запись это видео плюс поток действий игрока плюс физическое состояние игры. За рулём всех машин бот Nexto, самый сильный публично доступный бот для этой игры, обученный через self-play обучение с подкреплением.

Физическое состояние игры (позиции, скорости, ориентации мяча и машин) логируется отдельно на 120 Гц. Мировая модель его не видит и учится только на пикселях и действиях. Это состояние нужно как эталонная разметка для проверки: по нему авторы смотрят, кодирует ли модель в своих признаках физически осмысленные величины.

Какие эмерджентные свойства появились

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

Первое: модель как будто моделирует «теорию разума» для игроков, чьи действия скрыты. Благодаря action dropout на инференсе неуправляемая машина продолжает правдоподобно играть, двигается и борется за мяч, как настоящий игрок, безо всякой разметки действий. Причём боты, которые генерировали обучающие клипы, имели доступ ко всему состоянию игры, а модель восстанавливает их сложные решения по одним пикселям.

Второе: модель держит все четыре представления взаимно согласованными. Машина, которая ушла из одного экрана, остаётся в других, и когда возвращается в кадр, появляется там, где её видят остальные. То же и с событиями: когда мяч влетает в ворота, надпись «SCORED!» и взрыв ворот появляются одновременно во всех четырёх экранах.

mira world model imagination
Четыре ряда видов игроков и три момента времени: мяч влетает в ворота, надпись SCORED и взрыв ворот появляются одновременно во всех четырёх видах, счёт обновляется с 2-1 на 3-1

Третье: модель обобщается за пределы обучающего распределения действий. Например, сцены, где все машины стоят на месте, в данных не встречается никогда (записанная игра всегда в движении), но модель всё равно удерживает такую сцену стабильной, и машины сами по себе не разъезжаются. Живые люди играют совсем не так, как боты: боты жмут кнопки быстро и однообразно (около 390 действий в минуту), а люди медленнее и куда разнообразнее. Тем не менее в живом демо под управлением человека модель остаётся отзывчивой и связной.

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

Результаты на бенчмарках

Поскольку точное будущее в такой игре знать нельзя, оценивать роллаут по попиксельному совпадению с эталоном бессмысленно. Авторы придумали набор метрик, которые проверяют физику и управляемость, а не только внешний вид. Основные распределенческие метрики это gFID, gFVD и gFDD (варианты дистанций Фреше между сгенерированным и настоящим видео, чем меньше, тем лучше). Отдельно есть Action Recoverability Ratio (ARR): пробник (probe) пытается по сгенерированному видео определить, какие кнопки были нажаты, а метрика показывает, насколько верно модель отрисовывает поданные ей действия. ARR = 1 означает, что действия читаются из генерации так же хорошо, как из честной реконструкции. Ещё есть game-state probe, который читает из внутренних активаций модели позиции и скорости мяча и машин и сверяет их с настоящей физикой. Обе метрики авторы сверили с оценками живых людей: ARR совпадает с человеческим восприятием управляемости с корреляцией Пирсона 0.84 и Спирмена 0.93.

MIRA drifting rocket league
Роллаут пиксельной модели слева направо: сцена держится первые кадры, потом быстро вырождается в искажённую бесструктурную текстуру

Латентное пространство необходимо, и разрыв тут огромный. Модель в пикселях без кодека отстаёт на порядок: gFID 104.9 против 10.7 у латентной модели, gFVD 1456.3 против 163.1, а по управляемости ARR 0.61 против 0.91. Даже с рецептом JiT пиксельная модель остаётся хуже, и её роллаут уже через секунду сваливается в искажённую текстуру.

Latent vs pixel space

Экстрактор признаков обязательно должен быть предобученным. Экстрактор, обученный с нуля, рисует резче (PSNR 32.2 против 29.7), но его скрытое пространство куда труднее генерировать: gFID подскакивает до 22.5 против 10.7, а на длинном роллауте он дрейфует в 1.7 раза сильнее замороженного DINOv3-L. Вариант с дистилляцией DINO в экстрактор с нуля лежит посередине (gFID 15.7, дрейф 1.3x). Авторы объясняют это гладкостью предобученных признаков: близкие состояния отображаются в близкие латенты, поэтому ошибочное предсказание остаётся правдоподобным и поглощается.

Feature-extractor adaptation

Diffusion forcing чётко выигрывает у teacher forcing. На горизонте 4 секунды diffusion forcing даёт gFID 10.7 против 32.5, gFVD 163.1 против 944.1. А за пределами обучающего окна teacher forcing вообще деградирует и держит gFID примерно в 10 раз выше на пятиминутном роллауте (таблица 8 и рисунок 9 на стр. 23 пейпера).

Objective and drift

Objective and drift
gFID на пятиминутном роллауте в логарифмическом времени: за обучающим окном teacher forcing резко деградирует и держится примерно в 10 раз выше, diffusion forcing остаётся низким и плоским

Дистилляция в несколько шагов (PSD) тоже помогает: она обгоняет базовую модель на любом числе шагов сэмплирования и остаётся стабильной даже при очень малом их количестве, что и делает возможным реальное время.

По масштабированию картина ожидаемая. Модели растили от 100 миллионов до 5 миллиардов параметров, и качество монотонно улучшается: крупные модели сходятся быстрее и к меньшей ошибке. Game-state probe подтверждает это со стороны физики: ошибка чтения позиции мяча падает с 2130 у модели на 100M до 1448 у модели на 5B.

Larger models improve generation quality and encode physical state more faithfully

Самые заметные приросты между малыми масштабами, дальше отдача уменьшается: 2.5B и 5B при этом бюджете данных выходят на сопоставимое качество. Отдельно любопытно про многопользовательский режим: обучать модель на четырёх игроках с нуля при малом бюджете плохо (модель коллапсирует), лучше сначала предобучить на одном игроке, а потом дообучить на четырёх, стартуя с одиночного чекпоинта. При удвоенном бюджете данных коллапс исчезает, и смесь с перевесом в сторону мультиплеера (75% мультиплеера, 25% одиночной) даёт лучший gFID 9.4.

Где модель всё ещё ошибается

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

Мяч, оставленный без внимания, склонен сам катиться к воротам: неподвижный мяч в данных редок, и выученный приор модели предпочитает продолжение движения. Машина игрока иногда прыгает или включает ускорение без нажатия кнопки, особенно при вводе мяча с центра поля, когда боты почти всегда стартуют одинаково. Часы и счёт со временем сбиваются, обычно на переходах (гол, пересечение отметки времени), потому что такие моменты случаются раз за игру и слабо представлены в данных. В одиночной версии есть отдельная беда: машины могут «слипаться» с мячом, но в многопользовательской модели, где она видит все четыре машины, этого уже не происходит.

The clock drifts from real time.
Сгенерированный роллаут, снятый раз в секунду, с увеличенным табло: за пять секунд часы почти не двигаются, показывая 4:54, 4:53, 4:53, 4:52, 4:54, 4:53

Итог

MIRA это первая интерактивная многопользовательская мировая модель для настолько динамичной среды со сложной физикой. Она управляется четырьмя игроками одновременно, держится связной на роллаутах длиной в час и работает в реальном времени на 20 кадрах в секунду на одной Nvidia B200. Три решения сделали результат: предсказание в скрытом пространстве поверх замороженного предобученного экстрактора признаков (это ничего не дало в реконструкции, но именно это остановило дрейф на длинных роллаутах), diffusion forcing с дистилляцией в несколько шагов ради стабильности и скорости, и кондиционирование сразу на четырёх потоках действий. Ограничения авторы называют честно: одна игра, один тип ботов, короткая память и перекосы в данных. Всё это, вместе с датасетом, кодом и живым демо, выложено открыто, чтобы двигать исследования мировых моделей дальше.


neurohive telegram
Подписаться
Уведомить о
guest

0 Comments
Старые
Новые Популярные