Компания DeepMind анонсировала ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ симулятора физичСских процСссов MuJoCo

ΠŸΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π°Ρ Google компания DeepMind, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠ°Ρ ΠΈΠ·Π²Π΅ΡΡ‚Π½ΠΎΡΡ‚ΡŒ своими Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΌΠΈ Π² области искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π° ΠΈ построСния Π½Π΅ΠΉΡ€ΠΎΠ½Π½Ρ‹Ρ… сСтСй, способных ΠΈΠ³Ρ€Π°Ρ‚ΡŒ Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ ΠΈΠ³Ρ€Ρ‹ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, объявила ΠΎΠ± ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π΄Π²ΠΈΠΆΠΊΠ° для симуляции физичСских процСссов MuJoCo (Multi-Joint dynamics with Contact). Π”Π²ΠΈΠΆΠΎΠΊ Π½Π°Ρ†Π΅Π»Π΅Π½ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сочлСнённых структур, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… с ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰Π΅ΠΉ срСдой, ΠΈ примСняСтся для симуляции ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² ΠΈ систСм искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π°, Π½Π° стадии ΠΏΠ΅Ρ€Π΅Π΄ Π²ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ΠΈΠ΅ΠΌ Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π² Π²ΠΈΠ΄Π΅ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ устройства.

Код написан Π½Π° языках C/C++ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Linux, Windows ΠΈ macOS. Π Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΡŽ всСх связанных с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ исходных тСкстов ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽΡ‚ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ Π² 2022 Π³ΠΎΠ΄Ρƒ, послС Ρ‡Π΅Π³ΠΎ MuJoCo ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘Ρ‚ Π½Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ модСль Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‰ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ участия Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ прСдставитСлСй сообщСства.

MuJoCo прСдставляСт собой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π΄Π²ΠΈΠΆΠΊΠ° симуляции физичСских процСссов ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² процСссС исслСдований ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², биомСханичСских устройств ΠΈ систСм машинного обучСния, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈ создании Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€. Π”Π²ΠΈΠΆΠΎΠΊ симуляции ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ для достиТСния максимальной ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ позволяСт ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π½Π° Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅, обСспСчивая ΠΏΡ€ΠΈ этом Π²Ρ‹ΡΠΎΠΊΡƒΡŽ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности модСлирования.

МодСли ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ языка описания сцСн MJCF, основанного Π½Π° XML ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ компилятора. Помимо MJCF Π΄Π²ΠΈΠΆΠΎΠΊ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ URDF (Unified Robot Description Format). MuJoCo Ρ‚Π°ΠΊΠΆΠ΅ прСдоставляСт графичСский интСрфСйс для ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ 3D-Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ процСсса симуляции ΠΈ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² с использованиСм OpenGL.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ возмоТности:

  • Бимуляция Π² ΠΎΠ±ΠΎΠ±Ρ‰Ρ‘Π½Π½Ρ‹Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°Ρ…, ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ сочлСнСний.
  • ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠ°, опрСдСляСмая Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ соприкосновСний.
  • ИспользованиС Π²Ρ‹ΠΏΡƒΠΊΠ»ΠΎΠ³ΠΎ программирования для ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ формулирования ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ Π² Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.
  • Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ задания Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ мягкиС касания ΠΈ сухоС Ρ‚Ρ€Π΅Π½ΠΈΠ΅.
  • Бимуляция систСм частиц, Ρ‚ΠΊΠ°Π½Π΅ΠΉ, Π²Π΅Ρ€Ρ‘Π²ΠΎΠΊ ΠΈ мягких ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².
  • Π˜ΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты (Π°ΠΊΡ‚ΡƒΠ°Ρ‚ΠΎΡ€Ρ‹), Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΌΠΎΡ‚ΠΎΡ€Ρ‹, Ρ†ΠΈΠ»ΠΈΠ½Π΄Ρ€Ρ‹, ΠΌΡ‹ΡˆΡ†Ρ‹, сухоТилия ΠΈ ΠΊΡ€ΠΈΠ²ΠΎΡˆΠΈΠΏΠ½ΠΎ-ΡˆΠ°Ρ‚ΡƒΠ½Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹.
  • Π Π΅ΡˆΠ°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° основС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΡŒΡŽΡ‚ΠΎΠ½Π°, сопряТённых Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΈ Гаусса-ЗСйдСля.
  • Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ»ΠΈ эллиптичСских конусов трСния.
  • ИспользованиС Π½Π° Π²Ρ‹Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² числСнного интСгрирования Π­ΠΉΠ»Π΅Ρ€Π° ΠΈΠ»ΠΈ Π ΡƒΠ½Π³Π΅-ΠšΡƒΡ‚Ρ‚Ρ‹.
  • ΠœΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Π°Ρ дискрСтизация ΠΈ аппроксимация ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… разностСй.



Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