Швейцарские, немецкие и американские инженеры научили робота ANYmal ходить, бегать и восстанавливаться после падений, используя нейросетевой алгоритм, а не заданные вручную алгоритмы-контроллеры. Особенность работы также заключается в том, что сначала алгоритм обучался во время симуляции, а затем выученный навык удалось перенести на реального робота, рассказывают авторы статьи в Science Robotics.
Инженеры уже создали множество ходячих роботов разных конструкций, в том числе достаточно совершенных. К примеру, широко известны роботы компании Boston Dynamics, способные удерживаться на ногах после ударов. Однако помимо аппаратной составляющей не менее важна программная. И здесь пока существует явная проблема — обычно инженерам приходится разрабатывать алгоритмы-контроллеры самостоятельно, основываясь на поведении реальных ходячих животных или виртуальных моделей. Такой подход отнимает много времени, а также не гарантирует, что разработчики найдут оптимальную походку для имеющейся конструкции. Существуют работы, в которых инженеры использовали нейросеть для управления и сначала симулировали ее поведение в виртуальном мире, а затем переносили в реальный, но в них использовались роботы с простой конструкцией.
Группа инженеров под руководством Марко Хюттера (Marco Hutter) из Швейцарской высшей технической школы Цюриха использовала аналогичный подход, но применила его для гораздо более сложного по конструкции робота ANYmal. Он имеет четыре ноги, состоящие из двух сегментов. Всего в роботе установлено 12 электромоторов — по три на каждую ногу, два из которых сгибают ее, а один, установленный в основании, отклоняет всю ногу вбок относительно корпуса.
Исследователи применили двухступенчатый подход, при котором одна нейросеть отвечает за планирование движений сегментов в целом, а вторая получает эти движения и подбирает конкретные значения усилия для каждого электромотора. Обе сети имеют структуру многослойного перцептрона. Для их обучения различным движениям авторы использовали метод обучения с подкреплением, при котором алгоритм получает от виртуальной среды награду за выполняемые действия и благодаря этому постепенно учится оптимальным действиям. После обучения в виртуальной среде обученные нейросетевые модели загрузили в компьютер реального робота ANYmal.
Благодаря новым алгоритмам инженерам удалось получить три основных результата. Во-первых, движения робота стали более стабильными и энергоэффективными. Во-вторых, максимальная скорость движения робота на 25 процентов выше, чем с применением других существующих алгоритмов для него. В-третьих, робот научился самостоятельно вставать на ноги из лежачего положения.
Хюттер и его коллеги давно занимаются экспериментами с роботом ANYmal, причем не только его программным обеспечением. К примеру, недавно они создали его модификацию, на концах ног которой закреплены колеса, приводимые в движение электродвигателями. Благодаря этому робот может переключаться между различными режимами движения и проходить по сложному рельефу эффективнее, чем аналогичные разработки.
Григорий Копиев