约束优化设计(共11页).doc
精选优质文档-倾情为你奉上第四章 约束优化设计l 概述l 约束坐标轮换法l 随机方向法l 罚函数法概述结构优化设计的问题,大多属于约束优化设计问题,其数学模型为: 根据求解方式的不同,可分为直接解法和间接解法两类。直接解法是在仅满足不等式约束的可行设计区域内直接求出问题的约束最优解。属于这类方法的有:随机实验法、随机方向搜索法、复合形法、可行方向法等。其基本思路:在由m个不等式约束条件gu(x)0所确定的可行域内,选择一个初始点然后确定一个可行搜索方向S,且以适当的步长沿S方向进行搜索,取得一个目标函数有所改善的可行的新点即完成了一次迭代。以新点为起始点重复上述搜索过程,每次均按如下的基本迭代格式进行计算:逐步趋向最优解,直到满足终止准则才停止迭代。直接解法的原理简单,方法实用,其特点是:1) 由于整个过程在可行域内进行,因此,迭代计算不论何时终止,都可以获得比初始点好的设计点。2) 若目标函数为凸函数,可行域为凸集,则可获得全域最优解,否则,可能存在多个局部最优解,当选择的初始点不同,而搜索到不同的局部最优解。3) 要求可行域有界的非空集a) 可行域是凸集;b)可行域是非凸集间接解法间接解法是将约束优化问题转化为一系列无约束优化问题来解的一种方法。由于间接解法可以选用已研究比较成熟的无约束优化方法,并且容易处理同时具有不等式约束和等式约束的问题。因而在机械优化设计得到广泛的应用。间接解法中具有代表性的是惩罚函数法。将约束函数进行特殊的加权处理后,和目标函数结合起来,构成一个新的目标函数,即将原约束优化问题转化为一个或一系列的无约束优化问题。新目标函数加权因子然后对新目标函数进行无约束极小化计算。间接法是结构优化设计中广泛使用的有效方法,其特点:1) 由于无约束优化方法的研究日趋成熟,为间接法提供可靠基础。这类算法的计算效率和数值计算的稳定性大有提高;2) 可以有效处理具有等式约束的约束优化问题;3) 目前存在的主要问题,选取加权因子较为困难,选取不当,不仅影响收敛速度和计算精度,甚至导致计算失败。l 约束坐标轮换法约束坐标轮换法是在无约束坐标轮换法的基础上,再加上由约束条件构成的可行性逻辑判断而构成的方法,这样可以使搜索点保持在可行域内,求得最优解。迭代步长不是采用最优步长,而是加速步长。其基本思路:在可行域任取一点,取一个初始步长,按,取得沿坐标轴第一个迭代点,检查该点是否满足可行性和适用性:(可行性条件)(适用性条件)若两者均满足,步长加倍,迭代计算,只要迭代点满足条件,加倍增大步长,继续迭代获得新点;当迭代点不满足条件,取前一个迭代点,转而沿坐标轴方法搜索,不满足条件时,取负步长进行,如图所示,直到逼近最优点。 约束坐标轮换法虽然方法简单、算法明确,便于设计,但当维数较高时收敛速度慢,还会出现“死点”,导致出现伪最优点。l 约束随机方法随机方向法的基本思路:在可行域内选择一个初始点,利用随机数的概率特性,产生若干个随机方向,并从中选择一个能使目标函数值下降最快的随机方向作为搜索方向S。从初始点出发,沿方向以一定步长进行搜索,得到新点,新点应满足约束条件且,至此完成一次迭代。随机方向法程序设计简单,搜索速度快,是解决小型机械优化问题的十分有效的算法。如图所示。1. 随机数的产生下面介绍一种常用的产生随机数的数学模型首先令取r=,按一下步骤计算:令若 则若 则若 则则 (0,1)之间的随机数在任意(a,b)区间内的随机数2. 初始点的选择随机方向法的初始点必须是一个可行点,既满足全部不等式约束条件。初始点可以通过随机选择的方法产生。1)输入设计变量的下限值和上限值,即2)在区间(0,1)内产生n个伪随机数3)计算随机点x的各分量4)判别随机点x是否可行,若随机点可行,用x代替x0为初始点;若非可行点,转到步骤2)重新产生随机点,只到可行为止。3. 可行搜索方向的产生产生可行随机方向的方法:从k个随机方向中, 选取一个较好的方向。其计算步骤为:1)在(-1,1)区间内产生伪随机数, 得随机单位向量 2) 取一试验步长,按下式计算k个随机点 3)检验k个随机点是否为可行点,除去非可行点,计算余下的可行点的目标函数值,比较其大小,选出目标函数最小的点。4)比较和两点的目标函数值,若,则取和连线方向为可行搜索方向;若,则步长缩小,转步骤1)重新计算,直至为止。如果0 缩小到很小,仍然找不到一个,使则说明是一个局部极小点,此时可更换初始点,转步骤1)。产生可行搜索方向的条件为: 则可行搜索方向为: 4. 搜索步长的确定 步长由加速步长法确定。l 复合形法复合形法是求解约束优化问题的一种重要的直接解法。 它的基本思路是在可行域内构造一个具有k个顶点的初始复合形。对该复合形各顶点的目标函数值进行比较,找到目标函数最大的顶点(最坏点),然后按一定的法则求出目标函数值有所下降的可行的新点,并用此点代替最坏点,构成新的复合形,复合形的形状没改变一次,就向最优点移动一步,直至逼近最优点。 由于复合形的形状不必保持规则的图形,对目标函数和约束函数无特殊要求,因此这种方法适应性强,在机械优化设计中应用广泛。1. 初始复合形生成的方法:1)由设计者决定k个可行点,构成初始复合形。设计变量少时适用。2)由设计者选定一个可行点,其余的k-1个可形点用随机法产生。 3)由计算机自动生成初始复合形的所有顶点。2. 复合形法的搜索方法 1)反射(1)计算复合形各顶点的目标函数值,并比较其大小,求出最好点XL、最坏点XH 及次坏点XG,即(2)计算除去最坏点XH 外的(k-1)个顶点的中心XC (3)从统计的观点来看,一般情况下,最坏点XH和中心点XC的连线方向为目标函数的下降方向。如图所示。(4)判别反射点XR的位置若XR 为可行点,则比较XR 和XH 两点的目标函数值,如果f(XR) <f(XH),则用XR取代XH ,构成新的复合形,完成一次迭代;如果f(XR) >=f(XH),则将缩小0.7倍,重新计算新的反射点,若仍不行,继续缩小,直至f(XR) <f(XH)为止。 若为非可行点,则将缩小0.7倍,直至可行为止。然后再重复可行点的步骤。2)扩张 若XR 的目标函数比XL还好,可以沿此方向进一步扩张,为扩张系数。若扩张失败,仍采用XR,如图所示。3) 收缩 若XR 以外找不到好的映射点,也可以向内寻找,如图所示,为收缩系数。4) 压缩若上述方法均无效,可以采用向XL靠拢,采用压缩方法改变复合形状l 惩罚函数法惩罚函数法是一种很广泛、很有效的间接解法。它的基本原理是将约束优化问题中的不等式和不等式约束函数经加权后,和原目标函数结合为新的目标函数惩罚函数。其中:G、H为加权转化项。后两项也称为惩罚项,在迭代过程中始终是正值,故:随着迭代次数的增加,数值相差越来越小,最后趋近相等。的最优解就是的最优解,即惩罚项趋近0, 将约束优化问题转换为无约束优化问题。求解无约束优化问题的极小值,从而得到原约束优化问题的最优解。罚函数法是按一定的法则改变加权因子的值,构成一系列的无约束优化问题,求一系列无约束最优解,并不断地逼近原约束优化问题的最优解。因此又称序列无约束极小化方法。常称SUMT方法。根据它们在惩罚函数中的作用,分别称障碍项和惩罚项。障碍项的作用是当迭代点在可行域内时,在迭代过程中将阻止迭代点越出可形域。惩罚项的作用是当迭代点在非可行域或不满足等式约束条件时,在迭代过程中将迫使迭代点逼近约束边界或等式约束曲面。按照惩罚函数在优化过程中迭代点是否可行,分为:内点法、外点法及混合法。一、内点惩罚函数法内点法将新目标函数定义于可行域内,这样它的初始点及后面的迭代点序列必定在可行域内。采用内点法只能求解具有不等式约束的优化问题。 转化后的惩罚函数形式为:障碍项的作用是阻止迭代点越出可行域。下面介绍内点法中的初始点、惩罚因子初值及其缩减系数的选取和收敛条件的确定。1.初始点的选取 初始点应选离约束边界较远的可行点。程序设计时,一般,考虑具有人工输入、和计算机自动生成可行初始点的两种功能。2.惩罚因子的初值的选取惩罚因子的初值选取应适当,否则会影响迭代计算的正常进行。太大会影响迭代次数,太小会使惩罚函数的形态变坏,难以收敛到极值点。1)取,根据试算的结果,再决定增加或减少值。2)按经验公式 计算值。这样选取的,可以是惩罚函数中的障碍项和原目标函数的值大致相等,不会因障碍项的值太大则其支配作用,也不会因障碍项的值太小而被忽略掉。3.惩罚因子的缩减系数c的选取在构造序列惩罚函数时,惩罚因子r是一个逐次递减到0的数列,相邻两次迭代的惩罚因子的关系为: 惩罚因子的缩减系数c,通常的取值范围:0.1-0.7之间。4. 收敛条件一般:,算法框图:例题:用内点法求问题 约束最优解。解:用内点法求解,首先构造内点惩罚函数:用解析法对函数求极小值。解得: 不满足约束条件( ),舍去。无约束极值点为:取 r=1,c=0.1,0.01.。. 当 原问题的约束最优解为 ,随着的减小,约束最优点越来越近,惩罚项不断减小,当,惩罚项也趋近0二、外点惩罚函数法 内点法是将惩罚因数定义于可行域内,而外点法与内点法不同,是将惩罚项函数定义于可行区域的外部。序列迭代点从可行域外部逐渐逼近约束边界上的最优点。外点法可以用来求解含不等式和等式约束的优化问题。对于约束优化问题:转化后的外点惩罚函数的形式为: 惩罚因子,g, h 为惩罚项 由惩罚项可知,当迭代点不可行时,惩罚项的值大于零。当迭代点离约束边界越远时,惩罚项愈大,这可看成是对迭代点不满足约束条件的一种惩罚外点法惩罚因子按下式递增 C递增系数,通常取c=5-10与内点法相反计算值。选取的太大则会使惩罚函数等值线偏心或变形,难以取得极小值。但太小,势必增加迭代次数。经验计算一般取,c=10常常可以取得满意的效果。也可以通过经验公式获得r0 值外点法的特点: 1初始点可以任选,但应使各函数有定义 2对等式约束和不等式约束均可适用 3仅最优解为可行设计方案 4一般收敛较快 5初始罚因子要选择得当 6惩罚因子为递增,递增率c有c>1 。内点法的特点: 1初始点必须为严格内点2不适于具有等式约束的数学模型 3迭代过程中各个点均为可行设计方案 4一般收敛较慢 5初始罚因子要选择得当6罚因子为递减,递减率c有0<c<1。例题: 用外点法求问题约束最优解。首先构造外点惩罚函数: 用解析法求解 解得:三、混合惩罚函数法由于内点法容易处理不等式约束优化设计问题,而外点法又容易处理等式约束优化设计问题,因而可将内点法与外点法结合起来,处理同时具有等式约束和不等式约束的优化设计问题。在构造惩罚函数时,可以同时包括障碍项与惩罚项,并将惩罚因子统一用r(k)表示:这种同时处理等式和不等式约束的惩罚函数法称为混合惩罚函数法。混合惩罚函数法与前述内点法和外点法一样,也属于序列无约束极小化(SUMT)方法中的种方法。习题:设约束优化问题的数学模型为 试用内点惩罚函数法求该问题的约束极小点。(至少2步迭代)专心-专注-专业