Прыгающий гепард мчится по холмистому полю, перепрыгивая через внезапные расселины в пересеченной местности. Движение может выглядеть легким, но заставить робота двигаться таким образом — невероятная задача.
В последние годы четвероногие роботы, вдохновленные движением гепардов и других животных, сделали большой рывок вперед, но все же они все еще отстают от своих теплокровных собратьев, когда дело доходит до путешествий по быстро и случаной меняющемуся ландшафту.
Габриэль Марголис, аспирант лаборатории Пулкита Агравала, профессор компьютерных наук и технологий. Лаборатория искусственного интеллекта (CSAIL) в Массачусетском технологическом институте, говорит о такой модели передвижения следующее:
В таких условиях вам нужно использовать зрение, чтобы избежать неудач. Например, трудно избежать попадания в трещины, если вы ее не видите. Несмотря на то, что существуют некоторые существующие методы включения зрения в передвижение на ногах, большинство из них на самом деле не подходят для использования с развивающимися гибкими робототехническими системами.
Теперь Марголис и его сотрудники разработали систему, которая улучшает скорость и маневренность роботов на ногах, когда они прыгают через пропасти на местности. Новая система управления разделена на две части: одна обрабатывает входные данные в реальном времени с видеокамеры, установленной на передней части робота, а другая преобразует эту информацию в инструкции о том, как робот должен двигать своим телом. Исследователи протестировали свою систему на мини-гепарде Массачусетского технологического института, мощном и маневренном роботе, созданном в лаборатории профессора машиностроения Сангбэ Кима.
В отличие от других методов управления четвероногим роботом, эта система из двух частей не требует предварительного нанесения на карту местности, поэтому робот может отправиться куда угодно. В будущем это может позволить роботам отправляться в лес для выполнения миссии по реагированию на чрезвычайные ситуации или подниматься по лестнице, чтобы доставить лекарства пожилым людям.
Полный контроль
Использование двух отдельных контроллеров, работающих вместе, делает эту систему особенно инновационной.
Контроллер — это алгоритм, который преобразует состояние робота в набор действий, которым он должен следовать. Многие слепые контроллеры (те, у которых нет функции зрения) надежны и эффективны, но позволяют роботам только перемещаться по сплошной местности.
Зрение — это настолько сложный сенсорный ввод, который нужно обработать, что эти алгоритмы не могут справиться с ним эффективно. Системы, которые включают в себя обзор, обычно полагаются на "карту высот" местности, которая должна быть либо заранее построена, либо сгенерирована "на лету", процесс, который обычно является медленным и подвержен сбоям, если карта высот неверна.
Для разработки своей системы исследователи взяли лучшие элементы из этих надежных слепых контроллеров и объединили их с отдельным модулем, который обрабатывает зрение в реальном времени.
Камера робота фиксирует глубинные изображения приближающейся местности, которые передаются высокоуровневому контроллеру вместе с информацией о состоянии тела робота (углы суставов, ориентация тела и т. д.). Контроллер высокого уровня - это нейронная сеть, которая "учится" на собственном опыте.
Эта нейронная сеть выводит целевую траекторию, которую второй контроллер использует для определения крутящего момента для каждого из 12 суставов робота. Этот низкоуровневый контроллер не является нейронной сетью и вместо этого полагается на набор кратких физических уравнений, которые описывают движение робота.
Исследователи использовали метод проб и ошибок, известный как обучение с подкреплением, для обучения высокоуровневого контроллера. Они провели моделирование бега робота по сотням различных прерывистых ландшафтов и награждали его за успешные переходы. Со временем алгоритм узнал, какие действия увеличивают вознаграждение. Затем они построили физическую местность с зазорами из набора деревянных досок и проверили свою схему управления с помощью мини-гепарда.
В будущем исследователи надеются установить на робота более мощный компьютер, чтобы он мог выполнять все свои вычисления на борту. Они также хотят улучшить средство оценки состояния робота, чтобы исключить необходимость в системе захвата движения. Кроме того, они хотели бы улучшить низкоуровневый контроллер, чтобы он мог использовать весь диапазон движений робота, и улучшить высокоуровневый контроллер, чтобы он хорошо работал в различных условиях освещения.