Abstract
This paper deals with the calculation of partial derivatives (w.r.t. the independent variables, x) of a vec of dependent variables y which satisfy a system of nonlinear equations g(u(x), y) = 0 . A number of authors have suggested that the forward accumulation method of automatic differentiation can be applied to a suitable iterative scheme for solving the nonlinear system with a view to giving simultaneous convergence both to the correct value y and also to its Jacobian matrix y x . It is known, however, that convergence of the derivatives may not occur at the same rate as the convergence of the y values. In this paper we avoid both the difficulty and the potential cost of iterating the gradient part of the calculation to sufficient accuracy. We do this by observing that forward accumulation need only be applied to the functions g after the dependent variables, y, have been computed in standard real arithmetic usin g any appropriate method. This so-called Post-Differentiation (PD) technique is shown, on a number of examples, to have an advantage in terms of both accuracy and speed over approaches where forward accumulation is applied over the entire iterative process. Moreover, the PD technique can be implemented in such a way as to provide a friendly interface for non-specialist users.
Similar content being viewed by others
References
M. Bartholomew-Biggs, “Using a Fortran90 module for automatic differentiation,” Working Paper, Numerical Optimisation Centre, University of Hertfordshire, 1994.
M. Bartholomew-Biggs, L. Bartholomew-Biggs, and B. Christianson, “Optimization and auto differentiation in Ada: some practical experience,” Optimization Methods and Software, vol. 4, pp. 47-73, 1994.
M. Bartholomew-Biggs, S. Brown, B. Christianson, and L. Dixon, “The efficient calculation of gradients, Jacobians and Hessians,” Technical Report 301, Numerical Optimisation Centre, University of Hertfordshire, 1995.
C. Bischof, A. Carle, G. Corliss, A. Griewank, and P. Hovland, “ADIFOR: Generating derivative codes from Fortran programs,” Scientific Programming, vol. 1, pp. 11-29, 1992.
C. Bischof, A. Carle, P. Khademi, and A. Mauer, “The ADIFOR 2.0 system for the automatic differentiation of Fortran77 programs,” Preprint MCS-P481-1194, Mathematics and Computer Science Division, Argonne National Laboratory, 1994.
C. Broyden, “A class of methods for solving nonlinear simultaneous equations,” Math. Comp., vol. 19, pp. 577-593, 1965.
B. Christianson, “Automatic Hessians by reverse accumulation,” IMA Journal of Numerical Analysis, vol. 12, pp. 135-150, 1992.
B. Christianson, “Reverse accumulation and attractive fixed points,” Optimization Methods and Software, vol. 3, pp. 311-326, 1994.
B. Christianson and L. Dixon, “Sharing storage using dirty vectors,” Proc. 2nd SIAM Int. Workshop in Computational Differentiation, 1996 (to appear).
J. Gilbert, “Automatic differentiation and iterative processes,” Optimization Methods and Software, vol. 1, pp. 13-21, 1992.
A. Griewank, “On automatic differentiation,” in Mathematical Programming: Recent Development and Application, M. Iri and K. Tanabe (Eds.), Kluwer Academic Publishers, 1989.
A. Griewank, C. Bischof, G. Corliss, A. Carle, and K. Williamson, “Iterative convergence for iterative equation solvers,” Optimization Methods and Software, vol. 4, pp. 321-355, 1994.
A. Griewank, D. Juedes, and J. Utke, “ADOL C, a package for the automatic differentiation of algorithms written in C/C++,” ACM Trans. Math. Software, 1996 (to appear); [Also appeared as Preprint MCS-P180-1190, Argonne National Laboratory, 1990].
L.B. Rall, Automatic Differentiation-Techniques and Applications, Springer Lecture Notes in Computer Science, vol. 120, 1981.
J.K. Reid and D. Cowey, HSL AD01, Harwell Subroutine Library Specification, 1994.
N. Rostaing, S. Dalmas, and A. Galligo, Automatic Differentiation in Odysee, available via http://www.mcs.ani.gov/ autodiff/AD Tools/odysee.htm/.
D. Shiraev, “Fast automatic differentiation for vector processors and reduction of the spatial complexity in a source translation environment,” Dissertation, University of Karlsruhe, 1993.
B.R. Stephens, “Automatic differentiation as a general purpose numerical tool,” Ph.D. Thesis, Faculty of Science, University of Bristol, 1991.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Bartholomew-Biggs, M. Using Forward Accumulation for Automatic Differentiation of Implicitly-Defined Functions. Computational Optimization and Applications 9, 65–84 (1998). https://doi.org/10.1023/A:1018382103801
Issue Date:
DOI: https://doi.org/10.1023/A:1018382103801