当前位置:
文档之家› [所有分类]第五章 约束优化方法
[所有分类]第五章 约束优化方法
例如: 设有一约束优化问题的数学模型是
该目标函数的等值线和可行域的几何图形如图5-3所示。 用复合形法求该问题的约束最优解的过程如下:
x2 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 x1 2 4 6 9 1 3 5
7 8 x* 10
图 5-3 复合形法引例
在可行域内任选三个初始点 X(1)、X(2)、X(3),连接这 三点形成一个三角形,此三角形称为初始复合形。计算各 个顶点函数值F(X(1))、 F(X(2))、F(X(3)),找出最大值,记 为坏点 X(H) 。最小值,记为最好点 X(L) 。在次好点和好点 连线与坏点反向一侧的各点应具有较小的目标值。 取次好点和好点连线的中点为X(S)。 令:X(R)= X(S)+α(X(S)-X(H)) 称X(R)为映射点,α为映射系数,通常取α=1.3,可 根据实际情况进行缩减。 一般情况下,映射点的函数值比坏点的函数值要 小,即F(X(R))< F(X(H))。若满足可行域,则用X(R)代替 X(H)构成新的复合形。如此反复迭代直到找到最优解。
由于随机数yi在区间( -1,1)内产生,所构成的随机方向 矢量S一定是在超球面空间里均匀分布且模等于1的单位矢量。
二、随机方向法
如图5-1所示的二维问题。首先选定可行初始点X (0), 利用随机函数构成随机方向S(1),按给定的初始步长 h=h0沿S(1)方向取得试探点
检查点X(1)的适用性和可行性,即检查
1.产生K个随机点
根据随机数产生的标准函数,可以在(0,1)开区间内产 生均匀分布的随机数ξi 。利用该随机数可产生变量xi在给定界 限ai<xi<bi内的随机数
xi= ai +ξi (bi - ai) i=1,2,….,n
用这n个随机数xi作为坐标的点X就是一个随机点。这第一个点 记作X (1)。 同样,产生其它的随机点X (2)、X (3)、……X (K)。 因每产生一个随机点,需要n个随机数,因此,产生k个 随机点总共需要连续发生K×n个随机数。
目标函数值下降 第二次迭代 以X1为初始点,继续使用e1方向直到不满足可行 性和适用性条件,再重新生成随机搜索方向e2。 (以下过程略)
随机方向法方法评价: 优点: 1 对目标函数无性态要求; 2 收敛快(当随机方向限定数m 足够大时); 3不受维数影响,维数愈高,愈体现优点。 缺点: 1 对于严重非线性函数,只能得近似解; 2 当m不够大时,解的近似程度大; 3 对于非凸函数,有可能收敛于局部解。
X (1)
S
( 2)
X ( 3)
X(2)
S(1)
( 3) X x x ( 3)
*
X(0)
图5-1 随机方向法
若两者均满足,X作为新的起点,
继续按上述迭代式在S(1)方向上取得新点。重复上 述步骤,迭代点可沿S (1)方向前进。
直至达到某迭代点不能同时满足适用性和可行性 条件时停止,退回到前一点作为该方向搜索中的最终 成功点,记作X(1)。 进而,将X(1)作为新的始点X (0) ←X (1) ,再产生 另一随机方向S(2) ,重复以上过程,得到沿S(2)方向的 最终成功点X(2) 。如此循环,点列X (1)、X (2)、……必 将逼近于约束最优点X*。
第五章 约束优化方法
§5-1 约束最优解及其一阶必要条件
§5-2 随机方向法 §5-3 复合形法 §5-4 可行方向法 §5-5 内惩罚函数法 §5-6 外惩罚函数法 §5-7 混合惩罚函数法 §5-8 扩展内惩罚函数法
§5-1约束最优解及其一阶必要条件
机械优化设计中的问题,大多数属于约束优化设计 问题,其数学模型为
根据求解方式的不同,约束优化设计问题可分为 : 直接解法、间接解法。 (1)直接法 直接解法通常适用于仅含不等式约束的问题。 思路:是在m个不等式约束条件所确定的可行域内, 选择一个初始点,然后决定可行搜索方向sk且以适当的 步长αk ,进行搜索,得到一个使目标函数值下降的可行 的新点,即完成一次迭代。再以新点为起点,重复上述 搜索过程,直至满足收敛条件。
新目标函数:( x, r1 , r2 ) f ( x)
(k ) (k )
r1
(k )
G[ g ( x)] r H [h ( x)]
(k ) u 1 u 2 v 1 v
m
p
其中: 惩罚项:
加权因子(惩罚因子):
无约束优化问题:
r1(k) , r2(k)
Φ函数的极小点序列 x (k)* ( r1 (k) , r2 (k) ) k= 0,1,2… 其 收敛必须满足:
§5-3 复合形法
复合形法是求解约束非线性最优化问题的一种重 要的直接方法。不需计算目标函数的梯度,而是靠选
取复合形的顶点井比较各顶点处目标函数值的大小,
来寻找下一步的探索方向的。在用于求解约束问题的 复合形法中,复合形各顶点的选择和替换,不仅要满 足目标函数值的下降,还应当满足所有的约束条件。
一、复合形法基本思想:
(1)计算q个点集的中心X (s); (2)将第q+1点朝着点X (s)的方向移动,按下式产生新的X (q+1) 即 X(q+1)= X(s)+0.5 (X(q+1)-X(s))
这个新点X(q+1)实际就是X(s)与原X(q+1)两点连线的中点,如图。
若新的X(q+1)点仍为非可行点,按上式再产生X(q+1),使它更向X(s)靠 拢,最终使其成为可行点。
由此得第一个随机方向为:
2) 求第一个迭代点 第一个迭代点表达式为:
式中a为步长。
将X1的表达式代入目标函数中,进行一维搜索, 令目标函数对步长a的一阶导数为0,即可求出沿e1方 向的最优步长。
第一个迭代点为:
3)检验X1点是否满足约束条件 g(X1)=2*4.2+5.6=14>12, X1满足约束条件,是可行点。相应的目标函数值为:
二、初始复合形的构成
复合形的顶点K≥n+1个。对于维数较低的优化问题 ,由于顶点数目较少,可试凑几个可行点作为复合形的 顶点。对于维数较高的问题,采用随机方法,先产生K 个随机点,然后再把非可行点逐一调入可行域内。最终 使K个随机点都成为可行点而机产生初始复合形
§5-2 随机方向法
基本思想:
随机产生初始点X (0) ,随机产生搜索方向 S(k) , 进行搜索。但要确保: ① 新迭代点在可行域中; ② 目标函数值的下降性。
随机方向法,是约束最优化问题的一种常用的
直接求解方法。
一、 随机方向的构成
在计算机语言所适用的函数库中,都有一种随机函数, 可以产生 0~1 之间的均匀分布的随机数,利用产生的随机数 构成随机方向。 若利用在(0,1)之间产生的随机数 ,i=1,2,……, n,构成单位矢量S,方法如下。 把随机数 ,转化为另一区间(-1,1)之间的随机数 然后由随机数yi构成以下随机方向
实际工程中大部分问题的变量取值都有一定的限 制,也就是属于有约束条件的寻优问题。
与无约束问题不同,约束问题目标函数的最小值 必须是满足约束条件,即是由约束条件所限定的可行 域内的最小值。
只要由约束条件所决定的可行域是一个凸集,目 标函数是凸函数,其约束最优解就是全域最优解。否 则,将由于所选择的初始点的不同,而探索到不同的 局部最优解上。在这种情况下,探索结果经常与初始 点的选择有关。(为了能得到全局最优解,在探索过程 中最好能改变初始点,有时甚至要改换几次。)
2、将非可行点调入可行域
用上述方法产生的K个随机点,并不一定都是可行的。但是,
只要它们中间有一个点在可行域内,就可以用一定的方法将非可行 点逐一调入可行域。 将产生的K个随机点进行判断是否在可行域内,重新排列,将 可行点依次排在前面,如有q个顶点X (1)、X (2)、……X (q)是可行点,
其它K-q个为非可行点。对X (q+1),将其调入可行域的步骤是:
按照这个方法,同样使X 个点就构成了初始复合形。
(q+2)、X (q+3)、……X (K)都变为可行点,这K
三、复合形法的迭代步骤
(1)构造初始复合形; (2)计算各顶点的函数值F(X(j)),j=1,2,….,K。选出好点X(L) 和坏
点X(H)。
(3)计算坏点外的其余各顶点的中心点X(s)。
(4)计算映射点X(R): 检查X(R)是否在可行域内。若X(R)为非可行点,将映射系数减 半后再按上式改变映射点,直到X(R)进入可行域内为止。
若经过多次的映射系数减半,仍不能使映射点优于坏点,则说明
该映射方向不利,此时,应改变映射方向,取对次坏点的映射。
(1) 若在某个换向转折点处(如图中的X (1)点),沿 某搜索方向的试探点目标函数值增大或越出可行域, 则弃去该方向,再产生另一随机方向作试探。试探 成功就前进,试探失败再重新产生新的随机方向。
(2) 当在某个转折点处沿m个(预先限定的次数) 随机方向试探均失败,如图中点X (2),则说明以此 点为中心,h0 为半径的圆周上各点都不是适用、 可行的。此时可将初始步长 h0缩半后继续试探,直 到 f(k+1)≤ f(k),且沿m个随机方向都试探失败时,则 最后一个成功点(如图中的X (3)点)就是到达预定 精度要求的约束最优点,迭代即可结束。
N
X←X (0)+aS
a≤e ?
Y
N
a←0.5a
X
*←
X F*←F
图5-2随机方向法程序框图
出口
三 举例 例:用约束随机方向法求解
解:人工选取一初始点X0=[5,5]T,初始点在可行域内。 相应的目标函数值为F(X0)=50。 第一次迭代 1) 产生两个伪随机数,求出第一个随机方向。 生成两个伪随机数
在 n 维空间中,由n+1≤ k≤2n 个点组成的多(边) 面体称为复合形。