Optimizing Over Trained Neural Networks with MathOptAI.jl
The Julia Programming Language via YouTube
NY State-Licensed Certificates in Design, Coding & AI — Online
Master Windows Internals - Kernel Programming, Debugging & Architecture
Overview
Google, IBM & Meta Certificates – 40% Off
One plan covers every Professional Certificate on Coursera.
Unlock All Certificates
Learn to optimize over trained neural networks using MathOptAI.jl, a JuMP extension that embeds surrogate models from external sources like Flux.jl or PyTorch into optimization problems. Explore the design choices behind MathOptAI.jl and compare it to other software packages for optimizing over machine learning surrogates. Discover different formulations available for representing neural networks in optimization problems and examine a practical example of representing transient stability constraints in optimal power flow problems using neural network surrogates. Analyze benchmarks that reveal scalability limits of various neural network formulations in nonlinear local optimization problems while identifying bottlenecks in JuMP/MOI and IPOPT data structures and subroutines. Master the gray-box formulation that enables seamless integration with neural network modeling software through registered functions in JuMP, allowing optimization over large neural networks while exploiting GPU acceleration capabilities built into PyTorch.
Syllabus
Optimizing over trained neural networks with MathOptAI.jl
Taught by
The Julia Programming Language