JuliaCon 2026

An Offer you can't refuse: Corleone.jl - Flexible direct multiple shooting for optimal control and experimental design in Julia
2026-08-12 , Room 6

We introduce Corleone.jl, a package for solving optimization problems related to dynamic processes. It aims at leveraging the full SciML ecosystem to model, integrate, and solve the resulting nonlinear optimization problem. We showcase Corleone's integration inside scientific machine learning, how it can be used via ModelingToolkit, and recent results from academic and industrial use cases.


At its core, Corleone is a package for direct shooting methods in Julia. Its main area of application is a) optimal control, b) parameter estimation, and c) optimal experimental design for dynamic processes. As opposed to similar packages, e.g. OptimalControl.jl, the ModelingToolkit Extensions, or the recently announced BoundaryValueDiffEq.jl, Corleone.jl models everything as a Lux Layer, as such offering natural support for scientific machine learning, which is used to build an Optimization.jl problem. As such, it offers full support for all ODE and DAE integrators and all sensitivity algorithms of SciML next to the flexible choice of optimization algorithms. Additionally, the block structure resulting from multiple shooting can be directly used by specialized algorithms, e.g. BlockSQP.jl.

Next to these core functionalities, we also offer optimal experimental design as its own sublibrary CorleoneOED.jl. Here the focus lies on augmenting the system with its symbolically derived sensitivity equations and methods to calculate the Fisher information matrix.

Through the talk we are planning to present:

1) A brief introduction into the topic of dynamic optimization, especially the aspect of multiple shooting.
2) Relate the structure of piecewise constant approximations in optimal control, multiple shooting (and possibly later on multi stage) problems to the computational graph of Corleone and hence to Lux.jl.
3) Show the API on a simple example (Lotka-Volterra Fishing)
4) Explain how optimal experimental design is an optimal control problem [1]
5) Showcase some recent work on OED with an industrial partner from the chemical process industry (as far as we are allowed to do :) )
6) Showcase recent academic studies on how Corleone can be used in OED settings (see e.g. [2,3])
7) Talk about the roadmap and planned directions of this package

[1] C. J. Martensen, C. Plate, and S. Sager, “DynamicOED.jl: A Julia package for solving optimum experimental design problems,” JOSS, vol. 9, no. 98, p. 6605, Jun. 2024, doi: 10.21105/joss.06605.
[2] C. Plate, C. J. Martensen, and S. Sager, “Optimal Experimental Design for Universal Differential Equations,” IEEE Trans. Automat. Contr., pp. 1–16, 2025, doi: 10.1109/TAC.2025.3609533.
[3] L. Kaps et al., “Optimal Experiments for Hybrid Modeling of Methanol Synthesis Kinetics,” Feb. 07, 2025, Chemistry and Materials Science. doi: 10.20944/preprints202502.0422.v1.

Julius is currently pursuing his PhD at the Otto-von-Guericke University Magdeburg.

As a mechanical engineer with a keen interest in system identification and control, he is researching how to transform data and data-driven black-box models in readable equations.