juliaopt2024

Solving optimal control problems in Julia: the OptimalControl.jl package

Jean-Baptiste Caillau, Olivier Cots, Joseph Gergaud, Pierre Martinon, Sophia Sed

affiliations

What it's about

  • Nonlinear optimal control of ODEs:

\[g(x(t_0),x(t_f)) + \int_{t_0}^{t_f} f^0(x(t), u(t))\, \mathrm{d}t \to \min\]

subject to

\[\dot{x}(t) = f(x(t), u(t)),\quad t \in [t_0, t_f]\]

plus boundary, control and state constraints

  • Our core interests: numerical & geometrical methods in control, applications

OptimalControl.jl for trajectory optimisation

Wrap up

  • High level modelling of optimal control problems
  • Efficient numerical resolution coupling direct and indirect methods
  • Collection of examples

Future

  • New applications (pace mechanics, biology, quantum mechanics and more)
  • Additional solvers: optimisation on GPU, direct shooting, collocation for BVP, Hamiltonian pathfollowing...
  • ... and open to contributions! If you like the package, please give us a star ⭐️
OptimalControl.jl

control-toolbox.org

control-toolbox.org

Credits (not exhaustive!)

Stand up for science 2025

stand up for science 2025

Acknowledgements

Jean-Baptiste Caillau is partially funded by a France 2030 support managed by the Agence Nationale de la Recherche, under the reference ANR-23-PEIA-0004 (PDE-AI project).

affiliations