Make an Upkie to stand upright by closed-loop model predictive control.
We recommend using Anaconda to install the agent and all its dependencies in a clean environment:
conda env create -f environment.yaml
conda activate mpc_balancer
Alternatively, you should be able to install the packages listed in the environment file from PyPI.
To run in simulation, clone the upkie repository and run:
./start_simulation.sh
Activate your conda environment and run the agent by:
python run_agent.py
This agent only works with QP solvers that support warm starting. At present we only support one solver:
Solver | Algorithm | License | Warm-start |
---|---|---|---|
ProxQP | Augmented Lagrangian | BSD-2-Clause | ✔️ |
You can take a peek at the ProxQP balancer (research code) for more solvers.
- PPO balancer: an MLP agent trained for the same task by reinforcement learning.
- ProxQP balancer: prototype for this agent used in the code for the ProxQP paper. Currently supports more QP solvers.