ΠΠΎΠΌΠΏΠ°Π½ΠΈΡΠ°ΡΠ° Π²ΠΎ ΡΠΎΠΏΡΡΠ²Π΅Π½ΠΎΡΡ Π½Π° 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 ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΈ GUI Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½Π° 3D Π²ΠΈΠ·ΡΠ΅Π»ΠΈΠ·Π°ΡΠΈΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠΈΠΌΡΠ»Π°ΡΠΈΡΠ° ΠΈ ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π°ΡΠ΅ Π½Π° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ OpenGL.
ΠΠ»Π°Π²Π½ΠΈ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ:
- Π‘ΠΈΠΌΡΠ»Π°ΡΠΈΡΠ° Π²ΠΎ Π³Π΅Π½Π΅ΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΈ, ΡΠΎ ΠΈΡΠΊΠ»ΡΡΠΎΠΊ Π½Π° Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΈ ΠΏΡΠ΅ΠΊΡΡΡΠ²Π°ΡΠ°.
- ΠΠ±ΡΠ°ΡΠ½Π° Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠ°, Π·Π°Π±Π΅Π»Π΅ΠΆΠ»ΠΈΠ²Π° Π΄ΡΡΠΈ ΠΈ Π²ΠΎ ΠΏΡΠΈΡΡΡΡΠ²ΠΎ Π½Π° ΠΊΠΎΠ½ΡΠ°ΠΊΡ.
- ΠΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΠΊΠΎΠ½Π²Π΅ΠΊΡΠ½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°ΡΠ΅ Π·Π° ΡΠΎΡΠΌΡΠ»ΠΈΡΠ°ΡΠ΅ ΡΠ½ΠΈΡΠΈΡΠΈΡΠ°Π½ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ° Π²ΠΎ ΠΊΠΎΠ½ΡΠΈΠ½ΡΠΈΡΠ°Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅.
- Π‘ΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ Π·Π° ΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ°, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ ΠΌΠ΅ΠΊ Π΄ΠΎΠΏΠΈΡ ΠΈ ΡΡΠ²ΠΎ ΡΡΠΈΠ΅ΡΠ΅.
- Π‘ΠΈΠΌΡΠ»Π°ΡΠΈΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π½Π° ΡΠ΅ΡΡΠΈΡΠΊΠΈ, ΡΠΊΠ°Π΅Π½ΠΈΠ½ΠΈ, ΡΠ°ΠΆΠΈΡΠ° ΠΈ ΠΌΠ΅ΠΊΠΈ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΈ.
- ΠΠΊΡΠΈΠ²Π°ΡΠΎΡΠΈ (Π°ΠΊΡΡΠ°ΡΠΎΡΠΈ), Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ ΠΌΠΎΡΠΎΡΠΈ, ΡΠΈΠ»ΠΈΠ½Π΄ΡΠΈ, ΠΌΡΡΠΊΡΠ»ΠΈ, ΡΠ΅ΡΠΈΠ²ΠΈ ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π½Π° ΡΡΠ΄Π°ΠΊ.
- Π Π΅ΡΠ°Π²Π°ΡΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π½Π° ΠΡΡΠ½, ΠΊΠΎΠ½ΡΡΠ³Π°ΡΠ΅Π½ Π³ΡΠ°Π΄ΠΈΠ΅Π½Ρ ΠΈ ΠΠ°ΡΡ-Π‘Π°ΡΠ΄Π΅Π».
- ΠΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ ΠΏΠΈΡΠ°ΠΌΠΈΠ΄Π°Π»Π½ΠΈ ΠΈΠ»ΠΈ Π΅Π»ΠΈΠΏΡΠΈΡΠ½ΠΈ ΠΊΠΎΠ½ΡΡΠΈ Π·Π° ΡΡΠΈΠ΅ΡΠ΅.
- ΠΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π³ΠΎ Π²Π°ΡΠΈΠΎΡ ΠΈΠ·Π±ΠΎΡ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° Π½ΡΠΌΠ΅ΡΠΈΡΠΊΠ° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΡΠ»Π΅Ρ ΠΈΠ»ΠΈ Π ΡΠ½Π³Π΅-ΠΡΡΡΠ°.
- ΠΠΈΡΠΊΡΠ΅ΡΠΈΠ·Π°ΡΠΈΡΠ° ΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π½Π°Π²ΠΎΡ ΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠΆΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ½Π΅ΡΠ½ΠΈ ΡΠ°Π·Π»ΠΈΠΊΠΈ.
ΠΠ·Π²ΠΎΡ: opennet.ru