This Matlab toolbox includes hierarchical sparse grid interpolation algorithms based on both piecewise multilinear and polynomial basis functions. Special emphasis is placed on an efficient implementation that performs well even for very large dimensions
d > 10.
There are many ways to customize the behavior of the interpolation routines. Furthermore, additional tasks involving the interpolants can be performed, such as computing derivatives or performing an optimization or integration. The following list gives an overview of the options that are available:
- Enable vectorized processing. Speed up the construction of the interpolant for functions that allow for vectorized evaluation.
- Create multiple interpolants at once for functions with multiple output arguments.
- Choose from three different grid types for piecewise linear interpolation [2]. Depending on your objective function, a certain grid type may perform better than the others.
- If very high accuracies are required, you may use the Chebyshev-Gauss-Lobatto sparse grid ([3, ch.3], [4]), which employs polynomial basis functions.
- Compute gradients along with the interpolated values at just a small additional cost.
- Integrate the interpolant.
- Perform a search for minima and maxima using several efficient algorithms.
- Use the dimension-adaptive algorithm (due to [5] and [6], improvements to the data structure in [3, ch. 3]) to automatically detect separability, and to take the importance of the dimensions into account when constructing the interpolant. This is especially useful in case of very high-dimensional problems when a regular sparse grid refinement leads to too many support nodes.
- Specify the minimum or maximum sparse grid depth to compute, or specify the minimum and maximum number of function evaluations to use (for the dimension-adaptive sparse grid).
- Last but not least, the Sparse Grid Interpolation toolbox is designed to easily integrate with your models in Matlab as well as external models.
No comments:
Post a Comment