One neural net, many gaits: sim-to-real RL for Go1
Research code that trains diverse locomotion policies for the Unitree Go1 using PPO and Isaac Gym, then deploys them on the physical Edu robot via a bundled Docker pipeline.

What it does
This repository implements the CoRL 2022 paper Walk these Ways, extending ETH Zurich’s legged_gym and NVIDIA’s Isaac Gym to train Unitree Go1 locomotion controllers. It uses PPO, domain randomization, and Multiplicity of Behavior (MoB) to learn policies that can be evaluated in simulation or deployed to the real robot. A pretrained checkpoint is included, so you can test the behavior before training from scratch.
The interesting bit
Instead of learning a single fixed gait, the MoB approach tunes the policy to exhibit multiple controllable behaviors. The authors also provide a full sim-to-real bridge: a deployment Docker image for the Go1’s onboard Jetsons, safety cutoffs via Unitree’s PowerProtect layer, and RC controller integration so the robot doesn’t blindly sprint off a table the moment you press play.
Key highlights
- Trains with PPO across thousands of parallel Isaac Gym environments (4000 by default)
- Includes a pretrained MoB policy in
runs/gait-conditioned-agility/pretrain-v0 - Deployment targets the Go1 Edu via Docker,
unitree_legged_sdk, and onboard safety layers - Real-world deployment is RC-triggered: the robot calibrates and waits for a physical controller input before executing the policy
- Adapts established stacks (
legged_gym,rsl_rl) rather than reinventing the wheel
Caveats
- Requires a Unitree Go1 Edu edition; the consumer version won’t work for hardware deployment
- Default training needs roughly 10–12 GB of GPU memory, and fewer parallel environments mean slower iteration
- Real-world logging and performance analysis tooling are currently marked “Coming soon”
- Deployment still requires manual SSH, hardcoded path edits in
play.pyanddeploy_policy.py, and juggling IP addresses across the robot’s multiple onboard computers
Verdict
A solid starting point for robotics researchers who want a reproducible sim-to-real RL pipeline for the Go1 Edu. If you don’t have the specific robot or a high-end NVIDIA GPU, this is mostly a reference implementation to read rather than run.
Frequently asked
- What is Improbable-AI/walk-these-ways?
- Research code that trains diverse locomotion policies for the Unitree Go1 using PPO and Isaac Gym, then deploys them on the physical Edu robot via a bundled Docker pipeline.
- Is walk-these-ways open source?
- Yes — Improbable-AI/walk-these-ways is an open-source project tracked on heatdrop.
- What language is walk-these-ways written in?
- Improbable-AI/walk-these-ways is primarily written in Python.
- How popular is walk-these-ways?
- Improbable-AI/walk-these-ways has 1.4k stars on GitHub.
- Where can I find walk-these-ways?
- Improbable-AI/walk-these-ways is on GitHub at https://github.com/Improbable-AI/walk-these-ways.