От симуляции к железу: новый стандарт для Microduck
Компания NVIDIA совместно с Hugging Face опубликовала руководство по интеграции робота Microduck (разработанного Pollen Robotics) с фреймворком NVIDIA Isaac Lab 3.0. Цель проекта — устранить разрыв между виртуальным обучением и реальным миром. Разработчики могут тренировать политику ходьбы в симуляции, экспортировать её в формат ONNX и мгновенно загружать на бортовой компьютер реального робота. Это позволяет тестировать алгоритмы на тысячах GPU-параллельных сред, избегая дорогостоящих ошибок при работе с физическим оборудованием.
Технические детали: Newton, Backlash и Domain Randomization
Ключевым элементом успеха является использование физического движка Newton с solver'ом MJWarp и моделированием актуаторов (BAM). Для обеспечения переносимости политики (Sim2Real) применяется доменная рандомизация. В симуляцию внедрены реалистичные физические ограничения, такие как люфт в редукторах (backlash), трение, задержка команд и просадка напряжения батареи. Это заставляет нейросеть учиться устойчивости к механическим несовершенствам реального робота.
Производительность и конфигурация обучения
Использование параллельных сред на GPU позволяет достигать высокой скорости обучения. При настройке с 4096 параллельными окружениями и включенным люфтом (backlash preset) система обрабатывает до 1.25 млн шагов в секунду. Обучение проводится с использованием библиотеки RSL-RL. Ниже приведены основные параметры задачи для развертывания на сложном рельефе:
| Параметр | Значение / Описание |
|---|---|
| Задача (Task) | IsaacContrib-Velocity-Rough-MicroDuck |
| Количество сред (num_envs) | 4096 |
| Пресет симуляции | backlash (моделирование люфта) |
| Входные данные (Observations) | 61 значение |
| Выходные данные (Actions) | 14 положений суставов |
| Формат экспорта | ONNX (policy.onnx) |
Пайплайн развертывания: от чекпоинта к ходьбе
Процесс перехода к реальному роботу автоматизирован. После оценки политики в симуляторе (команда isaaclab play) Isaac Lab автоматически экспортирует модель в папку exported/ в форматах TorchScript и ONNX. Для реального робота Microduck используется файл policy.onnx.
Развертывание происходит через SSH-подключение к роботу:
- Файл копируется на устройство:
scp exported/policy.onnx microduck@ROBOT_HOST:/home/microduck/my_walking.onnx - Политика загружается в runtime:
sudo robotctl policy load walk /home/microduck/my_walking.onnx
Разработчики также могут делиться моделями на Hugging Face Hub или участвовать в соревнованиях Microduck Arena, где принимаются модели размером до 64 MiB с указанными выше интерфейсами ввода-вывода.
Источник: Hugging Face blog ↗
