插值法又称「内插法」,是利用函数 f(x) 在某区间中已知的若干点的函数值,作出适当的特定函数,在区间的其他点上用这特定函数的值作为函数 f(x) 的近似值,这种方法称为插值法。如果这特定函数是多项式,就称它为多项式插值。常用的几种多项式插值法有:直接法、拉格朗日插值法和牛顿插值法。
数据点(xi,yi),其中任意两个 xi 都不相同, 需要找到一个满足
P(xi)=yi,i=0,… ,n
的不大于 n 阶的 p 阶多项式。唯一性定理表明存在一个并且仅有一个这样的 p 阶多项式。
用更加复杂的说法,这个多项式可以表述为:对于 n+1 个插值点(xi),多项式插值定义了一个线性双射
其中 是小于或者等于 n 的多项式的向量空间。
在实际应用中,这些插值点可能来自某次实验测量所得的数据,也可能来自某个复杂函数 y=f(x) 的值。通过计算插值多项式,我们可以找到这些实验数据间的规律,或者使用简单的多项式函数 y=P(z) 来近似复杂的函数 y=f(x) 。
假设插值多项式的形式为
p 对数据点进行插值其含义为
如果代入等式(1),就得到系数为 的线性方程系统,用矩阵向量形式表示为
为了构建插值多项式 ,要解这个系统计算系数 。
左侧的矩阵通常叫作范德蒙矩阵,它的行列式不为零,这也就证明了唯一性定理:存在唯一的一个插值多项式。
多项式可以根据少数给定的数据点来逼近复杂的曲线,如字体排印学中的文字。一个相关的应用是估计自然对数和三角函数的值:选择几个已知的数据点、构建一个查找表、然后在这些数据点之间进行插值。这样可以得到非常快速的计算。另外多项式插值也是数值积分和数值常微分方程中算法的基础。
多项式插值在 sub-quadratic 乘法以及平方运算中也很关键。例如,有 a = f(x) = a0x0 + a1x1 + … 以及 b = g(x) = b0x0 + b1x1 + … 那么乘积 ab 等于 W(x) = f(x)g(x) 。基于这些点的插值将得到 W(x) 以及乘积 ab 。对于卡拉楚巴乘法来说,这项技术的速度要比普通数目输入的二次乘法速度要快,尤其是在用并行的硬件实现的时候更是这样。
【1】https://zh.wikipedia.org/wiki/%E5%A4%9A%E9%A1%B9%E5%BC%8F%E6%8F%92%E5%80%BC