TY - JOUR
T1 - Differentiating through Conjugate Gradient
AU - Christianson, Bruce
N1 - This is the pre-print version of an article published by Taylor & Francis in Optimization Methods and Software on 6 January 2018, available online at: https://doi.org/10.1080/10556788.2018.1425862.
PY - 2018/11/2
Y1 - 2018/11/2
N2 - We show that, although the Conjugate Gradient (CG) Algorithm has a singularity at the solution, it is possible to differentiate forward through the algorithm automatically by re-declaring all the variables as truncated Taylor series, the type of active variable widely used in Automatic Differentiation (AD) tools such as ADOL-C. If exact arithmetic is used, this approach gives a complete sequence of correct directional derivatives of the solution, to arbitrary order, in a single cycle of at most n iterations, where n is the number of dimensions. In the inexact case the approach emphasizes the need for a means by which the programmer can communicate certain conditions involving derivative values directly to an AD tool.
AB - We show that, although the Conjugate Gradient (CG) Algorithm has a singularity at the solution, it is possible to differentiate forward through the algorithm automatically by re-declaring all the variables as truncated Taylor series, the type of active variable widely used in Automatic Differentiation (AD) tools such as ADOL-C. If exact arithmetic is used, this approach gives a complete sequence of correct directional derivatives of the solution, to arbitrary order, in a single cycle of at most n iterations, where n is the number of dimensions. In the inexact case the approach emphasizes the need for a means by which the programmer can communicate certain conditions involving derivative values directly to an AD tool.
KW - Automatic differentiation
KW - Taylor series
KW - conjugate gradient
UR - http://www.scopus.com/inward/record.url?scp=85053272150&partnerID=8YFLogxK
U2 - 10.1080/10556788.2018.1425862
DO - 10.1080/10556788.2018.1425862
M3 - Article
SN - 1055-6788
VL - 33
SP - 988
EP - 994
JO - Optimization Methods and Software
JF - Optimization Methods and Software
IS - 4-6
ER -