Simulazione robotica con Genesis World 1.0 che mostra un braccio robotico in ambiente virtuale

Genesis World 1.0 promette di accelerare la valutazione dei modelli robotici fino a 200 volte

Genesis AI ha rilasciato Genesis World 1.0, una piattaforma composta da quattro componenti — motore fisico, renderer Nyx, compilatore Python-to-GPU Quadrants e un’interfaccia di simulazione — progettata per accelerare lo sviluppo dei foundation model per la robotica.

Lo sviluppo di modelli robotici ha due colli di bottiglia: i dati e la velocità di iterazione. Se il settore si è concentrato molto sul primo, Genesis AI sostiene che il problema meno discusso sia il ciclo di sviluppo stesso — in particolare, quanto velocemente i team possono valutare policy candidate e confrontare checkpoint dei modelli.

Il problema che risolve

Una tipica valutazione di policy in Genesis copre centinaia di task con centinaia di episodi ciascuno. Eseguirla nel mondo reale richiede più di 200 ore di operatività continua del robot, con un operatore e una postazione robotica, per un singolo passaggio di valutazione. I confronti statisticamente significativi tra checkpoint ne richiedono molti.

Genesis World 1.0 completa la stessa valutazione in meno di 0,5 ore, senza umani o hardware coinvolti e con risultati bit-exact identici tra esecuzioni. Un miglioramento di circa due ordini di grandezza.

Il team ha scelto di dare priorità alla valutazione piuttosto che usare la simulazione per generare dati di addestramento. Il ragionamento: se addestramento e valutazione condividono la stessa distribuzione simulata, un miglioramento delle prestazioni potrebbe riflettere un adattamento più stretto alla dinamica del simulatore, non un modello realmente migliore. Mantenere separati i due processi produce un segnale più pulito. Il team descrive questo approccio come zero-shot real-to-sim: le policy valutate in simulazione sono addestrate esclusivamente su dati reali, nessun dato simulato entra nel pre-addestramento.

Risultati della correlazione sim-to-real

Genesis riporta una correlazione di Pearson di 0,8996 (IC 95%: [0,7439, 0,9314]) tra simulazione e rollout su hardware fisico. La valutazione ha coperto tre varianti del modello (Small, Medium, Large) su 14 task con 200 episodi ciascuno, con 1.000.000 di iterazioni bootstrap per stimare gli intervalli di confidenza. Il Mean Maximum Rank Violation (MMRV) è stato di 0,0166 (IC 95%: [0,0102, 0,0474]), un valore basso che indica che il simulatore preserva la classifica di prestazioni relative tra modelli diversi.

Per diagnosticare la divergenza sim-to-real, il team ha costruito un setup real-time side-by-side che esegue in parallelo simulatore e robot fisico dalla stessa inizializzazione. Le osservazioni — frame delle telecamere e propriocezione — possono provenire dal simulatore, dal robot o da una combinazione. Sostituire una fonte alla volta permette di isolare se la divergenza origina dalla fisica, dal rendering, dalla comunicazione o dal controllo. Dopo questo lavoro, il reality gap è del 45% più piccolo (misurato con FID score sul loro dataset) rispetto al miglior simulatore alternativo.

I quattro componenti di Genesis World 1.0

Nyx — Rendering path-traced in tempo reale

Nyx è un path tracer GPU-accelerato che si innesta in Genesis World come sensore telecamera. Disponibile come pacchetto Python gs-nyx-plugin per Linux x86-64 e Windows 10/11, richiede GPU NVIDIA con CUDA. L’obiettivo è produrre frame 1080p senza rumore in 4 ms o meno su una GPU consumer di fascia alta, senza baking e senza ghosting.

