Learning for CasADi: Data-driven Models in Numerical Optimization
This work addresses a specific integration problem for researchers and practitioners using optimization tools like CasADi, but it is incremental as it builds on existing frameworks without fundamentally changing them.
The paper tackles the challenge of integrating learned models into numerical optimization frameworks by introducing L4CasADi, which enables seamless use of PyTorch models with CasADi, demonstrated through examples like optimizing a fish's trajectory in turbulent flow and using Neural Radiance Fields for control.
While real-world problems are often challenging to analyze analytically, deep learning excels in modeling complex processes from data. Existing optimization frameworks like CasADi facilitate seamless usage of solvers but face challenges when integrating learned process models into numerical optimizations. To address this gap, we present the Learning for CasADi (L4CasADi) framework, enabling the seamless integration of PyTorch-learned models with CasADi for efficient and potentially hardware-accelerated numerical optimization. The applicability of L4CasADi is demonstrated with two tutorial examples: First, we optimize a fish's trajectory in a turbulent river for energy efficiency where the turbulent flow is represented by a PyTorch model. Second, we demonstrate how an implicit Neural Radiance Field environment representation can be easily leveraged for optimal control with L4CasADi. L4CasADi, along with examples and documentation, is available under MIT license at https://github.com/Tim-Salzmann/l4casadi