第3章迭代终止准则及一维搜索方法教材
一维牛顿法
一维牛顿法也称为一维牛顿-拉夫逊方法,是一种迭代的优化算法,用于求解一维非线性函数的极值点。
这种方法通过利用函数的二阶导数信息来逼近极值点,并在每次迭代中更新搜索方向,以快速收敛到最优解。
一维牛顿法的具体步骤如下:
初始化:选择初始点x0,并设定迭代终止条件,如迭代次数或函数值的收敛阈值。
计算一阶和二阶导数:计算函数f(x)在当前点xk处的一阶导数f'(xk)和二阶导数f''(xk)。
更新搜索方向和步长:根据二阶导数的信息,计算搜索方向dk和步长αk。
更新当前点:计算新的点xk+1 = xk + αk * dk。
判断终止条件:检查是否满足终止条件,如果满足则停止迭代,否则返回步骤2。
例如,对于函数f ( x ) = x 3 −2 sin ( x ) f(x) = x^3 - 2\sin(x)f(x)=x3−2sin(x),在A AA点处对函数f ( x ) f(x)f(x)展开,得到近似的二次函数φ( x ) \varphi(x)φ(x),φ( x ) \varphi(x)φ(x)的最小值在B BB点处取得,高斯牛顿法的下一步迭代点即为与B BB点横坐标相等的C CC点。
如此,只需数次,迭代能够达到很高的精度,可见牛顿法收敛速度快。
第三章 一维搜索法
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 黄金分割法
一维搜索试探方法的基本思想: 一维搜索试探方法的基本思想:在确定了搜索区间的 前提下,不断缩小搜索区间, 前提下,不断缩小搜索区间,同时保持搜索区间内函数值 “大-小-大”的走势,直到区间的宽度小于预定的精度。 小 大 的走势,直到区间的宽度小于预定的精度。 黄金分割法基本思想: 黄金分割法基本思想 : 在搜索区间内插入两个黄金分 割点,将区间分成三段。利用函数的单谷性质,通过函数值 割点,将区间分成三段。利用函数的单谷性质, 大小的比较,删去其中一段。 大小的比较,删去其中一段。在保留下来的区间上作同样的 处置,如此往复送代,使搜索区间缩小到精度范围内, 处置,如此往复送代,使搜索区间缩小到精度范围内,得到 极小点的近似解。 极小点的近似解。
机械优化设计-第三章一维优化方法
机械优化设计
• 第四次缩小区间: 第四次缩小区间: • 令 x2=x1=0.764, , f2=f1=0.282 • x1=0.472+0.382*(0.944-0.472)=0.652, f1=0.223 • 由于f1<f2, 故新区间 由于f 故新区间[a,b]=[a, x2]=[0.472, 0.764] • 因为 b-a=0.764-0.472=0.292>0.2, 应继续缩小区间。 , 应继续缩小区间。 第五次缩小区间: 第五次缩小区间: f2=f1=0.223 令 x2=x1=0.652, x1=0.472+0.382*(0.764-0.472)=0.584, f1=0.262 由于f 故新区间[a,b]=[x1,b]=[0.584, 0.764] 由于f1>f2, 故新区间 因为 b-a=0.764-0.584=0.18<0.2, 停止迭代。 程序演示 , 停止迭代。 极小点与极小值: 极小点与极小值: x*=0.5*(0.584+0.764)=0.674,
x2 = a + 0.618(b − a), y2 = f ( x2 )
f
b = x2 , x2 = x1, y2 = y1
x1 = a + 0.382(b − a), y1 = f ( x1 )
y1 < y2
否
是
y1 y2
x
b
a = x1 , x1 = x2 , y1 = y2
x2 = a + 0.618(b − a), y2 = f ( x2 )
7
机械优化设计
h0
x2
机械优化设计
2.前进搜索 加大步长 h=2 h ,产生新点x3= x2+ 2h0 ; (a)如y2<y3,则函数在[x1,x3]内 必有极小点,令a= x1,b= x3搜索 区间为[a,b] ; (b)如y2>y3, 令x1=x2 ,y1=y2 ; x2=x3 ,y2=y3 ; h=2h 重新构造新点x3=x2+h,并比较y2、 y3的大小,直到y2<y3。
《现代机械优化设计》第3章 一维搜索
a xp, f (a) f (xp ), f (a) f (xp )
b xp, f (b) f (xp ), f (b) f (xp )
计算 f (x*p ), f (x*p )
否
f (x*p ) 0 是
否
f (x*p )
x xp , f f (xp )
是
结束
否
是
K>0
否
xp-xp0 ≤ε
是
x*=x2, f*=f2
是
x*=xp,f*=fp
xp
1 2
f1(x22 x32 ) f2 (x32 x12 ) f3(x12 x22 ) f1(x2 x3) f2 (x3 x1) f3(x1 x2 )
结束
由于区 间缩到很 小时因计 算机舍入 误差引起, 可取中间 点输出。
x3
ⅱ) (xP x1)(x3 xP ) 0
f1
x1
f2
f3
x2 x3
补充 §3-5 格点法
一)基本思路
先将搜索区间分成若干等分,计算出当中的n个等分 点的目标函数值. 再通过比较,找出其中的最小点,则该 点的两个邻近点围成缩短了的新区间。
f
a
xmx1 m xm1 b
x
二)每轮迭代区间的缩短率
ⅰ)A=0
f1(x2 x3 ) f2 (x3 x1) f3 (x1 x2 ) 0
f1[( x2 x1) (x3 x1)] f2 (x3 x1) f3(x1 x2 ) 0
f2 f1 f3 f1 这表明此时三个插值点共线。 x2 x1 x3 x1
f2
f3
f1
x1
x2
a=x3、b=x1
x3=x2+h、y3=f(x3)
常用的一维搜索方法
称为搜索方向;
k 称为步长或步长因子。
图1
线搜索迭代法的步骤
0 x (1) 选定某一初始点 ,并令 k : 0;
(2) 确定搜索方向 d
k
k
;
k
(3) 从 x 出发,沿方向 d x k 1; (4) 检查得到的新点
求步长 λ
k
,以产生下一个迭代点
x
k 1
是否为极小点或近似极小点。
若是,则停止迭代。 否则,令 k :k1,转回(2)继续进行迭代。 在以上步骤中,选取搜索方向是最关键的一步。 各种算法的区分,主要在于搜索方向 d
最优解
从当前点出发,按照某 种规则找下一个迭代点 注:迭代格式 不同,对应着 不同的算法
找下一个迭代点
迭代法的分类
可 行 算 法 : 所 有 迭 代 点 都 是 可 行 点 据 迭 代 点 初始点不好找 的 可 行 性 不 可 行 算 法 : 至 少 有 一 个 迭 代 点 不 是 可 行 点 初始点任意选取
k k k Tk kk
T k T k g d g k 1 k d,
其中
(, 1 ) ,0 1 .
常用的一维搜索方法
我们主要介绍下面几种方法
“成功—失败”法 0.618法(黄金分割法) 二分法 牛顿法(Newton)和插值法 Armiji-Goldstein 准则 Wolfe-Powell 准则
注意: 1. h 选择要适当.(太大含多个单峰区间,太小迭代次数多); 2. f (x)单调时无结果, (加迭代次数限制);
“成功—失败”法----算例
3 例 :利用“成功-失败”法求函数 f( x )x 2 x 1 的搜索区间, 1 取初始点 x 1 ,步长 h . 2 21 1 h , 解:取初始点 x ,步长 2 2 1 1 5 11 f (x ) f ( ) , f ( x h ) f ( ) f ( 0 ) 1 , 2 8 22 搜 索 成 功 , 步 长 加 倍 ; 因 为 f () x f ( x h ) , 1 1 计 算 f ( x h + 2 h ) f ( x 3 h ) f ( 3 ) f ( 1 ) 0 , 2 2 搜 索 成 功 , 步 长 加 倍 ; 因 为 fxh ( ) fx ( 3 h ) , 1 1 计 算 f ( x 3 h + 4 h ) f ( x 7 h ) f ( 7 ) f ( 3 ) 2 2 , 2 2 搜 索 失 败 , 停 止 迭 代 ; 因 为 fx ( 3 h ) fx ( 7 h ) ,
最优化方法第三章第一讲下降迭代算法基本概念
(i )
xk1 xk
或 xk1 xk
xk
;
(ii )
f ( xk1 ) f
(xk
) 或 f ( xk1 ) f ( xk ) ;
f ( xk )
(iii) f ( xk ) gk ;
(i ) 上述三种终止准则的组合,
其中 0是给定的适当小的实数。
2. 一维搜索
最优化问题的算法一般迭代格式:
给定初始点 x0,令k 0。 (i)确定 xk 处的可行下降方向 pk ;
(ii)确定步长k 0,使得 f ( xk k pk ) f ( xk ); (iii)令 xk1 xk k pk ; (i )若 xk1满足某种终止准则,则停止迭代,以 xk1为近似最优解。否则令k k 1,转(i)。
定义 1.2.1:在 xk 点处,对于 pk 0,若存在 0, 使 (0, )有
f ( xk pk ) f ( xk ) 成立,则称 pk 为 f ( x)在点 xk 处的一个下降方向。
当 f ( x)具有连续的一阶偏导数时,记f ( xk ) gk 。由
Taylor 公式 f ( xk pk ) f ( xk ) gkT pk o( )
由 xk 出发沿 pk 方向求步长k 的过程叫一维搜索
或线性搜索。
如果算法构造出的点列xk 在有限步之内得到 问题的最优解 x*,或者点列xk 有极限点,并且其
极限点是最优解 x*,则称这种算法是收敛的。
如果只有当 x0充分接近最优解 x*时,由算法产 生的点列才收敛于 x*,则该算法称为局部收敛。
定义 1.2.4:设序列xk 收敛于 x*,若对于实数 p 1,
有
lim
k
xk1 x* xk x* p
第3章迭代终止准则及一维搜索方法
11d
K
f1 f ( X )
a1 a11 a11 a12 f1 f 2
a12 a1 ( a3 a1 ) X X ( K ) 12 d ( K ) f2 f ( X ) a3 a12 ; a12 a11 f 2 f1 a11 a3 (a3 a1 )
搜索区间的确定
外推法确定搜索区间
入口 t0 f0 0.01 , f ( X ), d ( I , J ) d
k
t1 0, t t 0 , f1
t2 t1 t , f 2
f0
f (X )
f
2
f1
YES
NO
确定搜索区间的程序原理
t t , t3 t1 , f 3
令
df ( ) 0 d
得:
4 (1 2 ) 0
将(3-3)代入(3-2)得:
1 2
(3-3)
x
因为
(1)
1 1 2 0 2
f ( x(1) ) 2x x0 0
满足准则1所以
x* x(1) 0
f ( x* )
=0
多维搜索
对于多维搜索,因为
出口
二次插值法 二次插值法的原理是用一个二次多项式(抛物线)来逼近目标函数 P( )=a+b +c
2
dp( ) b 2c d
b p* 2c
二次插值法原理
p*
的求法
( 22 32 ) f1 (32 12 ) f 2 (12 2 2 ) f3 b (1 2 )( 2 3 )(3 1 )
X
( k 1)
工程最优化第三章
最优点同时与目标函数及约束函数的性质有关。存在两种情况:
x2
x2
x(0) =x*
x(0)
x*
S x1
(a) 无约束极值点x(0)S
S x1
(b) 无约束极值点x(0)S
! 目标函数的梯度等于零并不是约束问题的最优性必要条件!
带有不等式约束的优化问题的最优性条件通常是一组不等式与 方程,比较复杂的,很难求解,所以在一般情况下,不是直接 求解这些条件来获得极值点,而是使用各种迭代法求出近似的 极值点。但它在理论上很重要,是各种迭代方法的基础和依据。
(一)可行方向与起作用约束
定义:设点xS,p是一个方向,如果存在实数a1>0, 使对所有
a[0, a1],有x+apS,则称p为点x 的一个可行方向,或容许
方向、允许方向。
p
几何上,若从x处沿方 向p引一射线,若该射 线起始端有一段在可 行域内,则这个方向p
就叫可行方向。
x S
! 是否为可行方向与起始点的位置有关!
例3.5.1 验证下面的非线性规划在最优点x*处不满足约束规范,
最优点不是K-T点:
min
f
(x) (x1 3)2
x
2 2
s.t g1 (x) x 2 (1 x1 )3 0
g 2 (x) x1 0
g3 (x) x2 0
解:显然最优点 min
fx*(=x[)x1*,(xx21*]T=3[)12,
0]T,
x
2 2
f
=
f
(x*)
=
4.
x2
下面验证在 s.t
因为 g1(x*)
gx*1 (=x[)1,0x]T2处不(1满足x1约)3束 规0 范。 =g02 ,(xg2)(x*) <x10,g03(x*)=0,
机械优化设计教案
吉林大学教师教案(20 07 ~2008 学年第二学期)课程名称:机械优化设计年级:20XX级01-09班教研室:机械设计及自动化任课教师:李风吉林大学教务处制教案等值线—等高线●等值线●等高线:●它是由许多具有相同目标函数值的设计点所构成的平面曲线。
课后小结1:人字架的优化数学模型2:数学模型的基本构成第二节机械优化问题示例第三节优化设计问题的数学模型2学时五、优化问题的几何解释●无约束优化问题就是在没有限制的条件下,对设计变量求目标函数的极小点。
在设计空间内,目标函数是以等值面的形式反映出来的,则无约束优化问题的极小点即为等值面的中心。
●约束优化问题是在可行域内对设计变量求目标函数的极小点,此极小点在可行域内或在可行域边界上。
课后小结1.机械优化设计数学模型的一般形式2:优化设计的数学基础,梯度的概念第四节优化设计问题的基本解法●求解优化问题:解析解法●数值的近似解法。
2学时●解析解法:把所研究的对象用数学方程(数学模型)描述出来,然后再用数学解析方法(如微分、变分方法等)求出优化解。
●数值解法:只能通过大量试验数据用插值或拟合方法构造一个近似函数式,再来求其优化解,这种方法是属于近似的、迭代性质的数值解法。
不仅可用于求复杂函数的优化解,也可以用于处理没有数学解析表达式的优化设计问题。
因此,它是实际问题中常用的方法。
●可以按照对函数导数计算的要求,把数值方法分为需要计算函数的二阶导数、一阶导数和零阶导数(即只要计算函数值而不须计算其导数)的方法。
●由于数值迭代是逐步逼近最优点而获得近似解的,所以要考虑优化问题解的收敛性及迭代过程的终止条。
收敛性是指某种迭代程序产生的序列收敛于第二章优化设计的数学基础第一节多元函数的方向导数与梯度二、二元函数的梯度考虑到二元函数具有鲜明的几何解释,并且可以象征性地把这种解释推广到多元函数中去,所以梯度概念的引入也先从二元函数人手。
等值线—等高线●等值线●等高线:●它是由许多具有相同目标函数值的设计点所构成的平面曲线。
最优化理论与算法(第三章)
第三章 牛顿法§3.1 最速下降法一、最速下降法在极小化算法中,若每次都以迭代点处的负梯度方向为搜索方向,产生的算法称为最速下降法,它是无约束最优化算法中最简单、最基本的算法。
算法描述:1) 给出初始点0n x R ∈,允许误差0ε>,0k =; 2) 计算k k d g =-,若k g ε≤,Stop 令 *k x x ≈; 3) 由一维搜索确定步长因子k α,使得()min ()k k k k k f x d f x d ααα≥+=+4) 令1k k k k x x d α+=+,1k k =+,go to 2).二、最速下降算法的收敛性定理3.1 设1f C ∈,则最速下降算法产生的点列{}k x 的每个聚点均为驻点。
证明:设x 是{}k x 的一个聚点,则存在子序列{}1k K x ,使得1lim k k K x x ∈=令()k k d f x =-∇,由1f C ∈,知{}1()k K f x ∇是收敛序列,故{}1k K d 有界,且1lim ()k k K d f x ∈=-∇由定理2.6有2()(())()0Tf x f x f x ∇-∇=-∇=故有 ()0f x ∇=。
定理 3.2 设()f x 二次连续可微,且2()f x M ∇≤,则对任何给定的初始点0n x R ∈,最速下降算法或有限终止,或lim ()k k f x →∞=-∞,或lim ()0k k f x →∞∇=。
证明:不妨设k ∀,()0k f x ∇≠。
由定理2.5有211()()()2k k k f x f x f x M+-≥∇ 于是 []120101()()()()()2kk k i i i i i f x f x f x f x f x M -+==-=-≥∇∑∑令k →∞,由{()}k f x 为单调下降序列,则要么lim ()k k f x →∞=-∞,要么 lim ()0k k f x →∞∇=。
三章节一维搜索方法
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
从极值旳必要条件求得
第三章-一维搜索方法
数值解法基本思路:
先确定 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
完整版一维搜索方法
f (? 1 ) f (? 2 )
o
?1 ?2
?
6
2) 若f1≤ f2 ,如下图所示, 则作后退计算。 令 h=-h, 将α1、 f1与α2、 f2对调,转入第3)步。
f (? )
f (? 2 )
f (? 1)
o
?1 ?2 ?
7
3)计算第3个试点α3 =α2+h, 计算函数值f3=f(α3), 并 比较f2 和 f3 ,有如下两种情况 :
1
? 一维优化一般可分为两大步骤: ?确定初始搜索区间[a,b]; 该区间应为包含一维优化目标函数的极小点在内的单 峰区间。 ?在搜索区间[a,b]内寻找极小点。
优化算法的基本迭代公式:
X k?1 ? X k ? ? k S k , k ? 0, 1, 2,?
当迭代初始点 Xk 及搜索方向Sk 确定后,迭代所得的新点 Xk?1 取
作代换: α1 =α2 , f1=f2; α2 =α3 , f2 = f3。 继续计算
α3 (即步骤 3) );如此重复该过程,总能找到相继3试点 的函数值符合“大-小-大” 变化的要求。左端点为a,
右端点为b,从而找到了搜索区间[a, b]。
f (? )
f (? 1) f (? 2 )
f (? 3 )
a=min( α1 ,α3 ), b=max ( α1 ,α3 )
h=2h, α3= α2+h, 计算f(α3)
N
作代换 α1 =α2 , α2 =α3 , f(α1)= f(α2) , f(α2)= f( α3) , α3= α2+h, 计算f(α3)
结束
10
? 进退法确定搜索区间的步骤:
2. 方法二 (1) 给定初始点α0和初始步长h0; (2) 令α1 =α0, h=h0, α2 =α1+h, 得: 两试点α1 ,α2 ,计算 f1 =f(α1), f2 =f(α2);
最优化方法-一维搜索法
搜索区间及其确定方法
• 加步探索法算法的计算步骤: • (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)的单峰区间.
最优化第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
常用的一维搜索方法
§4
牛顿法(Newton)和插值法
§4 .1、Newton法: 对 f (x) 在 x k 点展开: f (x )= f (xk )+ f ′(xk )( x-xk ) +(1/2) f ″(xk )(x-xk )2 + o ||(x- xk) 2 || 取二次式(略去高阶项) g(x) = f (xk) +f ′(xk)(x-xk) + (1/2)f ″(xk)(x-xk)2 用 g(x)作为f (x)的近似,当 f ″(xk) > 0时,其驻点为极小点: g′ (x)= f ′(xk) +f ″(xk)(x - xk )=0 得 xk +1= xk –f '(xk) /f ″(xk). 取 xk +1为新的迭代点。 以上过程即Newton法。 特点:收敛速度快,二阶收敛。缺点:须计算二次导数,对初 始点要求高、局部收敛。
西安电子科技大学 穆学文 18
Newton法算法框
初始 x1 ,ε1, ε2 >0 k=1
︱ f '(xk ) ︱<ε1?
y
停;解 xk
N
停k=k+1
Y
xk +1= xk - f′ (xk ) / f″(xk )
Y
| xk +1 - xk |< ε2
N
西安电子科技大学 穆学文 19
西安电子科技大学
穆学文
3
§1
“成功—失败” 法
以下方法称为“成功—失败”法(进退法): 步骤1:选取初始点 x∈R , 初始步长 h > 0 及精度ε> 0, ϕ11 = f ( x). 步骤2:计算 ϕ22 = f ( x + h). 步骤3:若 ϕ 22 < ϕ11, 搜索成功, 转步骤4;否则,搜索失败, 转步骤5。 步骤4:令 x:= x + h, ϕ11 := ϕ 22, h := 2h 步骤5:判断 h ≤ ε ? 若 h ≤ ε , 停止迭代, x** = x ;否则令 h 转步骤 2。 h=− ,
一维搜索方法
一维搜索方法:(方法比较)“成功—失败”法、二分法、0.618法(黄金分割法)、牛顿法、二次插值法、D.S.C法、Powell法、D.S.C—Powell组合法。
1、“成功—失败”法:主要思想:从一点出发,按一定的步长搜索新点,若成功,加大步长继续搜索,否则,缩短步长小步后退。
此方法可以求最优解所在区间,称为“搜索区间”。
2、二分法:主要思想:区间[a,b]的中间值x0,判断f(x)的导数在三个点处的值,舍去一部分区间再求f(x)的极小值。
3、0.618法:等比例收缩原则,每次留下来的区间长度是上次留下来的区间长度的w倍。
以及对称原则、去坏留好原则。
W=0.6184、牛顿法:基本思想:在极小值点附近用目标函数的二阶泰勒多项式近似代替目标函数,从而求得目标函数的极小值点的近似值。
5、二次插值法:牛顿法是在x k附近的目标函数用泰勒多项式近似代替,而此法是将f(x)用二次插值多项式p(x)近似代替。
把p(x)的极小值点作为f(x)极小值点的代替,从来求得函数的极小值。
6、D.S.C法:主要思想:利用成功—失败法寻找靠近极小值点的三点,进行二次插值。
优点是:收敛速度快,且不要求函数可微。
7、Powell法:基本思想:在搜索方向开始得到三点x0,x1,x2后,作二次插值,求得最小值x,在四点中去坏留好,在余下的三点中再作二次插值……8、D.S.C—Powell组合法:几种方法比较:D.S.C—Powell组合法是非常好的一种方法,它比任何一个单个方法都好D.S.C—Powell组合法与0.618法比较:D.S.C—Powell法中函数值的计算要比黄金分割法少得多,一般来讲它优于黄金分割法。
但:D.S.C—Powell法不一定能收敛到最优解。
最速下降法与修正牛顿法:对于正定二次函数,牛顿法一步可以求得最优解,对于非二次函数,牛顿法并不能保证有限次求得其最优解,但由于目标函数在极小值的附近近似于二次函数,故当初始点靠近极小值时,牛顿法收敛的速度比较快。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
X
( k 1)
X d
k k
x
k
1
3.1.2 数值计算迭代法的终止准则
准则1 准则2 或 准则3
f ( X k 1 ) 1
X( k 1) X k k d k 2
max xi ( k 1) xi k 3
1i n
f ( X( k 1) ) f ( Xk ) 4 k f (X )
T
在工程优化中,这种求最优步长的方法并 不实用
因为需要用到函数的精确的一、二阶导数,当有些函数 不连续或函数的一、二阶导数很难求得时,该方法无 法使用。所以一般采用直接方法求。一维搜索的直接 方法很多,在此仅介绍黄金分割法(0.618法)、二次 插值法。一维最优化方法一般分两步进行,第一步: 确定函数值最小点所在区间; 第二步求出该区间内的最 优步长因子值。
(k )
f ( Xk ) 0
或
f (X ) 0
f ( X ( k 1) f ( X k ) 5
往往采用两个准则来判别
1 f ( x ( k 1) f ( x ( k ) )
2 x ( k 1) x ( k )
f(x)在x*附近比较平坦
往往采用两个准则来判别
f1
t1 t 2 , f1 t 2 t3 , f 2
t 2t
f2 f3
f (X )
t3 t 2 t , f 3
NO
f3
f2
YES
t1 t 3
NO YES
a t1 , b t 3
a t 3 , b t1
出口
非单峰值函数
步长的取值一般不宜取得太大
第3章 迭代终止准则及一维搜索方法
本章知识要点及学习要求 1. 掌握优化设计迭代终止准则 2. 掌握多维问题转化为一维寻优问题方法
3. 基本掌握 确定搜索区间的程序原理
4. 基本掌握黄金分割法、二次插值法程序原理
优化设计问题的迭代思路及迭代终止准则
x
2
X(K-2)
X(K)
X(K-1)
X(K+1)
o
2x f ( X) 1 0 x 0 根据收敛准则1得: 2 x2 1
x2 0
二维问题化成一维问题的几何说明
最优步长可以用间接求优方法求
f (X
(k ) T 1 (k) 2 (k) T (k ) (k ) (k ) (k) (k) s ) f ( X ) f ( X ) d d H ( X ) d 2 (k ) (k ) (k )
令
T (k ) df (X( k ) ( k )d( k ) ) (k ) (k ) (k ) T (k ) (k ) f ( X ) d d H ( X ) d 0 (k ) d ( )
解得:
(k )
(k ) f ( X ) d T (k ) (k ) (k ) d H ( X ) d (k )
搜索区间的确定
外推法确定搜索区间
入口 t0 f0 0.01 , f ( X ), d ( I , J ) d
k
t1 0, t t 0 , f1
t2 t1 t , f 2
f0
f (X )
f
2
f1
YES
NO
确定搜索区间的程序原理
t t , t3 t1 , f 3
f (X)
得:
f ( (0) ) (1 2 (0) )2 (1 2 (0) )2 2(1 2 (0) )2
df ( (0) ) (0) 4( 1 2 ) 2 0 (0) d ( )
0 X 0
(1)
(0)
1 2
黄金分割法
黄金分割法原理
α1(1)=α1 α1 1 α3(1)=α3
=α3(1)-λ(α3(1)-α1(1))
α1 2=α1(1)+λ(α3(1)-α1(1))
λ=0.618的由来
能否保留缩小区间 内的三个点,只需计算一个新点, 以节约计算机的运行时间
黄金分割法前提条件
m1 1)
2 2 x1 = x 1 = 2 x 2 2 1 x 1
2
所以
X(1) X(0) (0)s(0)
代入
X
(1)
1 2 (0) 1 (0) 2 = 1 2 1 2 (0)
(1)
x
(0)
d
(0)
d(0) f ( x) x1 2x x1 2
x
(1)
1 2
(1) 将 x 代入
f ( x) 得:
f ( ) (1 2 )2
df ( ) 2(1 2 ) 2 4 (1 2 ) d
(3-2)
1 f ( x ( k 1) f ( x k )
2 x k 1 x k
f(x)在X*附近比较陡峭
一维搜索的最优化方法
例3-1 min f ( x) x2 已知极小值在区间 1 1 内,若从 x (0) 1
点出发,根据迭代公式(3-1):
x
取
令
df ( ) 0 d
得:
4 (1 2 ) 0
将(3-3)代入(3-2)得:
1 2
(3-3)
x
因为
(1)
1 1 2 0 2
f ( x(1) ) 2x x0 0
满足准则1所以
x* x(1) 0
f ( x* )
=0
多维搜索
对于多维搜索,因为
X
( k 1)
X d
k k
k
f (X( k 1) ) min f (Xk k dk )
所以多维问题在这里转化为一维(
k 为变量)的寻优问题
例3-2
2 min f (X) x12 x2
取
X
(0)
1 1
d
(0)
f ( X) x 1 f ( X) x 2 x(0)