An improved algorithm for in situ adaptive tabulation
Introduction
In computer simulations in different disciplines and applications, it is often required to evaluate a function (denoted by ) very many times, for different values of the input, . For example, if time-evolving partial differential equations are being solved by a finite-difference method, then some function may need to be evaluated for each grid node on each time step based on the current values of the dependent variables at the nodes. If the function is computationally expensive to evaluate, then these evaluations can dominate the overall computation cost, and it is natural to seek less expensive ways to evaluate , or to obtain an acceptably accurate approximation.
The above problem of the efficient approximation of a function ) is extremely general and can be quite varied depending on: the dimensionality, , of the input ; the dimensionality, , of the output, ; the distribution of the values of ; the smoothness of the function ; the number of evaluations required; the accuracy required; and the available computer memory. For low-dimensional problems (e.g. ), often an effective strategy is to use structured tabulation. In a pre-processing stage, values of are tabulated; and then, during the simulation, approximate values of are obtained by interpolation in the table. Both the work and the storage necessary to construct the table increase exponentially with , which is why this approach is restricted to low-dimensional problems.
Since its introduction in 1997 [1] the in situ adaptive tabulation (ISAT) algorithm has proved very effective for a class of higher-dimensional problems (e.g. ). The original application of ISAT was in the particle method used to solve the probability density function (PDF) equations for turbulent combustion [2]. In that case, consists of the thermochemical state of a particle at the beginning of the time step (of duration ); and represents the composition at the end of the step (resulting from adiabatic, isobaric reaction). Evaluating involves solving a stiff set of ordinary differential equations (ODEs) for a time . Typically this requires of order of CPU time, whereas ISAT yields an accurate approximation in of order , resulting in a thousandfold speed-up. Based on these timings, if needs to be evaluated for each of particles on each of time steps, then integrating the ODEs requires over 100 days of CPU time, whereas the same task is accomplished by ISAT in under 3 hours.
The ISAT algorithm continues to be heavily used for combustion problems both in the authors’ group (e.g. [3], [4], [5], [6]) and by others (e.g. [7], [8], [9]); and the algorithm has been incorporated into the ANSYS/FLUENT software [3], [10]. ISAT has also been used in chemical engineering [11], [12], [13], in solid mechanics [14], control [15] and the study of thin films and surface reaction [16], [17]. Several variants of ISAT have been proposed and investigated [18], [19], [20], [21], [22], [23], [24]. Other methods that have been used to address the same problem include: artificial neural networks [25], [26], [27]; high-dimensional model representation [28]; PRISM [29]; orthogonal polynomials [30]; and kriging [31].
The purpose of this paper is to describe and demonstrate several new additions to the original ISAT algorithm, which significantly enhance its performance. The next section provides an overview of the ISAT algorithm, and then the new components are described in Sections 3 Retrieve search, 5 Adding. In Section 6, quantitative testing of the algorithm is performed to demonstrate the efficacy of the new methods and to compare the computational performance with a previous implementation of ISAT. (Further tests are reported in [32], [33].)
The ISAT algorithm makes extensive use of ellipsoids and hyper-ellipsoids (which, for simplicity, are referred to as ellipsoids, regardless of the dimension of the space). All of the algorithms used in ISAT involving ellipsoids are described in [34].
Section snippets
Overview of the ISAT algorithm
The purpose of ISAT is to tabulate a function ), where and are of dimension and , respectively. Given a query, , ISAT return – an approximation to . It is assumed that and are appropriately scaled, with variations of order unity, so that the two-normis an appropriate measure of the approximation error. (There is no difficulty in using a more general definition of the error.)
An essential aspect of ISAT is that the table is built up, not in a
Retrieve search
Given a query , the objective of the retrieve search is to identify any EOA which covers . There may be zero, one or more such EOAs. If at least one EOA covers , then the search process is deemed to be complete if it is guaranteed to identify one such EOA: otherwise it is incomplete. If the search identifies a covering EOA it is deemed to be successful. Any search strategy inevitably involves testing to determine whether or not a particular EOA covers the query point . This testing is
EOA growing
If the retrieve attempt fails, then some leaves are selected as candidates for having their EOAs grown. We describe here the “grow search” performed to identify candidate leaves, and the subsequent EOA growth (and other modifications to the leaf). The treatment used is heuristic, and is the result of a good deal of experimentation with alternative implementations and variants. The fundamental reason for the need for heuristics is that the region of accuracy (ROA) is not in all circumstances
Adding
On a given query, if the retrieve and grow attempts fail, and if the table is not full, then a new entry is added to the table. (The treatment used when the table is full is discussed at the end of this section.) The primary operations involved in an “add” are the initialization of the new leaf (EOA, EOI, etc.) and its insertion into the various data structures. These operations are now outlined.
Performance of ISAT
Comprehensive testing of the ISAT algorithm has been performed for two test cases of a partially-stirred reactor (PaSR). The PaSR test cases are described in the first sub-section. Then test results are presented on the performance of ISAT, including the incurred error, CPU time per query, and number of table entries. Different variants of the ISAT implementation, and different values of various parameters are investigated, with the objectives of assessing the efficacy of different components
Conclusions
In situ adaptive tabulation (ISAT) has proved to be an effective method to reduce the computer time required to evaluate (approximately) high-dimensional functions, . In this paper, several new algorithms for ISAT are described and demonstrated. These include: new search strategies (MRU, MFU, EBT); the use of low-dimensional affine spaces to reduce the cost of searching; ellipsoids of inaccuracy (EOIs) to identify candidates for growing; and error checking and correction (ECC).
The
Acknowledgments
For technical discussions and suggestions, the authors are grateful to several colleagues at Cornell, especially to Biswanath Panda, Zhuyin Ren and Paul Chew. This research was supported in part by the National Science Foundation through Grant CBET-0426787. This research was conducted using the resources of the Cornell University Center for Advanced Computing, which receives funding from Cornell University, New York State, the National Science Foundation, and other leading public agencies,
References (43)
PDF methods for turbulent reactive flows
Prog. Energy Combust. Sci.
(1985)- et al.
Modeling unsteady reacting flow with operator-splitting and ISAT
Combust. Flame
(2006) - et al.
The effect of mixing models in PDF calculations of piloted jet flames
Proc. Combust. Inst.
(2007) - et al.
Large eddy simulations of turbulent flames using the filtered density function model
Proc. Combust. Inst.
(2007) - et al.
Generalized in situ adaptive tabulation for constitutive model evaluation in plasticity
Comp. Methods Appl. Mech. Eng.
(2006) - et al.
Approximate nonlinear model predictive control with in situ adaptive tabulation
Comput. Chem. Eng.
(2008) - et al.
Multiscale optimization using hybrid PDE/kMC process systems with application to thin film growth
Chem. Eng. Sci.
(2005) Adaptation of the in situ adaptive tabulation (ISAT) procedure for efficient computation of surface reactions
Comput. Chem. Eng.
(2005)- et al.
An economical strategy for storage of chemical kinetics: fitting in situ adaptive tabulation with artificial neural networks
Proc. Combust. Inst.
(2000) - et al.
An integrated PDF/neural network approach for simulating turbulent reacting systems
Proc. Combust. Inst.
(1996)
Artificial neural network implementation of chemistry with PDF simulation of flames
Combust. Flame
Modelling the temporal evolution of a reduced combustion chemical system with an artificial neural network
Combust. Flame
Parameterization of reaction mechanisms using orthogonal polynomials
Comput. Chem.
Embedded polycrystal plasticity and adaptive sampling
Int. J. Plasticity
The probability approach to the modeling of turbulent reacting flows
Combust. Flame
Turbulence-chemistry interactions in the intermediate regime of premixed combustion
Combust. Flame
An investigation of the accuracy of manifold methods and splitting schemes in the computational implementation of combustion chemistry
Combust. Flame
An investigation of the performance of turbulent mixing models
Combust. Flame
PDF calculations of major and minor species in a turbulent piloted jet flame
Proc. Combust. Inst.
Sensitivity analysis of initial value problems with mixed ODEs and algebraic equations
Comput. Chem. Eng.
Computationally efficient implementation of combustion chemistry using in situ adaptive tabulation
Combust. Theory Modell.
Cited by (141)
In situ adaptive tabulation of vapor-liquid equilibrium solutions for multi-component high-pressure transcritical flows with phase change
2024, Journal of Computational PhysicsLearning stiff chemical kinetics using extended deep neural operators
2024, Computer Methods in Applied Mechanics and EngineeringAutomated adaptive chemistry for Large Eddy Simulations of turbulent reacting flows
2024, Combustion and FlameZone-adaptive modeling of turbulent flames with multiple chemical mechanisms
2023, Proceedings of the Combustion Institute