384K subscribers
4.46K photos
863 videos
17 files
4.9K links
Погружаемся в машинное обучение и Data Science

Показываем как запускать любые LLm на пальцах.

По всем вопросам - @haarrp

@itchannels_telegram -🔥best channels

Реестр РКН: clck.ru/3Fmqri
Download Telegram
🌟 PyRoki: Библиотека кинематики роботов на Python.

PyRoki (Python Robot Kinematics) - это модульный, расширяемый и кроссплатформенный инструментарий, заточенный под задачи кинематической оптимизации и реализованный полностью на Python.

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

С точки зрения математического аппарата, PyRoki интегрируется с решателем Levenberg-Marquardt (через jaxls). Это дает возможность проводить оптимизацию на многообразиях, а также обрабатывать жесткие ограничения с помощью решателя на основе модифицированной функции Лагранжа.

Библиотека предлагает готовые реализации cost-функций: поза рабочего органа, коллизии с самим собой или объектами мира и метрики манипулируемости.

Если стандартного набора недостаточно, архитектура позволяет задавать свои функции затрат, используя как автоматическое дифференцирование, так и аналитические якобианы.

Благодаря базе JAX, библиотека кроссплатформенна: ее работа возможна на CPU, GPU и TPU.

🟡При внедрении PyRoki в пайплайн важно учитывать специфику JIT-компиляции в JAX.

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

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

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

🟡Типы поддерживаемых соединений и геометрия ограничены.

На данный момент PyRoki работает исключительно с кинематическими деревьями; замкнутые механизмы или параллельные манипуляторы не поддерживаются.

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

Для геометрии коллизий набор примитивов также фиксирован: поддерживаются сферы, капсулы, полупространства и карты высот.

Если ваша модель использует сложные меши, коллизии для них будут аппроксимироваться капсулами.

В вопросах производительности, особенно в сценариях с интенсивными проверками коллизий, PyRoki, вероятно, уступает CuRobo, хотя, как говорится в документации - сравнительные тесты скорости и точности авторами пока не проводились.


📌Лицензирование: MIT License.


🟡Страница проекта
🟡Arxiv
🟡Документация
🖥GitHub


@ai_machinelearning_big_data

#AI #ML #Robotics #Pyroki #Python
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23🔥138👌1🤗1🦄1