资源描述
二次插值法亦是用于一元函数 /在确定的初始区间内搜索极小点的一种方法。它属于曲
线拟合方法的范畴。
一、基本原理
在求解一元函数 /(")的极小点时,常常利用一个低次插值多项式 尸(色)来逼近原目标函数,
然后求该多项式的极小点(低次多项式的极小点比较容易计算 ),并以此作为目标函数 /(口)
的近似极小点。如果其近似的程度尚未达到所要求的精度时, 可以反复使用此法,逐次拟合,
直到满足给定的精度时为止。
常用的插值多项式 尸为二次或三次多项式,分别称为二次插值法和三次插值法。这里我 们主要介绍二次插值法的计算公式。
假定目标函数在初始搜索区间口用中有三点则)、比⑵和十卜二阴c生④3』,
其函数值分别为 工、石和人 (图1},且满足 ' '」口,,3 ,即满足函数值为两头大
中间小的性质。利用这三点及相应的函数值作一条二次曲线,其函数 「(a)为一个二次多项
(1)
式中“口、"1、%为待定系数。
图1
根据插值条件,插值函数 尸(")与原函数,值)在插值结点6、舄、月处函数值相等,得
声(々山)=佝+口巡3+町酒,
«户b。')="十勺曰⑶+叼®'" = J2
的+4必㈤+与口电了 =力
L' ^ ' ⑵
为求插值多项式户(口)的极小点式声,可令其一阶导数为零,即
p㈤三的*2的色三口(3)
* 3 ]
% =--
解式⑶即求得插值函数的极小点 (4)
式(4)中要确定的系数:可在方程组(2)中利用相邻两个方程消去 。口而得:
一 ,十卜的 - 1gt炉 % + 4M—才 疗'
(5)
覆L- .一二排金超>一空0%Q⑴,研))一
卜⑵—厚-十一乂十p./⑵及
…一^"那匚即1*3)3-冽-(6)
Q:
将式(5)、(6)代入式(4)便得插值函数极小值点 声的计算公式:
* 一2.‘ u+(以0( 一 「依y — 一、y k
把◎『取作区间⑵1内的另一个计算点,比较 色』与""两点函数值的大小,在保持
两头大中间小的前提下缩短搜索区间,从而构成新的三点搜索区间,再继续按上述方
法进行三点二次插值运算, 直到满足规定的精度要求为止, 把得到的最后的 / 作为了(◎')的
近似极小值点。上述求极值点的方法称为三点二次插值法。
为便于计算,可将式(7)改写为
M + 户--
p 2 C
I “(8)
式中:
产获B⑼
_ --工)/梦'-典』
,= (10)
二、迭代过程及算法框图
(1)确定初始插值结点
通常取初始搜索区间口刀的两端点及中点为值⑴"1㈤了⑵=o一5az⑵)。 计算函数值 /] ^*(、),,口,( ■),弓( ⑶),构成三个初始插值结点月、月、
玛
(2)计算二次插值函数极小点 按式(8)计算、,并将4记作点/",计算异=」(伐叼。若本步骤为对初始搜索区间的 第一次插值或0⑵点仍为初始给定点时,则进行下一步 (3);否则转步骤(4) (3)缩短搜索区间 缩短搜索区间的原则是:比较函数值 为、£ ,取其小者所对应的点作为新的 山⑵点,并以 此点左右两邻点分别取作新的 "0)和修㈤,构成缩短后的新搜索区间1丘°),比㈤)。其具体方 法则如图2所示,根据原区间中力⑷和B⑵的相对位置以及函数值 E和其之比较有a、b、 c、d四种情况,图中阴影线部分表示丢去的区间。 在对新区间三个新点的代号作依次 加⑴、 盘■制、厦⑤的一般化处理后,计算其函数值,并令工
), 返回步骤(2)。
图 2 (a)
图 2 (b)
图 2 (c)
图 2 (d)
(4)判断迭代终止条件
在一般情况下,因任⑵是前一次插值函数的极小值点, 是本次插值函数的极小值点, 若
(4) (2) 次㈤一d⑶|国日 ⑷ ⑵
区’和的距离足够小时,即满足 । 一 ,或餐’和日 两者原函数值已很接
近,即满足上.囚”,则停止迭代,这时,若K〈人,输出极小值点, 极小值久=/卜);否则,即人之人时,输出极小值点1"今次',极小值工卜)。
如不满足上述迭代终止条件, 则返回步骤(3),再次缩短搜索区间,直至最后满足终止条件。
按上述步骤设计的二次插值法算法框图见图
3。
图3
算法框图中有几点需作些说明。
[判别框& ? ?若成立,按式(9)和式(10)则有
f「八 _ _ 八一 £
说明三个插值结点舄鸿㈤、6(那工)在一条直线上
2 .判别框(△')一 一,')>。?若不成立,说明落在区间之外。
上述两种情况只是在区间已缩得很小, 由于三个插值结点已十分接近, 计算机的舍入误差才
可能使其发生。此时取 口⑵和九 作为最优解应是合理的。
3 .在初始搜索区间第一次插值或 声’仍为初始给定点时,蜃⑵和/“并不代表前后二次插值
函数极小点,因而判别式। । 并不能确切地反映该不该终止迭代,这时应进行
步骤(3)缩短搜索区间,直至初始点 色 ■1第一次由"’代替,使用判别式 I 一 ?
⑵
进行终止判别才具意义。为此,算法框图中设置开关 k=0和K=1分别表示初始点a 第一次 由""代替前和后的状态。
展开阅读全文
相关搜索