6.约束最优化方法.ppt_第1页
6.约束最优化方法.ppt_第2页
6.约束最优化方法.ppt_第3页
6.约束最优化方法.ppt_第4页
6.约束最优化方法.ppt_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2020/8/12,1,第六章 约束最优化方法,二. 随机方向法,三. 惩罚函数法,四. 增广乘子法,一. 概述,一. 概述,机械优化设计中的问题,大多数属于约束优化设计问题,其数学模型为 求解约束优化问题的方法称为约束优化方法。 根据求解方式的不同,可分为 直接解法 间接解法,2020/8/12,3,直接解法,通常适用于仅含不等式约束的问题 它的基本思路是 所谓可行搜索方向是指,当设计点沿该方向作微量移动时,目标函数值将下降,且不会越出可行域。 产生可行搜索方向的方法将由直接解法中的各种算法决定。,2020/8/12,4,直接解法的特点,由于整个求解过程在可行域内进行,因此,迭代计算不论何时

2、终止,都可以获得一个比初始点好的设计点 全局最优解、局部最优解 要求可行域为有界的非空集,即在有界可行域内存在满足全部约束条件的点,且目标函数有定义,2020/8/12,5,间接解法,基本思路是原约束优化问题转化成为一个或一系列的无约束优化问题。再对新的目标函数进行无约束优化计算,从而间接地搜索到原约束问题的最优解,2020/8/12,6,间接解法框图,开始,输入n, x0, 1, 2,构造(x, 1, 2 ),求min (x, 1, 2 ),满足收敛条件,结束,x0=x*,改变1, 2的值,是,否,2020/8/12,7,间接解法特点,(1)由于无约束优化方法的研究日趋成熟,已经研究出不少有

3、效的无约束最优化方法和程序,使得间接解法有了可靠的基础。目前,这类算法的计算效率和数值计算的稳定性也都有较大的提高。 (2)可以有效地处理具有等式约束的约束优化问题。 (3)间接解法存在的主要问题是,选取加权因子较为困难。加权因子选取不当,不但影响收敛速度和计算精度,甚至会导致计算失败。,2020/8/12,8,求解约束优化设计问题的方法,直接解法 随机方向法、复合形法、可行方向法等 间接解法 惩罚函数法和增广乘子法等,2020/8/12,9,二. 随机方向法,在可行域内,选择一个初始点x0,利用随机数的概率特征,产生若干个随机方向,从中选择一个能使目标函数值下降的最快的方向 作为可行搜索方向

4、,记作d,初始点x0出发,沿d方向以一定的步长进行搜索, 得到新点x,新点应满足约束条件且f(x)f(x0),令x0 x,满足收敛条件,结束,是,否,2020/8/12,10,随机方向法的特点,随机方向法的优点是对目标函数的性态无特殊要求,程序设计简单,使用方便。 由于可行搜索方向是从许多随机方向中选择的使目标函数值 下降的最快的方向,加之步长还可以灵活变动,所以此算法的收敛速度比较快。 它是求解小型机械优化问题的一种十分有效的算法。,2020/8/12,11,随机方向法,随机数的产生 初始点的选择 可行搜索方向的产生 搜索步长的确定,2020/8/12,12,随机数的产生,伪随机数 产生速度

5、快,计算机内存占用少,有较好的概率统计特性 一种产生伪随机数的模型 首先令r1=235, r2=236, r3=237,取r=2657863(r为小于r1的正奇数)然后按以下步骤计算 令r=5r 若rr3,则r=rr3; 若rr2,则r=rr2; 若rr1,则r=rr1 则q=r/r1 q 即为(0, 1)区间的伪随机数 任意区间(a, b)内的伪随机数计算公式为,2020/8/12,13,初始点的选择,可用随机选择的方法来产生,其计算步骤为 (1)输入设计变量的下限值和上限值,即 (2)在区间(0, 1)内产生n个伪随机数qi (i=1,2, ,n) (3)计算随机点x的各分量 (4)判别随

