MathOptAI.jl: Embed Trained Machine-Learning Predictors into JuMP Models
Published Online:3 Apr 2026https://doi.org/10.1287/ijoc.2025.1446
References
- (2010) The lifted newton method and its application in optimization. SIAM J. Optim. 20(3):1655–1684.Crossref, Google Scholar
- (2023) JuliaStats/GLM.jl, version 1.9.0. Accessed March 22, 2026, http://dx.doi.org/10.5281/zenodo.8345558.Google Scholar
- (2017) Julia: A fresh approach to numerical computing. SIAM Rev. 59(1):65–98.Crossref, Google Scholar
- (2024) The SCIP optimization suite 9.0. Preprint, submitted February 27, https://arxiv.org/abs/2402.17702.Google Scholar
- (2021) Pyomo–Optimization Modeling in Python, vol. 67, 2nd ed. (Springer Science & Business Media, Cham, Switzerland).Crossref, Google Scholar
- (2024) Robust NMPC of large-scale systems and surrogate embedding strategies for NMPC. Masters thesis, University of Waterloo, Waterloo, ON.Google Scholar
- (2025) A comparison of strategies to embed physics-informed neural networks in nonlinear model predictive control formulations solved via direct transcription. Comput. Chemical Engrg. 198:109105.Crossref, Google Scholar
- (2022) OMLT: Optimization & machine learning toolkit. J. Machine Learn. Res. 23(349):1–8.Google Scholar
- (2026) MathOptAI.jl: Embed trained machine-learning predictors into JuMP models. https://doi.org/10.1287/ijoc.2025.1446.cd, https://github.com/INFORMSJoC/2025.1446.Google Scholar
- GAMS Development Corporation (2026) GAMSPy: Algebraic modeling interface to GAMS. Accessed January 1, 2026, https://github.com/GAMS-dev/gamspy.Google Scholar
- Gurobi Optimization, LLC (2026a) Gurobi machine learning. Accessed January 1, 2026, https://github.com/Gurobi/gurobi-machinelearning.Google Scholar
- Gurobi Optimization, LLC (2026b) Gurobi optimizer. Accessed January 1, 2026, https://www.gurobi.com.Google Scholar
- (2018) Parallelizing the dual revised simplex method. Math. Program. Comput. 10(1):119–142.Crossref, Google Scholar
- (2018) Flux: Elegant machine learning with Julia. J. Open Source Software 3(25):602.Crossref, Google Scholar
- (2021) MathOptInterface: A data structure for mathematical optimization problems. INFORMS J. Comput. 34(2):672–689.Link, Google Scholar
- (2024) Process systems engineering tools for optimization of trained machine learning models: Comparative and perspective. Indust. Engrg. Chemistry Res. 63(32):13966–13979.Crossref, Google Scholar
- (2023) JuMP 1.0: Recent improvements to a modeling language for mathematical optimization. Math. Programming Comput. 15(3):581–589.Crossref, Google Scholar
- (2023) Lux: Explicit parameterization of deep neural networks in Julia, Version 0.5.0. Accessed March 22, 2026, http://dx.doi.org/10.5281/zenodo.7808904.Google Scholar
- (2025) Nonlinear optimization with GPU-accelerated neural network constraints. ScaleOPT: NeurIPS 2025 Workshop on GPU-Accelerated and Scalable Optimization, https://arxiv.org/abs/2509.22462.Google Scholar
- (2019) Pytorch: An imperative style, high-performance deep learning library. Adv. Neural Inform. Processing Systems 32:8024–8035.Google Scholar
- (2022) DecisionTree.jl—A Julia implementation of the CART Decision Tree and Random Forest algorithms, Version 0.11.3. Accessed March 22, 2026, http://dx.doi.org/10.5281/zenodo.7359268.Google Scholar
- (2025) PySCIPOpt-ML: Embedding trained machine learning models into mixed-integer programs. Tack G, ed. Integration of Constraint Programming, Artificial Intelligence, and Operations Research (Springer Nature Switzerland Cham, Switzerland), 218–234.Crossref, Google Scholar
- (2006) On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math. Programming 106(1):25–57.Crossref, Google Scholar

