第4章 一维搜索法
现代设计方法:一维搜索的插值方法

为x1,x2,x3新3点,重新构造二次曲线p(x),如此反复计算,
直到 x3 x* p 为止。
整个迭代过程的计算结果列于表。
x2 x*p 0.0378 0.05
f (x2) 155.6850 f (x*p ) 155.8969
计算x1,x2,x3 3点处的函数值f1=19,f2= - 96.9375,f3=124。 可见函数值满足“高-低-高”形态。
以x1,x2,x3为插值点构造二次曲线, 求第一次近似的二次曲线p(x)的极小值点,由公式得:
x*p 1.954,5 比较函数值可知
f (x*p ) 65.4648 f (x2 ) 96.9375
的代号作依次为 1、2、3 的一般化处理后,计算函
数值:f 1 f (1)、f 2 f ( 2)、f 3 f (3) 返回步骤(3)。
(5)判断是否满足精度要求:
当满足 4 2
时,停止迭代,把 2 和 4 中原函数值较小的点作 为极
小点;否则返回步骤(4)。再次缩短搜索区间直到满足精 度要求为止。
用二次函数的 (x)极小点 x1 作为 f ( x)极小点的
一个近似点。根据极值必要条件:
(x1) 0
f '(x0) f ''(x0)(x1 x0) 0
x1
x0
f '(x0) f "(x0 )
依次继续下去,可得牛顿迭代公式:
xk 1
xk
f '(xk ) f ''(xk )
牛顿法的计算步骤:给定初始点 0 ,控制误差 ,并令k=0
1 a,2 0.5(a b),3 b0
最优化方法-一维搜索方法

% CopyRight@XiaBo % Date:2008.3.20
%% 定义搜索函数fun function f = fun(x) % 这里是一个简单的函数定义, 倘若在一个大型的优化计算中,这个函数一般是和第k 步的迭代点和下降方向有关的 % 是一个关于步长的函数 % x --- 待求步长值 f = x^2-x+2;
.
一维最优化问题:
极值点的必要条件:
f '( x ) 0
3
1. 下单峰函数 定义:设 f ( x ) 是区间 [ a , b ] 上的一元函数,x 是 f ( x ) 在 [ a , b ] 上的极小点,且对任意的 x1 , x2 [ a , b ], x1 x2 , 有 (a)当 x 2 x 时,f ( x1 ) f ( x2 ); (b)当 x1 x 时,f ( x1 ) f ( x2 ) .
cxbx的极小点解出及其的函数值最小的三个点中选择重新标记为左右两点31作业小结各种精确一维搜索算法3233距离最优解远的时候精度太大算法效率低只要求有充分下降即可这种类似与充分足够等描述词汇在与计算相关的描述中要特别在意因为这里的充分已经不再是理论上的要求这里的充分必须与可计算相关到底要多充分就是这里的非精确搜索的准测34armijo是使得下述不等式成立的最小非负整数下有界wolfe准则
2. 若 bk a k , 停止, 且
bk a k . 否则, 2 当 f ( k ) f ( k ) 时,转 3;当 f ( k ) f ( k ) 时,转 4. x
bk 1 bk ,
3. 令 a k 1 k ,
k 1 k ,
k 1 a k 1 0.618(bk 1 a k 1 ), 计算 f ( k 1 ), 令 k : k 1, 转 2。
常用一维搜索算法