6、机点x是否可行,若随机点x可行,则取初始点x0=x;若随机点不可行,则转步骤(2)重新计算,直到产生的随机点是可行点为止。,2020/8/12,14,可行搜索方向的产生,(1)在(-1,1)区间内产生伪随机数rij(i=1, 2, , n; j=1, 2, , k; kn),按下式计算随机单位向量ej (2)取一试验步长a0,按下式计算k个随机点 (3)检验k个随机点是否为可行点,除去非可行点,计算余下的可行随机点的函数值,并比较其大小,选出函数值最小的点xL (4)比较xL和x0两点的目标函数值, 若f(xL)f(x0),则取xL和x0两点的连线方向作为可行搜索方向; 若f(xL)f(x0)

7、,则将步长缩小,转步骤(1)重新计算,直至f(xL)f(x0)为止。,2020/8/12,15,产生可行搜索方向的条件可概括为,当xL点满足 则可行搜索方向为,2020/8/12,16,搜索步长的确定,可行搜索方向d确定后,初始点移至xL点,即x0=xL,从x0出发沿d方向进行搜索 所用步长a一般用加速步长法来确定 加速步长法是指依次迭代的步长按一定的比例递增的方法。各次迭代的步长按下式计算,步长加速系数,可取=1.3,a步长,初始步长可取a=a0,2020/8/12,17,随机方向法的计算步骤,(1)选择一个可行的初始点x0 (2)产生k个n维随机单位向量ej(j=1, 2, , k) (3

8、)取试验步长a0,计算k个随机点xj(j=1, 2, , k) (4)在k个随机点中找出满足条件的随机点xL,产生可行搜索方向d=xL-x0 (5)从初始点x0出发,沿可行搜索方向d以步长a进行迭代计算,直至搜索到一个满足全部约束条件,且目标函数值不再下降的新点x (6)若收敛条件得到满足,迭代终止,x*=x。否则令x0=x转步骤(2),2020/8/12,18,三. 惩罚函数法,基本原理 求解该新目标函数的无约束极小值,以期得到原问题的最优解 按一定的法则改变加权因子r1和r2的值,构成一系列的无约束优化问题,求得一系列的无约束最优解,并不断逼近原约束问题的最优解。 因此惩罚函数法又称序列无

9、约束极小化方法,加权处理,惩罚函数,2020/8/12,19,加权转化项根据其在惩罚函数中的作用,又分别称为障碍项和惩罚项 障碍项的作用是当迭代点在可行域内时,在迭代过程中将阻止迭代点越出可行域 惩罚项的作用是当迭代点在非可行域或不满足等式约束条件时,在迭代过程中将迫使迭代点逼近约束边界或等式约束曲面。 根据迭代过程是否在可行域内进行,惩罚函数法又可分为内点惩罚函数法、外点惩罚函数法和混合惩罚函数法三种。,加权转化项,2020/8/12,20,内点惩罚函数法,内点惩罚函数法简称内点法,这种方法将新目标函数定义于可行域内,序列迭代点在可行域内逐步逼近约束边界上的最优点 内点法只能用来求解具有不等

10、式约束的优化问题 r惩罚因子,它是由大到小且趋近于0的数列,即r0r1r20 由障碍函数的形式可知,当迭代点靠近某一约束边界时,其值趋近于0,面障碍项的值陡然增加,并趋于无穷大,好像在可行域的边界上筑起了一“围墙”,使迭代点始终不能越出可行域。 显然,只有当惩罚因子0时,才能求得在约束边界上的最优解。,转化后的惩罚函数形式,2020/8/12,21,内点法,初始点x0的选择 惩罚因子的初值r0的选择 惩罚因子的缩减系数c的选择 收敛条件,2020/8/12,22,(1)初始点x0的选取,初始点x0应选择一离约束边界较远的可行点 若x0太靠近某一约束边界,构造的惩罚函数可能由于障碍项的值很大而变

11、得畸形,使求解无约束优化问题发生困难。 程序设计时,一般都考虑使程序具有人工输入或计算机自动生成可行初始点的两种功能,由使用者选用 计算机自动生成可行初始点通常采用的方法是利用随机数生成设计点,2020/8/12,23,(2)惩罚因子初值r0的选取,惩罚因子的初值r0的选取应适当,否则会影响迭代计算的正常进行 r0太大,将增加迭代的次数; r0太小,会使惩罚函数的性态变坏,甚至难以收敛到极值点。 1)取r0=1根据试算的结果,再决定增加或减小r0的值 2)按经验公式计算r0值,2020/8/12,24,(3)惩罚因子的缩减系数c的选取,在构造序列惩罚函数时,惩罚因子r是一个逐次递减到0的数列,

