关于无约束优化各种方法
无约束优化方法
无约束优化方法1. 最速下降法(Gradient Descent Method)最速下降法是一种基于梯度信息的迭代优化算法。
其基本思想是从任意初始点开始,沿着目标函数的梯度方向进行迭代,直到达到收敛条件。
最速下降法的迭代更新公式如下:x_{k+1}=x_k-t_k*∇f(x_k)其中,x_k是第k次迭代的解向量,t_k是第k次迭代的步长(也称为学习率),∇f(x_k)是目标函数在x_k处的梯度向量。
最速下降法的步骤如下:1)选取初始点x_0。
2)计算目标函数的梯度∇f(x_k)。
3)计算步长t_k。
4)更新解向量x_{k+1}。
5)判断迭代终止条件,如果满足则停止迭代;否则返回第2步。
最速下降法的优点是易于实现和理解,收敛性较好。
然而,最速下降法存在的问题是收敛速度较慢,特别是对于目标函数呈现狭长或弯曲形状的情况下。
这导致了在高维优化问题中,最速下降法的性能较差。
2. 牛顿法(Newton's Method)牛顿法是一种基于二阶导数信息的迭代优化算法。
它使用目标函数的一阶和二阶导数信息构造一个二次近似模型,然后求解该模型的最小值。
牛顿法的迭代更新公式如下:x_{k+1}=x_k-H_k^{-1}*∇f(x_k)其中,H_k是目标函数在x_k处的海森矩阵,∇f(x_k)是目标函数在x_k处的梯度向量。
牛顿法的步骤如下:1)选取初始点x_0。
2)计算目标函数的梯度∇f(x_k)和海森矩阵H_k。
3)计算更新方向H_k^{-1}*∇f(x_k)。
4)更新解向量x_{k+1}。
5)判断迭代终止条件,如果满足则停止迭代;否则返回第2步。
牛顿法的优点是收敛速度快,尤其是在目标函数曲率大的地方。
然而,牛顿法也存在一些问题。
首先,计算海森矩阵需要大量的计算资源,特别是在高维空间中。
其次,当海森矩阵不可逆或近似不可逆时,牛顿法可能会失效。
综上所述,最速下降法和牛顿法是两种常用的无约束优化方法。
最速下降法简单易实现,但收敛速度较慢;牛顿法收敛速度快,但计算量大且可能遇到海森矩阵不可逆的问题。
无约束优化方法
无约束优化方法
**一、最速下降法**
最速下降法(Gradient Descent)是一种迭代优化方法,它是在梯度下降算法的基础上,通过更新梯度的方式来实现最优化目标的过程。
它的思想是:从一个初始点出发,沿着梯度方向,使得目标函数值在末尾尽可能的小。
它可以用来优化非线性的最优化问题,此外,它还可以用于估计函数的最小值。
最速下降法中的基本概念是梯度和梯度下降。
梯度描述了梯度函数的变化情况,它可以衡量函数值在特定点的变化程度。
如果梯度更大,则说明函数值发生的变化更大。
梯度下降是按照梯度的反方向进行函数的,它的目标是出函数值较小的点,也就是最优解。
最速下降法的两个基本步骤是:
1)当前点求梯度之后,按梯度负方向,沿着函数曲面降低。
2)每次迭代,都是沿着相反于梯度的方向,更新当前点,并继续。
最速下降法的优势在于:它比较简单,实现方便,只需要计算梯度,就可以出最优解;且它不需要考虑约束条件,也不需要研究局部最优点,所以它的速度比较快。
但最速下降法也有一些缺点:它有可能陷入局部最优;它缺乏判断能力,只能当前梯度的方向。
最优化方法:第五章 常用无约束优化方法
g1
0.73846 0.04616
1.47692 0.42500 0.36923
0.11076 0.11076
束 优
f (X1) 0.06134, g2 f (X 2 ) 00..2828105028, g2 0.91335.
化 因为 方 法
g1T g0 0.0000,
g
T 2
g1
方
(4)计算 X k1 X k Pk,f k1 f ( X k1 ),gk1 g( X k1) .
法 (5)判别终止准则是否满足:若满足,则打印最优解X k1
,fk1 结束;否则,置k k 1 ,转(2).
第 五 章 常 用 无 约 束 优 化 方 法
例5.2 试用Newton法求 f (x1,x2 ) x12 4x22 的极小点,初 始点取为 X 0 [1, 1]T .
方 法
, X k1 f (X k1) ,结束;否则,置 k k 1,转(2).
将最速下降法应用于正定二次函数
f (X ) 1 X T AX bT X c (5.4)
2
第
可以推出显式迭代公式.
五
设第k次迭代点为Xk,我们来求Xk+1的表达式.对式
章 (5.4)关于X求梯度,有
常
g(X ) AX b (5.5)
Pk [2 f (X k )]1f ( X k )
步长因子 tk 1
方向 Pk [2 f (X k )]1f (X k ) 是直指点 X k 处近似二次函数
Q(X )的极小点的方向.此时称此方向为从点 X k 出发的
Newton方向.从初始点开始,每一轮从当前迭代点出发,
第
沿Newton方向并取步长 的tk 算1 法称为Newton法.
无约束常用优化方法
步长 ,作前进(或后退)试探.如试探成功(目
标函数值有所减小),则按步长序列
,加
大步长(注意每次加大步长都是由初始点算起),直
至试探失败(目标函数值比前一次的有所增加)时,
则取其前一次的步长作为沿这个坐标轴方向搜索的最
优步长,并计算出该方向上的终止点,而后以这个终
止点为始点再进行下一坐标轴方向的搜索,并重复上
处
显然 是二次函数,并且还是正定二次函数,所以 是凸函数且存在唯一全局极小点.为求此极小点,令
即可解得
即
(5.9)
对照基本迭代公式,易知,式(5.9)中的搜索方向
步长因子
方向
是直指点 处近似二次函数
的极小点的方向.此时称此方向为从点 出发的
Newton方向.从初始点开始,每一轮从当前迭代点出发,
沿Newton方向并取步长 的算法称为Newton法.
另外,共轭梯度法不要求精确的直线搜 索.但是,不精确的直线搜索可能导致迭代 出来的向量不再共轭,从而降低方法的效 能.克服的办法是,重设初始点,即把经过 n次迭代得到的Xn作为初始点重新迭代.
五、坐标轮换法
在坐标轮换法中,沿各个坐标轴方向进行一维搜索
时,常选用最优步长法或加速步长法.加速步长法从
初始点出发,沿搜索(坐标轴)方向先取一个较小的
三、共轭方向法
1、概念
通常,我们把从任意点
出发,依次沿某组共轭
方向进行一维搜索的求解最优化问题的方法,叫做共
轭方向法.
2、特点
• 一般地,在n维空间中可以找出n个互相共轭的方向,对于n元正 定二次函数,从任意初始点出发,顺次沿这n个共轭方向最多作n 次直线搜索就可以求得目标函数的极小点.这就是共轭方向法的 算法形成的基本思想.
第三讲 无约束优化(多维无约束优化方法)
2019/10/21
5
1. 梯度法(最速下降法 )
(2)迭代公式 : X (k 1) X (k) k S (k) X k f X k
或
X (k1) X (k) k
f f
X k X k
f
X k
f ,f x1 x2
X (2) 1
S (1)
S为S(2)的共轭方向。
S即为S(1)的共轭方向。
2019/10/21
18
(2)共轭梯度法的基本原理
2)共轭方向的构造
S k1 f X k1 k S k
上式的意义是以新的负梯度方向 f X k1 ,加上原
负梯度的一部分k S k 来构造 S k1 。
2019/10/21
3
1. 梯度法(最速下降法 )
数值迭代格式
X (k 1) X (k ) k S (k )
从数值迭代格式可以看出,构造一种算法的关键 是如何确定一个有利的搜索方向。
梯度方向是函数值上升最快的方向,负梯度 方向是函数值下降最快的方向。
2019/10/21
以负梯度方向作为搜索方向
4)牛顿法不能保证函数值稳定下降,严重时还会造 成点列发散导致迭代失败。
2019/10/21
1 27
3. 多维牛顿法(阻尼牛顿法)
问题的提出
因函数不一定是二次函数,基本牛顿法的步长因子 恒为1,有时会导致迭代发散而失效。
改进方法
仍取牛顿方向,但改用最优步长因子:
X (k1) X (k ) k [H ( X (k ) )]1f ( X (k) ) 一维搜索求最优步长
'X 0
最优化方法第六讲 无约束(多维)最优化
step4. 若 || f ( xk1) || ,停止,x* xk1 ;
否则,令 k : k 1, 转step 2 。
14
➢算法框图
给定初始点x0和精度 || f ( x0 ) ||
停止,输出x1
否
是
| x1 x0 |
是 停止,输出x0
否 否
2 f (x0) 0
计算x1
x0
f ( x0 ) 2 f (x0)
1
13 62
x2
x1
1d 1
(
36 , 31
8 31
)T
7
三、最速下降法的特点
1.性质. 设 f ( x) 有一阶连续偏导数,若 步长 满足 k
f ( xk d k ) min f ( xk d k )
k
则有 f ( xk d k )T d k 0。 k
证明:令 ( ) f ( xk d k ),所以
5
一、梯度法(最速下降法):
1. 搜索方向:d k f ( xk ) ,也称为最速下降方向;
2. 搜 索 步 长: k 取 最 优 步 长, 即 满 足
f (xk
kd k )
min
f
(xk
d k ) 。
二、梯度法算法步骤:
1. 给定初始点 x1 Rn ,允许误差 0, 令k 1。
2. 计算搜索方向 d k f ( xk ) ;
Step3. 令 xk 1 xk kd k , 其中tk : f ( xk kd k ) min f ( xk d k )。
24
Step 4. 判断 xk 1 是否满足终止准则: yes: 计算 stop, 则x* : xk1
No : 转 step 5 。
04 无约束优化方法
F 1A C
向上的极小点,而非原函数的 -2 -1
0
1
2
3
x1
极小点。
解决办法:阻尼牛顿法。
7
二.阻尼牛顿法
1.迭代公式
沿牛顿方向-[H(X(k))]-1f(X(k))作一维搜索,迭代公式:
X (k1) X (k ) k [H ( X (k ) )]1f ( X (k ) )
其中λ k使
f ( X (k ) k s(k ) ) min f ( X (k ) k s(k ) )
S1
1 0 ,S2
0 1
正交不共轭
19
2.正定二次函数的特点
(1)正定二次二元函数的等值线是椭圆线簇,椭圆线簇的中心
即目标函数的极值点。
(2)过同心椭圆线簇中心作任意直线,此直线与诸椭圆交点处
的切线相互平行。
反之过两平行线与椭圆切点X(a)和
x2
X(b)的连线必通过椭圆的中心。因此
只要沿方向X(a)—X(b)进行一维搜索,
1、坐标轮换法具有程序简单,易于掌握的优点,但它的计
算效率较低,因此它虽然步步在登高,但相当于沿两个垂直方
向在爬山,路途迂迴曲折,收敛很慢,因此它适用于维数较低
(一般n<10)的目标函数求优。
2、有“脊线”的目标函数等值线的情形,沿坐标轴方向函数值
不一定下降。
脊线
x2
A
p
0
x1
13
五、练习 用最优步长法求解 f (X)=(x1-2)4+(x1-2x2)2的极小点。 初始点X(0)=[0,3]T,要求迭代一轮。 请注意沿坐标轴移动的方向。
22
二、迭代过程
以二维问题为例: ① X(0)
关于无约束优化各种方法
E(k)
x(k [g (
)[x(k ) ]T k ) ]T x(k )
H (k )g (k )[g (k ) ]T H (k ) [g (k ) ]T H (k )g (k )
变尺度法
DFP变尺度法现代公认的较好的算法之一。 DFP法、BFGS算法是基于牛顿法的思想又作了 重要改进。这种算法仅用到梯度,不必计算海赛阵及 其逆矩阵,但又能使搜索方向逐渐逼近牛顿方向,具 有较快的收敛速度。
akf
( xk )]
min a
f [xk
af
( xk )]
min( ) a
§4-1 最速下降法
f
( x ) k1
f [xk
akf
( xk )] min a
f [xk
af ( xk )解析法:根据极值点必要条件。
首次迭代时,H (0) I , S (k) f (x(k) ) , 即为梯度法,
§3.5 牛顿法和变尺度法
这样避免计算二阶导数及Hesse矩阵的逆矩阵,而利用了牛顿法的优点。
§3.5 牛顿法和变尺度法
构造变尺度矩阵的递推公式:
H (k1) H (k) E(k) , 其中: E(k)为第k次迭代时的修正矩阵。
黄金分割法
牛顿法
抛物线法
§4-1 最速下降法
相邻 两个 搜索 方向 互相 垂直
最速下降法的搜索路径
f
( xk1)
f [xk
akf
( xk )] min a
f [xk
af ( xk )]
min( ) a
根据一元函数极值的必要条件及
复合函数求导公式得
'( ) f [ xk kf ( xk )] T f ( xk ) 0
第四章 无约束方法详解
[tt,ff]=opt_step_quad(xk1',dirk, th,epsx,epsf,maxiter); xk1=xk1+tt*dirk'; end xk0=xk1; xn=xk1; fn=ffx(xn); aa=norm(dir); if(aa<1e-30) aa=1e-30; end end
xn ]T
使目标函数 f ( x) min
min f ( x) x Rn
目前已研究出很多种无约束优化方法,它们的 主要不同点在于构造搜索方向上的差别。
(1)间接法(导数法)——确定搜索方向时用到一 阶或(和)二阶导数的方法。如梯度法、(阻尼) 牛顿法、变尺度法、共轭梯度法等。
(2)直接法——其搜索方向直接取定或由计算目标 函数值所得的信息来确定;即不使用导数信息,如 坐标轮换法、鲍威尔法等。
2020/9/23
5
无约束优化直接解法
坐标轮换法 鲍维尔(Powell)法 鲍维尔(Powell)修正算法
2020/9/23
6
§4-2 坐标轮换法(无约束优化直接解法)
一)搜索方向
依次沿n个正交坐标轴的方向搜索:
ee12
[1 [0
0 1
... ...
0]T 0]T
...
en [0 0 ... 1]T
坐标轮换法的Matlab程序由三部分组成。第一部分为坐标 轮换法计算函数coordinat(xk0,th,epsx, epsf,maxiter),函数引用 变量说明见程序注释。最优步长采用二次插值法计算,函数名 为opt_step_quad(xk0,dir0, th,TolX, TolFun,maxiter),该函数调 用区间搜索函数opt_range_serach(xk0,dir0,th)得出二次差值需 要的三个坐标点,区间搜索函数采用进退法。 第二部分为用户应用程序; 第三部分为定义目标函数,调用方式为fn=ffx(x)。 下面是坐标轮换法的Matlab计算程序:
无约束优化方法总结
第四章 无约束优化方法第一节 概述1为什么要研究无约束优化问题?(1)有些实际问题,其数学模型本身就是一个无约束优化问题。
(2)通过熟悉它的解法可以为研究约束优化问题打下良好的基础。
(3)约束优化问题的求解可以通过一系列无约束优化方法来达到。
所以无约束优化问题的解法是优化设计方法的基本组成部分,也是优化方法的基础。
2各种无约束优化方法的区别在于确定其搜索方向0d 的方法不同。
根据构成搜索方向所使用的信息性质的不同,无约束优化方法可以分为两类。
一:间接法——要使用导数的无约束优化方法,如梯度法、(阻尼)牛顿法、变尺度法、共轭梯度法等。
二:直接法——只利用目标函数值的无约束优化问题,如坐标轮换法、鲍威尔法单纯形法等。
第二节 最速下降法(梯度法) 1基本思想:函数的负梯度方向是函数值在该点下降最快的方向。
将n 维问题转化为一系列沿负梯度方向用一维搜索方法寻优的问题,利用负梯度作为搜索方向,故称最速下降法或梯度法。
2梯度法的特点:(1)理论明确,程序简单,对初始点要求不严格。
(2)对一般函数而言,梯度法的收敛速度并不快,因为最速下降方向仅仅是指某点的一个局部性质。
(3)梯度法相邻两次搜索方向的正交性,决定了迭代全过程的搜索路线呈锯齿状,在远离极小点时逼近速度较快,而在接近极小点时逼近速度较慢。
(4)梯度法的收敛速度与目标函数的性质密切相关。
对于等值线(面)为同心圆(球)的目标函数,一次搜索即可达到极小点。
3选用原则及条件:一般与其他算法配合,在迭代开始时使用。
第三节 牛顿型方法 1基本思想:在xk 邻域内用一个二次函数)(x ϕ来近似代替原目标函数,并将)(x ϕ的极小点作为对目标函数)(x f 求优的下一个迭代点1+k x 。
经多次迭代,使之逼近目标函数)(x f 的极小点。
2牛顿型方法的特点:(1) 初始点应选在X *附近,有一定难度;(2) 若迭代点的海赛矩阵为奇异,则无法求逆矩阵,不能构造牛顿法方向; (3) 不仅要计算梯度,还要求海赛矩阵及其逆矩阵,计算量和存储量大。
第四章无约束优化方法
F (X
(1) )
0
结论: 两个平行方向的极小点构成
即 S1T AS2 0
的新方向与原方向相互共轭 即S1与S2对A共轭
也即对于二维正定二次函数只要分别沿两个共轭方向寻优 14 即可找到最优点.
❖ 与此类似,可以推出对于n维正定二次函数,共轭方向的一 个十分重要的极为有用的性质:从任意初始点出发,依次沿 n个线性无关的与A共轭的方向S1,S2,…Sn各进行一维搜 索,那么总能在第n步或n步之前就能达到n维正定二次函数 的极小点;并且这个性质与所有的n个方向的次序无关。简 言之,用共轭方向法对于二次函数从理论上来讲,n步就可 达到极小点。因而说共轭方向法具有有限步收敛的特性。通 常称具有这种性质的算法为二次收敛算法。
第K+1环的方向组仍用老方向组
S1(k1),
S2(k 1) ,
... ...
S (k 1) n1
S (k 1) n
S1(k),
S2(k) ,
... ...
S(k) n1
,
S(k) n
初始点:
当F2 < F3时, 当F2≥F3时,
X (k 1) 0
X (k) n
X X (k 1)
(k)
0
n 1
F ( X ) 2 x12 x22 x1x127
4.2.1 鲍威尔基本算法(共轭方向的原始构成)
18
4.2.1 鲍威尔基本算法
x3
任取一初始点 X(0)→ X0(1)
第 第一环: e1, e2, e3 → S1 一 第二环: e2, e3 , S1 → S2 轮 第三环: e3 , S1 , S2 →S3
补上新增的方向
初始点:
X (k 1) 0
无约束最优化的常用方法
⽆约束最优化的常⽤⽅法11/22/2017 12:40:56 PM优化问题在很多领域有着重要的应⽤。
为了⽇后查阅⽅便,本⽂列举常见的⽆约束优化⽅法的计算公式。
需要说明的是,本⽂的⼤部分内容选⾃图书《算法笔记》。
⼀、梯度下降法梯度下降法(Gradient Descent Method)也叫做最速下降法(Steepest Descent Method),因为负梯度是函数局部下降最快的⽅向。
梯度下降梯度下降法的迭代格式为x k+1=x k−αk∇f(x k)梯度下降法⾮常简单,只需要知道如何计算⽬标函数的梯度就可以写出迭代格式。
因此,尽管在不少情况下梯度下降法的收敛速度都很慢,也依然不影响它在⼯业界的⼴泛应⽤。
梯度下降法应⽤到⼀些具体模型上有时也会被视作⼀类特定的算法,例如神经⽹络中的后向传导算法(Back Propagation Algorithm)。
随机梯度下降在机器学习中经常有f(x)=∑m i=1ℓi(x),其中ℓi(x)是第i个训练样本的损失函数。
这时我们可以使⽤随机梯度下降法(Stochastic Gradient Descent Method)。
其迭代格式为x k+1=x k−αk∇ℓr(x k)其中r∈1,2,⋯,m为随机数。
这种做法可以理解为随机选择⼀个训练样本,进⾏⼀次梯度下降的训练。
在机器学习的问题中,我们通常不需要真的求得最优值,这样不精确的迭代,使得算法不容易过拟合。
由于随机梯度下降法的普及,与此相对的梯度下降法有时被称为批量梯度下降法(Batch Gradient Descent Method),因为它同时考虑所有训练样本。
介于批量梯度下降法和随机梯度下降法之间,还有⼩批量梯度下降法(Min-Batch Gradient Descent Method),也就是每次迭代选择若⼲个训练样本。
步长αk的选取梯度下降法可采⽤BB步长(Barzilai Borwein)。
BB步长有两个计算公式,选择其⼀即可。
无约束优化问题的求解方法
无约束优化问题的求解方法无约束优化问题是指在不考虑任何限制条件下,通过调整自变量来寻找函数的最大值或最小值的问题。
在数学和工程领域中,无约束优化问题是一个重要的研究方向,其解决方法也非常丰富和多样。
下面将介绍几种常用的无约束优化问题求解方法。
一、梯度下降法梯度下降法是一种基于一阶导数信息的优化算法。
其基本思想是通过不断迭代地朝着函数的负梯度方向进行搜索,从而找到函数的极小值点。
具体来说,梯度下降法的迭代公式如下:x_(x+1)=x_x−x∇x(x_x),其中x_x代表第x次迭代的自变量的取值,x称为学习率,∇x(x_x)是函数x(x_x)在点x_x处的梯度。
梯度下降法是求解无约束优化问题的常用方法,具有易于实现和收敛性等优点。
但是,梯度下降法有时可能会陷入局部最优解,因此需要进行多次尝试或采用改进的算法。
二、共轭梯度法共轭梯度法是一种基于二阶导数信息的优化算法。
其基本原理是通过逆Hessian矩阵的乘法来更新自变量的取值,从而加速搜索速度。
具体来说,共轭梯度法的迭代公式如下:x_(x+1)=x_x−x_x,x∇x(x_x),x_x,x=x∇x(x_x)+x_x,x−1共轭梯度法具有高效、迭代次数少、不需要存储Hessian矩阵等优点。
然而,共轭梯度法也存在一些问题,如对于某些特定的函数可能会陷入收敛困难、对于非二次函数可能收敛速度较慢等。
三、拟牛顿法拟牛顿法是一种综合利用一阶和二阶导数信息的优化算法。
其基本思想是通过利用函数在当前点处的一阶导数和二阶导数近似值来构造一个局部的二次模型,从而求解优化问题。
拟牛顿法的迭代公式如下:x_(x+1)=x_x−(x_x)^−1∇x(x_x),x_x是拟牛顿法的Hessian矩阵近似值。
拟牛顿法具有利用了二阶导数信息、不需要进行二阶导数计算、有较好的全局收敛性等优点。
但是,拟牛顿法也存在一些问题,如需要存储和更新Hessian矩阵近似值、对于非光滑函数可能无法收敛等。
第6章 无约束问题的优化方法
第6章 无约束问题的优化方法§6.1 最速下降法和牛顿法6.1.1 最速下降法的基本原理、计算步骤和特点基本原理: 考虑无约束问题n R x x f ∈),(min从某一点出发,选择一个目标函数值下降最快的方向,可以尽快达到极小点. 1847年法国数学家Cauchy 提出了最速下降法.后来,Curry 等人作了进一步研究. 最速下降方向是目标函数的负梯度方向:)(x f d -∇=最速下降法的迭代公式:)()()1(k k k k d x x λ+=+)(k d 取为在点)(k x 处的最速下降方向:)()()(k k x f d -∇=k λ为进行一维搜索的步长,满足:)(min )()()(0)()(k k k k k d x f d x f λλλ+=+≥计算步骤: (l)给定初点n R x∈)1(,允许误差0>ε,置1=k .(2)计算搜索方向)()()(k k x f d-∇=.(3)若ε≤)(k d,则停止计算;否则,从)(k x 出发,沿)(k d 进行一维搜索,求k λ,使 )(min )()()(0)()(k k k k k d x f d x f λλλ+=+≥(4)令)()()1(k k k k d x x λ+=+,置1:+=k k ,转步骤(2). 例1 解问题22212)(min x x x f += 初点T x)1 ,1()1(=,10/1=ε. (最优解T x )0 ,0(*=)第1次迭代:目标函数在点x 处的梯度⎥⎦⎤⎢⎣⎡=∇2124)(x x x f令搜索方向 ⎥⎦⎤⎢⎣⎡--=-∇=24)()1()1(x f dε>=+=52416)1(d从)1(x 出发,沿方向)1(d进行一维搜索,求步长1λ,即22)1()1(0)21()41(2)()(min λλλλϕλ-+-=+=≥d x f令0)('=λϕ(一般应采用不精确一维搜索求解),解得18/51=λ在直线上的极小点: ⎥⎦⎤⎢⎣⎡-=+=9/49/1)1(1)1()2(d x x λ 第2次迭代:⎥⎦⎤⎢⎣⎡-=-∇=9/89/4)()2()2(x f d ε>=5/54)2(d 22)2()2(0)21(8116)41(812)()(min λλλλϕλ-+-=+=≥d x f 解得 12/52=λ⎥⎦⎤⎢⎣⎡=+=27/227/2)2(2)2()3(d x x λ 第3次迭代:⎥⎦⎤⎢⎣⎡--=-∇=27/427/8)()3()3(x f d ε>=27/54)3(d2222)3()3(0)21(274)41(278)()(min λλλλϕλ-+-=+=≥d x f 解得 18/53=λ⎥⎦⎤⎢⎣⎡-=+=412432)3(3)3()4(d x x λ 这时有ε<=52438)4(d 满足精度要求,得到近似解⎥⎦⎤⎢⎣⎡-=412432x 最速下降算法的特点:最速下降算法在一定条件下是收敛的.最速下降法产生的序列是线性收敛的,而且收敛性质与极小点处Hesse 矩阵)(2x f ∇的特征值有关.定理1: 设)(x f 存在连续二阶偏导数,x 是局部极小点,Hesse 矩阵)(2x f ∇的最小特征值0>a ,最大特征值为A ,算法产生的序列}{)(k x 收敛于点x ,则目标函数值的序列)}({)(k x f 以不大于2⎪⎭⎫⎝⎛+-a A a A 的收敛比线性地收敛于)(x f .最速下降法存在锯齿现象:从局部看,最速下降方向确是函数值下降最快的方向.从全局看,由于锯齿现象的影响,即使向着极小点移近不太大的距离,也要经历不小的弯路,使收敛速率大为减慢.注1:最速下降法并不是收敛最快的方法,从全局看,它的收敛是比较慢的. 注2:最速下降法一般适用于计算过程的前期迭代或作为间插步骤. 当接近极小点时,使用最速下降法达到迭代终止,这样做并不有利.6.1.2 牛顿法的基本原理、计算步骤和特点1.牛顿法)(x f 在点)(k x 的二阶Taylor 展开为))(()(21 )()()()()()()(2)()()()(k k T k k T k k x x x f x x x x x f x f x x f -∇-+-∇+=≈φ 求)(x φ的平稳点,令0)('=x φ,即0))(()()()(2)(=-∇+∇k k k x x x f x f (1)设)()(2k xf ∇可逆,得到牛顿法的迭代公式)()()(1)(2)()1(k k k k x f x f x x ∇∇-=-+产生序列}{)(k x ,在适当的条件下,这个序列收敛.例2:解问题:2241)1min(x x +- (最优解T x )0,1(=) 目标函数的梯度和Hesse 矩阵分别为⎥⎦⎤⎢⎣⎡-=∇2312)1(4)(x x x f ⎥⎦⎤⎢⎣⎡-=∇200)1(12)(212x x f 取初点T x )1 ,0()1(=. 第l 次迭代:⎥⎦⎤⎢⎣⎡-=∇24)()1(x f ⎥⎦⎤⎢⎣⎡=∇20012)()1(2x f ⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡-⎥⎦⎤⎢⎣⎡-⎥⎦⎤⎢⎣⎡=∇∇-=--03/1242001210)()(1)1(1)1(2)1()2(x f x f x x第2次迭代:⎥⎦⎤⎢⎣⎡-=∇027/32)()2(x f ⎥⎦⎤⎢⎣⎡=∇2009/48)()1(2x f ⎥⎦⎤⎢⎣⎡=∇∇-=-09/5)()()2(1)2(2)2()3(x f x f x x继续迭代,得到⎥⎦⎤⎢⎣⎡=027/19)4(x,⎥⎦⎤⎢⎣⎡=081/65)5(x ,…注3:当牛顿法收敛时,有下列关系:2)()1(x x c x x k k -≤-+c 是某个常数.因此,牛顿法至少2级收敛,收敛速率是很快的.注4:对二次凸函数,用牛顿法求解经1次迭代即达极小点.设有二次凸函数:c x b Ax x x f T T++=21)(用极值条件求解:令0)(=+=∇b Ax x f 得到最优解b A x 1--=用牛顿法求解:任取初始点)1(x ,根据牛顿法的迭代公式有b A b Ax A x x f A x x 1)1(1)1()1(1)1()2()()(----=+-=∇-=以后还会遇到一些算法,把它们用于二次凸函数时,类似于牛顿法,经有限次迭代必达到极小点.这种性质称为二次终止性.注5: 当初始点远离极小点时,牛顿法可能不收敛. 牛顿方向)()()(1)(2k k x f xf d ∇-∇=-不一定是下降方向,经迭代,目标函数值可能上升. 即使目标函数值下降,得到的点)1(+k x 也不一定是沿牛顿方向的最好点或极小点.对牛顿法进行修正,提出了阻尼牛顿法.2. 阻尼牛顿法阻尼牛顿法增加沿牛顿方向的一维搜索,迭代公式:)()()1(k k k k d x x λ+=+)()()(1)(2)(k k k x f x f d ∇-∇=-为牛顿方向.k λ由一维搜索得到:)(min )()()()()(k k k k k d x f d x f λλλ+=+由于阻尼牛顿法含有一维搜索,因此每次迭代目标函数值一般有所下降(绝不会上升).可以证明,阻尼牛顿法在适当的条件下具有全局收敛性,且为2 级收敛.阻尼牛顿法的计算步骤:(l)给定初点)1(x ,允许误差0>ε,置1=k .(2)计算)()(k x f ∇,1)(2)(-∇k x f .(3)若ε<∇)()(k x f ,则停止计算;否则,令)()()(1)(2)(k k k x f x f d ∇-∇=-(4)从)(k x出发,沿)(k d进行一维搜索,求k λ,使)(min )()()(0)()(k k k k k d x f d x f λλλ+=+≥(5)令)()()1(k k k k d x x λ+=+,置1:+=k k ,转步骤(2). 3.牛顿法的进一步修正原始牛顿法和阻尼牛顿法有共同缺点:(1)可能出现Hesse 矩阵奇异的情形,因此不能确定后继点;(2)即使)(2x f ∇非奇异,也未必正定,因而牛顿方向不一定是下降方向,就可能导致算法失效.例3: 用阻尼牛顿法求解:222141)1()(min x x x x x f +++=取初始点T x )0,0()1(=. 在点)1(x 处,有⎥⎦⎤⎢⎣⎡=∇20)()1(x f ,⎥⎦⎤⎢⎣⎡=∇2110)()1(2x f牛顿方向⎥⎦⎤⎢⎣⎡-=⎥⎦⎤⎢⎣⎡⎥⎦⎤⎢⎣⎡-=∇-∇=--02202110)()(1)1(1)1(2)1(x f x f d从)1(x 出发,沿)1(d 作一维搜索.令 116)()(4)1()1(+=+=λλλφd xf , 则 01=λ.用阻尼牛顿法不能产生新点,而点T x )0,0()1(=并不是问题的极小点.原因在于Hesse矩阵)()1(2x f ∇非正定.为使牛顿法从任一点开始均能产生收敛于解集合的序列}{)(k x ,要做进一步修正,克服Hesse 矩阵非正定.考虑(1)式,记搜索方向)()(k k x x d-=,得到)()()()()(2k k k x f d x f -∇=∇ (2)阻尼牛顿法所用搜索方向是上述方程的解:)()()(1)(2)(k k k x f x f d ∇-∇=-解决Hesse 矩阵)()(2k x f ∇非正定问题的基本思想: 修正)()(2k x f ∇,构造一个对称正定矩阵k G . 在(2)中,用k G 取代矩阵)()(2k x f ∇,得到方程)()()(k k k x f d G -∇= (3)解此方程,得到在点)(k x处的下降方向)()(1)(k k k x f G d ∇-=-构造矩阵k G 的方法之一: 令I x f G k k k ε+∇=)()(2k ε是一个适当的正数.只要k ε选择得合适,k G 就是对称正定矩阵.注6: 当)(k x为鞍点时,有0)()(=∇k x f 及 )()(2k x f ∇不定此时(3)式不能使用. 这时)(k d可取为负曲率方向:0)()()(2)(<∇k k T k d x f d当)()(2k x f ∇不定时,这样的方向必定存在,而且沿此方向进行一维搜索必能使目标函数值下降.§6.2 共轭梯度法6.2.1 共轭方向的基本原理和定理共轭梯度法是基于共轭方向的一种算法.定义1:设A 是n n ⨯对称正定矩阵,若nR 中的两个方向)1(d和)2(d满足0)2()1(=Ad d T则称这两个方向关于A 共轭,或称它们关于A 正交.若)1(d,)2(d,… ,)(k d是nR 中k 个方向,它们两两关于A 共轭,即满足j i Ad d j T i ≠= ,0)()(则称这组方向是A 共轭的,或称它们为A 的k 个共轭方向.注1:如果A 为单位矩阵,则两个方向关于A 共轭等价于两个方向正交.共轭是正交概念的推广.注2:如果A 是一般的对称正定矩阵,)(i d和)(j d关于A 共轭,也就是方向)(i d与方向)(j Ad 正交.共轭的几何意义(以正定二次函数为例): 二次函数)()(21)(x x A x x x f T --=函数)(x f 的等值面c x x A x x T =--)()(21是以x 为中心的椭球面,x 是极小点. 设)1(x 是在某个等值面上的一点,该等值面在点)1(x 处的法向量)()()1()1(x x A x f -=∇又设)1(d是这个等值面在)1(x 处的一个切向量.记)1()2(x x d -=)1(d 与)()1(x f ∇正交,即0)()1()1(=∇x f d T ,因此有0)2()1(=Ad d T即等值面上一点处的切向量与由这一点指向极小点的向量关于A 共轭.依次沿着)1(d和)2(d进行一维搜索,则经两次迭代必达到极小点.共轭方向的重要性质:定理1: 设A 是n 阶对称正定矩阵,)1(d ,)2(d,… ,)(k d是k 个A 共轭的非零向量,则这个向量组线性无关.定理2(扩张子空间定理): 设有函数c x b Ax x x f T T++=21)( 其中A 是n 阶对称正定矩阵,)1(d ,)2(d,… ,)(k d 是A 共轭的非零向量.以任意的)1(x 为初始点,依次沿)1(d,)2(d,… ,)(k d进行一维搜索,得到点)2(x ,)3(x,… ,)1(+k x,则)1(+k x 是函数)(x f 在线性流形k B x +)1(上的惟一极小点.特别地,当n k =时,)1(+n x 是函数)(x f 的惟一极小点.其中⎭⎬⎫⎩⎨⎧∞-∞∈==∑=),(,|1)(i ki i i k d x x B λλ是)1(d,)2(d,… ,)(k d生成的子空间.推论: 在定理2的条件下,必有,0)()()1(=∇+j T k d x f k j ≤∀定理2表明: 对于二次凸函数,若沿一组共轭方向(非零向量)搜索,经有限步迭代必达到极小点.6.2.2 用于正定二次函数的共轭梯度法共轭梯度法最初由Hesteness 和Stiefel 于1952年提出.本节重点介绍Fletcher-Reeves 共轭梯度法(FR 法).共轭梯度法的基本思想:把共轭性与最速下降方法相结合,利用已知点处的梯度构造一组共轭方向,沿这组方向进行搜索,求出目标函数的极小点.根据共轭方向的基本性质,这种方法具有二次终止性. 考虑如下正定二次函数优化问题的求解方法:c x b Ax x x f T T++=21)(min 令)(x f g ∇=.任意给定一个初始点)1(x ,计算出目标函数)(x f 在这点的梯度,01=g ,则停止计算;否则,令1)1()1()(g x f d -=-∇=沿方向)1(d搜索,得到点)2(x.计算在)2(x 处的梯度,若02≠g ,则利用2g -和)1(d构造第2个搜索方向)2(d ,再沿)2(d搜索.一般地,若已知点)(k x 和搜索方向)(k d ,则从)(k x出发,沿)(k d进行搜索,得到)()()1(k k k k d x x λ+=+步长k λ满足)(min )()()(0)()(k k k k k d x f d xf λλλ+=+≥.此时可求出k λ的显式表达.令)()()()(k k d x f λλφ+=,根据0)('=λφ及二次函数的梯度的表达式,得到)()()(k T k k T k k Add dg -=λ (1)计算)(x f 在)1(+k x 处的梯度,若01=+k g ,则停止计算;否则用1+-k g 和)(k d构造下一个搜索方向)1(+k d,并使)1(+k d 和)(k d关于A 共轭.按此设想,令)(1)1(k k k k d g d β+-=++上式两端左乘A dTk )(,并令0)()(1)()1()(=+-=++k T k k k T k k T k Ad d Ag d Ad d β由此得到 )()(1)(k T k k T k k Add Ag d +=β 再从)1(+k x出发,沿方向)1(+k d搜索.可以证明,按上述方法构造的一组搜索方向,是关于A 共轭的.因此,上述方法具有二次终止性.定理3: 对于正定二次函数,具有精确一维搜索的FR 法在n m ≤次一维搜索后即终止,并且对所有m i i ≤≤1(),下列关系成立:(l) )1,,2,1( 0)()(-==i j Ad d j T i (2) )1,,2,1( 0-==i j g g j T i (3) )0()()(≠-=i i T i i T i d g g d g 蕴含 证明: 用归纳法可证注3: 在FR 法中,初始搜索方向必须取最速下降方向.如果选择别的方向作为初始方向,其余方向均按FR 法构造,那么极小化正定二次函数时,构造出来的一组方向并不能保证共轭性.可以证明: 对于正定二次函数,运用FR 法时,不作矩阵运算就能求出因子 i β. 定理4: 对于正定二次函数,FR 法中因子g g ii i 221+=β,1>i , 0≠i g (2)对于二次凸函数,FR 法计算步骤:(1) 给定初始点)1(x ,置1=k .(2) 计算)()(k k x f g ∇=,若0=k g ,则停止计算,得点)(k xx =;否则,进行下一步.(3)构造搜索方向,令)1(1)(--+-=k k k k d g d β.当1=k 时,01=-k β,当1>k 时,按(2)式计算因子1-k β.(4)令)()()1(k k k k d x x λ+=+,步长k λ按(1)式计算.(5)若n k =,则停止计算,得点)1(+=k x x ;否则,置1:+=k k ,返回步骤(2).例1: 用FR 法求解问题:22212)(min x x x f +=,取初始点T x)5 ,5()1(=.目标函数梯度: ⎥⎦⎤⎢⎣⎡=∇2142)(x x x f第1次迭代: 令⎥⎦⎤⎢⎣⎡--=-=20101)1(g d,从)1(x 沿方向)1(d 作一维搜索,得 185)1()1()1(11=-=Ad d d g T T λ⎥⎦⎤⎢⎣⎡-=+=9/59/20)1(1)1()2(d x x λ 第2次迭代: 在点)2(x处,目标函数的梯度⎥⎦⎤⎢⎣⎡-=9/209/402g 构造搜索方向)2(d.计算因子 g g 81421221==β.令 ⎥⎦⎤⎢⎣⎡-=+-=1481100)1(12)2(d g d β 从)2(x出发,沿方向)2(d作一维搜索,得209)2()2()2(22=-=Ad d d g T T λ⎥⎦⎤⎢⎣⎡=+=00)2(2)2()3(d x x λ点)3(x处,目标函数梯度T g )0 ,0(2=,已达到极小点.6.2.3 将共轭梯度法用于求解非正定二次函数优化问题用于极小化任意函数的共轭梯度法与用于极小化二次函数的共轭梯度法主要差别:(1)步长不用)()()(k T k k T k k Add dg -=λ计算,必须用其它一维搜索方法来确定. (2)凡用到矩阵A 之处,需要用现行点处的Hesse 矩阵)()(2k x f ∇.用这种方法求任意函数极小点,一般来说用有限步迭代是达不到的.迭代延续可以采取不同的方案:∙直接延续,即总是用)(1)1(k k k k d g d β+-=++构造搜索方向;∙把n 步作为一轮,每搜索一轮之后,取一次最速下降方向,开始下一轮.称为“重新开始”或“重置”.每n 次迭代后以最速下降方向重新开始的共轭梯度法,有时称为传统的共轭梯度法. 计算步骤:(1)给定初始点)1(x ,允许误差0>ε.置)1()1(x y =,)()1()1(y f d -∇=, 1==j k(2)若ε<∇)()(j y f ,则停止计算;否则,作一维搜索,求j λ,满足)(min )()()(0)()(j j j j j d y f d y f λλλ+=+≥令)()()1(j j j j d y yλ+=+.(3)如果n j <,则进行步骤(4);否则,进行步骤(5). (4)令)()1()1()(j j j j d y f dβ+-∇=++,其中y f y f j j j 2)(2)1()()(∇∇=+β置1:+=j j ,转步骤(2).(5)令)1()1(++=n k y x ,)1()1(+=k x y ,)()1()1(y f d -∇=,置1=j , 1:+=k k ,转步骤(2). 注4:可以采用不同公式计算因子 j β: (1) g g jj j 221+=β(FR 法)(2) g g g g g jTjj j T j j )(11-=++β(Polak,Ribiere&Polyak ,PRP 法)(3) g g d g g g j j T j j j T j j )()(1)(11--=+++β (Sorenson 和Wolfe )(4) dxf dg x f d j j Tj j j T j j )()1(2)(1)1(2)()()(+++∇∇=β (Daniel )(1)当极小化正定二次函数,初始搜索方向取负梯度时,四个公式是等价的. (2)用于一般函数时,得到的搜索方向不同.(3)有人认为PRP 方法优于FR 法.但据一些人的计算结果,几种方法彼此差别并不很大,难以给出绝对的比较结论.注5: 运用共轭梯度法时应该注意,均假设采用精确一维搜索.精确一维搜索需付出较大代价,因此许多情形下采用不精确一维搜索.不精确一维搜索会出现新的问题,按照)(1)1(k k k k d g d β+-=++构造的搜索方向可能不是下降方向.解决方法: (1)当)1(+k d不是下降方向时,以最速下降方向重新开始.当一维搜索比较粗糙时,这样的重新开始可能是大量的,因此会降低计算效率.(2)计算过程中增加附加检验.设1+k g ,)1(+k d ,k β表示在检验点)()(k k k d x α+处计算出的1+k g ,)1(+k d和k β,如满足)1(1)1(1++++≥-k k k T k dg dg σ则取k α作为步长k λ;否则,进行精确一维搜索,求最优步长k λ.共轭梯度法的收敛性:对于一般函数, 共轭梯度法在一定条件下是收敛的.Crowder 和Wolfe 证明: 共轭梯度法的收敛速率不坏于最速下降法; 不用标准初始方向1)1(g d-=,共轭梯度法的收敛速率可能像线性速率那样慢.共轭梯度法的优点:存储量小:FR 法只需存储3个n 维向量. 求解变量多的大规模问题可用共轭梯度法§6.3 拟牛顿法6.3.1 拟牛顿法简介牛顿法的最大优点是收敛速度快,原因是牛顿法在迭代点附近对目标函数进行二次近似时,利用了目标函数的曲率信息(Hesse 矩阵)。
常用的无约束优化方法
一系列沿坐标轴方向的一维搜索问题来求解。在每一 次迭代中,只改变 n 个变量中的一个,其余变量固定 不动,因此常称为单变量法或变量交错法或降维法
#
4.1 坐标轮换法-迭代步长的确定
(1) 最优步长
在沿坐标轴方向的搜索中,利用一维优化方法来确定沿该方向 上具有最小目标函数值的步长,即:
基本方向组为:
S1(
k
)
,S(k 2) Nhomakorabea,
各方向最优步长: a1(k ) , a2(k ) ,
,
S
(k n
)
, an(k )
新生方向:
Sk
x(k) n
x(k) 0
a S (k ) (k ) 11
a2(k ) S2(k )
an(k ) Sn(k )
若在优化搜索过程中出现1(k) =0(或近似等于0),则方向 Sk
F2 < F3 F2 F3
其中: △ 是在第k 环方向组中,依次沿各方向优化搜索函数值下
降量的最大值,即Sm(k) 方向函数下降量最大
#
鲍威尔修正算法的方向淘汰
x
(k 2
)
S (k) 3
S
( 2
k
)
x1(k )
S1(k )
x(k) m
x(k) m 1
函数下降量△
S (k) n
x(k) 0
(F1)
S (k)
x(k) n
(F2)
第四章 常用的无约束优化 方法
王桂从
无约束优化问题的数学模型
min F(x)
x [x1 x2 xn ] Rn
求上述问题最优解(x*, F*)的方法称为无约束优化方法 无约束优化方法理论研究开展的比较早,构成的优 化方法已很多,也比较成熟。使用无约束优化方法 ,不仅可以直接求无约束优化设计问题的最优解, 而且通过对无约束优化方法的研究给约束优化方法 建立明确的概念及提供良好的基础,某些优化设计 方法就是先把优化设计问题转化为无约束问题后, 再直接用无约束优化方法求解。
第三章非线性规划无约束问题的最优化方法
x0
0p 0
1.919877 还需要经过10次迭代才
能满足精度要求
0.003070
第三节 牛顿法
3. 牛顿法的缺点: 牛顿法要求初始解离最优解不远,若初始点选得离最优解太
远时,牛顿法并不能保证其收敛,甚至也不是下降方向。因此, 常将牛顿法与最速下降法结合起来使用。前期使用最速下降法, 当迭代到一定程度后,改用牛顿法,可得到较好的效果。 4. 修正牛顿法 基本思想: 保留了从牛顿法中选取牛顿方向作为搜索方向,摒弃其步长恒 为1的做法,而用一维搜索确定最优步长来构造算法。
2
2
0
2e2 2 3
00 21 0
03
f x3 9
第二节 最速下降法
再从x(3)点 出发,沿x3轴方向e3进行一维搜索:
0 x 3 e3 0
3
00 00 13
f x 3 e3
32
f' 0 x4 x3
3
3
0
3e3 0 0
f x4 0
第二节 最速下降法
因为 x 1
x 4 ,0故.0以1 x(4)点作为新的x(1) ,进行新一轮迭代。
0
1 33 22
f x0
p0
52 5
42
f' x0
p0 5 5 0
22
01
第三节 牛顿法
x1 x0
1 p0 3
2
3
f x1
14
12 2
0
30
12 1 2
2
f x1
所以选取 x* x 1
1 3 作为极小点。 2
第三节 牛顿法
6. 修正牛顿法的缺点: 修正牛顿法虽然比牛顿法有所改进,但也有不足之处:
常用无约束最优化方法
最速下降法算法流程图
6
满足终 止准则 N X0= X , f0= f , g0= g
上页 返回
输 出 X, Y f
结 束
下页
目标函数为正定二次函数的最速下降法
1 T 设正定二次函数 f ( X ) X AX bT X c 2
求 Xk+1的表达式. gk= g(Xk+1)= AXk+1+b f(X)关于X 求梯度: g(X)=AX+b 现在从Xk出发沿-gk作直线搜索以确定Xk+1: X k 1 X k t k g k 其中tk是最优步长因子.有 g ( X k 1 )T g k 0 得: [ A( X k tk gk ) b]T gk 0 或 [ g k t k Qgk ]T g k 0 T 由此解出: t k g k g k2 200
由此说明相邻两个搜索方向 P g1, P0 g0 ; P2 g2 , P g1 是正交的. 1 1
上页 返回 下页
8
三、最速下降法有关说明
最速下降法的优点是算法简单,每次迭代计算量小,占用内 存量小,即使从一个不好的初始点出发,往往也能收敛到局 部极小点.但它有一个严重缺点就是收敛速度慢. 沿负梯度方向函数下降很快的说法,容易使人们产生一种 错觉,认为这一定是最理想的搜索方向,沿该方向搜索时收 敛速度应该很快,然而事实证明,梯度法的收敛速度并不快. 特别对等值线(面)有狭长深谷形状的函数,收敛速度更慢. 其原因是由于每次迭代后下一次搜索方向总是与前一次搜 索方向相互垂直, 如此继续下去就产生所谓的锯齿现象. 即从直观上看,在远离极小点的地方每次迭代 可能使目标函数有较大的下降, 但是在接近极小点的地方,由于锯齿现象, 从而导致每次迭代行进距离缩短, 因而收敛速度不快 如图所示
无约束优化法
第三章无约束优化法概述梯度法牛顿法共轭梯度法坐标轮换法鲍威尔法概述无约束优化问题的一般形式:求设计变量X 工[X i,X2,…X n]T使目标函数F(x) > min,对X没有任何约束条件。
工程实际问题中,无约束结构优化问题很少,多数是有约束条件的。
学习无约束结构优化原因:1)工程也有少量无约束结构优化问题,其数学模型就是无约束优化问题,除了在非常接近最小点的情况下,可以按无约束问题处理;2)为研究约束优化问题打下基础;3)约束优化问题可以通过一系列无约束方法达到。
无约束优化问题的求解,可以直接应用函数极值问题的求解方程:iF =0的问题,即求X,使其满足:cx1cF °cx2n个方程组,一般为非线性的,很难用解析方法求解,一般采用数值方法。
与其用数值方法求解非线性方程组,倒不如用数值方法直接求解无约束极值问题。
数值方法最常用的就是搜索法,其基本思想:从给定的初始点x0出发,按照一定原则寻找搜索方向S0,沿方向S0进行搜索,确定最佳步长:',使得函数沿方向S0下降最快,依次形成迭代公式:X k 1=X k g k S k k =0,1,2,…根据构成搜索方向所使用的信息不同分为:(1)间接法利用目标函数的一阶或二阶导数,如梯度法(最速下降法)、牛顿法、共轭梯度法和变尺度法;梯度法最早由1847年柯西提出,是无约束优化的基本方法。
其基本思想:取目标函数的负梯度方向作为迭代的搜索方向,必使函数值下降的速度最快。
k设在第k次迭代中取得迭代点x,从该点出发,取负梯度方向:S k _ F(X k)为搜索方向,式中:*)=匡g亜心•…兰曲GX\ CX2 dx n第k 1次得到的新点:X k1=x k-宀F(X k)—般步长、丫一k= 1常采用沿负梯度方向做一维搜索:k 1 k k k、F(X ) = min F(X y S )算法特点:初始阶段改进较快,最优解附近改进较慢。
具体迭代步骤:1. 选择初始点X0及迭代精度;・0,令迭代次数k=0;2. 计算点X k的梯度、F(X k)及梯度的模、F(X k),并令s k U'F(X k)3. 判断是否满足收敛精度|p F(X k)卜S—般情况下,若p F(X k)|",则X k为近似最优点,F(X k)为近似最优值,可以输出最优解X” = X k,kF(X ) =F(X ),否则进行4.4. 从点X k出发,沿负梯度方向求最优步长:-k,及沿S k进行一维搜索,求得使函数下降最多的步长因子:-kmin F(X k:k S k) =min ()x k1 =x k-:.k s k令^k 1,转入2步。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
f ( x) 0
例4-2
求目标函数
f (x)
x2 1
25x22
的极小点。
解 取初始点 x0 [2, 2]T
则初始点处梯度: f ( x0 ) 104
f
(x0)
2x1
50
x2
x0
4 100
沿负梯度方向进行一维搜索,有
x1
x0
0 f
第四章 无约束优化方法
4-1 最速下降法 4-2 牛顿类方法 4-3 坐标轮换法 4-4 共轭方向法 4-5 鲍威尔方法
第四章 无约束优化方法
为什么要研究无约束优化问题?
(1)通过熟悉它的解法可以为研究约束优 化问题打下良好的基础。 (2)约束优化问题的求解可以通过一系列 无约束优化方法来达到。
例4-3 用梯度法求下面无约束优化问题:
梯度法的特点
(1)理论明确,程序简单,对初始点要求不严格。 (2)对一般函数而言,梯度法的收敛速度并不快,因
图 最速下降法的收敛过程
§4-1 最速下降法
方法特点
(1)初始点可任选,每次迭代计算量小,存储 量少,程序简短。即使从一个不好的初始点出 发,开始的几步迭代,目标函数值下降很快, 然后慢慢逼近局部极小点。
(2)任意相邻两点的搜索方向正交,它的迭代 路径为绕道逼近极小点。当迭代点接近极小点 时,步长变得很小,越走越慢。
α α
例4-1 求目标函数 f ( x) x12 x22 的极小点。
取初始点 x0 [2, 2]T
解:初始点处梯度:
f
(x0)
2 2
x1 x2
x
0
4 4
沿负梯度方向进行一维搜索,有 x1 x 0 f (x 0 )
例4-1 求目标函数 f ( x) x12 x22 的极小点。
[f ( xk1)]T f ( xk ) 0
(sk1)T sk 0
§4-1 最速下降法
在最速下降法中, 相邻两个迭代点上的函 数梯度相互垂直。
搜索方向就是负梯度方 向,因此相邻两个搜索 方向互相垂直。
形成“之”字形的锯齿 现象,而且越接近极小 点锯齿越细。
图 最速下降法的搜索路径
§4-1 最速下降法
xk1 xk k sk (k 0,1, 2, )
xk1 xk akf ( xk ) (k 0,1, 2, )
§4-1 最速下降法
为了使目标函数值沿搜索方向 f ( xk )能够获得 最大的下降值,其步长因子k 应取一维搜索的最佳
步长。即有
fHale Waihona Puke ( xk1)f [xk
(x0)
2 2
40 1000
如何求?
0为一维搜索最佳步长,应满足极值必要条件
f (x1) min(2 4)2 25(2 100)2 min()
坐标轮换
'() 8(2 40) 5 000(2 1000) 0
取初始点 x0 [2, 2]T
沿负梯度方向进行一维搜索,有 x1 x 0 f (x 0 )
x1
2 2
0
4 4
2 2
40
4
0
0为一维搜索最佳步长,应满足极值必要条件
f (x1 ) (2 4 0 )2 (2 4 0 )2 ( 0 )
算出一维搜索最佳步长
0
626 31 252
0.020
030
72
第一次迭代设计点位置和函数值
x1
2 40
2
100
0
1.919 877 0.307 178
5
102
f ( x1) 3.686 164
继续作下去,经10次迭代后,得到最优解 x 0 0 T
黄金分割法
牛顿法
抛物线法
§4-1 最速下降法
相邻 两个 搜索 方向 互相 垂直
最速下降法的搜索路径
f
( xk1)
f [xk
akf
( xk )] min a
f [xk
af ( xk )]
min( ) a
根据一元函数极值的必要条件及
复合函数求导公式得
'( ) f [ xk kf ( xk )] T f ( xk ) 0
目标函数
f ( x) min
min f ( x) x Rn
xk1 xk k sk (k 0,1,2, )
搜索方向的构成问题乃是无约束优化方法的关键。
(1)间接法(2)直接法
§4-1 最速下降法
搜索方向s取该点的负梯度方向 f (x)(最速下降 方向) ,使函数值在该点附近的范围内下降最快 。
(0 ) 4(2 40 ) 0
0 0.5
x1
x0
0f
(x0 )
0 0
第一次迭代设计点位置和函数值
f (x1) 0
f
( x1 )
2 2
x1 x2
x1
0 0
f ( x1) 0
因此,迭代终止:
x x1 0 0T
akf
( xk )]
min a
f [xk
af
( xk )]
min( ) a
§4-1 最速下降法
f
( x ) k1
f [xk
akf
( xk )] min a
f [xk
af ( xk )]
min( ) a
步长因子 k 求解方法:
解析法:根据极值点必要条件。
无约束优化问题标准形式:
求n维设计变量 x [x1 x2
xn ]T
使目标函数 f ( x) min min f ( x) x Rn
无约束优化问题极值存在的必要条件:
f 0
f
x1 f
0 0
x2
f
0
xn
无约束优化问题标准形式:
f (x) 0
坐标轮换
§4-1 最速下降法
这个问题的目标函数的等值线为一簇椭圆,迭代点从 x0
走的是一段锯齿形路线,见图。
例4-3 用梯度法求下面无约束优化问题:
例4-3 用梯度法求下面无约束优化问题:
例4-3 用梯度法求无约束优化问题:
例4-3 用梯度法求下面无约束优化问题:
例4-3 用梯度法求下面无约束优化问题: