Робособаку научили выключать свет и открывать холодильник ногой

Робот может передвигаться на трех ногах, а четвертой взаимодействовать с предметами

Швейцарские инженеры разработали нейросетевой алгоритм для четвероногого робота ANYmal, который позволяет использовать одну из его ног для манипуляции окружающими предметами (педипуляция). При этом робот сохраняет устойчивое положение и даже может ходить на трех ногах с поднятой передней лапой, выполняя манипуляции с объектами. В экспериментах робот показал способность открывать двери, выключать свет, дотягиваясь до расположенного на стене выключателя, а также перемещать предметы с помощью передней ноги. Препринт статьи опубликован на сайте arXiv.org.

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

Инженеры под руководством Марко Хуттера (Marco Hutter) из Швейцарской высшей технической школы Цюриха решили, что для взаимодействия с окружающими объектами четвероногий робот вполне может обойтись уже имеющимися конечностями. С помощью метода обучения с подкреплением они создали нейросетевой контроллер, который может позиционировать поднятую переднюю ногу робособаки таким образом, что ее стопа оказывается вблизи заданной точки пространства. При этом алгоритм позволяет роботу удерживать равновесие и передвигаться на трех ногах.

Обучение нейронной сети контроллера выполнялось с помощью алгоритма проксимальной оптимизации политики (Proximal Policy Optimization), а в качестве среды для обучения использовалась платформа Isaac Gym — виртуальная среда для симуляции и визуализации, разработанная компанией NVIDIA для тренировки роботов. Чтобы лучше адаптировать контроллер к реальному миру, в симуляции случайным образом варьировали параметры трения, а модель робота подвергалась воздействию случайных толчков. Кроме этого, поверхность, по которой робот двигался в виртуальной среде, задавалась неровной. Процесс обучения продолжался в течение пяти с половиной часов на GPU видеокарты NVIDIA GeForce RTX 2080 Ti.

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

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

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

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

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

Нашли опечатку? Выделите фрагмент и нажмите Ctrl+Enter.
Подъемник с конвейером поможет роборуке разгрузить тысячу коробок за час

Дополнительный модуль ускоряет работу грузового робоманипулятора Pixmo