-36-
线性规划。
§2 无约束问题
2.1 一维搜索方法
当用迭代法求函数的极小点时,常常用到一维搜索,即沿某一已知方向求目标函数
的极小点。一维搜索的方法很多,常用的有:(1)试探法(“成功—失败”,斐波那契法,
0.618 法等);(2)插值法(抛物线插值法,三次插值法等);(3)微积分中的求根法(切
线法,二分法等)。
考虑一维极小化问题
)(min tf
bta ≤≤
(2)
若 )(tf 是 ],[ ba 区间上的下单峰函数,我们介绍通过不断地缩短 ],[ ba 的长度,来
搜索得(2)的近似最优解的两个方法。
为了缩短区间
],[ ba ,逐步搜索得(2)的最优解
*
t 的近似值,我们可以采用以下
途径:在
],[ ba 中任取两个关于 ],[ ba 是对称的点
1
t 和
2
t (不妨设
12
tt
,并把它们叫
做搜索点),计算
)(
1
tf 和 )(
2
tf 并比较它们的大小。对于单峰函数,若 )()(
12
tftf < ,
则必有 ],[
1
*
tat ∈ ,因而 ],[
1
ta 是缩短了的单峰区间;若 )()(
21
tftf
,则有
],[
2
*
btt ∈ ,故 ],[
2
bt 是缩短了的单峰区间;若 )()(
12
tftf
,则 ],[
1
ta 和 ],[
2
bt 都是
缩短了的单峰。因此通过两个搜索点处目标函数值大小的比较,总可以获得缩短了的单
峰区间。对于新的单峰区间重复上述做法,显然又可获得更短的单峰区间。如此进行,
在单峰区间缩短到充分小时,我们可以取最后的搜索点作为(2)最优解的近似值。
应该按照怎样的规则来选取探索点,使给定的单峰区间的长度能尽快地缩短?
2.1.1 Fibonacci 法
如用
n
F 表示计算 n 个函数值能缩短为单位长区间的最大原区间长度,可推出
n
F 满
足关系
1
10
= FF
,,3,2,
12
L=+=
−−
nFFF
nnn
数列
}{
n
F 称为 Fibonacci 数列,
n
F 称为第 n 个 Fibonacci 数,相邻两个 Fibonacci 数之
比
n
n
F
F
1−
称为 Fibonacci 分数。
当用斐波那契法以
n
个探索点来缩短某一区间时,区间长度的第一次缩短率为
n
n
F
F
1−
,其后各次分别为
2
1
2
3
1
2
,,,
F
F
F
F
F
F
n
n
n
n
L
−
−
−
−
。由此,若
1
t 和 )(
122
ttt
是单峰区间
],[ ba
中第 1 个和第 2 个探索点的话,那么应有比例关系
n
n
F
F
ab
at
1
1
−
=
−
−
,
n
n
F
F
ab
at
2
2
−
=
−
−
从而
)(
1
1
ab
F
F
at
n
n
−+=
−
, )(
2
2
ab
F
F
at
n
n
−+=
−
(3)
它们关于 ],[ ba 确是对称的点。