12、相邻两次迭代的惩罚因子的关系为 式中的c称为惩罚因子的缩减系数,c为小于1的正数。 一般的看法是,c值的大小在迭代过程中不起决定性作用,通常的取值范围在0.10.7之间,2020/8/12,25,(4)收敛条件,内点法的收敛条件为,2020/8/12,26,内点法的计算步骤,(1)选取可行的初始点x0,惩罚因子的初值r0,缩减系数c以及收敛精度1,2 (2)构造惩罚函数(x,r),选择适当的无约束优化方法,求函数的无约束极值,得x*(rk)点 (3)有收敛条件判断迭代是否收敛,若满足收敛条件,迭代终止,否则令rk1=crk,x0=x*(rk),k=k+1,转步骤(2),2020/8/12,27

13、,外点惩罚函数法,外点惩罚函数法简称外点法。这种方法与内点法相反,新目标函数定义在可行域之外,序列迭代点从可行域之外逐渐逼近约束边界上的最优点。 外点法可以用来求解含不等式约束和等式约束的优化问题,r惩罚因子,它是由小到大且趋近于的数列,即r0r1r2,转化后的外点惩罚函数,分别为对应于不等式约束和等式约束 函数的惩罚项,2020/8/12,28,由于外点法的迭代过程在可行域之外进行,惩罚项的作用是迫使迭代点逼近约束边界或等式约束曲面 由惩罚项的形式可知,当迭代点x0不可行时,惩罚项的值大于0。使得惩罚函数(x, r)大于原函数值,这可看成是对迭代点不满足约束条件的一种惩罚。 当迭代点离约束边

14、界愈远,惩罚项的值愈大,这种惩罚愈重 当迭代点不断接近约束边界和等式约束曲面时,惩罚项的值减小,且趋近于0,惩罚项的作用逐渐消失,迭代点也就趋近于约束边界上的最优点,2020/8/12,29,外点法,初始点x0的选择 惩罚因子的初值r0的选择 惩罚因子的递增系数c的选择 收敛条件,2020/8/12,30,(1)惩罚因子初值r0的选取,惩罚因子的初值r0的选取应适当,否则会影响迭代计算的正常进行,与内点法相反 r0太小,将增加迭代的次数; r0太大,会使惩罚函数的性态变坏,甚至难以收敛到极值点。 1)许多计算表明,取r0=1常常可以取得满意的效果 2)按经验公式计算r0值,2020/8/12,

15、31,(2)惩罚因子的递增系数c的选取,在构造序列惩罚函数时,惩罚因子r是一个逐次增加到的数列,相邻两次迭代的惩罚因子的关系为 式中的c称为惩罚因子的递增系数,c为大于1的正数。 通常取c510,许多计算表明取c10常常可以取得满意的结果,2020/8/12,32,惩罚函数法的特点,惩罚函数法原理简单,算法易行,适用范围广,并且可以和各种有效的无约束最优化方法结合起来,因此得到了广泛的应用 但是惩罚函数法也存在不少问题,从理论上讲只有当r(外点法)或r0(内点法)时算法才能收敛,因此序列迭代过程收敛较慢。 另外,当惩罚因子的初值r0取值不合适时,惩罚函数可能变得病态,使无约束 最优化计算发生困难。,2020/8/12,33,四. 增广乘子法,随着近年来,对增广乘子法研究的不断深入,增广乘子法在计算过程中的数值稳定性,计算效率不断提高,都超过了惩罚函数法 目前增广乘子法在理论上得到了总结提高,在算法上也积累了不少经验,使得这种方法日益完善 增广乘子法以拉格朗日乘子法为基础,2020/8/12,34,拉格朗日乘子法,极值必要条件,拉格朗日函数,联立求解,可得极值点x*和拉格朗日乘子,2020/8/12,35,用拉格朗日乘子法求问题,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论