DeepMind opent code voor natuurkundesimulator MuJoCo

DeepMind heeft de broncode van de engine voor het simuleren van fysieke processen MuJoCo (Multi-Joint dynamics with Contact) geopend en het project overgebracht naar een open ontwikkelingsmodel, wat de mogelijkheid impliceert dat gemeenschapsleden aan de ontwikkeling deelnemen. Het project wordt gezien als een platform voor onderzoek en samenwerking op het gebied van nieuwe technologieën gerelateerd aan de simulatie van robots en complexe mechanismen. De code wordt gepubliceerd onder de Apache 2.0-licentie. Linux-, Windows- en macOS-platforms worden ondersteund.

MuJoCo is een bibliotheek die een engine implementeert voor het simuleren van fysieke processen en het modelleren van gelede structuren die interageren met de omgeving, die kan worden gebruikt bij de ontwikkeling van robots, biomechanische apparaten en kunstmatige intelligentiesystemen, maar ook bij het maken van grafische afbeeldingen, animaties en computersystemen. spellen. De engine is geschreven in C, maakt geen gebruik van dynamische geheugentoewijzing en is geoptimaliseerd voor maximale prestaties.

Met MuJoCo kunt u objecten op een laag niveau manipuleren, terwijl u tegelijkertijd een hoge nauwkeurigheid en uitgebreide modelleringsmogelijkheden biedt. Modellen worden gedefinieerd met behulp van de scènebeschrijvingstaal MJCF, die is gebaseerd op XML en wordt gecompileerd met behulp van een speciale optimaliserende compiler. Naast MJCF ondersteunt de engine het laden van bestanden in het universele URDF (Unified Robot Description Format). MuJoCo biedt ook een GUI voor interactieve 3D-visualisatie van het simulatieproces en weergave van de resultaten met behulp van OpenGL.

Belangrijkste kenmerken:

  • Simulatie in gegeneraliseerde coördinaten, exclusief de overtreding van gewrichten.
  • Omgekeerde dynamiek, vastberaden zelfs in de aanwezigheid van contact.
  • Convexe programmering gebruiken voor een uniforme formulering van beperkingen in continue tijd.
  • Mogelijkheid om verschillende beperkingen in te stellen, waaronder soft touch en droge wrijving.
  • Simulatie van deeltjessystemen, stoffen, touwen en zachte objecten.
  • Uitvoerende elementen (actuators), waaronder motoren, cilinders, spieren, pezen en krukmechanismen.
  • Oplossers gebaseerd op de methoden van Newton, geconjugeerde gradiënten en Gauss-Seidel.
  • Mogelijkheid om piramidale of elliptische wrijvingskegels te gebruiken.
  • Gebruik makend van de keuze uit numerieke integratiemethoden van Euler of Runge-Kutta.
  • Multithreaded discretisatie en benadering door de methode van eindige verschillen.



Bron: opennet.ru

Voeg een reactie