Как заставить робота играть в настольный теннис?
В настоящее время настольный теннис является одним из главных событий Олимпийских игр в Париже, где игроки демонстрируют высокий уровень физической подготовки, способность быстро двигаться, точный контроль над различными видами мячей и сверхчеловеческую чувствительность.
Именно поэтому с 1980-х годов исследователи использовали настольный теннис в качестве эталона для роботов, разработав множество роботов для настольного тенниса и добившись прогресса в возврате мяча на половину поля противника, попадании в целевые позиции, смэшах, совместной игре и многих других ключевых аспектах настольного тенниса. Однако до сих пор ни один робот не провел полный матч по настольному теннису с незнакомым человеком-противником.
В этом исследовании команда Google DeepMind достигла уровня игры любителя-человека в соревновательном матче по настольному теннису между роботом и человеком-игроком с помощью иерархической и модульной архитектуры стратегии, итеративного определения распределения задач, адаптации от симуляции к симуляции, рандомизации домена, адаптации в реальном времени к неизвестному противнику и развертывания на аппаратном обеспечении.
1. Иерархическая и модульная архитектура стратегии на основе библиотеки навыков
Контроллеры низкого уровня (LLC): Эта библиотека содержит различные навыки настольного тенниса, такие как атака форхендом, позиционирование бэкхендом, подача форхендом и т.д. Каждый LLC является независимой стратегией, сосредоточенной на обучении конкретному навыку. Эти LLC обучаются с помощью нейронных сетей и тренируются в симуляции с использованием физического движка MuJoCo.
Контроллеры высокого уровня (HLC): HLC отвечает за выбор наиболее подходящего LLC в зависимости от текущей ситуации в игре и способностей противника. Он состоит из следующих модулей:
Стратегия выбора стиля: Эта стратегия выбирает между форхендом и бэкхендом в зависимости от типа входящего мяча (подача или атака).
Классификатор вращения: Этот классификатор определяет, имеет ли входящий мяч верхнее или нижнее вращение.
Дескрипторы навыков LLC: Эти дескрипторы записывают показатели производительности каждого LLC при различных условиях входящего мяча, такие как точность попадания и место приземления мяча.
Модуль выбора стратегии: Этот модуль генерирует список кандидатов LLC на основе дескрипторов навыков LLC, статистики матча и способностей противника.
Предпочтения LLC (H-value): Этот модуль использует градиентный бандитский алгоритм для онлайн-обучения значениям предпочтений для каждого LLC и выбирает окончательный LLC на основе этих значений.
2. Техники для реализации перехода от симуляции к реальности без примеров
Итеративное определение распределения задач: Этот метод собирает начальные данные о состоянии мяча из матчей человек-человек и обучает LLC и HLC в симулированной среде. Затем данные, сгенерированные в симуляции, добавляются в набор данных реального мира, и процесс повторяется, постепенно уточняя распределение обучающих задач.
Адаптационный слой от симуляции к симуляции: Для решения проблемы различий в параметрах модели верхнего и нижнего вращения в симулированной среде в статье предлагаются два решения: регуляризация вращения и адаптационный слой от симуляции к симуляции. Регуляризация вращения решает проблему путем корректировки обучающего набора данных для LLC, в то время как адаптационный слой от симуляции к симуляции использует слои FiLM для изучения отображения между верхним и нижним вращением.
Рандомизация домена: В процессе обучения в статье применяется рандомизация параметров в симулированной среде, таких как шум наблюдения, задержка, демпфирование стола и ракетки, трение и т.д., для имитации неопределенностей реального мира.
3. Адаптация в реальном времени к неизвестному противнику
Отслеживание статистики матча в реальном времени: HLC отслеживает статистику матча в реальном времени, такую как очки и ошибки робота и противника, и корректирует значения предпочтений LLC на основе этих данных, адаптируясь к изменениям противника.
Онлайн-обучение предпочтениям LLC: С помощью градиентного бандитского алгоритма HLC может обучаться значениям предпочтений для каждого LLC в режиме онлайн и выбирать более подходящий LLC на основе слабостей противника.
Исследовательская команда собирает небольшое количество данных о игре человек против человека для инициализации условий задачи. Затем агент обучается в симуляции с использованием обучения с подкреплением (RL) и развертывается на реальном оборудовании без примеров с использованием различных техник. Этот агент играет против человеческих игроков, чтобы генерировать больше условий обучающих задач, после чего цикл обучения-развертывания повторяется. По мере улучшения робота стандарты игры становятся все более сложными, оставаясь при этом основанными на условиях задач реального мира. Этот гибридный цикл симуляции-реальности создает автоматизированный курс задач, который повышает навыки робота с течением времени.
Как он играет?
Для оценки уровня навыков агента робот провел соревновательные матчи с 29 игроками в настольный теннис разного уровня мастерства - начинающими, средними, продвинутыми и продвинутыми+, уровни которых были определены профессиональным тренером по настольному теннису.
Против всех противников робот выиграл 45% матчей и 46% отдельных сетов. При разбивке по уровням мастерства видно, что робот выиграл все матчи против начинающих, проиграл все матчи против продвинутых и продвинутых+ игроков и выиграл 55% матчей против игроков среднего уровня. Это убедительно свидетельствует о том, что агент достиг уровня игрока среднего уровня в раундах.
Участникам исследования понравилось играть с роботом, они высоко оценили его как "веселого" и "увлекательного". Эти оценки были одинаковыми для всех уровней мастерства, независимо от того, выиграл участник или проиграл. Они также подавляюще ответили, что "определенно хотели бы" сыграть с роботом снова. Когда им дали свободное время для игры с роботом, они в среднем играли 4 минуты 06 секунд из общих 5 минут.
Продвинутые игроки смогли использовать слабости в стратегии робота, но им все равно нравилось играть с ним. В послематчевых интервью они считали его более динамичным партнером для тренировок, чем машина для подачи мячей.
Недостатки и перспективы
Исследовательская команда заявляет, что эта система обучения роботов все еще имеет некоторые ### ограничения, такие как ограниченная способность реагировать на быстрые и низкие мячи, низкая точность определения вращения, отсутствие многоходовых стратегических тактик и т.д.
Будущие направления исследований включают улучшение способности робота обрабатывать различные типы мячей, изучение более сложных стратегий, улучшение технологий захвата движения и т.д.
Исследовательская команда также заявляет, что предложенная в исследовании иерархическая архитектура стратегии и методы перехода от симуляции к реальности без примеров могут быть применены к другим задачам обучения роботов. Кроме того, техники адаптации в реальном времени могут помочь роботам лучше адаптироваться к постоянно меняющимся средам и задачам. Более того, принципы проектирования системы имеют решающее значение для разработки высокопроизводительных и надежных систем обучения роботов.