DeepMind otvoril zdrojový kód enginu pre simuláciu fyzikálnych procesov MuJoCo (Multi-Joint dynamics with Contact) a preniesol projekt do modelu otvoreného vývoja, z čoho vyplýva možnosť účasti členov komunity na vývoji. Projekt je vnímaný ako platforma pre výskum a spoluprácu na nových technológiách súvisiacich so simuláciou robotov a zložitých mechanizmov. Kód je zverejnený pod licenciou Apache 2.0. Podporované sú platformy Linux, Windows a macOS.
MuJoCo je knižnica, ktorá implementuje engine na simuláciu fyzikálnych procesov a modelovanie kĺbových štruktúr interagujúcich s prostredím, ktoré možno využiť pri vývoji robotov, biomechanických zariadení a systémov umelej inteligencie, ako aj pri tvorbe grafiky, animácií a počítačov. hry. Motor je napísaný v jazyku C, nepoužíva dynamickú alokáciu pamäte a je optimalizovaný pre maximálny výkon.
MuJoCo vám umožňuje manipulovať s objektmi na nízkej úrovni, pričom poskytuje vysokú presnosť a rozsiahle možnosti modelovania. Modely sú definované pomocou jazyka popisu scény MJCF, ktorý je založený na XML a kompilovaný pomocou špeciálneho optimalizačného kompilátora. Okrem MJCF podporuje engine načítanie súborov v univerzálnom URDF (Unified Robot Description Format). MuJoCo tiež poskytuje GUI pre interaktívnu 3D vizualizáciu simulačného procesu a vykresľovanie výsledkov pomocou OpenGL.
Kľúčové vlastnosti:
- Simulácia v zovšeobecnených súradniciach, s výnimkou porušení kĺbov.
- Reverzná dynamika, zistiteľná aj v prítomnosti kontaktu.
- Použitie konvexného programovania na formulovanie zjednotených obmedzení v nepretržitom čase.
- Možnosť nastavenia rôznych obmedzení, vrátane jemného dotyku a suchého trenia.
- Simulácia časticových systémov, látok, lán a mäkkých predmetov.
- Akčné členy (ovládače), vrátane motorov, valcov, svalov, šliach a kľukových mechanizmov.
- Riešidlá založené na Newtonových, konjugovaných gradientoch a Gauss-Seidelových metódach.
- Možnosť použitia pyramídových alebo eliptických trecích kužeľov.
- Použite svoj výber metód numerickej integrácie Euler alebo Runge-Kutta.
- Viacvláknová diskretizácia a aproximácia konečných rozdielov.
Zdroj: opennet.ru