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

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
Сотрудники Сеульского университета опубликовали исследование о симуляции движения двуногих персонажей на основе работы суставов и мышечных сокращений, использующей нейросеть с Deep Reinforcement Learning. Под катом перевод краткого обзора.



Меня зовут Jehee Lee. Я профессор Сеульского национального университета и исследователь компьютерной графики с более чем 25-летним опытом работы. Я изучаю новые способы понимания, представления и симуляции движений человека и животного.

Симуляция движений двуногих персонажей на основе физики — это известная проблема в области робототехники и компьютерной графики еще с середины 80-х. В 90-х годах большинство двуногих контроллеров были основаны на упрощенной динамической модели (например, на перевернутом маятнике), что позволяло использовать стратегию баланса, которую можно вывести в уравнении замкнутой формы. С 2007 года появились контроллеры, использующие динамику всего тела для достижения быстрого прогресса в этой области. Примечательно, что теория оптимального управления и методы стохастической оптимизации, такие как CMS-ES, были основными инструментами для поддержания баланса имитируемых двуногих.

Постепенно исследователи строили более детальные модели человеческого тела. В 1990 году модель перевернутого маятника имела менее пять степеней свободы. В 2007 году динамическая модель представляла собой 2D-фигурку, приводимую в движение двигателями на стыках с десятками степеней свободы. В 2009-2010 появились полные 3D-модели со 100 степенями свободы.

В 2012-2014 появились контроллеры для биомеханических моделей, приводимые в движение мышцами. Контроллер посылает сигнал на каждую отдельную мышцу в каждый момент времени для их стимуляции. Сокращение мышц тянет прикрепленные кости и приводит их в движение. В своей работе мы использовали 326 мышц для перемещения модели, включая все основные мышцы нашего тела, за исключением некоторых небольших.


Сложность в управлении движением двуногого персонажа


Количество степеней свободы динамической системы быстро увеличивалось с 2007 года. Предыдущие подходы к проектированию контроллеров страдали от «проклятия размерности» — когда требуемые вычислительные ресурсы (время и память) увеличиваются экспоненциально по мере увеличения количества степеней свободы.

Мы использовали Deep Reinforcement Learning для решения проблем, связанных со сложностью модели опорно-двигательного аппарата и масштабируемостью контроля двуногих существ. Сети могут эффективно представлять и хранить политики многомерного управления (функция, которая сопоставляет состояния с действиями) и исследовать невидимые состояния и действия.



Новый подход


Основное улучшение заключается в том, как мы справляемся с мышечной активацией всего тела. Мы создали иерархическую сеть, которая в верхних слоях учится имитировать движение суставов на низкой частоте кадров (30 Гц), а на нижних — учится стимулировать мышцы на высоких частотах (1500 Гц).

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



Чего мы достигли


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

Новый подход дает улучшенные результаты каждый раз, когда мы вкладываем больше ресурсов (в основном ядер процессора). Хороший момент в том, что Deep Reinforcement Learning требует вычислительных затрат только на этапе обучения. Как только политика многомерного управлениям изучена, симуляция и управление выполняются быстро. Симуляция костно-мышечной системы скоро будет работать в интерактивных приложениях в режиме реального времени. Например, в играх.

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


Прямая мышца бедра. 3D surface mesh (слева). Аппроксимация с путевыми точками (по центру). Приблизительные LBS-координаты путевых точек при сгибе колена (справа).

Использование Deep Reinforcement Learning (DRL)


Мы разделяем ту же фундаментальную идею с исследованием передвижения Deepmind, которое основано на модели stick-and-motor. Удивительно, но стандартный алгоритм DRL хорошо работает с моделью stick-and-motor, но он не очень хорошо работает с биомеханическими моделями, приводимыми в действие мышцами.

На прошлой выставке NeurlPS 2018 прошел челлендж ИИ для протезирования. В конкурсной модели всего 20+ мышц, но даже у победителя результат выглядит не самым лучшим образом.



Этот пример показывает сложность обучения моделей, приводимых в действие мышцами. Наша иерархическая модель делает прорыв и позволяет применить DRL к биомеханической модели человека с большим количеством мышц.

Проект в PDF.
Проект на Github.

Тему исследовали: Jehee Lee, Seunghwan Lee, Kyoungmin Lee и Moonseok Park.
Источник: https://habr.com/ru/company/pixonic/blog/459208/


Интересные статьи

Интересные статьи

Flutter предлагает различные виджеты для работы с определенным набором фигур, например, ClipRect, ClipRRect, ClipOval. Но также есть ClipPath, с помощью которого мы можем создавать ...
Качественные тесты обеспечивают скорость и стабильную работу мобильных приложений, но разнообразие устройств, операционных систем и их версий раздувает тестовые фермы, увеличивает сто...
Всем привет! В современном мире крайне важна возможность масштабировать приложение по щелчку пальцев, ведь нагрузка на приложение может сильно отличаться в разное время. Наплыв клиентов, которы...
Описание общей потребности в поиске данных и объектов в базе данных Поиск данных, а также хранимых процедур, таблиц и других объектов в базе данных является достаточно актуальным вопросом в том ...