AD workshop, Nice 2005
Abstracts and slides of all presentations
Benjamin Dauvergne - INRIA Sophia-Antipolis - SLIDES
"Adjoint Data-Flow analyses applied to checkpointing"
In the context of the reverse mode of AD, we defined
"adjoint Data-Flow analyses" to extract useful write, read, and
liveness information on the variables of a differentiated program.
We now consider the important case of checkpoints, which leads us
to defining new Data-Flow equations. In particular we are able to
reduce redundancies between the snapshots of successive checkpoints.
We observe that there is a tradeoff between small snapshots and reduced
tape size, and we are looking for an algorithm that finds a
good compromise between the two.
Brad Bell - Applied Physics Laboratory, University of Washington - PRESENTATION WEB SITE
(text-only version if your browser doesn't support MathML)
"Using Fortran Code with C++ Algorithmic Differentiation Types"
The f2c program converts Fortran 77 code to C. It is a well known open
source program that has been very widely used and tested. For example,
Netlib distributes CLAPACK which is an f2c translation of a Fortran
version of LAPACK. Up until recently, f2c was distributed with most
Linux distributions. Now a good native Fortran compiler is part of the
GNU compiler collection (gcc) and no one seems to be working on the
f2c project (October of 2003 is the date of the last listed change ).
During this talk I will report on some preliminary work that
demonstrates the feasibility of using f2c to link Fortran functions
and subroutines with the C++ Algorithmic packages ADOLC, CppAD, and
FADBAD. I will also talk about some of the difficulties in extending
f2c so that it can output C++ with the floating point type a template
parameter (making it easy to use with the AD packages listed above as
well as other operator overloading applications).
Keywords:
f2c, Fortran, C++, operator overloading, AD, ADOLC, CppAD, FADBAD.
Mike Fagan - Rice University - SLIDES
"Current status of Adifor 90"
Adifor 90 is the successor to Adifor 3.0 that covers Fortran 90 as
well as Fortran 77. This talk describes the design and implementation
of the Adifor 90 tool, including an experimental implementation of the
'always recompute' rule for pointers.
Shaun Forth - Cranfield University (Shrivenham Campus) - SLIDES
"Developments in the MAD package"
MAD is an overloaded package for AD in MATLAB. We review its robust
forward mode for first derivatives which is frequently very efficient
for large applications due to use of MATLAB's sparse matrix class and
associated matrix operations for storing and combining derivatives. We
describe first, successful experiences in differentiated
object-oriented code - this required adding ONE LINE of code to the
user's MATLAB source. We explain, with examples, how MAD has been
incorporated into the TOMLAB (www.tomlab.biz) optimisation package. We
present a roadmap for future developments.
Ralf Giering - FastOpt - SLIDES
"Fortran codes recently differentiated by means of TAF"
We provide an overview on recent applications of our AD tool
Transformation of Algorithms in Fortran. Examples include tangent
linear and adjoint versions of the aerodynamic code FLOWer, of
biogeochemistry modules for the MIT ocean general circulation model,
and of the atmospheric transport model NIRE-CTM.
Mike Giles & Devendra Ghate- Oxford University - SLIDES
"Using adjoints for inexpensive Monte Carlo uncertainty analysis"
This talk is motivated by engineering applications in which one wants
to quantify the consequences of uncertainty due to manufacturing
tolerances. We will discuss the use of adjoints for inexpensive,
approximate Monte Carlo analysis, and relate it to an efficient way of
computing Hessians of output functions in applications based on fixed
point iterations.
Andreas Griewank - T.U. Berlin - SLIDES
"Definition and Evaluation of projected Hessians for Piggyback Optimization"
In piggyback optimization we attempt to turn a given iterative state
equation solver into an optimization algorithm. Adjoining the solver
yields approximate reduced gradients, which must be preconditioned and
scaled to yield reasonable correction steps on the optimization
variables. For that purpose we examine various projected Hessian
matrices with respect to the resulting overall convergence speed and
discuss their evaluation or approximation based on second order
adjoint evaluations.
Sebastian Heinz - T.U. Berlin - SLIDES
"AD viewed from algebraic complexity"
We study the complexity of iterative matrix-free methods in order to
solve nonlinear least squares problems fast. In every iteration step,
a fixed linear function has to be evaluated at various points. We
assume that the linear function is given by a computational graph
(i.e. an output of an AD-tool). We want to analyse how preaccumulation
of the computational graph can reduce the running time of our
method. As an approach, we motivate relations to algebraic complexity
theory.
Rahul Kharche - Cranfield University (Shrivenham Campus) - SLIDES
"Progress with MATLAB Source transformation AD (MSAD)"
MSAD is a Java based tool to differentiate MATLAB programs using the
forward mode of AD. The result of the differentiation process is an
augmented MATLAB code that computes both the function value and its
first derivatives. Previously MSAD used a hybrid of source
transformation and operator overloading techniques to carry out the
differentiation. The current implementation performs a complete source
transformation by specialising and inlining operations of the derivvec
class from the MAD package. In several cases we observed an order of
magnitude increase in performance over the pure overloading
counterpart MAD, and performance is comparable to the MATLAB finite
differencing routine numjac. In this talk we briefly look at
the advantages of this approach, and present some run-times for the
gradient/Jacobian computation of ODE, DAE functions and optimisation
problems from the MINPACK set. We also comapare the run-time
performances of complete solutions for boundary value problems
obtained with the bvp4c solver using MSAD with finite
differencing and MAD.
Boyana Norris - Argonne National Lab./MCS - SLIDES
"Current status of ADIC 2.0"
I will give an update on ADIC 2.0 status and future plans. The
upcoming release of ADIC 2.0 handles forward mode differentiation of C
and C++ using OpenAD algorithms. I will also present ongoing and
future work on more complete language support for C++ and adding
reverse mode support.
Monika Petera - T.U. Aachen - SLIDES - PPS SLIDES
"ADiCape in a large-scale industrial problem"
The source transformation tool ADiCape is employed to apply the
forward mode of automatic differentiation to CapeML, an XML-based
code. The advantages of the Curtis-Powell-Reid (CPR) seeding in the
evaluation of a sparse Jacobian matrix is described, considering an
example of an industrial distillation column model.
Arno Rasch - T.U. Aachen - SLIDES
"The Hessian Module: Status and Future Perspectives"
This talk will summarize and compare the multiple features of the
Hessian module which was developed by Jason Abate and his coworkers.
We will also indicate some future directions towards efficiently
computing second-order derivatives using the software infrastructure
provided by the Hessian module.
Jan Riehme - T.U. Berlin - SLIDES
"2nd-order derivatives with ADTAGEO"
We describe the computation of second order derivatives
within ADTAGEO (Algorithmic Differentiation Trough Automatic
Graph Elimination Ordering), an approach to Automatic
Differentiation strictly based on the instant elimination of
any node in the Computational Graph, whenever the corresponding
active variable (also intermediates) is scheduled for deallocation.
After discussing the propagation (and elimination) of local Hessians
we present first elimination rules on the symmetric graph of the
Hessian introduced by Dixon (L.C.W.Dixon, "Use of automatic
differentiation for calculating Hessians and Newton Steps", in
Griewank, Corliss (eds.), "Automatic differentiation of algorithms:
Theory, implementation, and application", SIAM, Philadelphia, 1991).
Siegfried Rump - TU Harburg - SLIDES
"Gradients and Hessians in INTLAB, the Matlab toolbox for verified computations"
INTLAB uses the Matlab operator concept to implement forward automatic
differentiation. The main goal of INTLAB is to provide verified bounds
for the solution of numerical problems, such as systems of nonlinear
equations or verification of optima of optimization problems, locally
and globally. We use AD as a tool to provide necessary derivatives,
including functions with interval data. We used some special methods
to overcome Matlab interpretation overhead and to use sparsity, so
that optimization problems with 1000 unknowns and more can be treated.
Trond Steihaug - U. Bergen & HU Berlin - SLIDES
"Trust Region with a Cubic Model"
In this talk we will present ongoing work on trust region methods
with higher order models. In these methods we need the third
derivative of a scalar function or the second derivative of a
vector valued function. Even for small problems computing these
derivatives are error prone. The goal of the project is to
derive 'tensor free' methods (only the tensor applied to a vector)
in the same way as we have matrix free method using only matrix vector
product. We will motivate the need of these methods
from regularization problems.
Mohamed Tadjouddine - Cranfield University (Shrivenham Campus) - SLIDES
"Differentiating a time-dependent CFD solver"
We report our efforts in using the source transformation AD tools TAF
and TAPENADE to differentiate a time-dependent CFD solver that is
written in F95 and features mesh movement. The CFD code simulates a
small device that generates a jet-like flow by oscillating fluid in a
chamber connected to its surroundings via an orifice. We discuss a
case study aimed at optimising the kinetic energy of the upwards
motion of the jet by controlling the frequency and amplitude
of the oscillation. The optimisation makes use of the FFSQP
optimisation routine (developed at the University of Maryland) using
the gradient calculated by AD.
Jean Utke - Argonne National Lab./MCS - SLIDES
"Automatic checkpoints and adaptive reversal schemes"
In the attempt to automate checkpoint placement in the context
of various reversal schemes (other than plain split and joint)
we have to look for code analysis that supports such an automation
in a conservatively correct way. We want to discuss some issues that
arise with result checkpoints, dynamic data structures as well as some
ideas for a solution.
Michael Vossbeck - FastOpt - SLIDES
"Two automatically generated adjoint C codes"
Development of our AD tool Transformation of Algorithms in C++ (TAC++)
aims at transferring well-proved TAF concepts from Fortran to C/C++,
complemented with additional language specific concepts. We pursue a
demand-driven approach, i.e. the tool is enhanced from application to
application. We'll present at least two applications to short CFD
codes.
Last modified: Mon May 9 09:35:30 MEST 2005