机械优化设计 一维优化方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
21
机械优化设计
解: 1)确定初始区间 x1=x0=0, f1=f(x1)=2 x2=x0+h=0+1=1, f2=f(x2)=1 由于f1>f2, 应加大步长继续向前探测。
x3= x0+2h=0+2=2,
f3=f(x3)=18 由于f2<f3,可知初始区间已经找到,即[a,b]=[x1,x2]=[0,2] 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>0.2
第三次缩小区间: 令 x1=x2=0.764, f1=f2=0.282 x2=0.472+0.618*(1.236-0.472)=0.944, f2=0.747 由于f1<f2, 故新区间[a,b]=[a, x2]=[0.472, 0.944] 因为 b-a=0.944-0.472=0.472>0.2, 应继续缩小区间。
22
机械优化设计
• • • •
–第二次缩小区间: 令 x2=x1=0.764, f2=f1=0.282 x1=0+0.382*(1.236-0)=0.472, f1=0.317 由于f1>f2, 故新区间[a,b]=[x1,b]=[0.472, 1.236] 因为 b-a=1.236-0.472=0.764>0.2, 应继续缩小区间。
1)
0.618
2)缩短区间的总次数
ln[ /(b a )] k ln 0.618
为预先给定的误差限。
15
F(X )
机械优化设计
已知F ( X ) 的单峰区间 [a, b] 。为了缩小区间, 在[a, b] 内按一定规则对称地取2个内部点 x1和 x2 , 并计算F ( x1 )和 F ( x2 ),可能有两种情况:
f
o
a
b
x
当该区间的长度小于预先给定的一个很小的 正数 ,则可认为该区间的中点是最优点。 * 区间缩短率:
新区间长度 原区间长度
6
三、确定初始单峰区间的进退法 基本思想: 对f(x)任选一个初始点x1及初始步长h0, 通过比较 这两点函数值的大小,确定第三点位置,比较这三点的 函数值大小,确定是否为 “高—低—高” 形态。 1.试探搜索: 选定初始点x1, x2= x1+ h0,计算 y1=f(x1), y2=f(x2) (a)如y1>y2,转2向右前进;
1
l
l
l
(1 )l
F
(1 )l
(1 )l
(1 )l 1 2 l
a
x3 x1 x2
b
x
令
2
1 2 得
1 0
其正根为:
5 1 0.618033988 2
17
机械优化设计
*关于缩小区间总次数的证明 证: 0.618 (b a)
(k ) (k ) (k )
的极值问题,这一过程被称为一维搜索。
3
机械优化设计
如:
当
2 F ( X ) x12 x2 8 x1 12 x2 52
X
(0)
0 0 , S 1 1
T (0)
T
0 1 X 0 1
2
则
F
2 x1
2 x2
8 x1 12 x2 52 2 20 52
4
机械优化设计
X
(0)
0 0 , S
T
(0)
1 1
T
2 F x12 x2 8x1 12x2 52 2 2 20 52 二) 的确定方法
1)取下降步长: --能使目标函数值下降的步长; 上例中,
结束
10
机械优化设计
3 1.用进退法确定函数f ( x) 3x 8 x 9的一维优
3
化初始区间, 给定初始点x1 0, 初始进退距h0 0.1. 解:
k
1 2 3
h
0.1 0.2 0.4 0.8
x1
0 0.1 0.3
y1
9 8.203 6.681
x2
0.1 0.3 0.7
y2
否
a
x
b
x1 x2 x1 x2 b
f
y1 y2
ba
是 x 0.5(a b)
x1 x2 b f f (x ) a x1 x2 * 也可采用迭代次数是否大于或等于 k 作终止准则。
止
20
a
x
机械优化设计
例 3-1 用黄金分割法求函数f(x)=3x3-4x+2的极小点, 给定 x0=0, h=1, ε=0.2。 x=-2:0.1:2; plot(x,3.*x.*x.*x-4*x+2)
8.203
x3 0.3
y3 6.681
4.429 7.125
6.681 4.429
0.7 1.5
a, b 0.3, 1.5. 可得初始搜索区间
11
机械优化设计
3 2.用进退法确定函数f ( x) 3x3 8 x 9的一维优化 初始区间, 给定初始点x1 1.8, 初始进退距h0 0.1.
2 n 1
三、迭代的终止准则
xm1 xm1
四、最优解 五、特点
(预先给定)
x* xm
F * F ( x* )
程序演示
1)思路简单,编程容易,宜于离散型优化问题; 2)计算量大,不宜用于高维优化问题。
14
机械优化设计
一、基本思路
§3-3 黄金分割法
将区间按一定的比例缩小,且正常迭代时每缩 短一次区间只需计算一次函数值。
8
y3
2h0 x3
x2
此处x3、y3仅用 3.后退搜索 令 h=-h0 ,令x3=x1 ,y3=y1 ; 于交换数据 x1=x2 ,y1=y2 ; x2=x3 ,y2=y3 ; h=2h; y3 产生新点x3= x2+ h ; (a)如y2<y3,则函数在[x1,x3]内必有极 y1 y2 小点,令a= x3,b= x1,搜索区间为[a,b] x3 x2 x1 (b)如y2>y3, 2h0 h0 令x1=x2 ,y1=y2 ; x2=x3 ,y2=y3 ; h=2h 重新构造新点x3=x2+h,并比较y2、y3的大 小,直到y2<y3。令a= x1,b= x3,搜索区间 为[a,b] ;
24
f(x*)=0.222
机械优化设计
基本思想:利用目标函数在不同3点的函数值构成一个 与原函数 f(x)相近似的二次多项式p(x),以函数p(x)的 * xp 极值点 (即p’(x*p)=0的根)作为目标函数f(x)的近似极 值点。
机械优化设计
第三章 一维优化方法 §3-1 搜索区间的确定的进退法
§3-2 格点法
§3-3 黄金分割法
§3-4 二次插值法
§3-5 三次插值法
1
机械优化设计
教学目的、要求
1.熟悉搜索区间的确定方法
2.掌握基本的一维优化方法
教学重点
1.进退法 2.黄金分割法 3.二次插值法
2
机械优化设计
§3-1 搜索区间的确定
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
a x1 , x1 x2 , y1 y2
x2 a 0.618(b a), y2 f ( x2 )
解:
k 1 2 3 h 0.1 -0.2 -0.4 -0.8 x1 y1 x2 1.9 1.8 1.6 1.2 y2 14.377 12.096 8.488 4.584 x3 1.6 1.2 0.4 y3 8.488 4.584 5.992 1.8 12.096 1.9 14.377 1.8 12.096 1.6 8.488
l
(1 )l
(1 )l
0.618 (b a)
x
*
k为区间缩短的总次数。 三、最优解
a
x1 x2
b
x
a
(k )
b 2
(k )
, F F (x )
* *
19
机械优化设计
二)迭代步骤
给定
a, b,
x1 a 0.382(b a), y1 f ( x1 )
9
机械优化设计
机械优化设计 给定x1、h0
初始进退距
f
用 h=h0 y1 y2 进 y3 y1=f(x1)、x2=x1+h、y2=f(x2) 退 x x1 x2 x3 h= -h 法 x3=x1 否 x1 x2 x3 y1≥y2 确 y3=y1 前进计算 是 定 f h=2h 初 x1=x2 x3=x2+h、y3=f(x3) 始 y1=y2 是 x1 x2 x x =x 2 3 y2≥y3 搜 x3 x2 x1 y2=y3 是 否 索 h>0 a=x1、b=x3 x3 x2 x1 否 a=x 、 b=x 3 1 区 后退计算 间
F
( 0)
52, 取 3, 得F
(1)
10 F ,
( 0)
故 3是下降步长 .
2)取最优步长:上例中,
dF 令 4 20 0, 得 5是最优步长 . d * F 2
5
机械优化设计
二、一维搜索的步骤
1) 确定一个包含最优点的初始搜索区间 特点:高--低--高 函数值:“大-小-大” 2) 将含最优点的区间不断缩小
一、 问题的提出 当采用数学规划法寻求多元函数的极值点时,一 般要进行一系列如下格式的迭代计算:
X
( k 1)
X
(k )
S
(k )
(k )
(k 0,1,2, )
当方向S ( k ) 给定,求最佳步长 ( k ) 就是求一元函数 :
F(X
( k 1)
) F(X
(k )
s ) ( )
23
机械优化设计
• 第四次缩小区间: • 令 x2=x1=0.764, f2=f1=0.282 • x1=0.472+0.382*(0.944-0.472)=0.652, f1=0.223 • 由于f1<f2, 故新区间[a,b]=[a, x2]=[0.472, 0.764] • 因为 b-a=0.764-0.472=0.292>0.2, 应继续缩小区间。 第五次缩小区间: 令 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, 停止迭代。 程序演示 极小点与极小值: x*=0.5*(0.584+0.764)=0.674,
a, b 0.4, 1.6. 可得初始搜索区间
程序演示
12
机械优化设计
§3-2 格点法
一、基本思路 先将搜索区间分成若干等分,计算出当中的n个 等分点的目标函数值. 再通过比较,找出其中的最小 点,则该点的两个邻近点围成缩短了的新区间。
f
a
xm1 xm1
13
xm
b
x
机械优化设计
二、每轮迭代区间的缩短率
ቤተ መጻሕፍቲ ባይዱ
a
x1
x2
a
x1
x2
(a) 极小点必定在[a,x2]内,令b=x2,区间缩短为[a,x2] (b) 极小点必定在[x1, b]内,令a=x1,区间缩短为[x1, b]
16
机械优化设计
*关于 0.618 的证明 (1)假定初始区 间长度为l,则第 一次区间缩短率 (2)在[a,x2]内增 加一个与x1对称的 点x3,若有F(x1)< F(x3),则极小点必 定在[x3, x2]内,
k
0.618
k
ba
k ln 0.618 ln
即
ba
lg[ /(b a)] ln[ /(b a)] (或k ) k lg 0.618 ln 0.618
18
机械优化设计
x1 a 0.382(b a )
x2 a 0.618(b a ) F
二、迭代的终止准则 k
(b)如y1<y2, 转3向左后退; y1 y2
机械优化设计
x1
7
h0
x2
机械优化设计
2.前进搜索 加大步长 h=2 h ,产生新点x3= x2+ 2h0 ; (a)如y2<y3,则函数在[x1,x3]内 必有极小点,令a= x1,b= x3搜索 区间为[a,b] ;
y1
y2 x1 h0
(b)如y2>y3, 令x1=x2 ,y1=y2 ; x2=x3 ,y2=y3 ; h=2h 重新构造新点x3=x2+h,并比较y2、 y3的大小,直到y2<y3。