Skip to content

leap-c/leap-c

Repository files navigation

Source Code License Python 3.11 Ruff codecov

leap-c (Learning Predictive Control)

Introduction

leap-c provides tools for learning optimal control policies using Imitation learning (IL) and Reinforcement Learning (RL) to enhance Model Predictive Control (MPC) algorithms. It is built on top of CasADi, acados and PyTorch.

Installation

leap-c can be set up by following the installation guide.

Usage

Please see the Getting started section.

Questions?

Open a new thread or browse the existing ones on the GitHub discussions page.

Citing

If you are using code from this repository in your work, please use the following citation:

@misc{fichtner_leapc_2025,
  title = {Leap-c/Leap-c: V0.1.0-Alpha},
  author = {Fichtner, Leonard and Reinhardt, Dirk and Hoffmann, Jasper and Airaldi, Filippo and Frey, Jonathan and Kir Hromatko, Josip and Baumgaertner, Katrin and Amria, Mazen and Reiter, Rudolf and Sawant, Shambhuraj},
  year = 2025,
  month = oct,
  howpublished = {Zenodo}
}

Related Projects

The following projects follow similar ideas and might be interesting:

  • mpc.pytorch: Early work on embedding MPC in PyTorch for end-to-end learning, with a more restricted class of MPC problems
  • mpcrl: A simpler codebase for using RL with MPC as function approximator
  • Neuromancer: A differentiable programming library that allows to include parametric optimization layers (including MPC) in PyTorch computational graphs
  • ntnu-itk-autonomous-ship-lab/rlmpc: A codebase tailored for marine vessel control using RL and MPC

Packages

 
 
 

Contributors

Languages