无约束优化:不对定义域或值域做任何限制的情况下,求解目标函数的最小值。
这是因为实际应用中,许多情形被抽象为函数形式后均为凸函数,对于凸函数来说局部最小值点即为全局最小值点,因此只要能求得这类函数的一个最小值点,该点一定为全局最小值。
(直接法:又称数值方法,它只需计算目标函数驻点的函数数值,而不是求其倒数,如坐标轮换法,单纯型法等。
间接法:又称解析法,是应用数学极值理论的解析方法。
首先计算出目标函数的一阶或一阶、二阶导数,然后根据梯度及海赛矩阵提供的信息,构造何种算法,从而间接地求出目标函数的最优解,如牛顿法、最速下降法共轭梯度法及变尺度法。
)在优化算法中保证整体收敛的重要方法就是线搜索法与信赖域法,这两种算法既相似又有所不同。
根据不同的线搜索准则就延伸出不同的线搜索算法,譬如比较常见和经典的最速下降法,牛顿法,拟牛顿法以及共辄梯度法等。
一维搜索又称线性搜索(Line Search),就是指单变量函数的最优化,它是多变量函数最优化的基础,是求解无约束非线性规划问题的基本方法之一。
一维搜索技术既可独立的用于求解单变量最优化问题,同时又是求解多变量最优化问题常用的手段,虽然求解单变量最优化问题相对比较简单,但其中也贯穿了求解最优化问题的基本思想。
由于一维搜索的使用频率较高,因此努力提高求解单变量问题算法的计算效率具有重要的实际意义。
在多变量函数的最优化中,迭代格式X k+1=X k+a k d k其关键就是构造搜索方向d k和步长因子a k设Φ(a)=f(x k+ad k)这样从凡出发,沿搜索方向d k,确定步长因子a k,使Φ(a)<Φ(0)的问题就是关于步长因子a的一维搜索问题。
其主要结构可作如下概括:首先确定包含问题最优解的搜索区间,然后采用某种分割技术或插值方法缩小这个区间,进行搜索求解。
一维搜索通常分为精确的和不精确的两类。
如果求得a k使目标函数沿方向d k达到极小,即使得f (x k+a k d k)=min f (x k+ ad k) ( a>0)则称这样的一维搜索为最优一维搜索,或精确一维搜索,a k叫最优步长因子;如果选取a k使目标函数f得到可接受的下降量,即使得下降量f (x k)一f (x k+a k d k)>0是用户可接受的,则称这样的一维搜索为近似一维搜索,或不精确一维搜索,或可接受一维搜索。
第四章一维搜索法(完整资料).doc