La tecnica di base è il path tracing: illuminazione multirimbalzo, ombre morbide e illuminazione indiretta sono corrette per costruzione. Nyx utilizza un visibility buffer, architettura GPU-driven bindless, MSAA, ray tracing hardware, tensor core e compressione video. Le scene sono illuminate con radianza misurata da pipeline HDRI, e gli asset provengono da scansioni interne e fotogrammetria. I 3D Gaussian splat estendono la copertura dove la ricostruzione mesh non basta.

Nyx è guidato da fisica in batch anziché esecuzione scena per scena, permettendo a migliaia di rollout paralleli di passare attraverso un singolo pipeline di rendering unificato.

Genesis World Physics — Motore multi-fisica unificato

La piattaforma fisica di Genesis World è open source (Apache 2.0) e gestisce più tipi di fisica in un unico pipeline: corpi rigidi articolati (MJCF/URDF/USD), FEM per deformabili elastici e tessuti, MPM per materiali granulari ed elasto-plastici, SPH per fluidi e PBD per tessuti veloci e liquidi basati su posizione.

Sono disponibili tre coupler intercambiabili: un coupler generico veloce, un Semi-Analytic Primal coupler in stile Drake con contatto idroelastico e un coupler Incremental Potential Contact (IPC) per contatti senza intersezioni in scene deformabili. Cambiare coupler richiede una modifica di una riga di codice, senza alterare asset, sensori o interfaccia delle policy.

Genesis World 1.0 introduce un nuovo External Articulation Constraint (basato su libuipc) che integra direttamente la dinamica dello spazio articolare nell’ottimizzazione IPC, risolvendo simultaneamente forze articolari e di contatto. Il secondo miglioramento è la elastodinamica senza barriera, che sostituisce la barriera logaritmica standard dell’IPC con un Lagrangiano aumentato personalizzato. Questo evita il malcondizionamento dell’Hessiano ai contatti stretti e permette a ogni coppia di contatto di entrare immediatamente nel set attivo. Il team riporta prestazioni fino a 103× superiori rispetto all’IPC tradizionale in scene con molti contatti, mantenendo le garanzie di assenza di intersezioni.

Quadrants — Compilatore Python-to-GPU

Quadrants è un compilatore cross-platform per simulazione fisica accelerata su GPU, rilasciato sotto licenza Apache 2.0. I kernel sono scritti in Python puro e JIT-compilati per NVIDIA CUDA, AMD ROCm, Apple Metal, Vulkan e CPU x86/ARM64 tramite LLVM. Forkato da Taichi nel giugno 2025, il nome si riferisce al detto filosofico cinese per cui Taichi genera le Quattro Forme (Quadrants).

I miglioramenti rispetto a Taichi includono: runtime fino a 4,6× più veloce sui benchmark di manipolazione e locomozione Genesis; tempo di avvio a cache calda ridotto da 7,2 secondi a 0,3 secondi (oltre 10×); autodiff in modalità reverse nativa su tutti i backend; passi di fisica registrati come singoli kernel graph; kernel indipendenti eseguiti in parallelo via stream; algebra lineare densa compilata in code path 16×16 tile-blocked; e un layer perf-dispatch che valuta le varianti del kernel al primo avvio e memorizza la scelta più veloce.

L’installazione avviene con pip install quadrants. I tensori condividono la memoria del dispositivo con PyTorch tramite DLPack, con interoperabilità zero-copy.

Interfaccia di simulazione

Il quarto componente è l’insieme di tooling che collega motore fisico, renderer e compilatore in un sistema utilizzabile per applicazioni robotiche downstream. Include un pipeline di fotogrammetria per creare gemelli digitali, un pipeline automatizzato per la generazione programmatica di ambienti (layout della scena, selezione degli asset, specifica del task e metriche di successo) e ambienti cross-embodiment per diverse configurazioni robotiche.

La struttura di valutazione di Genesis organizza la valutazione come una tassonomia di assi di perturbazione ortogonali su circa 10 dimensioni, seguendo il framework di “A Taxonomy of…” — senza dati simulati nel pre-addestramento, per mantenere il segnale di valutazione pulito.

Articoli simili