Efficient computation of gradients and Jacobians by dynamic exploitation of sparsity in automatic differentiation

被引:22
作者
Bischof, CH
Khademi, PM
Bouaricha, A
Carle, A
机构
[1] ARGONNE NATL LAB, DIV MATH & COMP SCI, ARGONNE, IL 60439 USA
[2] RICE UNIV, CTR RES PARALLEL COMPUTAT, HOUSTON, TX 77251 USA
基金
美国国家科学基金会;
关键词
automatic differentiation; sparsity; partial separability; sparse Jacobians; large-scale optimization; MINPACK-2; ADIFOR; SparsLinC;
D O I
10.1080/10556789608805642
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Automatic differentiation (AD) is a technique that augments computer codes with statements for the computation of derivatives. The computational workhorse of AD-generated codes for first-order derivatives is the linear combination of vectors. For many large-scale problems, the vectors involved in this operation are inherently sparse. If the underlying function is a partially separable one (e.g., if its Hessian is sparse), many of the intermediate gradient vectors computed by AD will also be sparse, even though the final gradient is likely to be dense. For large Jacobians computations, every intermediate derivative vector is usually at least as sparse as the least sparse row of the final Jacobian. In this paper, we show that dynamic exploitation of the sparsity inherent in derivative computation can result in dramatic gains in runtime and memory savings. For a set of gradient problems exhibiting implicit sparsity, we report on the runtime and memory requirements of computing the gradients with the ADIFOR (Automatic Differentiation of FORtran) tool, both with and without employing the SparsLinC (Sparse Linear Combinations) library, and show that SparsLinC can reduce runtime and memory costs by orders of magnitude. We also compute sparse Jacobians using the SparsLinC-based approach - in the process, automatically detecting the sparsity structure of the Jacobian - and show that these Jacobian results compare favorably with those of previous techniques that require a priori knowledge of the sparsity structure of the Jacobian.
引用
收藏
页码:1 / 39
页数:39
相关论文
共 28 条
[1]   COMPUTING LARGE SPARSE JACOBIAN MATRICES USING AUTOMATIC DIFFERENTIATION [J].
AVERICK, BM ;
MORE, JJ ;
BISCHOF, CH ;
CARLE, A ;
GRIEWANK, A .
SIAM JOURNAL ON SCIENTIFIC COMPUTING, 1994, 15 (02) :285-294
[2]  
Averick Brett M., 1992, ANLMCSTM150
[3]  
BARTHOLOMEWBIGG.M, 1994, OPTIMIZATION METHODS, V4, P47
[4]  
Bischof C., 1994, P 5 AIAA NASA USAF I, P73
[5]  
BISCHOF C, 1994, ANLMCSTM192
[6]  
BISCHOF C, 1995, MCSP4880195 ARG NAT
[7]  
BISCHOF C, 1992, J COMPUTING SYSTEMS, V3, P625
[8]  
BISCHOF C, 1994, ANLMCSTM196
[9]  
BISCHOF C, 1994, COMPUTATIONAL METHOD, V10, P173
[10]  
Bischof C.H., 1992, Sci. Program., V1, P11, DOI [10.1155/1992/717832, DOI 10.1155/1992/717832]