这一部分内容原见于第二版教材的第五章,但是第三版改版以后,做了很大的改动:将拉格朗日插值放在了附录中,删去了多项式的Bernstein表示,将函数的Bernstein多项式放在了第15章,删去了Bernstein多项式的保型性和磨光性两个性质。
先说什么是插值:就是当你有n+1个离散的数据点,想利用这些数据点“反构造”一条曲线的方法。(插值意味着把离散的数据点之间的空隙填满)。
最简单的想法就是,用直线把这n+1个点依次相连就可以了。这的确是一种简单而又有效地插值方法,称为“线性插值”。但是这个方法也有一些缺点,比如整条曲线(其实是折线)在那些数据点上,是不可导的。可能会为后续的处理,计算带来一定的麻烦。
后人就提出了使用n次多项式(因为多项式是任意阶可导的)来代替原来的直线。具体到拉格朗日插值法(这个方法并不是拉格朗日提出的,但是拉格朗日将其写入了自己编写的教科书,这个方法才流传开来),这个问题就是:如果你有n+1个点,那么我能够造一个n次多项式,并且让这个多项式曲线刚好能够通过这些点。这个问题的作法也是非常巧妙的,它让待求的多项式等于n+1个多项式的加权求和。权值为这n+1个数据点的值,而每个多项式有一个特点,就是在对应的数据点上的值为1,其他点上值为0,这样就OK了。
但是这个差值也有问题,就是不是次数越高的多项式就越好呢?也不是的,Runge就找了个函数f(x)=1/(1+x^2),结果发现当次数趋于无穷时,除了一小段内之外,对于大多数点都是发散的!这也从侧面说明了高次多项式的一个问题,就是震荡太厉害;并且次数太高,会有可能放大误差,所以这个差值方法基本是被人们摒弃的。
在第三版的附录中,直接就介绍了3次Hermite插值。这个插值的思想是,我给你2个点,并且给你这两个点的导数。你给我一个3次多项式。这个多项式过这两个点,并且导数也要相等。通过求解方程组,这个问题也是可以解决的。但在第二版中,把这个问题作为了多项式的Bernstein表示的一个应用,这是因为,通过Bernstein多项式,能够快速的(几乎不用计算)求解插值多项式的系数。这又是为什么呢?
这得从Bernstein多项式的性质谈起。Bernstein多项式是定义在[0,1]区间上的。具体公式不方便书写了,但是这个多项式的系数组成了曲线的控制多边形。这个多边形的特点是,在0和1两点多边形的函数值与原多项式相等,并且斜率也相同。所以使用控制多边形的函数值,就恰好是这些点的Bernstein多项式的系数。
而函数的Bernstein多项式表示又是另外一会儿事,他是说在[0,1]上定义的任意的函数,总可以使用函数在这些点的值与Bernstein多项式加权求和,从而表示这个函数,而且当取值的点区域无穷时,二者是相等的。这部分的内容放在了级数那一章。这里先不细说了。第二版书中还给出Bernstein算子具有保型性、磨光性两种重要的性质。但是暂时似乎看不出来这些性质与后面的内容有什么必要的关系,所以在第三版中又删去了。