|
|
Algorithmic Differentiation and Vertex Elimination on Computational Hypergraphs-
Part of a collection
- | |
|
Author(s)
T. Bosse
, H. M. Bücker
|
Published in 2025 Proceedings of the Conference on Applied and Computational Discrete Algorithms (ACDA), July 30--August 1, 2025
|
Editor(s) A. Conway, A. Pothen, M. Farach-Colton, B. Uçar |
Year 2025 |
Publisher SIAM |
Abstract Algorithmic differentiation is a numerical method for computing derivatives of functions defined by computer codes. It systematically applies the chain rule to the operations executed during a program evaluation, typically represented by a directed acyclic graph. The vertices of this graph correspond to intermediate scalar values computed and stored during the program execution, and edges represent the data dependencies between these values. The process of accumulating derivatives involves successively eliminating vertices in a specific order within this graph. While the graph model captures perfectly the situation where the program executes scalar-valued operations with one or two input scalars, it does not immediately allow for raising the abstraction to a coarser level. The major contribution of this article is a novel combinatorial model that is capable of representing algorithmic differentiation for more general operations. Specifically, the model accommodates operations with multiple-input and multiple-output relations as well as intermediate values that are non-scalar. The new combinatorial model is based on computational hypergraphs, a novel class of directed hypergraphs where vertices represent non-scalar intermediate values and hyperedges correspond to operations involving multiple inputs and outputs---essentially, subroutines. Accumulating derivatives then corresponds to vertex elimination within these computational hypergraphs. In contrast to the graph model, the new elimination rules in the hypergraph model differ. |
AD Theory and Techniques Computational Graph |
BibTeX
@INPROCEEDINGS{
Bosse2025ADa,
author = "T. Bosse and H. M. B{\"u}cker",
title = "Algorithmic Differentiation and Vertex Elimination on Computational Hypergraphs",
booktitle = "2025 Proceedings of the Conference on Applied and Computational Discrete
Algorithms (ACDA), July~30--August~1, 2025",
editor = "A. Conway and A. Pothen and M. Farach-Colton and B. U{\c{c}}ar",
pages = "196--207",
address = "Philadelphia, PA, USA",
publisher = "SIAM",
url = "https://doi.org/10.1137/1.9781611978759.15",
doi = "10.1137/1.9781611978759.15",
abstract = "Algorithmic differentiation is a numerical method for computing derivatives of
functions defined by computer codes. It systematically applies the chain rule to the operations
executed during a program evaluation, typically represented by a directed acyclic graph. The
vertices of this graph correspond to intermediate scalar values computed and stored during the
program execution, and edges represent the data dependencies between these values. The process of
accumulating derivatives involves successively eliminating vertices in a specific order within this
graph. While the graph model captures perfectly the situation where the program executes
scalar-valued operations with one or two input scalars, it does not immediately allow for raising
the abstraction to a coarser level. The major contribution of this article is a novel combinatorial
model that is capable of representing algorithmic differentiation for more general operations.
Specifically, the model accommodates operations with multiple-input and multiple-output relations as
well as intermediate values that are non-scalar. The new combinatorial model is based on
computational hypergraphs, a novel class of directed hypergraphs where vertices represent non-scalar
intermediate values and hyperedges correspond to operations involving multiple inputs and
outputs---essentially, subroutines. Accumulating derivatives then corresponds to vertex elimination
within these computational hypergraphs. In contrast to the graph model, the new elimination rules in
the hypergraph model differ.",
year = "2025",
ad_theotech = "Computational Graph"
}
| |
back
|
|