Nell’ottobre 2021 abbiamo annunciato di aver acquisito il Simulatore fisico MuJoCoe lo ha reso liberamente disponibile a tutti per sostenere la ricerca ovunque. Ci siamo inoltre impegnati a sviluppare e mantenere MuJoCo come un progetto gratuito, open source e guidato dalla comunità con le migliori funzionalità della categoria. Oggi siamo entusiasti di annunciare che l’open source è completo e l’intero codice base lo è su GitHub!

Qui spieghiamo perché MuJoCo è un’ottima piattaforma per la collaborazione open source e condividiamo un’anteprima della nostra tabella di marcia per il futuro.

Una piattaforma per la collaborazione

I simulatori fisici sono strumenti fondamentali nella ricerca sulla robotica moderna e spesso rientrano in queste due categorie:

  1. Software commerciale a codice chiuso.
  2. Software open source, spesso creato nel mondo accademico.

La prima categoria è opaca per l’utente e, sebbene a volte gratuita, non può essere modificata ed è difficile da comprendere. La seconda categoria ha spesso una base di utenti più piccola e soffre quando i suoi sviluppatori e manutentori si diplomano.

MuJoCo è uno dei pochi simulatori completi supportati da un’azienda affermata, che è veramente open source. In quanto organizzazione orientata alla ricerca, consideriamo MuJoCo come una piattaforma di collaborazione, dove esperti di robotica e ingegneri possono unirsi a noi per sviluppare uno dei migliori simulatori di robot al mondo.

Le caratteristiche che rendono MuJoCo particolarmente attraente per la collaborazione sono:

  • Simulatore completo che può modello complesso meccanismi.
  • Codice leggibile, performante e portatile.
  • Base di codice facilmente estensibile.
  • Documentazione dettagliata: commenti sia rivolti all’utente che al codice.

Ci auguriamo che i colleghi del mondo accademico e della comunità OSS traggano vantaggio da questa piattaforma e contribuiscano alla base di codice, migliorando la ricerca per tutti.

Prestazione

Essendo una libreria C senza allocazione dinamica della memoria, MuJoCo è molto veloce. Sfortunatamente, la velocità della fisica grezza è stata storicamente ostacolata dai wrapper Python, che hanno reso le operazioni batch e multi-thread non performanti a causa della presenza del Global Interpreter Lock (GIL) e del codice non compilato. Nella nostra tabella di marcia riportata di seguito, affronteremo questo problema in futuro.

Per ora, vorremmo condividere alcuni risultati di benchmarking per due modelli comuni. I risultati sono stati ottenuti su una macchina AMD Ryzen 9 5950X standard, con Windows 10.

Questi valori sono stati ottenuti dal ns codice di esempio testspeed. In particolare, il rumore di controllo viene iniettato negli attuatori impedendo al sistema di stabilizzarsi in uno stato fisso e sono quindi rappresentativi delle prestazioni del mondo reale.

Tabella di marcia

Ecco la nostra tabella di marcia a breve termine per MuJoCo:

  • Sblocca il potenziale di velocità di MuJoCo con la simulazione batch e multi-thread.
  • Supporta scene più grandi con miglioramenti alla gestione della memoria interna.
  • Nuovo compilatore incrementale con migliore componibilità del modello.
  • Supporto per un rendering migliore tramite l’integrazione di Unity.
  • Supporto nativo per derivate fisiche, sia analitiche che alle derivate finite.

Saperne di più

Risorse utili su MuJoCo:

Non vediamo l’ora di ricevere i vostri contributi!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *