Loading [MathJax]/extensions/TeX/newcommand.js
This is ericpony's blog

Monday, July 21, 2014

Multivariate Lagrange Interpolation

\def\R{\mathbb{R}} \def\v#1{\mathbf{#1}} \def\vv#1#2{\mathbf{#1}_{#2}}
Let P_{m}^{n} denote the vector space formed by real-coefficient, m-variable polynomials of degree at most n. The dimension of P_{m}^{n} is d=\tbinom{m+n}{n}, since each polynomial in P_{m}^{n} consists of at most \tbinom{m+n}{n} monomials. Therefore, if P\subset P_{m}^{n} is an independent set of cardinality d, then every polynomial in P_{m}^{n} can be uniquely represented by a linear combination of polynomials in P. Consider a function f\in P_{m}^{n} which can only be accessed as a black-box. That is, we can request it for value f(\v s) at any point \v s\in\R^{m}, but the explicit representation of f is hidden from us. In such case, Lagrange interpolation offers us a possibility to determine the function by sampling and evaluating points from its domain.

The basic idea behind Lagrange's method is to choose d points \vv{\v s}1,\dots,\vv sd\in\R^{m} and compute a set of polynomials P=\{L_{1},\dots,L_{d}\}\subset P_{m}^{n}, which we shall called a Lagrange basis, such that L_{i}(\vv sj)=[i=j] for 1\le i,j\le d. Observe that P is an independent set, and thus polynomials in P uniquely determine polynomials in P_{m}^{n}.

Given a set of points \vv s1,\dots,\vv sd\in\R^{m}, we can use a procedure proposed in [1] to compute a Lagrange basis from the points. First, let \{q_{1},\dots,q_{d}\}\subset P_{m}^{n} denote the set of monomials in P_{m}^{n}. Consider polynomial functions M_{1},\dots,M_{d}\in P_{m}^{n} defined as: M_{i}(\vv x{})=det\begin{bmatrix}q_{1}(\vv s1) & \cdots & q_{d}(\vv s1)\\ \vdots & & \vdots\\ q_{1}(\v x) & \cdots & q_{d}(\v x)\\ \vdots & & \vdots\\ q_{1}(\vv sd) & \cdots & q_{d}(\vv sd) \end{bmatrix}\leftarrow\mbox{the $i$th row} Observe that M_{i}(\vv sj)=0 for i\neq j, and M_{1}(\v s_{1})=\cdots=M_{d}(\v s_{d})=M for some M\in\R. If M=0, then there is no Lagrange basis associated with the points. If M\neq0, then \{M_{i}(\v x)/M:\,i=1,\dots,d\,\} is a Lagrange basis. Hence, any polynomial f\in P_m^n can be written in the Lagrange form as f(\v x)=\sum_{i=1}^{d}f(\vv si)M_{i}(\v x)/M. Remark. The fact that M=0 reflects a geometrical dependency among the d sampling points, in which case it is impossible to determine a unique polynomial from these points. Characterizing the geometry configuration of the points that lead to M=0 is an intricate research problem. See e.g., [2] for more details.

References

1. Saniee, K. "A simple expression for multivariate Lagrange interpolation." SIAM Undergraduate Research Online, 2008.
2. Olver, Peter J. "On multivariate interpolation." Studies in Applied Mathematics 116.2, 2006.

No comments:

Post a Comment

Related Posts Plugin for WordPress, Blogger...