常用无约束最优化方法 单纯形

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6 8 4 8 X 5 = X 3 + 2( X 4 − X 3 ) = + 2 − = 10 9 10 8
f ( X 5 ) = 4(4 − 5)2 + (8 − 6)2 = 8
续解例5.6 续解例5.6
图 5.15
几种情形的讨论
算出X 的函数值f(X 可能有下列情形 可能有下列情形: 算出 5 的函数值 5 ),可能有下列情形 ⑴ f(X5)<f(X3). 搜索方向正确,可进一步扩张,继续沿X1X5向前搜索( 扩张). 这时取X 6 = X 4 + α ( X 4 − X 1 ), 其中α为扩张因子 扩张因子,可取 α = 1.2 ~ 2.0 如f(X6)<f(X5),则扩张有利,以X6代替X1构新单纯形 {X2,X3,X6}.如f(X6)>f(X5),则扩张不利,舍去X6,以X5代替
本算法上机占用内存很少, 本算法上机占用内存很少,对变量不多且精度要求不高的 问题此法很方便,但当变量个数多于10以上, 问题此法很方便,但当变量个数多于10以上,此法就显得 不十分有效. 不十分有效.
四.习题
习题五 (P119) P119) 用单纯形法求解min T8 用单纯形法求解min f(x). 题解程序参见
X1构新单纯形{X2,X3,X5}.
⑵ f(X3)<f(X5)<f(X2). 这说明搜索方向正确,无须扩张, 这说明搜索方向正确,无须扩张,以X5代替 X1构成新的单纯形{X2,X3,X5}. 构成新的单纯形{ ⑶ f(X2)<f(X5)<f(X1). 这表示X5走得太远,应缩回一些.若以β表示压缩因子, 走得太远,应缩回一些. 表示压缩因子, 则有 常取β为0.5,以X7代替X1构成新的单纯形{X2,X3,X7}. 构成新的单纯形{
续解例5.6 续解例5.6
反射点
8 10 6 X 4 = 2 X 3 − X1 = 2 − = 10 11 9
f ( X4 ) = 4(6 − 5)2 + (9 − 6)2 = 13
由于f(X4)<f(X0), 故需扩张.取α=2,则
X 7 = X 4 + β ( X5 − X 4 )
⑷ f(X5)>f(X1). )>f 这时应更多压缩,将新点压缩至X1X4之间,有
X8 = X4 − β(X4 − X1) = X4 + β(X1 − X4 )
注意,上两式只是X1和X5的差别.如f(X8)<f(X1),则以X8代替 X1构成新的单纯形{X2,X3,X8}. 否则可以认为X1X4方向上 所有点的函数值f(X)都大于 f(X1)不能沿 此方向搜索.这时,可以以X3为中心进行 缩边,使顶点X1和X2向X3移近一半距离如 右图所示, 得新单纯形 {X3,X9,X10}. 以此单纯形为基础再进行寻优.
比较各函数值的大小,确定最好点XL、最差点XH及次差点 XG,即
X L : y L = f ( X L ) = min yi
i
i
X H : yH = f ( X H ) = max yi
X G : yG = f ( X G ) = max yi
i≠ H
⑶计算XH之外各点的“重心” 求出反射点 ⑷扩张 当f(Xn+2)<X(XL2 = 2 X n +1令 X H f n + ),需扩张, − ),需扩张,
可见,不管如何,都可得到一新的单纯形, 可见,不管如何,都可得到一新的单纯形,其中至少有一顶 点的函数值比原单纯形为小. 如此继续, 点的函数值比原单纯形为小 . 如此继续 , 直至满足终止 准则. 准则 . 在 n 维情况下 , 一个单纯形含有 n +1 个顶点, 计算 维情况下, 个顶点 , 工作量较大,但原理和上述二维情况相同. 工作量较大,但原理和上述二维情况相同.
值f(X1),f(X2),f(X3),比较其大小,现设有f(X1)>f(X2)>f(X3)。 比较其大小, 这说明X1最差, X3最好,X2次差.为了寻找极小点,一般来说应向 最差, 最好, 次差.为了寻找极小点, 最差点的反对称方向进行搜索. 最差点的反对称方向进行搜索 . 以 X4 记为 X2 X3 的中点在 X1 X4 的 延长线上取点X5,使 X 4 + ( X 4 − X 1 ) = 2 X 4 − X 1 X5 = 称为X5为X1关于X4的反射点. 如图5.15。 的反射点. 如图5 15。
,它们作为初始单纯形的顶点(如图所示). 然后计算各顶点的
函数值: ( X 0 ) = 45 , f ( X 1 ) = 125 , f ( X 2 ) = 65 f ,可知X1为最差点,
X0为最好点. 以X3表示 X0和 X2的重心,则
1 n X3 = ∑ Xi − XH n i=0 1 0 8 1 0 8 1 8 = + + − = 2 9 1 1 1 1 1 1 1 0
⑻收敛性检验 每次得新单纯形后,即应进行收敛性检验,如满足收敛指标,则迭代停止, 每次得新单纯形后,即应进行收敛性检验,如满足收敛指标,则迭代停止,XL即为所 求的近似解.否则,继续进行迭代计算. 求的近似解.否则,继续进行迭代计算.常用的收敛准则是

