Det Google-eide selskapet DeepMind, kjent for sin utvikling innen kunstig intelligens og bygging av nevrale nettverk som er i stand til å spille dataspill på menneskelig nivå, annonserte oppdagelsen av en motor for simulering av fysiske prosesser MuJoCo (Multi-Joint dynamics with Contact ). Motoren er rettet mot å modellere artikulerte strukturer som samhandler med omgivelsene, og brukes til simulering i utviklingen av roboter og kunstig intelligenssystemer, på stadiet før implementeringen av den utviklede teknologien i form av en ferdig enhet.
Koden er skrevet i C/C++ og vil bli publisert under Apache 2.0-lisensen. Linux, Windows og macOS-plattformer støttes. Åpen kildekode-arbeid med alt av prosjektets innhold forventes å være fullført i 2022, hvoretter MuJoCo vil gå over til en åpen utviklingsmodell som lar fellesskapsmedlemmer delta i utviklingen.
MuJoCo er et bibliotek som implementerer en generell fysisk prosesssimuleringsmotor som kan brukes i forskning og utvikling av roboter, biomekaniske enheter og maskinlæringssystemer, samt til å lage grafikk, animasjon og dataspill. Simuleringsmotoren er optimalisert for maksimal ytelse og tillater objektmanipulering på lavt nivå samtidig som den gir høy nøyaktighet og rike simuleringsmuligheter.
Modeller er definert ved å bruke MJCF-scenebeskrivelsesspråket, som er basert på XML og kompilert ved hjelp av en spesiell optimeringskompilator. I tillegg til MJCF, støtter motoren lasting av filer i det universelle URDF (Unified Robot Description Format). MuJoCo gir også en GUI for interaktiv 3D-visualisering av simuleringsprosessen og gjengivelse av resultatene ved hjelp av OpenGL.
Nøkkelegenskaper:
- Simulering i generaliserte koordinater, unntatt leddbrudd.
- Omvendt dynamikk, detekterbar selv i nærvær av kontakt.
- Bruke konveks programmering for å formulere enhetlige begrensninger i kontinuerlig tid.
- Evne til å sette ulike begrensninger, inkludert myk berøring og tørr friksjon.
- Simulering av partikkelsystemer, tekstiler, tau og myke gjenstander.
- Aktuatorer (aktuatorer), inkludert motorer, sylindre, muskler, sener og sveivmekanismer.
- Løsere basert på Newton, konjugert gradient og Gauss-Seidel metoder.
- Mulighet for bruk av pyramideformede eller elliptiske friksjonskjegler.
- Bruk ditt valg av Euler eller Runge-Kutta numeriske integreringsmetoder.
- Flertråds diskretisering og tilnærming til endelig forskjell.
Kilde: opennet.ru