16.04.2024
Подписывайтесь на Telegram-канал по ссылке

Четвероногий робот с помощью нейросети научился работать в невесомости

Low Gravity Robots

Швейцарские инженеры научили четвероногого робота маневрировать в невесомости и при низкой силе тяжести. Он научился разворачиваться, двигая ногами в полёте, и отталкиваться от поверхностей под заданным углом. Статья об алгоритме и испытаниях опубликована в журнале IEEE Transactions on Robotics.

Четвероногие ходячие роботы эффективнее своих колёсных аналогов при работе на пересечённой местности. Из-за этого их долго планировали использовать американские военные (хотя в итоге и передумали), а также их предлагают использовать для исследования других планет. Потенциально ходячие роботы действительно могут помочь в исследовании каменистых областей Марса, Луны или других небесных тел, но условия на них отличаются от земных.

Одно из таких отличий сниженная сила тяжести на некоторых небесных телах. Из-за этого при слишком большом отталкивающем усилии робот может подпрыгнуть и провести в полёте заметное время. Например, зонд «Филы» при посадке на комету Чурюмова — Герасименко отскочил от её поверхности и провёл в полёте два часа перед следующим контактом. На планетах разница в силе тяжести не столь велика, но и она приведёт к тому, что земная модель управления роботом не будет подходить для работы в новых условиях.

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

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

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

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

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