🤖 AI Summary
This work addresses the efficient computation of Jacobian matrices for chains of sequentially differentiable subroutines. We formulate Jacobian chain multiplication as a matrix chain multiplication scheduling problem with precedence constraints—a novel modeling approach. Our method integrates dynamic programming with scheduling-aware heuristics, achieving near-theoretical-optimal solution quality while substantially improving parallel scalability. By unifying automatic differentiation, matrix chain optimization, and task scheduling theory, it eliminates the serial bottlenecks inherent in conventional chain multiplication strategies. In benchmark evaluations, our algorithm attains solution quality comparable to that of branch-and-bound—yielding near-global optima—while demonstrating superior computational efficiency and parallel speedup over state-of-the-art methods. This establishes a new paradigm for high-performance Jacobian computation in large-scale differentiable programs.
📝 Abstract
This paper addresses the efficient computation of Jacobian matrices for programs composed of sequential differentiable subprograms. By representing the overall Jacobian as a chain product of the Jacobians of these subprograms, we reduce the problem to optimizing the sequence of matrix multiplications, known as the Jacobian Matrix Chain Product problem. Solutions to this problem yield"optimal bracketings", which induce a precedence-constraint scheduling problem. We investigate the inherent parallelism in the solutions and develop a new dynamic programming algorithm as a heuristic that incorporates the scheduling. To assess its performance, we benchmark it against the global optimum, which is computed via a branch-and-bound algorithm.