Results 1  10
of
44
Recipes for Adjoint Code Construction
"... this paper, is the Adjoint Model Compiler (AMC). ..."
Abstract

Cited by 155 (17 self)
 Add to MetaCart
this paper, is the Adjoint Model Compiler (AMC).
Optimization by direct search: New perspectives on some classical and modern methods
 SIAM Review
, 2003
"... Abstract. Direct search methods are best known as unconstrained optimization techniques that do not explicitly use derivatives. Direct search methods were formally proposed and widely applied in the 1960s but fell out of favor with the mathematical optimization community by the early 1970s because t ..."
Abstract

Cited by 123 (13 self)
 Add to MetaCart
Abstract. Direct search methods are best known as unconstrained optimization techniques that do not explicitly use derivatives. Direct search methods were formally proposed and widely applied in the 1960s but fell out of favor with the mathematical optimization community by the early 1970s because they lacked coherent mathematical analysis. Nonetheless, users remained loyal to these methods, most of which were easy to program, some of which were reliable. In the past fifteen years, these methods have seen a revival due, in part, to the appearance of mathematical analysis, as well as to interest in parallel and distributed computing. This review begins by briefly summarizing the history of direct search methods and considering the special properties of problems for which they are well suited. Our focus then turns to a broad class of methods for which we provide a unifying framework that lends itself to a variety of convergence results. The underlying principles allow generalization to handle bound constraints and linear constraints. We also discuss extensions to problems with nonlinear constraints.
NEOS and CONDOR: Solving Optimization Problems over the Internet
 ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE
, 1998
"... We discuss the use of Condor, a distributed resource management system, as a provider of computational resources for NEOS, an environment for solving optimization problems over the Internet. We also describe how problems are submitted and processed by NEOS, and then scheduled and solved by Condor ..."
Abstract

Cited by 34 (1 self)
 Add to MetaCart
We discuss the use of Condor, a distributed resource management system, as a provider of computational resources for NEOS, an environment for solving optimization problems over the Internet. We also describe how problems are submitted and processed by NEOS, and then scheduled and solved by Condor on available (idle) workstations.
Computing Gradients in LargeScale Optimization Using Automatic Differentiation
 PREPRINT MCSP4880195, MATHEMATICS AND COMPUTER SCIENCE DIVISION, ARGONNE NATIONAL LABORATORY
, 1995
"... The accurate and efficient computation of gradients for partially separable functions is central to the solution of largescale optimization problems, since these functions are ubiquitous in largescale problems. We describe two approaches for computing gradients of partially separable functions via ..."
Abstract

Cited by 23 (9 self)
 Add to MetaCart
The accurate and efficient computation of gradients for partially separable functions is central to the solution of largescale optimization problems, since these functions are ubiquitous in largescale problems. We describe two approaches for computing gradients of partially separable functions via automatic differentiation. In our experiments we employ the ADIFOR (Automatic Differentiation of Fortran) tool and the SparsLinC (Sparse Linear Combination) library. We use applications from the MINPACK2 test problem collection to compare the numerical reliability and computational efficiency of these approaches with handcoded derivatives and approximations based on differences of function values. Our conclusion is that automatic differentiation is the method of choice, providing code for the efficient computation of the gradient without the need for tedious handcoding.
To be recorded” analysis in reversemode automatic differentiation
 Future Generation Computer Systems
"... The automatic generation of adjoints of mathematical models that are implemented as computer programs is receiving increased attention in the scientific and engineering communities. Reversemode automatic differentiation is of particular interest for largescale optimization problems. It allows the ..."
Abstract

Cited by 20 (7 self)
 Add to MetaCart
The automatic generation of adjoints of mathematical models that are implemented as computer programs is receiving increased attention in the scientific and engineering communities. Reversemode automatic differentiation is of particular interest for largescale optimization problems. It allows the computation of gradients at a small constant multiple of the cost for evaluating the objective function itself, independent of the number of input parameters. Sourcetosource transformation tools apply simple differentiation rules to generate adjoint codes based on the adjoint version of every statement. In order to guarantee correctness, certain values that are computed and overwritten in the original program must be made available in the adjoint program. For their determination we introduce a static dataflow analysis called “to be recorded ” analysis. Possible overestimation of this set must be kept minimal to get efficient adjoint codes. This efficiency is essential for the applicability of sourcetosource transformation tools to realworld applications. 1 Automatically Generated Adjoints We consider a computer program P evaluating a vector function y = F (x), where F: IR n → IR m. Usually, P implements the mathematical model of some underlying realworld application and it is referred to as the original code. The goal of automatic differentiation (AD) [3,7,15] by source transformation is to build automatically a new source program P ′ evaluating some derivatives of F. This is arrow AD in Figure 1. We consider a simplified mathematical model, symbolized by arrow R in Figure 1: Every particular run of P on a particular set of inputs is equivalent to a simple sequence of p scalar assignments vj = ϕj(vk)k≺j, j = 1,..., q, (1)
Efficient Derivative Codes Through Automatic Differentiation And Interface Contraction: An Application In Biostatistics
, 1997
"... . Developing code for computing the first and higherorder derivatives of a function by hand can be very timeconsuming and is prone to errors. Automatic differentiation has proven capable of producing derivative codes with very little effort on the part of the user. Automatic differentiation avoid ..."
Abstract

