最优化方法第三章
最优化 马昌凤 第三章作业
最优化方法及其Matlab程序设计习题作业暨实验报告学院:数学与信息科学学院班级:12级信计一班姓名:李明学号:1201214049第三章 最速下降法和牛顿法一、上机问题与求解过程1、用最速下降法求212221216423),(x x x x x x f --+=的极小值。
解:仿照书上编写最速下降法程序如下:function [x,val,k]=grad(fun,gfun,x0) %功能:用最速下降法求解无约束化问题:min f(x) %输入:x0是初始点,fun,gfun 分别是目标函数和梯度 %输出:x,val 分别是近似嘴有点和最优值,k 是迭代次数 maxk=5000;rho=0.5;sigma=0.4;%一开始选择时选择的rho 和sibma 选择的数据不够合理,此处我参照书上的数据编写数据 k=0;epsilon=1e-5; while (k<maxk)g=feval(gfun,x0); %计算梯度 d=-g;%计算搜索方向if (norm(d)<epsilon),break ;end m=0;mk=0; while (m<20)%Armijo 搜索if (feval(fun,x0+rho^m*d)<feval(fun,x0)+sigma*rho^m*g'*d) mk=m;break ;%直接利用Armijo 搜索公式,一开始的时候没有记住公式编写出现错误 end m=m+1; endx0=x0+rho^mk*d; k=k+1; end x=x0;val=feval(fun,x0) %求得每一个的函数值然后仿照书上建立两个目标函数和梯度的M 文件:function f=fun(x)f=3*x(1)^2+2*x(2)^2-4*x(1)-6*x(2); function g=gfun(x) g=[6*x(1)-4,4*x(2)-6]';选取初始点为']0,0[,调用函数程序,得出最小极值点为']500.1,6667.0[,极小值为8333.5-,在界面框中输入的程序如下:[x,val,k]=grad('fun','gfun',x0) val = -5.8333 x =0.6667 1.5000 val =-5.8333 k = 10从结果可以看出迭代次数为10次,如果选取不同的初值点则迭代次数不一样,但是极小值相同。
【课件】运筹学与最优化方法(华南理工)第3章(07-4)
的最优解S(k)和最优值
(k +1) (k ) (k )
q(S(k) )
(k + 1) (k )
) f (X = X + S 若 f (X (3)令 X 取 X * = X (k+1) ,停止,否则转(4) (4)计算 f = f (X (k) ) f (X (k+1) ), q = f (X (k) ) q(S(k) ) 1/ 2k ..若 f < 0.1q 令
第三章
无约束非线性规划
3.4 信赖域法, Matlab解无约束非线性规划
一.信赖域法: 1.思想: 1) 前两节方法的结构原理为用二次模型产生下降方 向,在下降方向上确定可接受的步长,得到新迭代点. 若二次模型不近似原目标函数,则在搜索方向上无 法找到满意的下降迭代点. 能否先指定步长的界,再用二次模型确定方向和步 长? *注:保证在下近似,可使f(x)与 二次模
y(1) = x +α(x xmax )
2 扩展:给定扩展系数 >1,计算.(加速) 扩展:给定扩展系数γ 计算.(加速) 计算.(加速
y(2) = x +γ ( y(1) x)
3.5 直接算法
一, 2,改进单纯形法: (续) ,改进单纯形法: (1)若f(y(1))<f(x min), 则 若 那么y 取代x 否则, 取代x 若f(y(1))> f(y(2)), 那么 (2)取代 max; 否则, y(1)取代 max (2)若max{f(x(i))| x(i) ≠x max } ≥ f(y(1)) ≥ f(x min), y(1)取代 max . 取代x 若 3° 收缩:若f(x max )> f(y(1)) > f(x(i)), x(i) ≠x max ,计算 ° 收缩: 计算
最优化方法第三章非线性优化
在点X
f (X )
可微,
f (X ) C1
则称向量f ( X ) ( f ( X ) ,..., f ( X ) )T
x1
xn
C1 C2
f (X) C2
为函数 f ( X ) 在点 X 处的梯度.
图3-6指出了梯度的几何意义:如果函数 f (X ) 在点 X 的梯度f (X ) 是非零向量,那么 f (X ) 就是 f (X ) 的等值面在 X 处的法向量,
Company Logo
定义3.1
设D是问题(3-1) ~ (3-3)的可行区域,
X * ∈D,若存在 X * 的一个邻域N(X *,δ),
当X∈ D∩N( X,* δ)时,就有
f (X *) f (X )
(3-4)
则称 X * 是非线性规划(3-1)~(3-3)的
一个局部最优(极小)解.
特X *别,若在(3-4)中严格不等号“<”成立,则称
x2
凸函数的判定及与Hesse矩阵的联系
定理3.7 (严格凸函数的一阶充要条件)
设D为开凸集,f X 在D上有一阶连续偏导。那么 f X 是D上
的严格凸函数的充要条件是:对D上任意两个相异X点1
有 f X 2 f X1 f X1 T X 2 X1
X,2
,都
建立数学模型:设售出两种设备分别为 x1 , x2 件。
max f 30x1 450x2
s.t.
0.5x1 (2 0.25x2 )x2 800 x1, x2 0
Company Logo
一般而言,线性规划问题总可以表示为如下
形式:
Min
f( X )
S . t . gi (X ) 0, j 1, 2,..., m
最优化方法 第三章(罚函数法)
这种惩罚策略,对于在无约束的求解过程中企图违反约
束的迭代点给予很大的目标函数值,迫使无约束问题的 极小点或者无限地向可行域D靠近,或者一直保持在可 行域D内移动,直到收敛到原来约束最优化问题的极小 点。
不改变可行域局部极小值,可以将 约束域之外的局部极小值变大。
p ( x) 0, x D p ( x) 0, x D
k k
k 1
k 1
xk 1是F x, M k 1 的最优解.
k 1 k k 1 k 0 M k 1 M k p ( x ) p ( x ) p ( x ) p ( x )
M k 1 M k
(3) f ( x k 1 ) M k p( x k 1 ) F ( x k 1 , M k ) F ( x k , M k ) f ( x k ) M k p( x k )
gi ( x) gi ( x) max gi ( x), 0 = 罚函数p(x)的构造 2 m l p( x) (max gi ( x), 0) 2 h 2 j ( x)
i 1 j 1
(1) p(x)连续 (2) p( x) 0, x D (3) p( x) 0, x D
二、外点法 外点罚函数法算法步骤 1:给定初始点 x 0 ,初始罚因子M1 0 (可取M1 1 ), 精度 0, k : 1. 2:以 x k 1初始点,求解无约束优化问题
min F ( x, M k ) f ( x) M k p( x)
得到极小点 x* ( M k ),记为 x k , 其中
p( x) (max gi ( x), 0) h 2 j ( x)
2 i 1 j 1 m l
最优化设计 课后习题答案
最优化方法-习题解答张彦斌计算机学院2014年10月20日Contents1第一章最优化理论基础-P13习题1(1)、2(3)(4)、3、412第二章线搜索算法-P27习题2、4、643第三章最速下降法和牛顿法P41习题1,2,374第四章共轭梯度法P51习题1,3,6(1)105第五章拟牛顿法P73-2126第六章信赖域方法P86-8147第七章非线性最小二乘问题P98-1,2,6188第八章最优性条件P112-1,2,5,6239第九章罚函数法P132,1-(1)、2-(1)、3-(3),62610第十一章二次规划习题11P178-1(1),5291第一章最优化理论基础-P13习题1(1)、2(3)(4)、3、4 1.验证下列各集合是凸集:(1)S={(x1,x2)|2x1+x2≥1,x1−2x2≥1};需要验证:根据凸集的定义,对任意的x(x1,x2),y(y1,y2)∈S及任意的实数λ∈[0,1],都有λx+(1−λ)y∈S.即,(λx1+(1−λ)y1,λx2+(1−λ)y2)∈S证:由x(x1,x2),y(y1,y2)∈S得到,{2x1+x2≥1,x1−2x2≥12y1+y2≥1,y1−2y2≥1(1)1把(1)中的两个式子对应的左右两部分分别乘以λ和1−λ,然后再相加,即得λ(2x1+x2)+(1−λ)(2y1+y2)≥1,λ(x1−2x2)+(1−λ)(y1−2y2)≥1(2)合并同类项,2(λx1+(1−λ)y1)+(λx2+(1−λ)y2)≥1,(λx1+(1−λ)y1)−2(λx2+(1−λ)y2)≥1(3)证毕.2.判断下列函数为凸(凹)函数或严格凸(凹)函数:(3)f(x)=x21−2x1x2+x22+2x1+3x2首先二阶导数连续可微,根据定理1.5,f在凸集上是(I)凸函数的充分必要条件是∇2f(x)对一切x为半正定;(II)严格凸函数的充分条件是∇2f(x)对一切x为正定。
最优化方法第三章(2).
*
f x * Qx * b 0
f x1 t1Qp1 0 T 上式两边同时左乘 p0 ,并注意到 p0T f x1 0和 t1 0,
便得到
将(3.38)代入此式,并由(3.39)可得
p Qp1 0
T 0
(3.40)
* p p1 所必须满足的条件。 这就是为使 1 直指极小点 x , 满足(3.40)的两个向量 p0 和 p1 称为 Q 共轭向量, 或称 p0和 p1 的方向是 Q 共轭方向。 利用(3.40)可以给出 p1 的表达式。设 p1 f x1 a0 p0 , (3.41)
n x R 其中 0 是任意选定的初始点,则
T p ⅰ) j f xm 0, 0 j m ;
(3.44)
ⅱ) xm是二次函数(3.36)在线性流形L x0 ; p0 , p1, , pm1 上的极小点。
T 证 ⅰ)根据(1.46),直接有 pm 1f xm 0 。以下 证明:对于 j 0,1, , m 2 ,(3.44)也成立。 由条件(3),有
p f ( x (其中 , , , 是任意实 数)都与 i i m ) 正交。 0 1 m1
i 0 m 1
最优化方法第三章第一讲下降迭代算法基本概念
(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
工程最优化第三章
最优点同时与目标函数及约束函数的性质有关。存在两种情况:
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,
最优化方法Lecture3_单纯形法1
cB 0 0 4
xB x3 x4 x1 T B1b 7 6 3T , xN x2 x5 T 0
f1 cB B1b 12, w cB B1 0 0 4
z2 c2 wP2 c2 4 z5 c5 wP5 c5 4 最大判别数是z2 c2, x2是进基变量。计算
xk
min
bi yik
|
yik
0
br yrk
0
则得新解 x x1, , xr1, 0, xr1, , xm , 0, , xk , 0, , 0T
且
f x f
x0
zk
ck
br yrk
f
x0
.
旧基为 P1, , Pr , , Pm 新基为 P1, , Pk , , Pm
xr 为离基变量 xk 为进基变量。
2 s.t.
BxB NxN b
xB B1b B1NxN
xB , xN 0
min
3 s.t.
f x cB B1b B1NxN cN xN
xB B1NxN B1b
1 等价于
xB , xN 0
min f x
4
s.t.
0 f x Im xB
B1NxN B1b
f x 0xB cB B1N cN xN cB B1b
y2 B1P2 1 5 1T , 而b B1b 7 6 3T
br yr1
min
b1 y12
,
b2 y22
min
7
1
,
6 5
6 5
b2 y22
x4为离基变量,用P2代替P4得到新基。
1 2 1 0 0
A P1
P2
P3
P4
最优化方法-最速下降法
计算步骤
设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
最优化方法第三章-孙文瑜
Fnk k ak (1 )(bk a k ) Fnk 1
Fn k 1 k a k (bk a k ), k 1,2,, n 1 Fn k 1 Fn k k ak (bk a k ), k 1,2,, n 1 Fn k 1
25
2018/12/11
3.2.2 Fibonacci法
另一种与0 .618 法相类似的分割方法叫Fibonacci 法. 它与0 .618 法的主要区别之一在于: 搜索区间长度的 缩短率不是采用0 .618 而是采用Fibonacci 数. Fibonacci 数列满足 F0 F1 1
Fk 1 Fk Fk 1 , k 1,2 Fibonacci 法中的计算公式为
N
1
2
1 2
Y
* (t * )
a t1 , t1 t 2 ,
1
第三章无约束问题的最优化方法
赋以0.618。
2 ,
;并计算其对应
的函数值。 3)根据区间消去法原理缩短搜索区间。为了能用原来的 坐标点计算公式,需进行区间名称的代换,并在保留区间 中计算一个新的试验点及其函数值。
如果
令 b , , f f 记N0=0; 2 2 1 2 1 如果 ,则新区间= ,
2
2
图2-5 黄金分割法
• 黄金分割法要求插入两点: a1 a (1 )(b a), f1 f (a1 )
a2 a (b a), f 2 f (a2 )
黄金分割法的搜索过程:
1)给出初始搜索区间及收敛精度 2)按坐标点计算公式计算 1
,将
在搜索区间内[a,b] 任取两点a1、b1,令f1=f(a1), f2=f(b1) • (1)如f1<f2, 则缩小的新区间为[a,b1]; • (2)如f1>f2, 则缩小的新区间为[a1,b]; • (3)如f1=f2, 则缩小的新区间为[a1,b1]
f(b1) f(a1) f(a1) f(b1) f(a1) f(b1)
a
a1
b
a
a1
b1 b
a
a1
b1
b
§3.2 一维搜索方法
黄金分割法: • 黄金分割法适用于[a,b]区间上的任何单谷函数求极小值问题。对 函数除要求“单谷”外不作其他要求,甚至可以不连续。因此,这种 方法的适应面相当广。 • 黄金分割法也是建立在区间消去法原理基础上的试探方法。 • 在搜索区间内[a,b]适当插入两点,将区间分成三段;利用区间消 去法,使搜索区间缩小,通过迭代计算,使搜索区间无限缩小,从而 得到极小点的数值近似解。 •
最优化:最速下降法和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
最优化方法 第三章(可行方向法)
又 f ( x k )T d * * 0,
d * 是可行下降方向。
改进方法具有全局收敛性。
一、Zoutendijk法
Frank Wolfe 方法 min f ( x )
给定线性规划问题
Ax b s .t . x0
f ( x k )T d k 0 gi ( x k )T d k 0 , i I ( x k )
1 di 1, i 1, 2,
,n
������ = 0 , 则 ������ ������ 处不存在可行下降方向 , ������ ������ 已是 ������−������ 点. 有例子表明上述方法不一定收敛到 ������−������ 点,即总有������ < 0 .
如果可行点为内点, 可取������ = −������������(������ )计算。
一、Zoutendijk法 非线性约束模型的可行方向确定方法
min s.t.
z f ( x )T d z 0 gi ( x) d z 0, i I
T
一、Zoutendijk法 线性约束模型的可行方向
min f ( x ) Ax b s .t . Cx e
紧约束
A1 b1 定理 设 x D ,在点 x 处有 A1 x b1 , A2 x b2 , 其中A , b , A2 b2 则非零向量 d 是 x 处的可行方向的充分必要条件是
定理 设 f ( x )可微, x k D, 如果y k 是上述线性规划的最优解,则有
(1) 当f ( x k )T ( y k x k ) 0时 , 则x k 是(1)的K -T点;
最优化方法 第三章(二次逼近法)
min s.t.
ci x ci x
1 T Q(d ) d Bk d f ( x k )T d 2
k T
d ci x k 0, i I m 1,..., p
k T
d ci x k 0, i E 1,..., m .
基本思想:将问题转化为求解一系列的二次规划子问 题。从已知点和近似乘子向量进行迭代,由二次规划 问题计算出的结果对迭代过程进行更新。
s.t.
三、二次逼近法 等式约束问题 由等式约束K-T条件,有
f x hE x 0,
T
即
hE x 0.
T x L x , f x A x F x, 0. hE x hE x
d,
T
k W x k , λ k A x k T d f x k A xk h x 0 E
一般约束问题
min s.t.
f (x), ci x 0, i I m 1,..., p ci x 0, i E 1,..., m .
x 1 不是原二次规划问题的可行解,令
,显然为函数值下降方向。但在 x1
1
d 1 x 1 x1
沿 d 趋向
T a 某些不等式约束 i x bi , i t 1, t 2,..., p ,设
x
1
的过程中,不满足原二次规划问题的
在移动的过程中,最先遇到某个不等式约束,对应 的下标为 l ,相应的交点记为 x ,x 点处对应的有
最优化方法第三章(2).
n 维向量空间中,非零的共轭向量的
个数不超过 n 。 设 p0 , p1 , , pm1 是 R n 中的非零 Q 共轭向量。因为 线性无关,所以由它们可以张成 R n 的一个 m 维子空间, 且这个 m 维子空间中的任意一个向量 x 均可表示为
x ai pi ,
i 0 m 1
3. 共轭方向法
共轭方向法的理论基础是下面的定理。 定理3.4 假设 (1)Q 为 n n 对称正定矩阵; (2) 非零向量 p0 , p1 , , pm1是 Q 共轭向量; (3)对二次目标函数(3.36)顺次进行 m 次直线搜索
xi 1 1s xi , pi , i 0,1, , m 1
p1
因为 p1 从 其中
p1 怎样确定,它应该满足什么条件?
*
x x1 t1 p1
*
x1 直指极小点 x ,所以 x
*
可以表示为
(3.38)
t1 是最优步长因子。显然,当 x1 x*时, t1 0 。
对(3.36)求导数,有
f x Qx b .
因为
(3.39)
x 是极小点,所以有
归纳一下,对于二元二次目标函数,从任意初始点 x0 出发,沿任意下降方向 p0 做直线搜索得到 x1;再从 x1 出发,沿 p0 的共轭方向 p (可由( 3.42)确定)作直线 1 * 搜索,所得到的 x2 必是极小点 x 。
一般说来,具有二次终止性的算法,在用于一般函数 时,收敛速度是较快的。
设 Q 是 n n 对称正定矩阵。若 n 维向量 空间中的非零向量 p0 , p1 , , pm1 满足 piT Qp j 0, i, j 0,1, , m 1(i j) (3.43) 则称 p0 , p1 , , pm1是 Q 共轭向量或称向量 p0 , p1 , , pm1 是 Q共轭的(简称共轭),称 p0 , p1 , , pm1 的方向是 Q 共轭 方向。 当 Q 1(单位矩阵)时,(3.43)为 定义3.3
最优化第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
第三章非线性规划无约束问题的最优化方法
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. 修正牛顿法的缺点: 修正牛顿法虽然比牛顿法有所改进,但也有不足之处:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
a
c
b
具体地说, 就是给出初始点α0>0, 初始步长h0>0, 若 ( 0 h0 ) ( 0 )
则下一步从新点α1=α0+h0出发, 加大步长, 再向前搜 索, 直到目标函数上升为止.
若
( 0 h0 ) ( 0 )
则下一步仍以α0为出发点, 沿反方向同样搜索, 直到 目标函数上升就停止.这样便得到一个搜索区间.这种 方法叫进退法.
开始
黄金分割法算法流程 如图所示 (
确定[a,b]
5 1) / 2
t2 (b a )
2 (2 )
t1 a b t 2
1 (t1 )
b t2 t2 t1
2
N
t1 t 2
Y
t * (t1 t 2 ) / 2
步3. 加大搜索步长, 令hk 1 : thk , : k , k : k 1
k : k 1 , k : k 1转步2
步4. 反向搜索.若k= 0, 转换搜索方向, 令 hk 1 : hk , : k 1 转步2;否则, 停止迭代, 令
a min{ , k 1}, b min{ , k 1} 输出[a, b] , 停止.
§3.1 线性搜索
线性搜索是多变量函数最优化方法的基础,在多变 量函数最优化中,迭代格式为 xk 1 xk k d k 其关键是构造搜索方向dk和步长因子αk.设 ( ) f ( xk d k ) 从xk出发, 沿搜索方向dk, 确定步长因子αk, 使 ( k ) (0) 的问题就是关于α的线性搜索问题
线性搜索算法分成两个阶段
第一阶段确定包含理想的步长因子(或问题最优解) 的搜索区间 第二阶段采用某种分割技术或插值方法缩小这个区 间
进退法
确定初始搜索区间的一种简单方法叫进退法, 其基 本思想是从一点出发, 按一定步长, 试图确定出函数 值呈现“高低高”的三点 即θ(a)≥θ(c)≤θ(b) 这里a≤c≤b
Fnk k ak (1 )(bk a k ) Fnk 1
Fn k 1 k a k (bk a k ), k 1,2,, n 1 Fn k 1 Fn k k ak (bk a k ), k 1,2,, n 1 Fn k 1
1.751
1.901 1.751
否
否 否
3
4 5 6
[0.305,0.888]
[0.305,0.665] [0.443,0.665]
0.528
0.443 0.528
0.665
0.528 0.580
1.751
1.753 1.751
1.777
1.751 1.757
否
否 是
最优解x*=(0.443+0.665)/2=0.554
理想的方法是使目标函数沿方向dk达到极小, 即使得 f ( x k k d k ) min f ( x k d k )
0
或者选取αk>0使得 k min{ 0 | f ( xk d k )T d k 0}
这样的线性搜索称为精确线性搜索, 所得到的αk叫精 确步长因子
斐波那契数
定义: The Fibonacci numbers 斐波那契数 {fn } = 0,1,1,2,3,5,8,13,21,34,55,… The Fibonacci numbers can be defined斐波那契数可被 定义为: f0 = 0
f1 = 1
f n = f n-1 + f n-2 for n=2,3,4,…
25
2013-6-16
3.2.2 Fibonacci法
另一种与0 .618 法相类似的分割方法叫Fibonacci 法. 它与0 .618 法的主要区别之一在于: 搜索区间长度的 缩短率不是采用0 .618 而是采用Fibonacci 数. Fibonacci 数列满足 F0 F1 1
Fk 1 Fk Fk 1 , k 1,2 Fibonacci 法中的计算公式为
(I) 若f(x1)≥f(x2),x*∈[x1,b]
f(x)
(II) 若f(x1) < f(x2), x*∈[a,x2]
f(x)
a x1 x2 x* (I) 消去[a, x1 ]
b
x
a
x* x1 x2 b x
(II) 消去[x2, b]
在单峰函数的区间内,计算两个点的函数值,比较大小后,就 能把搜索区间缩小。在已缩小的区间内,仍含有一个函数值,
迭代 次数 0 1 2
[a,b] [-1,3]
x1 0.528
x2 1.472
f1 1.751
f2 2.695
|b-a|<e 否
[-1,1.472]
[-0.056,1.472] [-0.056,0.888]
-0.056
0.528 0.305
0.528
0.888 0.528
2.059
1.751 1.788
N
1
2
1 2
Y
* (t * )
a t1 , t1 t 2 ,
1
t* , *
2
t 2 (b a ), 2 (t 2 )
结束
例 用黄金分割法求函数f(x)=x2-x+2在区间[-1,3]上的极 小值, 要求区间长度不大于原始区间长的0.08.
t1 a 0.618(b a) t 2 a 0.382(b a) 接着计算 (t1 ) 与 (t 2 ) 的值,并根据 (t1 )与 (t 2 ) 的值的 大小关系分情况讨论: (1) 若 (t1 ) (t 2 ),说明t1是好点,于是把区间[ a, t 2 ] 划掉,保留 [t 2 , b] ,则[t 2 , b] 内有一保留点 t1 ,置新的区 间[a1 , b1 ] [t2 , b] ; (2)若 (t1 ) (t 2 ),说明t 2 是好点,于是应将[t1 , b] 划 掉 ,保留[a, t1 ] ,则 [a, t1 ]内 有保留点 t 2 ,置 新的区 , t1 ] 间[a1 , b1 ] [a..
黄金分割法迭代步骤
现在提出一个问题,就在[a,b] 上如何选取二点使得迭代次 数最小而区间缩短最快? 要解决这个问题,人们想到对区间[a,b]选二点t1,t2 等价于 将区间长度b-a进行黄金分割,也就是将第一个搜索点t1取 在 [a,b] 的 0.618 处 , 第 二 个 搜 索 点 t2 取 成 t1 的 对 称 点 即 的0.382处(如图所示)
f(x)
f(x)
f(x)
f(x)
a
b
x
a
a b
x
a
b
b
x
x
连续单峰函数
不连续单峰函数
离散单峰函数 非单峰函数
单峰函数具有一个重要的消去性质
定理:设f(x)是区间[a,b]上的一个单峰函数,x*∈[a,b]是其极小 点, x1 和x2是[a, b]上的任意两点,且a<x1 <x2<b,那么 比较f(x1)与f(x2)的值后,可得出如下结论:
线性搜索方法分类
线性搜索方法根据是否采用导数信息分为无导数方 法和导数方法. 由于没有利用导数信息, 无导数方法一般没有导数 方法有效
典型的无导数方法0. 618 法和Fibonacci法
§3.2 0.618法和Fibonacci法
0.618法和Fibonacci(斐波那契)法都是分割方法. 基本思想:通过取试探点和进行函数值的比较, 使包 含极小点的搜索区间不断缩短, 当区间长度缩短到一 定程度时, 区间上各点的函数值均接近极小值, 从而 各点可以看作为极小点的近似. 这类方法仅需计算函数值, 不涉及导数, 又称直接法
如再计算另一点的函数值,比较后就可进一步缩小搜索区间 。
3.2.1 0.618法
一、黄金分割法基本原理 要介绍黄金分割法有必要回顾一下古老的黄金分 割问题段长L与较长段x的比值正好 等于较长段x与较短段L-x的比值(如图)
于是 则
这些方法要求所考虑区间上的目标函数是单峰函数 如果这个条件不满足, 我们可以把所考虑的区间分 成若干个小区间, 在每个小区间上函数是单峰的. 这样, 我们在每个小区间上求极小点, 然后选取其 中的最小点
单峰函数
定义:如果函数f(x)在区间[a,b]上只有一个极值点, 则称f(x)为 [a, b]上的单峰函数。
即要求
(3)若 (t1 ) (t2 ), 则应具体分析,看极小点可能在哪一边 [ 再决定取舍,在一般情况下,可同时划掉 a, t 2 ]和 [t1 , b] [ 仅保留中间的 [t 2 , t1 ]重置新的区间 a1 , b1 ] [t2 , t1 ] . 接下来是在留下的区间 [a1 , b1 ] 内找好点.重复上面 的步骤,直到搜索区间[ai , bi ] 小于给定的允许误差 0 为止。
进退法步骤
算法3.1.1 步1. 选取初始数据.α0∈[0, ∞) , h0>0, 加倍系数t >1(一般取t=2), 计算 ( 0 ) , k =0.