Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
2007 | 27 | 1 | 119-134
Tytuł artykułu

Efficient calculation of sensitivities for optimization problems

Treść / Zawartość
Warianty tytułu
Języki publikacji
Sensitivity information is required by numerous applications such as, for example, optimization algorithms, parameter estimations or real time control. Sensitivities can be computed with working accuracy using the forward mode of automatic differentiation (AD).
ADOL-C is an AD-tool for programs written in C or C++. Originally, when applying ADOL-C, tapes for values, operations and locations are written during the function evaluation to generate an internal function representation. Subsequently, these tapes are evaluated to compute the derivatives, sparsity patterns etc., using the forward or reverse mode of AD. The generation of the tapes can be completely avoided by applying the recently implemented tapeless variant of the forward mode for scalar and vector calculations. The tapeless forward mode enables the joint computation of function and derivative values directly from main memory within one sweep. Compared to the original approach shorter runtimes are achieved due to the avoidance of tape handling and a more effective, joint optimization for function and derivative code.
Advantages and disadvantages of the tapeless forward mode provided by ADOL-C will be discussed. Furthermore, runtime comparisons for two implemented variants of the tapeless forward mode are presented. The results are based on two numerical examples that require the computation of sensitivity information.
  • Institute of Scientific Computing, TU Dresden, 01062 Dresden, Germany
  • Institute of Scientific Computing, TU Dresden, 01062 Dresden, Germany
  • [1] M.B. Bell, CppAD: A package for C++ Algorithmic Differentiation, COIN-OR foundation, Available at
  • [2] C. Bendtsen and O. Stauning, FADBAD, a flexible C++ package for automatic differentiation, Department of Mathematical Modelling, Technical University of Denmark, 1996, Available at
  • [3] J. Dongarra, S. Moore, P. Mucci, K. Seymour, D. Terpstra, Q. Xia and H. You, Performance Application Programming Interface, Innovative Computing Laboratory, Department of Computer Science, University of Tennessee, Available at
  • [4] R. Giering and T. Kaminski, Recipes for Adjoint Code Construction, ACM Trans. Math. Software 24 (1998), 437-474. URL:
  • [5] A. Griewank, A. Kowarz and A. Walther, Documentation of ADOL-C, Available at, Updated Version of: A. Griewank, D. Juedes, J. Utke J, ADOL-C: A package for the automatic differentiation of algorithms written in C/C++. ACM Trans. Math. Software 22 (1996), 131-167.
  • [6] A. Griewank A, Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation, Number 19 in Frontiers in Appl. Math. SIAM, Philadelphia, 2000.
  • [7] R. Griesse and A. Walther, Parametric sensitivities for optimal control problems using automatic differentiation, Optimal Control Applications and Methods 24 (2003), 297-314.
  • [8] L. Hascoët and V. Pascual, Tapenade 2.1 user's guide. Tech. rep. 300, INRIA, 2004.
  • [9] F. Mazzia F and F. Iavernaro, Test Set for Initial Value Problem Solvers, Entire test set description, Department of Mathematics, University of Bari, August 2003, Available at
  • [10] M. Knauer and C. Büskens, Real-Time Trajectory Planning of the Industrial Robot IRB6400, PAMM. 3 (2003), 515-516.
Typ dokumentu
Identyfikator YADDA
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.