最优化之最速下降法
最优化方法第二章_线搜索算法_最速下降法

f x1 , x2 c, c>0,
2
改写为:
x12 2c 1
2 x2
2c 2
2
1
二、最速下降法
x2
这是以
2c
1
和
2c
2
为半轴的椭圆
2c
2c
2
2
从下面的分析可见 两个特征值的相对
x1
大小决定最速下降法的收敛性。
(1)当 1 2 时,等值线变为圆
2 2
4 f x , 2
2 x1 2 x2 4 f ( x) , 2 x1 +4x2
4 d = f x , 2
0 0
=40 2 20 3 令 0= ' ( ) 80 20, 得 0 =1/4,
一
一维搜索
二 三 四
下 降 算 法
五
最速下降法 Newton法 共轭梯度法
多尺度法 (拟Newton法)
二、最速下降法 假设 f 连续可微,取 线搜索方向
k
d f ( x )
k
步长k 由精确一维搜索得到。 从而得到第 k+1次迭代点,即
f ( x k k d k ) min f ( x k d k )
(推论)在收敛定理的假设下,若f (x)为凸函数,则最速下降 法或在有限迭代步后达到最小点;或得到点列 x k ,它的任 何聚点都是 f (x)的全局最小点。
二、最速下降法
最速下降法特征:相邻两次迭代的方向互相垂直。
令
( ) f ( x d ), 利用精确一维搜索,可得
最速下降法简介

的梯度,记作
函数的梯度是一个向量,
在
处的梯度向量为:
梯度方向是函数在该点增长最快的方向,负梯度方向是函数 在该点减少最快的方向。 如下示意图:
令 p ( k ) ( x ( k ) ) , k 为在 x
(k )
点沿最速下降
方向 p ( k ) 所走的距离,最优步长。 可有最速下降法的迭代公式:
x(2) x(1) 1 p1 ( 36 8 T , ) 31 31
13 62
关于相邻连个梯度的关系
n 1 1 n n 函数 : R R ; ( x) ( Ax, x) (b, x) aij xi x j b j x j 2 2 i 1 j 1 j 1
p1 f ( x (1) ) (4, 6)T x(1) p1 (2 4 ,1 6 )T
( ) f ( x(1) p1 ) (2 4 )2 3(1 6 ) 2
min ( x)
' ( ) 8(2 4 ) 36(1 6 ) 0 1
谢谢
最速下降法基本思想
从当前点 出发,取函数在该点 处下降最快的 方向作为搜索方向 。 任一点的负梯度方向是函数值在该点下降最快 的方向。 将n维问题转化为一系列沿负梯度方向用一维 搜索方法寻优的问题。
定义函数:
,
可微。
梯度的概念: 是定义在 量为 即 上的可微函数,称以 的 n 个偏导数为分量的向
( p ( k 1) , p ( k ) ) (b A( x ( k ) p ( k ) ), p ( k ) ) ( p ( k ) , p ( k ) ) k ( Ap ( k ) , p ( k ) ) 0
最速下降法原理及例题实例