Cited by 16 (10 self)
 Add to MetaCart
. Developing code for computing the first and higherorder derivatives of a function by hand can be very timeconsuming and is prone to errors. Automatic differentiation has proven capable of producing derivative codes with very little effort on the part of the user. Automatic differentiation avoids the truncation errors characteristic of divided difference approximations. However, the derivative code produced by automatic differentiation can be significantly less efficient than one produced by hand. This shortcoming may be overcome by utilizing insight into the highlevel structure of a computation. This paper focuses on how to take advantage of the fact that the number of variables passed between subroutines frequently is small compared with the number of variables with respect to which one wishes to differentiate. Such an "interface contraction," coupled with the associativity of the chain rule for differentiation, allows one to apply automatic differentiation in a more judicious f...
More AD of Nonlinear AMPL Models: Computing Hessian Information and Exploiting Partial Separability
 in Computational Differentiation: Applications, Techniques, and
, 1996
"... We describe computational experience with automatic differentiation of mathematical programming problems expressed in the modeling language AMPL. Nonlinear expressions are translated to loopfree code, which makes it easy to compute gradients and Jacobians by backward automatic differentiation. ..."
Abstract

Cited by 16 (10 self)
 Add to MetaCart
We describe computational experience with automatic differentiation of mathematical programming problems expressed in the modeling language AMPL. Nonlinear expressions are translated to loopfree code, which makes it easy to compute gradients and Jacobians by backward automatic differentiation. The nonlinear expressions may be interpreted or, to gain some evaluation speed at the cost of increased preparation time, converted to Fortran or C. We have extended the interpretive scheme to evaluate Hessian (of Lagrangian) times vector. Detecting partially separable structure (sums of terms, each depending, perhaps after a linear transformation, on only a few variables) is of independent interest, as some solvers exploit this structure. It can be detected automatically by suitable "tree walks". Exploiting this structure permits an AD computation of the entire Hessian matrix by accumulating Hessian times vector computations for each term, and can lead to a much faster computation...
Sensitivity Analysis For Atmospheric Chemistry Models Via Automatic Differentiation
 Environ
, 1997
"... . Automatic differentiation techniques are used in the sensitivity analysis of a comprehensive atmospheric chemical mechanism. Specifically, ADIFOR software is used to calculate the sensitivity of ozone with respect to all initial concentrations (of 84 species) and all reaction rate constants (178 c ..."
Abstract

Cited by 13 (4 self)
 Add to MetaCart
. Automatic differentiation techniques are used in the sensitivity analysis of a comprehensive atmospheric chemical mechanism. Specifically, ADIFOR software is used to calculate the sensitivity of ozone with respect to all initial concentrations (of 84 species) and all reaction rate constants (178 chemical reactions) for six different chemical regions. Numerical aspects of the application of ADIFOR are also presented. Automatic differentiation is shown to be a powerful tool for sensitivity analysis. Key words. Atmospheric chemistry, Automatic Differentiation. 1. Introduction. Comprehensive sensitivity analysis of air pollution models remains the exception rather than the rule. Most sensitivity analysis applied to air pollution modeling studies has focused on the calculation of the local sensitivities (first order derivatives of output variables with respect to model parameters) in box model studies of gas phase chemistry (see [Cho86]). The most common form of sensitivity studies with ...
A differentiationenabled Fortran 95 compiler
 CODEN ACMSCU. ISSN 00983500 (print), 15577295 (electronic). 215 Tang:2005:DNI
, 2005
"... ..."
Inversion Based On Computational Simulations
, 1998
"... A standard approach to solving inversion problems that involve many parameters uses gradientbased optimization to find the parameters that best match the data. We will discuss enabling techniques that facilitate application of this approach to largescale computational simulations, which are the on ..."
Abstract

Cited by 12 (11 self)
 Add to MetaCart
A standard approach to solving inversion problems that involve many parameters uses gradientbased optimization to find the parameters that best match the data. We will discuss enabling techniques that facilitate application of this approach to largescale computational simulations, which are the only way to investigate many complex physical phenomena. Such simulations may not seem to lend themselves to calculation of the gradient with respect to numerous parameters. However, adjoint differentiation allows one to efficiently compute the gradient of an objective function with respect to all the variables of a simulation. When combined with advanced gradientbased optimization algorithms, adjoint differentiation permits one to solve very large problems of optimization or parameter estimation. These techniques will be illustrated through the simulation of the timedependent diffusion of infrared light through tissue, which has been used to perform optical tomography. The techniques discussed have a wide range of applicability to modeling including the optimization of models to achieve a desired design goal.