DeepMind відкрив код симулятора фізичних процесів MuJoCo

Компанія DeepMind відкрила вихідні тексти движка для симуляції фізичних процесів MuJoCo (Multi-Joint dynamics with Contact) та перевела проект на відкриту модель розробки, яка передбачає можливість участі у розробці представників спільноти. Проект розглядається як платформа для проведення досліджень та спільної роботи над новими технологіями, пов'язаними із симуляцією роботів та складних механізмів. Код опубліковано за ліцензією Apache 2.0. Підтримуються платформи Linux, Windows та macOS.

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

MuJoCo дозволяє маніпулювати об'єктами на низькому рівні, забезпечуючи високу точність і широкі можливості моделювання. Моделі визначаються за допомогою мови опису сцен MJCF, заснованого на XML і компілюваного за допомогою спеціального компілятора, що оптимізує. Крім MJCF двигун підтримує завантаження файлів в універсальному форматі URDF (Unified Robot Description Format). MuJoCo також надає графічний інтерфейс для інтерактивної 3D-візуалізації процесу симуляції та рендерингу результатів із використанням OpenGL.

Основні можливості:

  • Симуляція в узагальнених координатах, що виключає порушення зчленувань.
  • Зворотна динаміка, яка визначається навіть за наявності зіткнень.
  • Використання опуклого програмування для уніфікованого формулювання обмежень у безперервному часі.
  • Можливість завдання різних обмежень, включаючи м'які торкання та сухе тертя.
  • Симуляція систем частинок, тканин, мотузок та м'яких об'єктів.
  • Виконавчі елементи (актуатори), включаючи мотори, циліндри, м'язи, сухожилля та кривошипно-шатунні механізми.
  • Вирішальні програми з урахуванням методів Ньютона, сполучених градієнтів і Гаусса-Зейделя.
  • Можливість використання пірамідальних чи еліптичних конусів тертя.
  • Використання для вибору методів чисельного інтегрування Ейлера або Рунге-Кутти.
  • Багатопотокова дискретизація та апроксимація методом кінцевих різниць.



Джерело: opennet.ru

Додати коментар або відгук