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

У инженеров получилось то, что долго считалось одной из самых сложных задач в робототехнике: робот впервые начал играть в аэрохоккей на реальном столе, проведя всю подготовку исключительно в виртуальной среде.
University of British Columbia/HudsonNock

По данным Hackster — онлайн-платформы, где разработчики публикуют инженерные и робототехнические проекты, — команда из трех студентов Университета Британской Колумбии показала, что искусственный интеллект способен освоить динамичную игру в виртуальной среде, а затем успешно применить полученные навыки в реальных условиях.

Робот, обученный исключительно в симуляции

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

Канадская команда решила пойти другим путем. Вместо тренировок на настоящем столе для аэрохоккея исследователи создали его максимально точную цифровую копию. Именно в этой виртуальной версии ИИ проходил все обучение.

После завершения подготовки алгоритм перенесли на физическую установку и проверили, сможет ли робот противостоять человеку без дополнительной настройки. Результат оказался неожиданно успешным. Несмотря на полное отсутствие опыта вне симуляции, система сразу начала играть на конкурентном уровне.

Почему аэрохоккей считается сложной задачей

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

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

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

Как ИИ научили ждать неожиданностей

Аэрохоккей
Фото: University of British Columbia
Стол для аэрохоккея с встроенным роботом

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

Такой подход называется рандомизацией домена. Суть метода в том, что вместо одного идеального мира ИИ сталкивается с тысячами вариаций одной и той же среды. В результате алгоритм учится не запоминать конкретные ситуации, а адаптироваться к неопределенности.

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

Миллионы матчей за короткое время

Для ускорения подготовки команда отказалась от традиционных игровых движков вроде Unity или Unreal. Вместо этого исследователи использовали метод обучения, известный как Soft Actor-Critic.

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

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

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

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

За движение робота отвечал механизм типа Core XY с двумя двигателями и микроконтроллером STM32. Для повышения точности инженеры заранее изучили реакцию системы на различные управляющие сигналы и использовали комбинацию прямого управления и ПИД-регулятора — алгоритма, который постоянно корректирует движение и помогает удерживать объект на заданной траектории.

Не только для игр

Хотя проект выглядит как эффектная демонстрация возможностей искусственного интеллекта, его значение выходит далеко за пределы аэрохоккея.

Если сложные навыки действительно можно надежно переносить из симуляции в реальные условия, это способно ускорить разработку самых разных автономных систем.

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

Подписывайтесь и читайте «Науку» в MAX