[f( ε1和ε2为预先给定的允许误差. X i ) − f ( X 为预先给定的允许误差.
§5.8
单纯形法
ቤተ መጻሕፍቲ ባይዱ
目录
• 一、单纯形法基本原理 • 二、单纯形法迭代步骤 • 三、单纯形法有关说明 • 四、习题
单纯形法是利用比较简单几何图形各顶点的 目标函数值,在连续改变几何图形的过程中,逐步 以目标函数值较小的顶点取代目标函数值最大的 顶点,而求优点的方法,属于直接法。
一、单纯形法基本原理
⑹收缩. 收缩. 当f(XG)≤f(Xn+2)<f(XH)时,则需收缩,令 X n + 4 = X n +1 + β ( X n + 2 − X n +1 ) 以代Xn+4替XH构成新单纯形.并转(8). ⑺缩边. 缩边. 当f(XH)≤f(Xn+2),令 X n +5 = X n +1 + β ( X H − X n +1 ) ,如果 f(XH)≤f(Xn+5),则将单纯形缩边,可将向量Xi-XL的长度缩 小一半,即 Xi = XL + (Xi − XL )/2 = (Xi + XL )/2, = 0, 2, , i ≠ L. i 1 Ln , , 这样可得一新单纯形.否则,以Xn+5代替XH形成一新单纯形. 转(8).
i=0

n
L
)] 2 ≤ ε 1
f (X
H
) − f (X L ) ≤ ε2 f (X L )
单 纯 形 法 的 流 程 如 图
例5.6 (P118)
试用单纯形法求
f ( X ) = 4 ( x1 − 5 ) 2 + ( x 2 − 6 ) 2
的极小值. 的极小值
解 选X0=(8,9)T,并取 X1=(10,11)T和X2=(8,11)T.这三点不共线
ε1 > 0, ε2 > 0
X1 t X0,2 0 X0, , n − X0 LX 步长 t 的范围可取 0.5~15.0, 开始时常取−=1.5X2.−, 接近最优点时要减小, 例如取 的范围可取0 15. ~ 接近最优点时要减小 , 0.5~1.0.
⑵计算各顶点的函数值
yi = f ( Xi ) ,i = 0, 2, , 1 Ln ,
二、单纯形法迭代步骤
已知设X为n维变量,目标函数为f(X) ,终止限为 维变量, ⑴构造初始单纯形 在n维空间中选初始点X0(离最优点越近越好),从X0出发,沿各坐标方向以步长t移动 离最优点越近越好),从 出发, ,这样选择顶点可保证向量组 线 得n个顶点 性无关,否则,就会使搜索范围局限在较低维的空间内,可能找不到极小点. 性无关,否则,就会使搜索范围局限在较低维的空间内,可能找不到极小点.当然 X i , i = 1 2 L, ,, n ,在各坐标方向可以走不同的距离. 在各坐标方向可以走不同的距离.
X
n +1
1 = n


n
X
i
− X
H
i=0

如f(Xn+3)<f(Xn+2),则以Xn+3代替XH形成一新单纯形;否则,以代Xn+2替XH构成新单纯 ),则以 形成一新单纯形;否则, Xn+3 = Xn+1 +α( Xn+2 − Xn+1 ) 形.转(8). ⑸无扩缩 当f(XL)≤f(Xn+2)<f(XG),以代Xn+2替XH构成新单纯形.转(8). ),以代 构成新单纯形.
现以求二元函数的极小点为例,说明单纯形法形成原理。 现以求二元函数的极小点为例,说明单纯形法形成原理。 设二元函数 f(X )=f(x1,x2) 在 x1x2 平面上取 不 共线的 三 个点 X1,
X2,X3 , 以此为顶点构一单纯形 ——三角形 . 算出各顶点的函数 以此为顶点构一单纯形—— 三角形.

谢谢!
因 为 f(X5)<f(X4), 故 以 X5 代替 X1, 由 X5 , X0 和 X2 构成 新单纯形,然后进行下一 个循环.该问题的最优解 为 X*=(5,6)T , f(X *)=0.经 32次循环,可把目标函数
f(X)减小到1×10-6.在图中
给出了前几次迭代的情形 .
三、单纯形法有关说明
相关文档
最新文档