Users Guide for SnadiOpt: A Package Adding Automatic Differentiation to Snopt
E. Michael Gertz, Philip E. Gill, Julia Muetherig
Abstract
SnadiOpt is a package that supports the use of the automatic differentiation package ADIFOR with the optimization package Snopt. Snopt is a general-purpose system for solving optimization problems with many variables and constraints. It minimizes a linear or nonlinear function subject to bounds on the variables and sparse linear or nonlinear constraints. It is suitable for large-scale linear and quadratic programming and for linearly constrained optimization, as well as for general nonlinear programs. The method used by Snopt requires the first derivatives of the objective and constraint functions to be available. The SnadiOpt package allows users to avoid the time-consuming and error-prone process of evaluating and coding these derivatives. Given Fortran code for evaluating only the values of the objective and constraints, SnadiOpt automatically generates the code for evaluating the derivatives and builds the relevant Snopt input files and sparse data structures.
Create a lesson
Related papers
The Art of Closed-Formula Defaults: Search-Free Code Generation for Tensor Operators
Paolo D'Alberto, Ashish Sirasao
Geometric Function Atlas: certified computing for geometric function theory in Python
Kishan Gurumurthy, Pushparaj Devadiga, Prasanna Devadiga et al.
Gradient Reconstruction in Lattice Boltzmann Methods for Systems of Conservation Laws
Adrian Kummerländer, Fedor Bukreev, Mathias J. Krause
BF16 Component-Product Emulation of FP32 and FP64 GEMM on Intel AMX
Bing Cui, Yu Liu
GRADSOLVE: fast exact gradients for ODE ensembles on GPUs
Alessio Spurio Mancini
Performance Evaluation of Fast Fourier Transforms on Emerging RISC-V Hardware with Vector Extension Support
Daniel Seibel, Kaveh Haghighi Mood, Jayesh Badwaik et al.