图9-6 二次插值函数
1.构造三点二次插值多项式并求其极值
如图9-6所示,设[a,b]是函数f(x)具有唯一极小点的单峰区间。在该区间内取三点x1=a、x1<x2<x3、x3=b,并计算三点函数值f1=f(x1)、f2=f(x2)、f3=f(x3)。记三点二次插值多项式的一般形式为φ(x)=p1x2+p2x+p3,因φ(x)过点(x1,f1)、(x2,f2)和(x3,f3),式中待定系数p1、p2、p3按插值理论由下面的方程组确定:
式中x1、x2、x3和f1、f2、f3已知,因此可解出p1、p2、p3,从而得到所需的二次多项式φ(x)。
令二次多项式φ(x)的一阶导数等于零,求φ(x)的极小点xφ*,即令
得
将系数p1、p2代入上式,则
为简化起见,令
及(www.xing528.com)
则有
检验收敛准则|xφ*-x2|≤ε?若满足则用xφ*代替原函数的最优点,即x*=xφ*,输出最优解x*、f*=f(x*)=fφ。若不满足则应缩短区间后重复上面的迭代过程。
2.区间的缩短
区间的缩短是在保证函数值两头大、中间小的前提下,在x1、x2、x3和xφ*四点中取三点构成新的区间,同时做符号置换。共有4种情况,分述如下:
1)如图9-7a所示,xϕ*>x2,fϕ>f2,则应去掉区间(xϕ*,x3],作符号置换:x3=xϕ*,f3=fϕ。
2)如图9-7b所示,xϕ*>x2,fϕ<f2,则应去掉区间[x1,x2),作符号置换:x1=x2,f1=f2,x2=xϕ*,f2=fϕ。
3)如图9-7c所示,xϕ*<x2,fϕ<f2,则应去掉区间(x2,x3],作符号置换:x3=x2,f3=f2,x2=xϕ*,f2=fϕ。
4)如图9-7d所示,xϕ*<x2,fϕ>f2,则应去掉区间[x1,xϕ*],作符号置换:x1=xϕ*,f1=fϕ。
通过上述置换,即得到新的被缩短的区间[x1,x3]及三个插值点(x1,f1)、(x2,f2)、(x3,f3),可以重新构造插值多项式和继续求优迭代。
图9-7 二次插值法的区间缩短
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。