Балансируя при этом на задних колесах
Швейцарские инженеры разработали для четвероногого робота на колесах алгоритм управления, основанный на обучении с подкреплением с внутренней мотивацией, для выполнения задач одновременного движения на задних колесах и манипуляции предметами с помощью передних конечностей. Робот под управлением алгоритма научился успешно выполнять тестовые задания — открывать запертую дверь, и выбрасывать лежащую на столе коробку в контейнер. Доклад с описанием алгоритма опубликован в рамках конференции CoRL 2023.
При поддержке высокопроизводительного и масштабируемого российского веб-сервера Angie
Четвероногий робот ANYmal, способный передвигаться по сложному рельефу, был создан в 2016 году инженерами из Швейцарской высшей технической школы Цюриха. Через некоторое время появилась его модифицированная версия с установленными на концах ног колесами, благодаря которым робот получил возможность передвигаться, комбинируя езду и ходьбу. Позднее инженеры из компании Swiss-Mile научили этого робота удерживать вертикальное положение, балансируя на двух задних колесах. Две верхние конечности в этом случае могут использоваться в качестве манипуляторов для взаимодействия с окружающими предметами.
Однако для того, чтобы реализовать одновременное выполнение действий верхними конечностями и передвижение на задних колесах, необходимо решить довольно сложную алгоритмическую задачу. Обычно ее стараются упростить путем разделения на две части: задачу локомоции и задачу взаимодействия с объектом, которые затем дополнительно разбиваются на ряд этапов. Такой подход не универсален и требует множества ручных настроек под каждый конкретный сценарий.
Марко Хуттер (Marco Hutter) и его коллеги из Швейцарской высшей технической школы Цюриха разработали для четвероногого колесного робота алгоритм, основанный на методе обучения с подкреплением, мотивированным любопытством (curiosity-driven learning), который позволил решить задачу одновременной локомоции на задних колесах и манипуляций с объектами как единое целое. Как известно обучение с подкреплением — это подход, в котором агент самостоятельно обучается взаимодействовать с окружающей средой методом проб и ошибок. Он выбирает, какие действия совершить, чтобы выполнить поставленную задачу, и в результате получает отклик от среды в виде награды или штрафа — числовой сигнал, который используется алгоритмом для определения того, насколько успешно выполнено действие. Конечная цель — найти последовательности действий, которая приводит к получению максимальной суммарной награды.
В данном случае вместо множества отдельных наград, получаемых за подзадачи, разработчики решили использовать одну награду, которую агент получает от среды за правильное выполнение конечной цели задания. Например, в одной из тестовых ситуаций получение награды происходит за раскрытие запертой двери, а в другой — за перемещение лежащей на столе коробки в корзину.
Для того чтобы агент смог за разумное время сам найти правильную последовательность действий для получения итоговой награды, разработчики применили концепцию обучения, мотивированного любопытством, реализованную в методе случайной сетевой дистилляции (Random Network Distillation). Агент в нем имеет механизм внутренней мотивации, стимулирующей его получать новый опыт. Технически это выражается в виде дополнительного вознаграждения, которое агент получает за изучение новых, еще неисследованных областей в пространстве состояний. Для этого агент пытается предсказать результаты собственных действий и получает награду в зависимости от того, насколько точны эти предсказания — чем точнее, тем меньше величина получаемого вознаграждения. Это побуждает агента исследовать среду и пробовать действия, которые он еще не выполнял, приобретая новые навыки.
Обучение алгоритма выполнялось на графической карте Nvidia RTX 2080 Ti. На каждый полный цикл, включающий в себя для обеспечения сходимости величины вознаграждения 2000 обновлений политики, требовалось около одного часа. Обученный алгоритм сначала проверяли в симуляции, а затем переносили на реального робота Swiss-Mile в лаборатории. С первым заданием, в котором робот должен подъехать к закрытой двери и распахнуть ее, нажав на дверную ручку правым колесом, одновременно толкая дверь вперед, робот справился более 15 раз подряд без единого сбоя.
В задаче взаимодействия с предметом, робот с обученным алгоритмом надежно обхватывал лежащую перед ним на столе коробку колесами на передних конечностях, после чего поворачивался к стоящему рядом со столом контейнеру и выбрасывал коробку в него. С этим заданием робот справился более 5 раз подряд. Правда, в одном из тестов, робот не удержал и выронил объект обратно на стол, однако затем снова подобрал его, после чего закончил задание успешно.
Способность самостоятельно обучаться и выполнять сложные действия может пригодиться роботам не только на земле, но и на других планетах. Специалисты из Лаборатории реактивного движения NASA предложили исследовать Марс с помощью команды из робособак. Каждый член робособачей стаи будет отличаться от других, иметь свою роль в группе и помогать остальным.
Теперь он может преодолевать выступы высотой до трех сантиметров
Инженеры из Японии разработали двухколесного робота на безободных колесах, спицы которых играют роль ног при передвижении. Для того, чтобы робот смог преодолевать неровности и ступеньки, его ноги сделали телескопическими, поместив внуть пружинные элементы, параметры которых были рассчитаны с помощью численного моделирования. Благодаря такой конструкции робот стал лучше адаптироваться к неровному рельефу и теперь может преодолевать ступеньки высотой 0,03 метра, не теряя скорости и равновесия. Статья опубликована в журнале Artificial Life and Robotics.