2025-10-02 –, Jean-Baptiste Say Amphitheater
Language: English
Optimal control is a ubiquitous problem spanning applications of aerospace engineering to chemical processes. Because of that, there are as many softwares for solving optimal control problems as there are applications and domains. Is it possible to unify all optimal control software under one interface? Well that's what SciML does, and we've now entered this domain. In this talk we will demonstrate how ModelingToolkit can be used as a frontend to optimal control that is able to target many of the backend solver methods used throughout various domains. We will also showcase new solvers, built from adaptive BVP solvers, which greatly outperform the standard NLP formulation.
There are many optimal control softwares that are all built in incompatible ways. The standard SciML trick is to split the problem of developing robust numerical software into two steps: (1) a common interface and (2) new solvers. Using this infrastructure, then it is also easy to benchmark the new solvers to demonstrate the domains in which they outperform the previous methods. Piece of cake, we do that everywhere, and now we're doing that to optimal control.
In particular, this general interface needs to be symbolic in order to allow for code generation into the many different solver techniques, some direct methods using ODE solvers, while others codegen to NLP backends like CASADI or JuMP. By making this symbolic interface in ModelingToolkit, we can use the economics of scale afforded by MTK's investment from the systems biology and systems modeling communities in order to achieve a level of development that is generally not available in any open source optimal control tool. We can do things like mix index reduction algorithms with customized codegen and compilers, with specialized CSE algorithms, to get really succinct models that effectively cheat in comparison to commonly used software in this domain.
But finally, specialized solvers, built from the BVP solvers, is demonstrated to be a much faster technique than those traditionally done with both direct and indirect methods. The BVP solver uses custom coded linear algebra for fast almost-banded matrices, mixed with a mixed mode automatic differentiation which uses an analytical split between forward and reverse mode, customized GPU acceleration, error control, and adaptivity. We show how this technique greatly outperforms in speed and robustness the basic techniques from CASADI, JuMP, and Pyomo
Dr. Chris Rackauckas is the VP of Modeling and Simulation at JuliaHub, the Director of Scientific Research at Pumas-AI, Co-PI of the Julia Lab at MIT, and the lead developer of the SciML Open Source Software Organization. For his work in mechanistic machine learning, his work is credited for the 15,000x acceleration of NASA Launch Services simulations and recently demonstrated a 60x-570x acceleration over Modelica tools in HVAC simulation, earning Chris the US Air Force Artificial Intelligence Accelerator Scientific Excellence Award. See more at https://chrisrackauckas.com/. He is the lead developer of the Pumas project and received a top presentation award at every ACoP from 2019-2021 for improving methods for uncertainty quantification, automated GPU acceleration of nonlinear mixed effects modeling (NLME), and machine learning assisted construction of NLME models with DeepNLME. For these achievements, Chris received the Emerging Scientist award from ISoP.