Xk (0.00,3.00)T (2.70,1.51)T (2.52,1.20)T (2.43,1.25)T (2.37,1.16)T (2.33,1.18)T (2.30,1.14)T (2.28,1.15)T
f (X k ) 52.00
0.34 0.09
∇f ( X k ) (−44, 24)T (0.73,1.28)T (0.80, −0.48)T (0.18, 0.28)T (0.30, −0.20)T (0.08, 0.12)T (0.15, −0.08)T (0.0算目标函数的梯度和 Hesse 阵
设d
(k )
= [ d1 , d 2 ] , ∇f ( X ( k ) ) = [ g1 , g 2 ] 得到精确一维搜索步长 αk = g1d1 + g 2 d 2 3d + d 2 2 − 2d1d 2
2 1
取X
(1)
= (0, 0)T ,则 ∇f ( X (1) ) = [ −2, 0] ,所以 d (1) = −∇f ( X (1) ) = [ 2, 0 ] ,
求单变量极小化问题:
min f ( x 0 + tp 0 ) = min f (44t , 3 − 24t )
t ≥0 t ≥0
= min(44t − 2)4 + (92t − 6)2
t ≥0
的最优解 t 0 ,由 0.618 法可得 t 0 = 0.06 ,于是
X 1 = x 0 + t 0 p 0 = (2.70,1.51)T ∇f ( X 1 ) = (0.73,1.28)T ∇f ( X 1 ) = 1.47 > ε
10 −2 ,停止计算,所以 X (9) = [ 0.988, 0.988] 作为问题的最优解。
无约束常用优化方法

步长 ,作前进(或后退)试探.如试探成功(目
标函数值有所减小),则按步长序列
,加
大步长(注意每次加大步长都是由初始点算起),直
至试探失败(目标函数值比前一次的有所增加)时,
则取其前一次的步长作为沿这个坐标轴方向搜索的最
优步长,并计算出该方向上的终止点,而后以这个终
止点为始点再进行下一坐标轴方向的搜索,并重复上
处
显然 是二次函数,并且还是正定二次函数,所以 是凸函数且存在唯一全局极小点.为求此极小点,令
即可解得
即
(5.9)
对照基本迭代公式,易知,式(5.9)中的搜索方向
步长因子
方向
是直指点 处近似二次函数
的极小点的方向.此时称此方向为从点 出发的
Newton方向.从初始点开始,每一轮从当前迭代点出发,
沿Newton方向并取步长 的算法称为Newton法.
另外,共轭梯度法不要求精确的直线搜 索.但是,不精确的直线搜索可能导致迭代 出来的向量不再共轭,从而降低方法的效 能.克服的办法是,重设初始点,即把经过 n次迭代得到的Xn作为初始点重新迭代.
五、坐标轮换法
在坐标轮换法中,沿各个坐标轴方向进行一维搜索
时,常选用最优步长法或加速步长法.加速步长法从
初始点出发,沿搜索(坐标轴)方向先取一个较小的
三、共轭方向法
1、概念
通常,我们把从任意点
出发,依次沿某组共轭
方向进行一维搜索的求解最优化问题的方法,叫做共
轭方向法.
2、特点
• 一般地,在n维空间中可以找出n个互相共轭的方向,对于n元正 定二次函数,从任意初始点出发,顺次沿这n个共轭方向最多作n 次直线搜索就可以求得目标函数的极小点.这就是共轭方向法的 算法形成的基本思想.
最优化方法-最速下降法

计算步骤
设f (X )是可微函数,精度要求为
X f ( ) K 1
,
X 0 为初始点。
(1)计算梯度
f
(
X
)
k
,初始k=0;
(2)
Pk
f
(
X
)
k
(3)求解 k
min f ( X k Pk)
s.t. 0
设 k 是一维搜索的最优解;
(4)求下一个点
评价
由例题中可以发现两次迭代的搜索方向满足:
P P P P T 0, T 0,...,
01
12
即相邻两个搜索方向 PK 与 PK1 正交,这是最速下降
法的搜索方向的基本形质。因此,最速下降法的迭代
路线呈锯齿形,尤其是在极小点附近,锯齿现象尤为
严重,从而影响了迭代速度。
评价
锯齿现象
最优化技术
第三章 7节 最速下降法
主要内容
1原 理
2 计算步骤
3 例题分析 4评 价
原理
定义:用来求解无约束多元函数 min f(x)
极小化问题的一种迭代算法。
拓展:
最速下降法又称梯度法,是 1847 年由著名数学家
Cauchy 给出的,它是解析法中最古老的一种,其他解析 方法或是它的变形,或是受它的启发而得到的,因此它是 最优化方法的基础。
X
)
0
(1,1)T
3-最优步长
2
X P ( ) f 5
0
0 2
1
0
应用一维搜索技术,解得函数最小值点 0 =0.2
举例分析
4-下一搜索点
X1
最优化方法与应用大作业(一)最速下降法

