最优化_第3章 一维搜索方法
最优化方法 第三章第二讲 一维搜索
第三次迭代
令 x1 0.538, f1 1.751,取 F3 x2 0.077 (1.462 0.077) 0.846, F4 f 2 1.870。
因为 f 1 f 2 ,所以新区间为 0.077,0.846。
第四次迭代
令 x 2 0.538, f 2 1.751,取 F1 x1 0.077 (0.846 0.077) 0.231, F3 则 f 1 1.822。
设其最优解为 k ,得到 xk 1 xk k pk ,
一维搜索是求解一元函数 ( ) 的最优化问题(也叫 一维最优化问题) ,仍表示为 min f ( x ) 或 min f ( x )。 1
xR
a xb
定义:若在 a, b内 f ( x )有唯一极小点 x* ,在 x* 的左边 f ( x )严格下降,在 x* 的右边 f ( x )严格上升, 则称 f ( x )在区间 a, b上是下单峰函数。
step 6 令 k k 1,若 k n 2,则转 step 5; 若 k n 2,则转 step 7。
step 7 若 f1 f 2 , 则令 b x2 ,x2 x1 ,f 2 f1 , 转 step 8; 若 f1 f 2 ,则令 a x1,转 step 8。 step 8 令 x1 x2 0.1(b a ) , f1 f ( x1 ) 1 * 若 f1 f 2 ,则 x (a x2 ), 2 1 * 若 f1 f 2 ,则 x ( x1 x2 ), 2 1 * 若 f1 f 2 ,则 x ( x1 b ) 。 2
ab step 3 若 b a ,则 x ,停。否则转 step 4。 2
第三章 一维搜索法
0
x1 x2
x3
3-1 确定初始区间的进退法
探测初始空间的进退法步骤: 探测初始空间的进退法步骤 (1)给定初始点 x0 ,初始步长 h ,令 x1 = x0 ,记: f1 = f ( x1 ) 给定初始点 初始步长 令 记 (2)产生新的探测点 x2 = x1 + h ,记 f 2 = f ( x2 ) 产生新的探测点 (3)比较函数值 f1 和 f 2 的大小 确定向前或向后探测的策略 比较函数值 的大小,确定向前或向后探测的策略 则加大步长,令 若: f1 > f 2 则加大步长 令 h = 2h ,转(4)向前探测 转 向前探测 (4)产生新的探测点 x3 = x0 + h ,令 f 3 = f ( x3 ) 产生新的探测点 令 (5)比较函数值 f 2 和 f 3 的大小 比较函数值 则调转方向,令 若: f1 < f 2 则调转方向 令 h = − h ,转(4)向后探测 转 向后探测
3-1 确定初始区间的进退法
f (x ) f ( x1 )
f ( x2 )
f ( x1 ) > f ( x2 ) > f ( x3 )
极小点在右端点的
f (x3 ) (x
x
x3 右侧
0
x1
x2 x3
3-1 确定初始区间的进退法
f (x ) f ( x1 ) f ( x2 )
f ( x3 )
f ( x1 ) < f ( x2 ) < f ( x3 )
h=-h;x2=x0+h;f2=f(x2); ; ; ; End
3-2 黄金分割法
一维搜索试探方法的基本思想: 一维搜索试探方法的基本思想:在确定了搜索区间的 前提下,不断缩小搜索区间, 前提下,不断缩小搜索区间,同时保持搜索区间内函数值 “大-小-大”的走势,直到区间的宽度小于预定的精度。 小 大 的走势,直到区间的宽度小于预定的精度。 黄金分割法基本思想: 黄金分割法基本思想 : 在搜索区间内插入两个黄金分 割点,将区间分成三段。利用函数的单谷性质,通过函数值 割点,将区间分成三段。利用函数的单谷性质, 大小的比较,删去其中一段。 大小的比较,删去其中一段。在保留下来的区间上作同样的 处置,如此往复送代,使搜索区间缩小到精度范围内, 处置,如此往复送代,使搜索区间缩小到精度范围内,得到 极小点的近似解。 极小点的近似解。
第三章一维优化方法
p( x )
f ( x)
P3 P2
x
*( k 1) P
*(1) fP
k) x* x*( P
a x1
x2 x1
x *(1) P x2
x3 b x3
25
26
在流程图中有两个判别框的内容需稍加说明。其一是c2=0?若成 立,即:
或写作
这说明三个插值结点P1(x1,f1)、P2(x2,f2)、P3(x3,f3)在同一条直 线上;其二是 * * ( xP -x1)(x3- xP )≤0? (3.14) * 若成立,则说明 xP 落在区间[x1,x3]之外。
x2 x * p
f 2 f p*
x2 x
* p
f 2 f p*
x2 x * p
f 2 f p*
23
区间的缩短程序框图
24
三、终止准则
x , x , ..., x
x
*( k ) P
P 1
*(1) P
*(2) P
*( k 1) P
, x , ... x
*( k ) P
*
9
3.2 一维搜索的最优化方法
3.2.1 格点法
在区间[a,b]的内部取n个 内等分点: x1,x2,…,xn 区间[a,b]被分成(n+1)等 分,各分点的坐标为:
xk a ba k n 1
f ( x)
逐渐缩小搜索区间
新区间
k 1,2,..., n
o a x1 x2
ym 1 ym
2 2 2 2 ( x2 x3 ) f1 ( x3 x12 ) f 2 ( x12 x2 ) f3 B ( x1 x2 )( x2 x3 )( x3 x1 )
第三章 一维搜索
迭代点x(k),当k=0时,X(0)称为初始点 搜寻方向 S(k) 步长a(k)
一维搜索方法概述
在优化设计的迭代运算中,在搜索方向S(k) 上寻求最优步长 a(k)的方法称一维搜索法。实 际上一维搜索法就是一元函数极小化的数值迭代 算法,其求解过程称为一维搜索。 一维搜索法是非线性优化方法的基本算法, 例如:下图所示的二维优化的例子。
1、若f2 <f1(或者y2<y1) 方,应若f2>f1(或者y2>y1) ,则极小点位于 α (1)左 方,应反向后退搜索。
二、前进搜索(f2<f1)
以α(2)为初始点,以h为步长, 前进搜索得到 第三个试点方向的α(3) , α(3) =α(2) +h= α(1) +2h,其函数值f3与f2比较有如下情况: 1.f2<f3 2.f2>f3
2
*
∈ ⎡α ( ) , b ⎤ ⎣ ⎦
1
区间消去法原理
一维搜索的最优化方法
从前面讲到的区间消去法可知,为了每次缩短区 间,只需要在区间内再插入一点并计算其函数值.针 对插入点确定方法的不同,可将一维搜索方法分成 两大类: 1.试探法: 2.插值法(函数逼近法):
一维搜索的最优化方法
1.试探法:按某种给定的规律来确定区间插入点的 位置.此点位置的确定仅仅按照区间缩短如何加 快,而不顾及函数值的分布关系. 此类方法主要包括: 黄金分割法 裴波纳契法(Fibonacci)
1、若f2<f3,则有f1> f2<f3,此时函数f(α)在[α (1) , α(3) ]必有极小点,故区间[a,b]=[α(1), α(1) +2h]为初始搜索区间.
2、若f2>f3,则继续前进搜索,各点变换如下: α(1) ←α(2), f1 ← f2 α(2) ← α(3), f2 ← f3 然后步长加倍,前进搜索得到第三个试点方向的α(3) , 重复上述比较f2与f3的大小,直至出现f1> f2<f3时,构成 搜索区间[a,b]= [α(1) , α(3) ]
第3章 一维最优化
一维最优化问题: 一维最优化问题:
min s .t .
f ( x) x∈ R
极值点的必要条件: 极值点的必要条件:
f '( x ) = 0
二、 确定搜索区间的方法— 进退法
实际问题 数学模型 数值计算方法
程序设计
上机计算求出结果
数值解法: 数值解法:利用计算机通过反复迭代计 求得实际问题的近似值。 算,求得实际问题的近似值。
[a, b]称为ϕ ( x)的单谷区间。
显然此时x ∗为ϕ ( x)在[a, b]上唯一的极小点。
☺问题:凸函数是不是单谷函数?严格凸函数是 问题:凸函数是不是单谷函数? 不是单谷函数?单谷函数是不是凸函数? 不是单谷函数?单谷函数是不是凸函数?
搜索法求解: 搜索法求解: min ϕ (t)
t≥ 0
否
b − x1 ≤ ε
停止,输出 停止,输出x2 是
是
否
停止,输出 停止,输出x1 以[a,x2]为新的搜索区间 为新的搜索区间
三、黄金分割法
f ( a ) = a 2 − 7a + 10 的初始区间, 的初始区间, 例1:用黄金分割法求
设初始点 。= 1 a,初始步长 h 0 = 0 用进退法确定初始区间: 解:用进退法确定初始区间:
ϕ ( x1 )
x1 x2
3
x
2) 第二轮: 第二轮: x2=1.146, x1=0.708
ϕ
ϕ ( x1 ) = −0.0611 ϕ ( x2 ) = 0.2131
x2-0=1.146>0.5 3) 第三轮: 第三轮: x1=0.438, x2=0.708 0
x1 x2
1.854
x
ϕ
第三章 一维搜索方法
α2
α2
图3-1 具有单谷性的函数
说明:
单峰区间内,函数可以有不可微点,也可以是不连续
函数;
确定的搜索区间必定是一个含有最优点α*的单峰区间。
f (x) f (x)
0
α1
α3
α
0
α1
α3
α
2.进退法的基本思路:
由单峰函数的性质可知,在极小点α*左边函 数值应严格下降,而在极小点右边函数值应严格 上升,因此可以从某一个给定初始点α1出发,以 初始步长h0沿着目标值的下降方向,逐步前进或 后退,直至找到相继的3个试点的函数值按“大小-大”变化为止。
3 . 进退法的步骤:
(1)给定初始点α0和初始步长h0;
(2)令α1 α0 , h h0 , α2 α1 h, 得到两试点α1、α2, 并计算函数值f1 f ( α1 ) , f 2 f ( α2 ) ;
(3)比较f1与f2,存在两种情况:
1)若f1 f 2 , 则作前进运算, 取第三个点α3 α2 h, 计算f 3 f ( α3 ) , 比较f 2与f 3
① 若f 2
f 3,则搜索区间 [a, b] [3 , 1 ];
② 若f 2
f 3 , 则步长加倍,继续作后 退运算,即令 h 2h,
1 2、 2 3、 3 2 h计算f 2与f 3直到找到“大
小 大”搜索区间 [a, b] [ 3 , 1 ]
2 2 2
所以
p a1 / 2a2
y3 y1 c1 a3 a1
1 a 2 a
2 a3 y1 a32 a12 y2 a12 a22 y3
a3 y1 a3 a1 y2 a1 a2 y3
三章节一维搜索方法
f x ad f x adTf x 1 ad T G ad
2
f x dTf x 1 2dTGd
2
上式求α旳极值,即求α导数为零。
dTf x *d TGd 0
则
*
dTf x
d T Gd
从上式看,需要求导进行计算,对于函数关系复杂旳, 解析法十分不便。
数值法旳基本思绪:拟定 *旳搜索区间,在不断缩小
a2 a3 y1 a3 a1 y2 a1 a2
a1 a2 a2 a3 a3 a1
y3
所以
p
a1
/
2a2
1 2
a22 a32 a2 a3
y1 a32 a12 y1 a3 a1
y2 a12 a22 y2 a1 a2
y3 y3
令
c1
y3 a3
y1 a1
一、牛顿法(切线法)
一维搜索函数 y f ,假定一给出极小点旳一种很好旳近
似点0 ,因为一种连续可微旳函数在极小点附近与一种二次 函数很接近,所以,在0 点附近用一种二次函数 逼近。
f
f
0
f
0
0
1 2
f
0
0 2
求二次函数 旳极小点作为f 极小点旳新近似点1
1 0 即 f 0 f 0 0 0
P a0 a1 a2 2
它应满足条件 P 1 a0 a11 a212 y1 f 1 (1)
P 2 a0
a12
a2
2 2
y2
f
2
P 3
a0
a13
a2
ห้องสมุดไป่ตู้
2 3
y3
f
3
从极值旳必要条件求得
优化设计一维搜索方法第03章-2
牛顿法(Newton’s Method)、二次插值法(Quadratic Interpolation Method)、平分法(Bisection Method)、…
一、牛顿法
1、牛顿法工作原理 设f(x)为一个连续可微的函数,则在x0附近,该函数应该与一 个二次函数接近,即可在点x0附近用一个二次函数φ(x)来逼近函 数f(x) ,即:
f ( x) x 4 4 x 3 6 x 2 16 x 4
例2
解:取x2点为区间[x1,x3]的中点,x2 0.5 ( x1 x3 ) 2.5 , 计算x1,x2,x3 3点处的函数值f1=19,f2=-96.9375,f3=124。可 见函数值满足“高-低-高”形态。 以x1,x2,x3为插值点构造二次曲线, 求第一次近似的二次曲线p(x)的极小值点,由公式得:
x2 x3 f2 f1 f3 f1 即: c1 x2 x1 x3 x1
说明三个插值点位于同一条直线上,因此说明区间已经很 小,插值点非常接近,故可将x2、y2输出作为最优解。
5、区间的缩短 为求得满足收敛精度要求的 最优点,往往需要多次进行插 值计算,搜索区间不断缩短, 使xp*不断逼近原函数的极小点 x* 。
x 1.9545 , 比较函数值可知 p
f ( x* ) 65.4648 f ( x2 ) 96.9375 p
* x 这种情况应消除左边区段 [ x1 , x ]。然后用 p , x2 , x3 作为 x1,x2,x3新3点,重新构造二次曲线p(x),如此反复计算,直 * 到 x2 x p 为止。 * p
b
x1 x2 f1 f2 x 2 x p * f 2 f P*
第3章一维优化方法
第3章一维优化方法一维优化方法是数学中用于求解最优化问题的一种重要技术。
在实际问题中,往往需要找到一个函数的最小值或最大值点,一维优化方法就是这样一种方法,可以找到函数在一些区间内的最小值或最大值点。
一维优化方法有很多种,常见的有穷举法、黄金分割法、斐波那契法、抛物线法、割线法、牛顿法等。
不同的方法有不同的适用范围和求解效率,我们可以根据具体问题的特点选择合适的方法进行求解。
穷举法是一种最简单的一维优化方法,它通过遍历函数在给定区间内的所有可能取值,找到其中的最小值或最大值。
穷举法的缺点是计算量大,当问题规模较大时,不适用。
但是它的优点是简单易懂,适用于初学者入门。
黄金分割法是一种较为常用的一维优化方法,它通过划分给定区间,选择区间内一些点进行迭代,不断缩小区间范围,直到找到最优解。
黄金分割法的优点是收敛速度较快,适用于一些比较复杂的问题。
斐波那契法是一种基于斐波那契数列的一维优化方法,它可以在一定程度上提高黄金分割法的效率。
斐波那契法的关键在于选择合适的斐波那契数列作为迭代次数,通过比较函数在斐波那契数列中两个相邻点的取值,确定新的区间范围。
抛物线法是一种通过拟合函数的抛物线来求解最优解的一维优化方法。
它通过选择合适的三个点,构造一个简单的二次函数,找到该函数的极小值点作为最优解。
抛物线法的优点是计算量相对较小,但是在一些复杂的问题中可能不适用。
割线法是一种通过逐步逼近函数极值点的一维优化方法。
它通过选择给定区间上两个初始点,不断用割线近似替代切线,找到极小值点。
割线法的优点是收敛速度快,但是需要在迭代过程中进行导数计算,对于一些无法求导的函数不适用。
牛顿法是一种通过利用函数在一些点处的一阶导数来逼近极值点的一维优化方法。
它通过选择给定区间上一个初始点,利用导数的概念找到极小值点。
牛顿法的优点是收敛速度非常快,但是对于一些无法求导的函数不适用。
综上所述,一维优化方法是数学中用于求解最优化问题的一种重要技术。
03工程优化 第3章-1常用一维搜索
k 要满足
f ( xk k d k ) f ( xk ) k gk T d k ,
f ( xk k d k ) f ( xk ) (1 )k gkT d k ,
其中
1 0 . 2
常用的一维搜索方法
• 非精确的一维搜索:通过计算少量的函数值,得到一步长
第3章 常用的一维搜索方法
n元函数 f : D Rn R
求解无约束优化问题 min f ( x ) n
x R
定理(必要条件) 设 f : D Rn R (1) x 为D的一个内点; (2) f ( x ) 在 x 可微; (3) x 为 f ( x ) 的极值点; 则 f x 0 。 定理(充分条件)
迭代法的基本思想
首先给定一个初始估计 x 为了求函数f(x)的最优解, 然后按某种规划(即算法)找出比
0
x0更好的解 x1,f ( x1 ) f ( x0 ) 1 2 再按此种规则找出比 x 更好的解 x ,
*
k 如此即可得到一个解的序列 {x },
若这个解序列有极限 x , lim x k x* 0, 则称它收敛于x*。
k
若算法是有效的,则它产生的解序列收敛于该问题的最优解。 计算机只能进行有限次迭代,一般很难得到准确解,而只能得 到近似解。当达到满足的精度要求后,即可停止迭代。
迭代法的终止条件
停止迭代时要满足的条件称为终止条件。 理想的终止条件是
f ( x) f ( x*) ,
或者
x x * .
(b) 终止条件 循 环 (c) 迭代格式
判断当前点是否满 足终止条件 否
最优解
3.一维搜索方法
令 c1
f3 x3
f1 x1
,
c2
f2 x2
f1 x1
c1
x2 x3
x
1 2
x1
x2
c1 c2
21
缩短搜索区间
• (1)如果搜索区间足够小,则可用P(x)的极小点x4作为f(x)的极小值 x*的近似解
• (2)否则,必须缩短搜索区间(利用单谷函数的性质)重复进行二 次插值法
– (1)当x2<x4时,
第三章 一维搜索方法
• 概述
– 针对不能求微分的函数 – 搜索区间的确定 – 缩小收缩区间 – 确定极小点
• 黄金分割法 • 牛顿法(切线法) • 插值法
概述
• 对于单个变量,通常称为一维搜索或线 性搜索
• 多维问题转化为一维问题求解 • 适合于工程实践
2
多维和一维间的转换
• 多维目标函数的极值问题,通常采用数值迭代的方法 求解 xk 1 xk akdk k 0,1,2,
是
否
x2<x4
是
否 f2<f4
是
否
f2<f4
x3=x4; f3=f4
x1=x2; f1=f2; x2=x4 f2=f4
x1=x4; f1=f4
x3=x2; f3=f2; x2=x4 f2=f4
23
解析法与试探法的对比
• 相同之处在于都是利用区间消去法原理将初始搜索区 间不断缩短,从而求得极小点的数值近似解。
点的数值近似值
13
黄金分割法程序框图
给定 a, b, =0.618
a1=b-(b-a); y1=f(a1); a2=a+(b-a); y2=f(a2);
是
第三章-一维搜索方法
数值解法基本思路:
先确定 k 所在的搜索区间,然后根据区间消去法原理 不断缩小此区间,从而获得 k 的数值近似解。
一维搜索一般分为两大步骤: (1)确定初始搜索区间[a,b],该区间应是包括一维函数 极小点在内的单谷区间。 (2)在单谷区间[a,b]内通过缩小区间寻找极小点。
x2 a 0.618(b a), y2 f (x2 )
否 ba
是
x 0.5(a b)
止
f f (x)
b x2, x2 x1, y2 y1 x1 a 0.382(b a), y1 f (x1)
f
也可采用迭代次数是否大于或等于 k 作终止准则。
y1 y2 x a x1 x2 b
当方向 d k 给定,求最佳步长 k 就是求一元函数
f x k1 f xk kd k k
的极值问题。这一过程被称为一维搜索。
第三章 一维搜索方法
f (x (k+1) ) = min. f (x (k) + α S (k) ) = f (x (k) + α(k) S ( k) )
一维搜索是优化搜索方法的基础。
第三章 一维搜索方法
求解一元函数 a 的极小点 a* ,可用解析法。 f x ad f x adTf x 1 ad T G ad
2
f x dTf x 1 2dTGd
2
上式求α的极值,即求α导数为零。
dTf x *dTGd 0
则
*
dTf x
d T Gd
第三章 一维搜索方法
5
-1.386 -1.111 -0.940 -0.665
最优化方法-一维搜索法
搜索区间及其确定方法
• 加步探索法算法的计算步骤: • (1) 选取初始数据.选取初始点 t0 [0, ) (或 t0 [0, tmax ]),
计算0 (t0 ), 给出初始步长h0 0, 加步系数 1,令 k 0 • (2) 比较目标函数值.令 tk 1 tk hk计算 k1 (tk1) ,
方向 Pk 之间应满足
f (Xk1)T Pk 0
4.2
• 事实上,设 (t) f ( X k tPk ), 对 t 求导有
(t) f (X k tPk )T Pk
• 令 '(t) 0, 即 f (X k tPk )T Pk 0 所以 f (X k1)T Pk 0
这一准则对于定义域上的凸函数是完全正确的.若是非凸函数,有 可能导致误把驻点作为最优点。 对于约束优化问题,不同的优化方法有各自的终止准则.
• 定义3.3 当一个算法用于n元正定二次函数求最优 解时,可以从任意初始点出发,至多经过n步迭 代求出最优解,就称此算法具有二次终止性。
• 如果算法具有二次终止性,则认为算法比较好。 • 二次终止性仅仅是判断一个算法优劣的衡量标准
存在
,且
,则称[t1 t2]是函数(t)
的最优解 的一个搜索区间。
搜索区间及其确定方法
•单峰区间和单峰函数有如下有用的性质: •定理3.1 设 : R1 R1, [a, b] 是的单峰区间,任取
t1, t2 [a, b] 并且 t2 t1 . (1)若有 (t2 ) (t1) ,则 [a, t1 ]是(t) 的单峰区间. (2)若有 (t2 ) (t1) ,则[t2 , b]是(t)的单峰区间.
第二部分:03第三章 一维搜索方法
一、一维搜索的基本思想
选定初始点1,初始步长h0。计算函数值y1=f(1)和 y2=f(1+ h0),比较y1和y2,可分三种情况:
y1>y2,则极小点*必在1右方,作正向搜索寻求第三点。 y1<y2,则极小点*必在1+h0左方,作反向搜索寻第三点。 y1=y2,则极小点*必在1和1+h0之间,则为“高-低-高” 形态,找到初始单峰区间为[1 , 1+h0]
y 2 y1
1
y3
3
h0
O
22 2 1 1 1
h0
2013年9月22日星期日8时42分35秒
2013年9月22日星期日8时42分36秒
8
第 2 部分:优化设计
第三章 一维搜索方法
y
y3
y1 y1 2 y2
y 2 y y3 3
第 2 部分:优化设计
第三章 一维搜索方法
昆明理工大学机电工程学院
一、一维搜索的基本思想
一维最优化搜索是要在单峰区间求单峰函数的极小 点,通常分两步进行: 确定一个最小值所在的区间; 求出该区间内的最优步长因子k值。 确定搜索区间的外推法 在一维搜索时,假设函数f()具有单谷性,即在所考 虑的区间内部,函数f()有唯一得极小点*。为了确定 极小点*所在得区间[a, b],应使函数f()在[a, b]区间形 f() 成“高-低-高”趋势。 对于一般情况,分正向 搜索和反向搜索的外推法。
*
b
5
2013年9月22日星期日8时42分35秒
1
2013/9/24
第 2 部分:优化设计
第三章 一维搜索方法
第 2 部分:优化设计
最优化第3章一维搜索方法
§3.1 搜索区间的确定
根据函数的变化情况,可将区间分为单峰区间和多峰区间。 所谓单峰区间,就是在该区间内的函数变化只有一个峰值, 即函数的极小值。
§3.4 插值方法
一、牛顿法
f(x)
利用一点的函数值、 一阶导数以及二阶 导数构造二次多项 式。用构造的二次 多项式的极小点作 为原函数极小点的 近似。
φ0(x)
φ1(x) f(x)
x*
x2
x1
x0 x
§3.4 插值方法
一、牛顿法
设f(x)为一个连续可微的函数,则在点x0附近 进行泰勒展开并保留到二次项:
§3.1 搜索区间的确定
f(x)
f(x)
f(a0) f(a0+h)
f(a0+3h)
f(a0-h) f(a0)
f(a0+h)
0 a0 a
a0+h
a0+3h x b
0 a0-h
a0
a
进退试算法的运算步骤如下:
a0+h x b
(1)给定初始点α0和初始步长h (2)将α0及α0+h 代入目标函数 f(x) 进行计算并比较大小
φ0(x)
φ1(x) f(x)
f ′ (x)
x*
x2 x1
x0
φ ′ 1(x) f ′ (x)
x* x2
x1
x0
牛顿法程序框图
开始
x 给定初始点 ,误差 0
,
令k=0
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
黄金分割法求的的极小点与极小值: x=0.5 ×(0.584+0.764)=0.674, 求导运算求的极小点与极小值: x=0.667, f(x)=0.222 f(x)=0.222
§3.4 一、牛顿法
插值方法
f(x)
利用一点的函数值、 一阶导数以及二阶 导数构造二次多项 式。用构造的二次 多项式的极小点作 为原函数极小点的 近似。
f(x) φ1(x) f(x)
φ0(x)
依此类推可得牛顿迭代公式:
f '( xk ) xk 1 xk f "( xk )
x*
x2
x1
x0
φ0(x)
在 x0 处 用 一 抛 物 线 φ(x)代替曲线 f(x), 相当于用一斜直线 φ ′(x)代替曲线 f ′(x) 。这样各个近似点 是通过对作 f ′(x) 切 线求得与轴的交点 找到的,所以有时 牛顿法又称作切线 法。
f(x)
用二次函数φ(x)的极小点x1 作为f(x)极小点的一个近似 点。根据极值必要条件:
φ0(x) φ1(x) f(x)
'( x1 ) 0
x* x2 x1 x0 x
§3.4 一、牛顿法
即
插值方法
f '( x0 ) f "( x0 )( x1 x0 ) 0
f '( x0 ) x1 x0 f "( x0 )
f(x1)=2
f1=f(x1)=2 f2=f(x2)=1
x1=0 a
f(x2)=1
由于f1>f2, 应继续向前探测
x2=1
x3=2
b
x3= x0+2h=0+2=2 f3=f(x3)=18 由于f2<f3,可知初始区间已经找到,即
[a, b]=[x1, x3]=[0, 2]
§3.3
黄金分割法
2)用黄金分割法缩小区间 第一次缩小区间: x1=0+0.382×(2-0)=0.764, f1=0.282 x2=0+0.618×(2-0)=1.236, f2=2.72 由于f1< f2, 故新区间[a, b]=[a, x2]=[0, 1.236] 由于 b-a=1.236>0.2,应继续缩小区间
φ1(x)
f(x)
x* f ′ (x)
x2
x1
x0
φ ′ 1(x)
f ′ (x)
x*
x2
x1
x0
牛顿法程序框图
开 始
给定初始点 0 ,误差 令k=0
x
,
计算
f ' ( xk ), f '' ( xk ) ,
,
f '( xk ) 计算 xk 1 xk f "( xk )
Y
xk 1 xk
f(x)
f(a1) f(b1)
f(x)
f(a1) f(b1)
f(x)
f(a1)
f(b1)
a
a1
b1
b
a
a1
f1<f2
f1>f2
b1
b
a
a1
b1
b
f1=f2
f(b1) f(a1)
f(a1) f(b1)
f(a1)
f(b1)
a
a1
b1
b
a
a1
b1
b
a
a1
b1
b
(1)f1<f2, 新区间为[a,b1] (2)f1>f2, 新区间为[a1,b] (3)f1=f2, 新区间为[a1,b1]
一维搜索方法一般分两步进行: ■ 首先确定一个包含函数极小点的初始区间,即确定 函数的搜索区间,该区间必须是单峰区间; ■ 然后采用缩小区间或插值逼近的方法得到最优步长, 最终求出该搜索区间内的一维极小点。
§3.1
搜索区间的确定
根据函数的变化情况,可将区间分为单峰区间和多峰区间。 所谓单峰区间,就是在该区间内的函数变化只有一个峰值, 即函数的极小值。
x
进退试算法的运算步骤如下:
(1)给定初始点α0和初始步长h (2)将α0及α0+h 代入目标函数 f(x) 进行计算并比较大小
§3.1
搜索区间的确定
(3)若f(α0 ) > f(α0+h),则表明极小点在试算点 的右侧,需做前进试算。
在做前进运算时,为加速计算,可将步长h 增加2倍,并取计算新点为α0+h+2h=α0+3h 若f(α0+h) ≤ f(α0+3h) ,则所计算的相邻三点 的函数值已具“高-低-高”特征,这时可确定 搜索区间
优点:1)收敛速度快。 缺点:1)要计算函数的一阶和二阶导数,增加每次 迭代的工作量。 2)数值微分计算函数二阶导数,舍入误差将 严重影响牛顿法的收敛速度, f '(x)的值越 小问题越严重。 3)牛顿法要求初始点离极小点不太远,否则 可能使极小化序列发散或收敛到非极小点。
§3.4 插值方法 二、二次插值法(抛物线法)
f1 f 2
新区间为[a1, b]
对于上述缩短后的新区间,可在其内再取一个新点,然后 将此点和该区间内剩下的那一点进行函数值大小的比较, 以再次按照上述方法,进一步缩短区间,这样不断进行下 去,直到所保留的区间缩小到给定的误差范围内,而得到 近似最优解。
§3.3
一、适用范围
黄金分割法
适用于[a, b]区间上的任何单谷函数求极小值问题。对 函数除要求“单峰”外不作其他要求,甚至可以不连 续。适应面相当广。基本原理为区间消去法 黄金分割法插入两点:
a 0 h,
b 0 h
否则,将步长加倍,继续后退,重复上述步 骤,直到满足单峰区间条件为止。
§3.2
一、基本思想
区间消去法原理
搜索区间确定之后,采用区间消去法逐步缩短搜索区间, 找到极小点的数值近似解。 假定在搜索区间内[a,b] 任取两点a1、b1,且a1<b1
f1=f(a1), f2=f(b1)
第三章 一维搜索方法
3.1 搜索区间的确定 3.2 区间消去法原理
3.3 一维搜索的试探法
3.4 一维搜索的插值法
§3.1
搜索区间的确定
求解一维目标函数 f(X) 最优解的过程,称为一维优化(一 维搜索),所使用的方法称为一维优化方法。
由前数值迭代法可知,求某目标函数的最优值时,迭代过 程每一步的格式都是从某一定点X(k) 出发,沿着某一使目 标函数下降的规定方向 S(k)搜索,以找出此方向的极小点 X(k+1) 。这一过程是各种最优化方法的一种基本过程。
φ0(x)
φ1(x) f(x)
x*
x2
x1
x0
x
§3.4 一、牛顿法
插值方法
设f(x)为一个连续可微的函数,则在点x0附近 进行泰勒展开并保留到二次项: 1 f ( x) ( x) f ( x0 ) f '( x0 )( x x0 ) f "( x0 )( x x0 ) 2 2
f(x)
0
a
x*
b
x
即在单峰区间内的极小值点X* 的左侧:函数呈下降趋势, 而在单峰区间内的极小值点X* 的右侧:函数呈上升趋势。 也就是说,单峰区间的函数值呈“高-低-高”的变化特征。
§3.1
搜索区间的确定
目前在一维优化搜索中确定单峰区间常用的方法 是进退试算法。
进退试算法的基本思想为:
1) 按照一定的规律给出若干试算点,
§3.3
黄金分割法
第五次缩小区间: 令 x2=x1=0.652, f2=f1=0.223 x1=0.472+0.382× (0.764-0.472)=0.584, f1=0.262 由于f1>f2, 故新区间[a,b]=[x1,b]=[0.584, 0.764] 因为 b-a=0.764-0.584=0.18<0.2, 停止迭代。
a 0 ,
b 0 3h
否则,将步长再加倍,并重复上述运算。
§3.1
搜索区间的确定
(4)若 f(α0) < f(α0+h),则表明极小点在试算点 的左侧,需做后退试算。
在做后退运算时,应将步长变为-h ,并从 点出α0 发,得到后退点为α0-h 若f(α0-h) > f(α0) ,则搜索区间可取为
3 4.03960 3.38299 86.86992 4.00066 0.03894
4 4.00066 0.00551 84.04720 4.00059 0.00007
= xk 1 xk 2.1667 0.83196
§3.4 一、牛顿法
插值方法
X ( k 1) X ( k ) ( K ) d ( k ) f '( xk ) xk 1 xk f "( xk )
f '( xk ) 给定初始点x0=3,ε=0.001,计算公式:xk 1 xk f "( xk )
数值 \ k xk
f xk
f xk
xk 1
0 3 -52 24 5.1667
1 5.1667 153.35183 184.33332 4.33474
2 4.33474 32.30199 109.44586 4.03960 0.29514
x2 a 0.618(b a )
Y
x2
f ( x1 ) f ( x2 )
N
b x2 , x2 x1 , f 2 f1 x1 a 0.382(b a ), f1 f ( x1 )
a x1 , x1 x2 , f1 f 2 x2 a 0.618(b a ), f 2 f ( x2 )