MuJoCoUni:Persistent Batched Runtime Primitives for MuJoCo

📅 2026-05-24
📈 Citations: 0
Influential: 0
📄 PDF

career value

198K/year
🤖 AI Summary
Existing approaches to online robot learning and batch physical simulation lack efficient, stateful parallel environment execution. This work proposes BatchEnvPool, which—without modifying MuJoCo’s core—introduces, for the first time, persistent, state-preserving batched runtime primitives that remain compatible with MuJoCo’s original CPU semantics while extending its rollout capabilities. Implemented in C++ with pybind11, the method employs an internal thread pool to manage multiple copies of mjModel and associated mjData workers, enabling short-step rollouts, sparse resets, domain randomization, and batched sensor and Jacobian queries. The open-source package mujoco-uni, installable via pip, demonstrably achieves substantial gains in parallel simulation throughput while fully preserving MuJoCo’s solver behavior and physical fidelity.
📝 Abstract
We present MuJoCoUni, a downstream MuJoCo distribution for online robot learning and batched physics evaluation. Alongside the open-loop batched trajectory generation already provided by upstream mujoco.rollout, MuJoCoUni supplies runtime primitives for stateful environment execution. The target workloads need high-throughput parallel execution while retaining upstream CPU MuJoCo semantics for models, sensors, contact, and constraints. Its core object, BatchEnvPool, is a C++/pybind11 executor that owns per-environment mjModel copies, per-thread mjData workers, and an internal thread pool. It provides final-state-only short stepping, sparse reset, reset-lifecycle domain randomization, batched sensor forward evaluation without advancing dynamics, and batched Jacobian and height-field queries. The implementation is confined to the Python binding layer; MuJoCo's solver, contact model, integrator, and core source tree retain upstream semantics. This report describes the BatchEnvPool API, implementation boundary, relationship to rollout, and the validation and benchmark scripts shipped with the open-source mujoco-uni package, which is installed with \texttt{pip install mujoco-uni}.
Problem

Research questions and friction points this paper is trying to address.

MuJoCo
batched simulation
stateful environment
high-throughput
robot learning
Innovation

Methods, ideas, or system contributions that make the work stand out.

Batched Simulation
Stateful Environment Execution
Runtime Primitives
Domain Randomization
Parallel Physics Evaluation
🔎 Similar Papers
No similar papers found.