A C++ class supporting adjoint-state methods

Date
2008
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract

The adjoint-state method is widely used for computing gradients in simulation-driven optimization problems. The adjoint-state evolution equation requires access to the entire history of the system states. There are instances, however, where the required state for the adjoint-state evolution is not readily accessible; consider large-scale problems, for example, where the entire simulation history is not saved to conserve memory. This thesis introduces a C++ state-access class, StateHistory , to support a myriad of solutions to this problem. Derived StateHistory classes implement a (simulation) time-altering function and data-access functions, which can be used in tandem to access the entire state history. This thesis also presents a derived StateHistory class, GriewankStateHistory , which uses Griewank's optimal checkpointing scheme. While only storing a small fraction of simulation states, GriewankStateHistory objects can reconstitute unsaved states for a small computational cost. These ideas were implemented in the context of TSOpt, a time-stepping library for simulation-driven optimization algorithms.

Description
Degree
Master of Arts
Type
Thesis
Keywords
Mathematics, Computer science, Applied sciences, Pure sciences
Citation

Enriquez, Marco U.. "A C++ class supporting adjoint-state methods." (2008) Master’s Thesis, Rice University. https://hdl.handle.net/1911/103546.

Has part(s)
Forms part of
Published Version
Rights
Copyright is held by the author, unless otherwise indicated. Permission to reuse, publish, or reproduce the work beyond the bounds of fair use or other exemptions to copyright law must be obtained from the copyright holder.
Link to license
Citable link to this page