File Exchange

image thumbnail

OpenOCL - Open Optimal Control Library

version 7.07 (220 KB) by Jonas
Optimal Control toolbox for Matlab. Software for trajectory optimization and Model-predictive control (MPC).


Updated 24 May 2020

From GitHub

View Version History

View license on GitHub

Optimal Control allows you to formulate control problems (control theory) as mathematical optimization problems. OpenOCL provides a modeling language that helps to implement optimal control problems. It implements direct collocations methods, and interfaces CasADi and ipopt to solve a non-linear program. Alternatively the new (work in progress) interface to acados can be used.

- Automatic differentiation through CasADi
- Multi-stage problems
- Matrix-valued variables
- Access all variables by their name (no indexing required)
- Plotting of initial guess, intermediate steps, and solution
- Dependencies (acados, CasADi) will be resolved automatically on first startup

Main developer:
Jonas Koenemann,

Copyright 2019, 2020 Jonas Koenemann, Moritz Diehl, University of Freiburg
Redistribution is permitted under the 3-Clause BSD License terms. Please
ensure the above copyright notice is visible in any derived work

Comments and Ratings (7)

Zhibin Deng

Dear Jonas,

Thank you for this wonderful matlab library. It runs perfectly in my MATLAB 2019b. I wonder whether this library supports non-smooth cost function, e.g. piece-wise quadratic functions.



Hi Jan, thanks a lot for the feedback! I updated the description, let me know (here or by mail) if there is anything missing that you would expect to be in the description. Best, Jonas


@Moritz and Jonas: It would be useful to explain here, what this tool does, because this is the information users need to decide, if this is a useful submission for them or not. The link to clarifies this exhaustively, if you are familiar with this topic already. But the average visitor on the FileExchange pages won't get any clue. Who needs this tool to solve which problem? Kind regards from Heidelberg!


Tobias Schoels

Easy to use, nice!

Katrin Baumgärtner


MATLAB Release Compatibility
Created with R2016a
Compatible with R2014b and later releases
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!