【最新整理,下载后即可编辑】第四章 一维搜索法由第一章关于求解最优化问题概述中我们知道,从已知迭代点n k R X ∈出发按照基本迭代公式k k k k P t X X +=+1来求解最优化问题,其关键在于如何构造一个搜索方向n k R P ∈和确定一个步长1R t k ∈,使下一迭代点1+k X 处的目标函数值下降,即)()(1k k X f X f <+.现在我们来讨论,当搜索方向k P 已经确定的情况下,如何来确定步长k t ?步长因子的选取有多种方法,如取步长为常数,但这样选取的步长并不最好,如何选取最好步长呢?实际计算通常采用一维搜索来确定最优步长. 对无约束最优化问题)(min X f nR X ∈,当已知迭代点kX 和下降方向k P 时,要确定适当的步长k t 使=+)(1k X f)(k k k P t X f +比)(k X f 有所下降,即相当于对于参变量t 的函数)()(k k tP X f t +=ϕ要在区间],0[∞+上选取k t t =使)()(1k k X f X f <+,即)0()()()(ϕϕ=<+=k k k k k X f P t X f t .由于这种从已知点k X 出发,沿某一下降的探索方向k P 来确定步长k t 的问题,实质上是单变量函数()t ϕ关于变量t 的一维搜索选取问题,故通常叫做一维搜索.按这种方法确定的步长k t 又称为最优步长,这种方法的优点是,它使目标函数值在搜索方向上下降得最多.今后为了简便起见,我们用记号)(1k k k P X ls X ,=+ (4.1)表示从点k X 出发沿k P 方向对目标函数)(X f 作直线搜索所得到的极小点是1+k X .其中l 和s 分别是Linear search (直线搜索)两词的词首.在目标函数)(X f 已确定的条件下(4.1)等价于如下两式:⎪⎩⎪⎨⎧+==+=++kk k k tk k t k k k P t X X t tP X f P t X f 1)(min )(min )(,ϕ 下面进一步解释迭代点k k k k P t X X +=+1的空间位置.容易证明,若从k X 出发,沿k P 方向进行一维搜索得极小点k k k k P t X X +=+1,则该点1+=k X X 处的梯度方向)(1+∇k X f 与搜索方向k P 之间应满足0)(1=∇+k T k P X f .(4.2)事实上,设)()(k k tP X f t +=ϕ,对t 求导有k T k k P tP X f t )()(+∇='ϕ.令0)('=t ϕ,即0)(=+∇k T k k P tP X f ,所以0)(1=∇+k T k P X f .式(4.2)的几何意义是明显的.从某一点k X 出发沿k P 方向对目标函数)(X f 作直线搜索,所得到的极小点为1+k X .式(4.2)指出,梯度)(1+∇k X f 必与搜索方向k P 正交.又因为)(1+∇k X f 与目标函数过点1+k X 的等值面)()(1+=k X f X f 正交,所以进一步看到,搜索方向k P 与这个等值面在点1+k X 处相切(如图4.1所示).§4.1 搜索区间及其确定方法一、搜索区间设一维最优化问题为)(min max0t t t ϕ≤≤. (4.3)为了求解问题(4.3),我们引入如下的搜索区间概念.定义4.1 设])0[)(0[max **11t t t R R ,,,:∈∞+∈→ϕ,并且 )(min )(max0*t t t t ϕϕ≤≤=,若存在闭区间])0[])([0[][max t b a b a ,,,,⊂∞+⊂使][*b a t ,∈,则称][b a ,是问题(4.3)的搜索区间.简言之,一个一维最优化问题的搜索区间,就是包含该问题最优解的一个闭区间.通常,在进行一维搜索时,一般要先确定出问题的一个搜索区间,然后在此区间中进行搜索求解. 二、加步探索法下面,介绍一个确定问题(4.3)的搜索区间的简单方法.这个方法的思想是:先选定一个初始点])0[)(0[max 00t t t ,或,∈⊂∞+∈和初始步长00>h .然后,沿着t 轴的正方向探索前进一个步长,得到新点00h t +.若目标函数在新点处的值是下降了,即)()(000t h t ϕϕ<+,则下一步就从新点00h t +出发加大步长,再向前探索.若目标函数在新点处的 函数值上升,即)()(000t h t ϕϕ>+,图4.1则下一步仍以0t 为出发点以原步长开始向t 轴的负方向同样探索.当达到目标函数上升的点时,就停止探索,这时便得到问题(4.3)的一个搜索区间.这种以加大步长进行探索来寻找探索区间的方法叫做加步探索法.加步探索法算法的计算步骤:(1) 选取初始数据.选取初始点])0[)(0[max 00t t t ,或,∈⊂∞+∈,计算)(00t ϕϕ=.给出初始步长00>h ,加步系数1α>,令0=k . (2) 比较目标函数值.令k k k h t t +=+1,计算)(11++=k k t ϕϕ,若k k ϕϕ<+1,转(3).否则转(4).(3)加大探索步长.令k k h h α=+1,同时,令k t t =,1+=k k t t ,1k k ϕϕ+=,1k k =+,转(2).(4) 反向探索.若0=k ,转换探索方向,令1,+=-=k k k t t h h ,转(2).否则,停止迭代,令11min{}max{}k k a t t b t t ++==,,,输出][b a ,. 加步探索法算法的流程图如图4.2所示。
《一维搜索方法》课件

1
原理
根据斐波那契数列生成黄金分割比例,用于确定搜索范围的分割点。
2
思路
根据斐波那契数列的值,确定左右指针在搜索范围内的位置,直到找到最接近目 标值的点。
3
优缺点
迭代次数逐渐趋近于黄金分割点,但对搜索范围要求较高。
黄金分割法搜索方法的原理和思路
1
原理
将搜索范围按黄金分割点分割,选择较小的一部分作为新的搜索范围。
2
思路
通过反复按黄金分割点计算和调整搜索范围,逐步逼近最接近目标值的点。
3
优缺点
迭代次数相对较少,但需要较复杂的计算公式。
三分搜索方法的原理和思路
1
原理
将搜索范围分割为三等份,并判断目标值位于左、中、右三个部分,逐步缩小搜索范 围。
2
思路
根据目标值与分割点的大小关系,决定下一步搜索的范围,直到找到最接近目标值的 点。
3
优缺点
对于非单调函数,能更快地找到目标值,但需要较多的判断。
多点搜索方法的原理和思路
1
原理
同时使用多个起始点进行搜索,通过不断比较找到最接近目标值的点。
2
思路
根据多个起始点的初始值和搜索步长,逐步调整并比较得到最优解。
3
优缺点
相比于单点搜索,能更准确地找到目标值,但需要同时处理多个起始点的迭代。
2
思路
从起始点开始,依次向右增加或向左减小搜索范围,直到找到最接近目标值的点。
3
优缺点
简单易懂,但需要较多的迭代次数。
二分搜索方法的原理和思路
1
原理
将搜索范围一分为二,并判断目标值位于左半部分还是右半部分,逐步缩小搜索 范围。
2
思路
《一维搜索方法》课件

02
线性搜索
线性搜索的定义
线性搜索是一种基本的搜索算法,它 从列表的第一个元素开始,逐个检查 每个元素,直到找到目标元素或遍历 完整个列表。
在线性搜索过程中,我们假设列表中 的元素是按顺序排列的,并且我们不 知道目标元素的确切位置,只知道它 存在于列表中。
线性搜索的步骤
初始化
选择一个起始位置,通常为列表的第一个元素。
抛物线搜索的步骤
3. 比较中间元素与目标值
2. 计算当前区间的中间元 素。
1. 初始化当前搜索区间为 整个数组。
01
03 02
抛物线搜索的步骤
01 如果中间元素等于目标值,返回该位置。
02
如果目标值小于中间元素,将左半部分区 间作为新的当前区间。
03
如果目标值大于中间元素,将右半部分区 间作为新的当前区间。
04
4. 重复步骤2和3,直到找到目标值或当前 区间为空。
抛物线搜索的时间复杂度
最坏情况下,抛物线搜索的时间复杂度为O(n),其中n为数 组长度。
平均情况下,由于每次比较都可以将搜索区间缩小一半,因 此时间复杂度为O(log n)。
THANKS
THANK YOU FOR YOUR WATCHING
的单峰函数。
一维搜索方法的重要性
解决实际问题
一维搜索方法广泛应用于各种实 际问题中,如参数优化、函数逼 近、插值等。
算法基础
一维搜索方法是许多算法的基础 ,如梯度下降法、牛顿法等都需 要用到一维搜索方法来寻找迭代 步长。
理论分析
一维搜索方法在数学分析中也有 重要应用,如中值定理、单调函 数性质等都需要用到一维搜索方 法。
常用的一维搜索方法
线性搜索
一维搜索-最优化方法

止 ; 否则 , ������0 = ������1 ,转(2) 。
例题:用切线法求Ψ(t) =������2-5t+2 , 在定义域 t ∈ ( 0 , 10 ) 上的极小点 , 要求 ε = 0.2 。
切线法(Newton法)
设Ψ(t)是区间(a , b)上的二次可微的单谷函数,������∗ 是 Ψ(t) 在 (a , b)上的极小值点, ������������ 是 ������∗ 的一个近似点。 目标 函数Ψ(t) 的一阶导数为������ = Ψ’(t) ,过点 (������������, Ψ’(������������) ) 作导函数 Ψ’(t) 的图像的切线,则此切线的方程为
在实践工作中,应根据问题的具体特点以及工作条 件来选用相应的合适算法。不过,从以往的实践中 来看,0.618法和对分法使用的更多一些。
可望达到上述的最小值,
所以有 c-a = b-c , 即 c = 0.5(b-a)
对分法的步骤
设单谷函数 Ψ(t)存在导函数Ψ’(t),极小值点的初始搜索 区间为(a。,b。),要求极小值点的近似值 ������ҧ 与精确极小值 点 t* 的最大绝对误差 ������ − ������ ∗ ҧ 不超过 ε 。
⑴ 令 a=a。 , b=b。;
⑵ 令 c = 0.5(b-a),计算Ψ’(c);
⑶ 若 Ψ’(c)ຫໍສະໝຸດ <0 ,令 a=c , 转到⑷
若 Ψ’(c)>0 ,令 b=c ,转到⑷
线搜索算法_一维搜索

k 1 k搜索成功 , 步骤3:若 , 转步骤4;否则,搜索失败,
转步骤5。
步骤4: k : k 1 ,
停止迭代 。
h : 2h, k k 1 转步骤 2。
步骤5:反向搜索,若 k 0, 令 h h ,转步骤2;否则
一、精确一维搜索—初始区间 例 1:利用进退法求函数 f ( x) x3 2 x 1 的搜索区间, 1 1 取初始点 ,步长 x h . 2 2 解: 1 15 1 1 f ( x) f ( ) , f ( x h) f ( ) f (0) 1, 2 8 2 2 因为f ( x) f ( x h),搜索成功,步长加倍; 1 1 计算 f ( x h+2h) f ( x 3h) f ( 3 ) f (1) 0, 2 2 搜索成功,步长加倍; 因为f ( x h) f ( x 3h),
一、精确一维搜索—初始区间 确定初始区间的方法---进退法 ① 已知搜索起点和初始步长; ② 然后从起点开始以初始步长向前试探,如果函数值 变大,则改变步长方向; ③ 如果函数值下降,则维持原来的试探方向,并将步 长加倍。
一、精确一维搜索—初始区间
进退法算法流程
步骤1:选取初始点 x∈R , 初始步长 h > 0 及精度ε> 0,计算 0 f ( x). 并记 k : 0 步骤2:令 k 1 k h , 计算 k 1 f (k 1 ).
一、一维搜索—分类 非精确的一维搜索:通过计算少量的函数值,得到一 步长 k ,使得后续迭代点 xk 1 x k k d k 满足
f ( xk 1 ) f ( xk ) ,即使目标函数要“充分”下降。
Goldstein准则 Armijo准则 Wolfe准则
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、单谷区间与单谷函数
由于以后要介绍的一些维搜索方法,主要 适用于问题(4.3)在搜索区间中只有唯一的最 优解的情况,为此,我们再给出下面单谷区间 与单谷函数概念.
三、单谷区间与单谷函数
由于以后要介绍的一些维搜索方法,主要适 用于问题(4.3)在搜索区间中只有唯一的最优 解的情况,为此,我们再给出下面单谷区间与 单谷函数概念. 定义4.2 ,闭区间 [a, b] ⊂ R1.若存在 定义4.2 设 ϕ : R1 → R1 * ϕ( t * ∈ [a, b],使得ϕ (t ) [a, t ]上严格递减, t ) 在 点 在 [t * , b上严格递增,则称 [a, b] 是函数 ϕ (t ) 的单谷区 ] 单谷区 单谷函数. 间,ϕ (t ) 是 [a, b] 上单谷函数 单谷函数 由定义4.2易知,一个区间是某函数的单谷区间 意味着,在该区间中函数
0≤t ≤t max
0≤t ≤t max
min ϕ (t )
若存在闭区间 [a, b] ⊂ [0, + ∞)([a, b] ⊂ [0, t max ]) , 使 t * ∈ [ a, b,则称 [a, b] 是问题(4.3)的搜索区间. ] 定义4.1简言之,一个一维最优化问题的搜索区间, 就是包含该问题最优解的一个闭区间.通常,在进行 一维搜索时,一般要先确定出问题的一个搜索区间, 然后再此区间中进行搜索求解.
第四章 一维搜索法
由第一章关于求解最优化问题概述中我们知道, 从已知迭代点 出发按照基本迭代格式 X k ∈ Rn X k +1 = X k + t k Pk 来求解最优化问题,其关键在于如何构造一个 搜索方向 和确定一个步长 R n ,使下 Pk ∈ X k +1 tk ∈ 一迭代点 R 1 处的目标函数值下降, 即 f ( X k +1.现在我们来讨论,当搜索 ) < f (X k ) 方向 已经确定的情况下,如何来确定步长 ? Pk tk 步长因子的选取有多种方法,如取步长为常数, 但这样选取的步长并不最好,如何选取最好步 长呢?实际计算通常采用一维搜索来确定最优 步长.
令 ϕ ′(t ) = 0 ,总可求得极小点 t * .不妨设ϕ (t ) 在 (a, t * ) 上是单减函数;在 (t * , b) 上是单增函 ϕ 数.所以t ∈ (a, t * )时, ′(t ) < 0 ,故 ϕ ′(a) < 0 ;当 t ∈ (t * , b) 时,ϕ ′(t ) > 0 ,亦即 ϕ ′(b) > 0 .对分法 的原理如图4.5所示.
Y
h k = − h k t=k+1
a = min{t , tk +1 }
结束
图4.2
另外,从定义4.2还可知,某区间上的单谷函数在 该区间上不一定是连续函数,而凸函数在所给 区间上必然是单谷函数(如图4.3所示).由定 义4.1和定义4.2知,函数的单谷区间总是相应 问题(4.3)的一个搜索区间(如图4.3所示), 但反之不然(如图4.4所示). 单谷区间和单谷函数有如下有用的性质: 定理4.1 设 ϕ : R 1 → R 1 , [a, b]是的单谷区间,任取 t1 , t 2 ∈ [a, b] 并且 t 2 < t1 . (1)若有 ϕ (t 2 ) ≤ ϕ (t1 ) ,则 [a, t1 ]是 ϕ (t )的单谷区 间. (2)若有 ϕ (t 2 ) ≥ ϕ (t1 ) ,则 [t 2 , b] 是ϕ (t )的单谷区 间.
f ( X + t0 P) = min f ( X + tP) = min ϕ (t ), Z = X + t0 P.
下面进一步解释迭代点 X k +1 = X k + t k Pk 的空间位 置.容易证明,若从 X k出发,沿Pk方向进步一 维搜索得极小点 X k +1 = X k + t k Pk ,则该点处的 X = X k +1 梯度方向 f ( X k +1 )与搜索方向之间应满足 ∇ ∇f ( X k +1 ) T Pk = 0 (4.2) t 事实上,设ϕ (t ) = f ( X k + tPk ),对 求导有 ϕ ′(t ) = ∇f ( X k + tPk ) T Pk 令 ϕ ' (t ) = 0 ,即 ∇f ( X k + tPk ) T Pk = 0 , 所以 ∇f ( X k +1 ) T Pk = 0 .
, 当已知迭代点 X k和下降方向 Pk 时,要确定适当的 步长 t k使 f ( X k +1 ) = f ( X k + t k Pk ) 比 f ( X k )有所下降,即相当于对于参变量 t 函数
X∈R
对无约束最优化问题 min f ( X ) n
要在区间[0, + ∞] 上选取t = t k 使 f ( X k +1 ) < f ( X k ) 即 ϕ (t k ) = f ( X k + t k Pk ) < f ( X k ) = ϕ (0) . 由于这种从已知点 X k 出发,沿某一下降的探索 方向 Pk 来确定步长 t k 的问题,实质上是单变 量函数ϕ (t )关于变量 t 的一维搜索选取问题, 故通常叫做一维搜索.
h0 > 0 ,加步系数α > 1 ,令 k=0
ϕ0 = ϕ (t0 ) ,比较目标函数值 tk +1 = tk + hk ,ϕ k +1 = ϕ (tk =1 )
ϕ k +1 < ϕ k
Y
N
hk +1 = α hk ,t = tk ,tk
= tk +1 ,
ϕk = ϕ k +1 ,k=k+1
N
ห้องสมุดไป่ตู้
k=0
ϕ (t ) = f ( X k + tPk )
按这种方法确定的步长 t k 又称为最优步长,这 种方 法的优点是,它使目标函数值在搜索方向 上下降得最多. 今后为了简便起见,我们用记号 Z = l s ( X , P) (4.1) 表示从点X出发沿方向对目标函数作直线搜索 所 得 到 的 极 小 点 是 . 其 中 和 分 别 是 Linear search(直线搜索)两词的词首.在目标函数 f (X 已确定的条件下(4.1)等价于如下两式: )
式(4.2)的几何意义是明显的.从某一点出发 沿方向对目标函数作直线搜索,所得到的极小 点为.式(4.2)指出,梯度必与搜索方向正 交.又因为与目标函数过点的等值面正交,所 以进一步看到,搜索方向民这个等值面在点处 相切(如图4.1所示).
§4.1 搜索区间及其确定方法
一、搜索区间
设一维最优化问题为 (4.3) 为了求解问题(4.3),我们引入如下的搜索区间概 念. ϕ : R 1 → R 1 , t * ∈ [0, + ∞)(t * ∈ [0, t max ]) 定义4.1 设 ,并且 定义 ϕ (t * ) = min ϕ (t )
图4.3
图4.4
证明略. 定理4.1说明,经过函数值的比较可以把单谷区间缩短为一个较 小的单谷区间.换句话说利用这个定理可以把搜索区间无限缩 小,从而求到极小点.以下介绍的几种一维搜索方法都是利用 这个定理通过不断地缩短搜索区间的长度,来求得一维最优化 问题的近似最优解.
§4.2 对分法
一、对分法基本原理 求解一维最优化问题min ϕ (t ) 一般可先确定它的 一个有限搜索区间 [a, b] ,把问题化为求解问 min 题 a≤t ≤b ϕ (t ) ,然后通过不断缩短区间的长度,最 后求得最优解. 设 ϕ:R1 → R1 在已获得的搜索区间 [a, b] 内具有连 ϕ 续的一阶导数.因为 (t )在 [a, b]上可微,故ϕ (t ) 在 [a, b]上连续,由此知ϕ (t )在[a, b]上有最小值.
二、加步探索法
下面,介绍一个确定问题(4.3)的搜索区间的简单方 法.这个方法的思想是:先选定一个初始点 t0 ∈ [0, + ∞) (或 t0 ∈ [0, tmax ])和初始步长 h > 0 .然后,沿着 0 轴的正方向探索前进一个步长,得到新点 t 0 + h0.若目 标函数在新点处的值是下降了,即 ϕ (t 0 + h0 ) < ϕ (t 0 ) , 则下一步就从新点 t 0 + h0出发加大步长,再向前探 者.若目标函数在新点自制 值上升,即 ϕ (t 0 + h0 ) > ϕ (t 0 ) , 则下一步仍以 t 0 为出发点以原步长开始向 t 轴的负方 向同样探索.当达到目标函数上升的点时,就停止探 索,这时便得到问题(4.3)的一个搜索区间.这种以 加大步长进行探索来寻找探索区间的方法叫做加步探 索法.
图4.5
二、对分法迭代步骤 ϕ 已知ϕ (t ) , ′(t )表达式,终止限 ε . (1) 确定初始搜索区间[a, b],要求 . ϕ '(a) < 0,ϕ '(b) > 0 1 (2) 计算 [a, b] 的中点 c = (a + b) . 2 <0 (3) 若 ϕ ′(c) ,则 a = c ,转(4); 若ϕ ′(c) = 0 ,则 t * = c,转(5);若 ϕ ′(c) > 0,则 b = c ,转(4). 1 * = (a + b) ,转(5);否则 (4) 若 | a − b |< ε ,则 t 2 转(2). (5) 打印 t * ,停机. 对分法的计算流程如图4.6所示.
t*= c t*=(a+b) /2 输出t* 结束
图4.6
b=c Y N
§4.3 Newton
一、Newton切线法基本原理 切线法基本原理 设 ϕ : R 1 → R1在已获得的搜索区间 [a, b] 内具有连 续二阶导数,求 min ϕ (t ) . a ≤ t ≤b 因为ϕ (t ) 在 [a, b] 上可微,故 ϕ (t ) 在 [a, b] 上有最 小值,令 ϕ ′(t ) = 0 . 下面不妨设在区间 [a, b] 中经过 k 次迭代已求得方 程ϕ ′(t ) = 0 的一个近似根 t k .过(t k , ϕ ′(t k )) 作曲线 的切线 y = ϕ ′(t ) ,其方程是 y − ϕ ′(t k ) = ϕ ′′(t k )(t − t k ) (4.4)