Sparse grid

From HandWiki
Revision as of 22:36, 6 March 2023 by SpringEdit (talk | contribs) (url)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Sparse grids are numerical techniques to represent, integrate or interpolate high dimensional functions. They were originally developed by the Russia n mathematician Sergey A. Smolyak, a student of Lazar Lyusternik, and are based on a sparse tensor product construction. Computer algorithms for efficient implementations of such grids were later developed by Michael Griebel and Christoph Zenger.

Curse of dimensionality

The standard way of representing multidimensional functions are tensor or full grids. The number of basis functions or nodes (grid points) that have to be stored and processed depend exponentially on the number of dimensions.

The curse of dimensionality is expressed in the order of the integration error that is made by a quadrature of level [math]\displaystyle{ l }[/math], with [math]\displaystyle{ N_{l} }[/math] points. The function has regularity [math]\displaystyle{ r }[/math], i.e. is [math]\displaystyle{ r }[/math] times differentiable. The number of dimensions is [math]\displaystyle{ d }[/math].

[math]\displaystyle{ |E_l| = O(N_l^{-\frac{r}{d}}) }[/math]

Smolyak's quadrature rule

Smolyak found a computationally more efficient method of integrating multidimensional functions based on a univariate quadrature rule [math]\displaystyle{ Q^{(1)} }[/math]. The [math]\displaystyle{ d }[/math]-dimensional Smolyak integral [math]\displaystyle{ Q^{(d)} }[/math] of a function [math]\displaystyle{ f }[/math] can be written as a recursion formula with the tensor product.

[math]\displaystyle{ Q_l^{(d)} f = \left(\sum_{i=1}^l \left(Q_i^{(1)}-Q_{i-1}^{(1)}\right)\otimes Q_{l-i+1}^{(d-1)}\right)f }[/math]

The index to [math]\displaystyle{ Q }[/math] is the level of the discretization. If a 1-dimension integration on level [math]\displaystyle{ i }[/math] is computed by the evaluation of [math]\displaystyle{ O(2^{i}) }[/math] points, the error estimate for a function of regularity [math]\displaystyle{ r }[/math] will be [math]\displaystyle{ |E_l| = O\left(N_l^{-r}\left(\log N_l\right)^{(d-1)(r+1)}\right) }[/math]

Further reading

External links