We study Automatic Differentiation (A.D.) of algorithms and programs,
from the point of view of Software analysis and transformation on one hand,
and from the point of view of applications in Scientific Computing on the other hand.
Our name is an acronym for "TRansformations et Outils
Informatiques Pour le Calcul Scientifique",
which means just that!
We take into account the specific requirements of real large-scale
scientific programs. Our team
is composed of numerical analysis specialists,
who bring their knowledge of scientific computing, and of software engineering
specialists, who bring their knowledge of program analysis, transformation,
We work at the junction of two research domains:
A.D. theory: On the one hand, we study A.D. as
a software engineering techniques, to analyze and transform
A.D. transforms a program P that computes a
function F, into a program P'
that computes some derivatives of F, analytically.
See our discussion about "What is A.D.?".
We put a particular emphasis on the reverse mode
of A.D. (sometimes called adjoint mode),
which yields gradients for optimization at a remarkably low cost.
The reverse mode of A.D. requires carefully crafted algorithms.
There are computer science problems such
as complexity of the computation of derivatives,
memory usage for the reverse mode, or variable aliasing.
A.D. application to Scientific Computing:
On the other hand, we study the application of A.D.,
and particularly of the adjoint mode, to e.g. Computational Fluid Dynamics.
This involves adapting the strategies used in Scientific Computing,
in order to take full advantage of A.D..
There are mathematical questions such as the
behavior of A.D. in a neighborhood of program discontinuities (tests...), the
convergence of derivatives compared to convergence of initial results, or the
complexity of various A.D. strategies.
This research is applied to several real-size applications.
A.D. is a relatively young and very interesting
domain, as can be seen in the proceedings of conferences
from the www.autodiff.org
site for the Automatic Differentiation community, managed by our
colleagues in Aachen and Argonne
Our ideas need to be validated in some testbench. Moreover,
we want our research to be applicable to real-life programs. To this
end, we develop the A.D. tool TAPENADE.
See the TAPENADE links on the left for more information on the tool.
The European Workshops on
Automatic Differentiation, that we
co-organize twice a year together with
Bruce Christianson (Univ. of Hetfordshire, UK), Shaun Forth (Cranfield University,
Shrivenham, UK), and Martin Buecker (RWTH Aachen, Germany).
April 2010: We co-organize a scientific meeting on the occasion of Andreas Griewank's
60th birthday. 40 participants from all over the world, reflecting the carrier and achievements of
Andreas. Fun is also part of the programme, with three new songs created as a tribute to AD.
April 2010: We organize a one-day meeting at Sophia-Antipolis, on matters related to AD,
taking advantage of the presence of four distinguished professors: Jorge More (ANL, Illinois, USA),
Ralph Baker Kearfott (University of Louisiana, USA), Trond Steihaug (Universty of Bergen, Norway), and
Andreas Griewank (Humboldt University, Berlin, Germany).