Чевероного робота-собаку ANYmal обучили ходить при помощи тренировки нейронной сети в симуляторе.
Подобный подход уже давно применяется в робототехнике, потому что использование симулятора имеет массу преимуществ в скорости, стоимости и безопасности.
В данном примере, симулятор позволял тренировать сразу 2000 роботов в режиме реального времени на обычном компьютере, что позволило получить достаточное количество дешёвых данных для обучения.
Разумеется, текущие симуляторы не могут обеспечить достаточную симуляцию сложных динамических систем, поэтому подход осованный только на данных от симулятора — не работает.
Дело в том, что аналитическая модель не включает в себя весь сложный механизм, который отображает команды управления в действующие обобщенные силы системы твердого тела: динамика приводов, задержки в управляющих сигналах (вызванные несколькими уровнями аппаратного и программного обеспечения), низкоуровневая динамика, демпфирование в суставах.
Так как подобного робота механизмы почти невозможно точно смоделировать — исследователями было принято решение отобразить процессы происходящие при выполнении командных действий (до результирующих моментов) при помощи глубокой нейронной сети.
Используется полносвязная сеть (multilayer perceptron — MLP) с тремя скрытыми сломи из 32 нейронов в каждом.
В качестве функции активации была выбрана функция Softsign:y = x / (1 + |x|)Сеть отображает наблюдаемое текущее состояние и данные о предыдущем положении сустава в целевое положение сустава.
Обучение этой «сети исполнительных механизмов» происходило на данных от реальной физической системы с помощью самообучения (self-supervised learning). Затем, эта сеть использовалась в процессе обучения робота в симуляторе (для моделирования каждого из 12 суставов ANYmal) выполнению требуемых действий.
Подобный подход позволяет использовать обученную сеть сразу на реальном роботе — без дополнительных переработок.
Управляющая сеть реализована в виде полносвязной сети (MLP) с двумя скрытыми сломи по 256 и 128 нейронов в каждом.
В качестве функции активации была выбрана функция tanh.
Как результат — четвероногий робот ANYmal смог показать результаты лучше, чем при обычном управлении: он научился выполнять движения более быстро, точно и энергоэффективно.
далее: Робот-собака учится передвижению по сложной местности при помощи обучения с подкреплением
Ссылки
Learning agile and dynamic motor skills for legged robots
По теме
Три робота-собаки: SpotMini, Laikago, Anymal
Обучение робота действию через однократную демонстрацию
Робота научили решать задачи на основе базовых знаний
Обучение робота ходьбе при помощи нейронной сети
Стрим про Reinforcement Learning
Нейронная сеть
Нейронная сеть — введение
Принцип обучения многослойной нейронной сети с помощью алгоритма обратного распространения
Пример работы самоорганизующейся инкрементной нейронной сети SOINN