MathOptAI.jl: Embed trained machine learning predictors into JuMP models

Abstract

We present MathOptAI.jl, an open-source Julia library for embedding trained machine learning predictors into a JuMP model. MathOptAI.jl can embed a wide variety of neural networks, decision trees, and Gaussian Processes into a larger mathematical optimization model. In addition to interfacing a range of Julia-based machine learning libraries such as Lux.jl and Flux.jl, MathOptAI.jl uses Julia's Python interface to provide support for PyTorch models. When the PyTorch support is combined with MathOptAI.jl's gray-box formulation, the function, Jacobian, and Hessian evaluations associated with the PyTorch model are offloaded to the GPU in Python, while the rest of the nonlinear oracles are evaluated on the CPU in Julia. is available at https://github.com/lanl-ansi/MathOptAI.jl under a BSD-3 license.

0

Turn this paper into a full lesson

ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…