最优化方法与应用大作业(一)
---最速下降法部分:
1.问题描述:
用梯度下降法求解以下优化问题
min f(x)=(x1+10*x2)^2+5(x3-x4)^2+(x2-2*x3)^4+10*(x1-x4)^4
2.编程感想:
该算法需要计算Hesse矩阵,C语言在向量运算时没有Matlab方便,所以手工完成了理论计算,再输入,破坏了程序的移植性。
同时,实验表明当初始值离理想点较远且精度要求较高时,最速下降法的收敛速率极慢,迭代几乎不可能完成,这对初值的选取提出了一定限制。
3.结果分析:
编译界面(Mac os X,Xcode环境)
输入参数(设定为(0.1,0.2,0.3,0.4)):
结果(此处列出每次迭代结果)。
明显的看到,最速下降法的收敛较慢,最终结果接近理论值(F(0,0,0,0)=0)所以该结果可以满意。
4.算法代码见下页
西安电子科技大学电子工程学院020951
李骏昊02095005。
最速下降法-最优化方法
(4)f
(
X
)
3
(0.04,0.04)T
,
f ( X 3) 2 0.0032 0.01
X 3 已达到预定精度要求,迭代终止。
故f(x)的无约束近似极小点为
X X 3 (0.96,1.44)T
注:原问题的精确极小点为
X (1,1.5)T
3. 最速下降法性质与评价
x1 x1
2 2
x2 x2
1 1
(1) X 0 (1,1)T
,
f
(
X
)
0
(1,1)T
,
P0
f
(
X
)
0
(1,1)T
X P (t ) f( 0 t
)
0
5t 2
2t
1
,t>0
ቤተ መጻሕፍቲ ባይዱ
应用一维搜索技术,可解得 (t) 的极小点为t0=0.2
所以 X 1 X 0 t0 P0 (1,1)T 0.2(1,1)T (0.8,1.2)T
X X P
Y f (X ) N 输出X
停止
例3.18 用最速下降法求解无约束优化问题:
x x x x x x min f (X ) 2 2 2
2
1
12
2
1
2
初始点 X 0 (1,1)T
,迭代终止准则为
f
(X k)
2
0.01
。
解:
f
(
X
)
4 2
1. 最速下降法原理 2. 最速下降法算法 3. 最速下降法性质与评价
最优化:最速下降法和Newton法
定理 3.1.1 设假设 2.4.1的条件成立 , 那么采用精确搜索 , 或 Armijo搜索或 Wolfe- P owell搜索的最速下降法产生 的迭 代序列{xk }满足 lim || f ( xk ) || 0
k
由前面的例子看到, 最速下降法的收敛速度至多是线性的, 具体 见下面的两个定理.
第一节
最速下降法
最古老的优化方法,十九世纪中叶由Cauchy提出
1、 思想 :每次沿负梯度方向进行搜索
●
x*
xk 1
等值线(面)
●
xk
●
f ( xk )
负梯度方向也称为最速下降方向:
事实上,对任意p R n 且 || p || , 由Cauchy - Schwarz 不等式得 f ( xk ) T P - || f ( xk ) || || P || - || f ( xk ) || - f ( xk ) - f ( xk ) 当取p 时等号成立,即 p 是下列问题 || f ( xk ) || || f ( xk ) || 的解 min f ( xk ) T P
从上面的例子看到, 对于简单的二元二次函数极小化问题, 最速下降法在有限次迭代并没有求出其精确最优解, 但能 以较慢的速度无限接近最优解.
事实上,上面的例子刻画了最速下降法的所有收 敛特征
3、 最速下降法的收敛性 全局收敛性
由于最速下降法的搜索方向与负梯度方向一致, 即 k 0, 且 || f ( xk ) || || d k || 所以, 由定理2.4.1 - 2.4.3, 我们很容易得到最速下降算法的全 局收敛性.
2
max 其中 , 且max 和min分别是 f ( x * )的最大和最小特征值 . min
最优化Armijo算法确定步长的最速下降法资料
最优化Armijo算法确定步长的最速下降法资料最速下降法是最优化算法中最简单、最基础的一种方法,但其收敛速度较慢且容易陷入局部最优解。
因此,在最速下降法的基础上,可以通过引入步长的方法来提高算法的收敛速度。
而Armijo算法就是一种常见的用于确定步长的方法。
最速下降法基础假设我们要最小化目标函数f(x),那么最速下降法的思路就是从一个初始点x0开始,不断朝着负梯度方向进行迭代,直到找到最优解x∗,即:$x_{k+1} = x_k - \\alpha_k \ abla f(x_k)$其中,ablaf(x k)是f(x)在x k处的梯度,$\\alpha_k$ 是步长(也称为学习率),表示每次迭代的步长大小。
但这里还有一个问题:如何确定每次迭代的步长呢?Armijo算法Armijo算法是一种基于梯度下降法的步长确定方法。
它的思路是,每次迭代的步长不应该过大,否则容易导致超出收敛区域。
同时,步长也不应该过小,否则收敛速度会变得非常缓慢。
因此,步长的大小应该恰到好处,即在一定范围内找到一个最优的步长大小。
具体地,Armijo算法通过二分搜索的方法,在可行步长范围内找到一个最优的步长 $\\alpha_k$。
具体过程如下:1.首先初始化 $\\alpha_0$,并设定一些参数,如尝试步长大小t、可行步长下界 $\\tau$ 和函数下降的最小比例 $\\gamma$。
2.计算目标函数f(x k−t ablaf(x k)),以及根据一定准则确定下一个$\\alpha$。
3.如果 $f(x_k - \\alpha_k\ abla f(x_k))$ 函数值比f(x k)减小了一些比例$\\gamma$,则认为当前 $\\alpha_k$ 是可行的步长。
4.如果当前 $\\alpha_k$ 不是可行的步长,则将其折半,即 $\\alpha_k\\leftarrow \\alpha_k/2$,直到找到一个可行的步长为止。
最优化方法(刘)第四章
阻尼牛顿法收敛定理
定理2: 设 f ( x) 二阶连续可微, 又设对任意的x0 ∈Rn , 存在常数m > 0, 使得 f ( x) 在 L ={x f (x) ≤ f (x0 )} 2 T 2 上满足: ∇ f ( x)µ ≥ m µ ,∀ ∈Rn , x∈L( x0 ) µ µ 则在精确线搜索条件下, 阻尼牛顿法产生的点列 {xk } 满足: (1) 当{xk } 是有限点列时, 其最后一个点为 f ( x) 的唯一极小点. (2)当{xk } 是无限点列时, 收敛到 f (x) 的唯一极小点.
) x0 = (9,1
T
g0 = ∇ ( x0 ) = (9,9) f
T
T 7.2 7.2 g0 g0 x = x0 − T g0 = 1 −0.8 g1 = −7.2 g0 G 0 g T 9×0.82 g1 g1 x2 = x − T g1 = 1 2 (−1 ×0.82 g1 G 1 g )
9 1 0 x = x0 −G g0 = − 1 1 0 9
1 − 0 −1
9 0 = = x* 9 0
牛顿法收敛定理
定理1: 设 f ( x) 二次连续可微, *是 f ( x) 的局 x 部极小点, f (x* ) 正定. 假定 f ( x) 的海色阵 ∇
gk →0 .
证明: 对于最速下降法, k = 0, 由以上定理立得. θ
收敛性分析
定理2: 设 f ( x) 二次连续可微, ∇2 f ( x) ≤ M, 且 其中 M是个正常数, 对任何给定的初始点 x0, 最速下降算法或有限终止, 或者lim f ( xk ) = −∞ ,
k→ ∞
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
x (2)
O
x (4) x (3)
2015/12/10
LOGO
谢谢各位
2015/12/10
程序图
开始
LOGO
求k 使其满足
给定初始点, x0 E , n 0
min f ( x k p k ) f ( x k k p k )
0
k : 0
令
计算
pk f ( xk )
是
xk 1 xk k pk
p
k
2015/12/10
最速下降法的由来
• 其主要思想
LOGO
每次沿负梯度方向进行搜索
●
x*
x k 1
等值线(面)
●
xk
●
f ( xk )
2015/12/10
最速下降法的方向选择
LOGO LOGO
最速下降法用负梯度为方向
d k f xk
作为搜索方向。设 f(x) 在XK附近连续可微,dk为搜索方向向量,
输出:
xmin xk
否
结束
matlab仿真实例
LOGO
2015/12/10
matlab仿真实例
LOGO
2015/12/10
最速下降法的优缺点
LOGO
• 由于沿负梯度方向目标函数的最速下降性,很容易使人们误认为负梯 度方向是最理想的搜索方向,最速下降法是一种理想的极小化方法。 必须指出的是,某点的负梯度方向,通常只是在该点附近才具有这种 最速下降的性质。在一般情况下,当用最速下降法寻找极小点时,其 搜索路径呈直角锯齿状,在开头几步,目标函数下降较快;但在接近 极小点时,收敛速度长久不理想了。特别适当目标函数的等值线为比 较扁平的椭圆时,收敛就更慢了。优点是:程序简单,计算量小;并 且对初始点没有特别的要求。
LOGO
• 由式
d k f xk
T
得,
即新点xk+1处的梯度是正交的,也就是说,迭代点列所走
的路线是锯齿型的,故收敛速度是很慢的。
f xk 1 f xk 0
2015/12/10
步长因子
LOGO
• 步4中,步长因子 k 的确定即可以采用精确线搜索又可以采用非精 确线搜索。 • 采用精确线搜索时
T gk d k g k d k cos
其中 为gk与dk的夹角。要使得变化率最小,只有当cos值为-1时, 才能达到,也即dk应取得负梯度方向。
J (a ) J ( a )
J (a )
ak
a
最速下降法的步骤
• 1.选取初始点 x R n 0
• 2. 计算
,容许误差
LOGO
f xk k d k lim f xk d k
0
那么 k 应该满足
' x d T f x k d k k f x k k d k d k 0 d
由此我们可以求出步长因子。
2015/2/10
LOGO
• 函数 f(x1,x2)=(1-x2)^2+100*(x2-x1^2)^2,它叫罗森布罗克方程。
2015/12/10
罗森布罗克方程的三维图
LOGO
• 它的全局最优点位于一个长长的、狭窄的、抛物线形状的、扁平的“山谷” 中。找到“山谷”并不难,难的是收敛到全局最优解(全局最优解在 (1,1) 处)。
g k f xk
.由泰勒展开式得
T f xk dk f xk gk dk , 0,
那么目标函数 f(x)在Xk处沿方向dk下降的变化率为
最速下降法的方向选择
LOGO LOGO
lim
0
T f xk d k f x k g k d k lim 0
最优化—最速下降法
主讲人:王俊俊
最速下降法
LOGO
最速下降法的由来
最速下降法的方向选择
最速下降法的算法步骤
最速下降法的实例
最速下降法的由来
LOGO LOGO
考虑无约束问题
min f x, x R
n
其中,函数法f(x)具有一阶连续偏导数。
人们在处理这类问题时,总希望从某一点出发,选择 一个目标函数值下降最快的方向,以利于尽快达到极小点, 基于此种愿望,早在1847年法国数学家Cauchy提出了最速 下降法。后来,Curry等人作了进一步研究,得出现在众 所周知的一种最基本算法。
0 1 。令k:=1.
gk ,停算,输出X 作为近 k g k f xk 。若
似最优解。
• 3.取方向dk=-gk。
• 4.由线搜索技术确定步长因子 。 k
• 5.令
xk 1 : xk k dk , k : k 1,
, 转步长1。
2015/12/10