Combinatorial Problems in OpenAD

Computing derivatives using automatic differentiation methods entails a variety of combinatorial problems. The OpenAD tool implements automatic differentiation as source transformation of a program that represents a numerical model. We select three combinatorial problems and discuss the solutions implemented in OpenAD. Our intention is to explain the specific parts of the implementation so that readers can easily use OpenAD to investigate and develop their own solutions to these problems.

[1]  Uwe Naumann,et al.  Simulated Annealing for Optimal Pivot Selection in Jacobian Accumulation , 2003, SAGA.

[2]  Yuxiao Hu,et al.  Optimal vertex elimination in single-expression-use graphs , 2008, TOMS.

[3]  Andreas Griewank,et al.  Evaluating derivatives - principles and techniques of algorithmic differentiation, Second Edition , 2000, Frontiers in applied mathematics.

[4]  Andreas Griewank,et al.  Algorithm 799: revolve: an implementation of checkpointing for the reverse or adjoint mode of computational differentiation , 2000, TOMS.

[5]  Uwe Naumann,et al.  Optimal Jacobian accumulation is NP-complete , 2007, Math. Program..

[6]  Uwe Naumann,et al.  Optimal accumulation of Jacobian matrices by elimination methods on the dual computational graph , 2004, Math. Program..

[7]  Andreas Griewank,et al.  A mathematical view of automatic differentiation , 2003, Acta Numerica.

[8]  J. Utke,et al.  On the Practical Exploitation of Scarsity , 2008 .

[9]  Martin Bücker,et al.  Automatic differentiation : applications, theory, and implementations , 2006 .

[10]  Jean Utke,et al.  Advances in Automatic Differentiation , 2008 .

[11]  Walter Baur,et al.  The Complexity of Partial Derivatives , 1983, Theor. Comput. Sci..

[12]  Jean Utke,et al.  Flattening Basic Blocks , 2006 .

[13]  Jean Utke,et al.  OpenAD/F: User Manual , 2006 .

[14]  A. Griewank Acta Numerica 2003: A mathematical view of automatic differentiation , 2003 .

[15]  Uwe Naumann,et al.  Call Tree Reversal is NP-Complete , 2008 .