Previous |  Up |  Next

Article

Keywords:
automatic differentiation; modeling languages; systems for optimization
Summary:
Automatic differentiation is an effective method for evaluating derivatives of function, which is defined by a formula or a program. Program for evaluating of value of function is by automatic differentiation modified to program, which also evaluates values of derivatives. Computed values are exact up to computer precision and their evaluation is very quick. In this article, we describe a program realization of automatic differentiation. This implementation is prepared in the system UFO, but its principles can be applied in other systems. We describe, how the operations are stored in the first part of the derivative computation and how the obtained records are effectively used in the second part of the computation.
References:
[1] Automatic Differentiation of Algorithms: Theory, Implementation, and Application. SIAM, Philadelphia 1992. MR 1143784 | Zbl 0747.00030
[2] Automatic Differentiation: Applications, Theory, and Implementations. Springer–Verlag, Berlin 2005. Zbl 1084.65002
[3] Computational Differentiation – Techniques, Applications, and Tools. SIAM, Philadelphia 1996. MR 1431037 | Zbl 0857.00033
[4] R. Griesse and A. Walther: Evaluating gradients in optimal control – Continuous adjoints versus automatic differentiation. J. Optim. Theory Appl. 122 (2004), 1, 63–86. MR 2092472
[5] A. Griewank: Evaluation Derivatives: Principles and Techniques of Algorithmic Differentiation. SIAM, Philadelphia 2000. MR 1753583
[6] A. Griewank and A. Walther: Introduction to automatic differentiation. PAMM 2 (2003), 45–49.
[7] J. Hartman: Realizace metod pro automatické derivování (Implementation of Methods for Automatic Differentiation). Diploma Thesis. Faculty of Mathematics and Physics, Charles University, Prague 2001.
[8] J. Hartman and L. Lukšan: Automatické derivování v systému UFO (Automatic Differentiation in System UFO). Technical Report V-1002. ICS AS CR, Prague 2007.
[9] J. Hartman and J. Zítko: Principy automatického derivování (Principles of Automatic Differentiation). Technical Report, Department of Numerical Mathematics, Faculty of Mathematics and Physics, Charles University, Prague 2006.
[10] L. Lukšan, M. Tůma, J. Hartman, J. Vlček, N. Ramešová, M. Šiška, and C. Matonoha: UFO 2006 – Interactive System for Universal Functional Optimization. Technical Report V-977. ICS AS CR, Prague 2006.
[11] A. Verma: Structured Automatic Differentiation. Ph.D. Thesis, Cornell University, 1988.
[12] A. Walther, A. Griewank, and O. Vogel: ADOL-C: Automatic differentiation using operator overloading in C++. PAMM 2 (2003), 41–44.
Partner of
EuDML logo