Controller Learning
A GPU-parallel race-car control benchmark for learning by building and comparing Controllers.
Controller Learning keeps one physical four-wheel car, Challenge, Track distribution, observation, action, and evaluation contract fixed while the Controller changes. PID, nonlinear MPC, and PPO are examples; the reusable environment and plugin boundary are the product.

Start here
git clone https://github.com/AojiLi/controller-learning.git
cd controller-learning
pixi install
pixi run sim -- --controller controllers/pid --level-id 0 --render
The Controller workflow continues from a copied template through simulation, informal Level 0/Validation evaluation, exact same-rollout trajectory capture, and offline replay. The evaluator deliberately has no Test option.
Accepted benchmark 0.1 result
| Rank | Controller | Success | Mean successful lap | Mean speed | Lateral RMS |
|---|---|---|---|---|---|
| 1 | PID | 20/20 | 88.085 s | 4.974 m/s | 0.0211 m |
| 2 | MPC | 20/20 | 102.563 s | 4.273 m/s | 0.0381 m |
| 3 | PPO | 19/20 | 23.913 s | 18.324 m/s | 0.2205 m |
Success rate is ranked before successful lap time. The result interpretation shows the speed and lateral-error distributions and explains what this particular comparison does—and does not—establish. The Evaluation Protocol contains the fixed execution, ranking, metrics, attempt lineage, and canonical artifacts.
Design principles
- One physical four-wheel simulation truth for every Controller.
- One official Challenge for classical control, reinforcement learning, and evaluation.
- Native GPU batching instead of one simulator per CPU process.
- A narrow Controller interface with no simulator-internal shortcuts.
- Public, deterministic benchmark geometry, seeds, configuration, manifests, metrics, and replays.
Documentation map
- Controller workflow: install, author, simulate, evaluate, and replay.
- CPU Vehicle and MJX-Warp GPU Vehicle: plant and backend evidence.
- Tracks and Race Core: procedural geometry, splits, assets, and TrackPool.
- Gymnasium and Controller Platform: public runtime contracts.
- Classical Controllers: observation-only PID and MPC design.
- PPO Training and Export: official vector-environment learning path.
- Evaluation Protocol: immutable benchmark
0.1comparison. - Reproducibility: identity and numerical reproducibility boundaries.
- Stability Policy: supported v0.1.x contracts and version evolution.
- Development: maintainer commands and milestone workflows.
Claims are limited to the platforms and workloads recorded in the linked evidence. Linux x86-64 is the only tested v0.1.x platform; macOS, native Windows, and WSL2 are not claimed as supported.