Виртуальная эволюция ходьбы


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

Гораздо более дешевый способ проверить алгоритмы ходьбы роботов — использовать симулятор физики — тогда реальные вещи не сломаются, когда произойдет сбой и существо упадет. Этот подход имеет долгую историю, но последняя попытка группы голландских исследователей, описанная в книге «Гибкое мышечное движение для двуногих существ», заслуживает некоторого внимания, поскольку кажется эффективным и не требует каких-либо исходных данных о том, как ходить.
Возьмите смоделированный скелет и прикрепите набор смоделированных с биологической точки зрения мышц — оба в полном 3D. Мышцы даже имеют нервную задержку, включенную во все пути обратной связи. Расположение мышц, направление движения мышц не фиксировано, и это часть оптимизации вместе с системами управления мышцами. Это немного похоже на развитие мышечной системы, которая лучше всего работает с данным скелетом.

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

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

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

Оптимизация выполняется с помощью адаптации матрицы ковариаций, о которой стоит знать. Сначала создается начальная совокупность со случайными параметрами, выбранными из нормального распределения с единичной ковариационной матрицей. Затем существа в популяции проверяются и оцениваются в соответствии с их приспособленностью.
Извлекается небольшая выборка, в данном случае 20 наиболее приспособленных членов популяции, и вычисляется средний вектор и ковариационная матрица этой «выжившей» группы. Следующее поколение создается с использованием нормального распределения с вектором среднего выжившего и ковариационной матрицей, пропорциональной ковариационной матрице выжившего. Это стохастическая версия градиентного приличного, и она находит оптимальные параметры в этом случае от 2 до 12 часов на настольном ПК с поколениями от 500 до 3000.

Что интересно в этом подходе, так это то, что он не использует какие-либо зафиксированные данные о движении для создания двуногого передвижения — только биологически вдохновленные существа, их физиологию и физику.
Можно ли заставить это работать с настоящими двуногими роботами?
Я предполагаю, что робототехники, вероятно, не стали бы кидать ящики в таких, как Атлас.


Добавить комментарий