AugMPCModels
Demo bundles for AugMPC:
- Andrea Patrizi, Carlo Rizzardo, Arturo Laurenzi, Francesco Ruscelli, Luca Rossini, Nikos G. Tsagarakis
- RL-Augmented MPC for Non-Gaited Legged and Hybrid Locomotion
- IEEE Robotics and Automation Letters (RA-L)
- arXiv: 2603.10878
Preferred usage
The preferred way to run these models is through the dedicated ibrido-containers setup. The containers provide the expected runtime environments, MPC implementations, workspace layout, and training_data mounts used by the published bundles.
In practice, users should:
- set up the container following the instructions in
ibrido-containers; - pick the desired container :
ibrido-containers/ibrido_u22ships with IsaacSim,ibrido-containers/ibrido_u20for cheap single environment transfer evaluations on MujoCo. - pick a matching configuration file associated with the target robot under
ibrido-containers/ibrido_u*/singularity/files/training_cfgs/<robot_name>/; configs for the same robot may change crucial MPC parameters, so it's important that this matches the one used during training. - configure the config to load the chosen model bundle by modyfing these variables:
export EVAL=1 # run framework in eval mode
export DET_EVAL=1 # run deterministic policy evaluation
export EVAL_ON_CPU=1 # eval on CPU
export OVERRIDE_ENV=0 # if 0, will load the exact same environment as used during training
export OVERRIDE_AGENT_REFS=1 # if 1 user can send refs to the agent using the keyboard or joystick utilities in AugMPC
export MPATH="/root/training_data/AugMPCModels/bundles/<robot_name>/<bundle_name>" # path to the bundle
export MNAME="<bundle_name>_model" # torch model name within the bundle path
#...
export N_ENVS=1 # you can add more if you want to run multiple environments (if chosen world interface supports vectorized simulation)
For instance:
export MPATH="/root/training_data/AugMPCModels/bundles/centauro/d2026_03_07_h19_m22_s30-CentauroCloopPartialNoYawUb_FakePosTrackingEnv"
export MNAME="d2026_03_07_h19_m22_s30-CentauroCloopPartialNoYawUb_FakePosTrackingEnv_model" # or any other checkpoint available
Within the existing ibrido-containers logic, EVAL=1 triggers evaluation mode using the policy pointed to by MPATH and MNAME. Users can verify that the evaluation configuration is aligned with the original training setup by inspecting the preserved training script stored in the bundle under bundles/<robot_name>/<bundle_name>/ibrido_run_*/training_cfg_*.sh.
Repository structure
Each model is distributed as a bundle, not just as a checkpoint file. A bundle may include:
- the policy checkpoint
- environment and deployment configuration files
- robot description files (
URDF,SRDF) - controller/world-interface helpers needed for reproduction
- a
bundle.yamlmanifest describing the contents
Layout:
bundles/
<robot_name>/
<bundle_name>/
bundle.yaml
<checkpoint>_model
*.yaml
*.py
*.urdf
*.srdf
other/