约束优化方法.ppt
- 文档编号:9558753
- 上传时间:2023-05-20
- 格式:PPT
- 页数:38
- 大小:386KB
约束优化方法.ppt
《约束优化方法.ppt》由会员分享,可在线阅读,更多相关《约束优化方法.ppt(38页珍藏版)》请在冰点文库上搜索。
2023/5/20,1,第六章非线性规划,二.随机方向法,三.惩罚函数法,四.增广乘子法,一.概述,一.概述,机械优化设计中的问题,大多数属于约束优化设计问题,其数学模型为求解约束优化问题的方法称为约束优化方法。
根据求解方式的不同,可分为直接解法间接解法,2023/5/20,3,直接解法,通常适用于仅含不等式约束的问题它的基本思路是所谓可行搜索方向是指,当设计点沿该方向作微量移动时,目标函数值将下降,且不会越出可行域。
产生可行搜索方向的方法将由直接解法中的各种算法决定。
2023/5/20,4,直接解法的特点,由于整个求解过程在可行域内进行,因此,迭代计算不论何时终止,都可以获得一个比初始点好的设计点全局最优解、局部最优解要求可行域为有界的非空集,即在有界可行域内存在满足全部约束条件的点,且目标函数有定义,2023/5/20,5,间接解法,基本思路是原约束优化问题转化成为一个或一系列的无约束优化问题。
再对新的目标函数进行无约束优化计算,从而间接地搜索到原约束问题的最优解,2023/5/20,6,间接解法框图,开始,输入n,x0,1,2,构造(x,1,2),求min(x,1,2),满足收敛条件,结束,x0=x*,改变1,2的值,是,否,2023/5/20,7,间接解法特点,
(1)由于无约束优化方法的研究日趋成熟,已经研究出不少有效的无约束最优化方法和程序,使得间接解法有了可靠的基础。
目前,这类算法的计算效率和数值计算的稳定性也都有较大的提高。
(2)可以有效地处理具有等式约束的约束优化问题。
(3)间接解法存在的主要问题是,选取加权因子较为困难。
加权因子选取不当,不但影响收敛速度和计算精度,甚至会导致计算失败。
2023/5/20,8,求解约束优化设计问题的方法,直接解法随机方向法、复合形法、可行方向法等间接解法惩罚函数法和增广乘子法等,2023/5/20,9,二.随机方向法,在可行域内,选择一个初始点x0,利用随机数的概率特征,产生若干个随机方向,从中选择一个能使目标函数值下降的最快的方向作为可行搜索方向,记作d,初始点x0出发,沿d方向以一定的步长进行搜索,得到新点x,新点应满足约束条件且f(x)f(x0),令x0x,满足收敛条件,结束,是,否,2023/5/20,10,随机方向法的特点,随机方向法的优点是对目标函数的性态无特殊要求,程序设计简单,使用方便。
由于可行搜索方向是从许多随机方向中选择的使目标函数值下降的最快的方向,加之步长还可以灵活变动,所以此算法的收敛速度比较快。
它是求解小型机械优化问题的一种十分有效的算法。
2023/5/20,11,随机方向法,随机数的产生初始点的选择可行搜索方向的产生搜索步长的确定,2023/5/20,12,随机数的产生,伪随机数产生速度快,计算机内存占用少,有较好的概率统计特性一种产生伪随机数的模型首先令r1=235,r2=236,r3=237,取r=2657863(r为小于r1的正奇数)然后按以下步骤计算令r=5r若rr3,则r=rr3;若rr2,则r=rr2;若rr1,则r=rr1则q=r/r1q即为(0,1)区间的伪随机数任意区间(a,b)内的伪随机数计算公式为,2023/5/20,13,初始点的选择,可用随机选择的方法来产生,其计算步骤为
(1)输入设计变量的下限值和上限值,即
(2)在区间(0,1)内产生n个伪随机数qi(i=1,2,n)(3)计算随机点x的各分量(4)判别随机点x是否可行,若随机点x可行,则取初始点x0=x;若随机点不可行,则转步骤
(2)重新计算,直到产生的随机点是可行点为止。
2023/5/20,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),则将步长缩小,转步骤
(1)重新计算,直至f(xL)f(x0)为止。
2023/5/20,15,产生可行搜索方向的条件可概括为,当xL点满足则可行搜索方向为,2023/5/20,16,搜索步长的确定,可行搜索方向d确定后,初始点移至xL点,即x0=xL,从x0出发沿d方向进行搜索所用步长a一般用加速步长法来确定加速步长法是指依次迭代的步长按一定的比例递增的方法。
各次迭代的步长按下式计算,步长加速系数,可取=1.3,a步长,初始步长可取a=a0,2023/5/20,17,随机方向法的计算步骤,
(1)选择一个可行的初始点x0
(2)产生k个n维随机单位向量ej(j=1,2,k)(3)取试验步长a0,计算k个随机点xj(j=1,2,k)(4)在k个随机点中找出满足条件的随机点xL,产生可行搜索方向d=xL-x0(5)从初始点x0出发,沿可行搜索方向d以步长a进行迭代计算,直至搜索到一个满足全部约束条件,且目标函数值不再下降的新点x(6)若收敛条件得到满足,迭代终止,x*=x。
否则令x0=x转步骤
(2),2023/5/20,18,三.惩罚函数法,基本原理求解该新目标函数的无约束极小值,以期得到原问题的最优解按一定的法则改变加权因子r1和r2的值,构成一系列的无约束优化问题,求得一系列的无约束最优解,并不断逼近原约束问题的最优解。
因此惩罚函数法又称序列无约束极小化方法,加权处理,惩罚函数,2023/5/20,19,加权转化项根据其在惩罚函数中的作用,又分别称为障碍项和惩罚项障碍项的作用是当迭代点在可行域内时,在迭代过程中将阻止迭代点越出可行域惩罚项的作用是当迭代点在非可行域或不满足等式约束条件时,在迭代过程中将迫使迭代点逼近约束边界或等式约束曲面。
根据迭代过程是否在可行域内进行,惩罚函数法又可分为内点惩罚函数法、外点惩罚函数法和混合惩罚函数法三种。
加权转化项,2023/5/20,20,内点惩罚函数法,内点惩罚函数法简称内点法,这种方法将新目标函数定义于可行域内,序列迭代点在可行域内逐步逼近约束边界上的最优点内点法只能用来求解具有不等式约束的优化问题r惩罚因子,它是由大到小且趋近于0的数列,即r0r1r20由障碍函数的形式可知,当迭代点靠近某一约束边界时,其值趋近于0,面障碍项的值陡然增加,并趋于无穷大,好像在可行域的边界上筑起了一“围墙”,使迭代点始终不能越出可行域。
显然,只有当惩罚因子0时,才能求得在约束边界上的最优解。
转化后的惩罚函数形式,2023/5/20,21,内点法,初始点x0的选择惩罚因子的初值r0的选择惩罚因子的缩减系数c的选择收敛条件,2023/5/20,22,
(1)初始点x0的选取,初始点x0应选择一离约束边界较远的可行点若x0太靠近某一约束边界,构造的惩罚函数可能由于障碍项的值很大而变得畸形,使求解无约束优化问题发生困难。
程序设计时,一般都考虑使程序具有人工输入或计算机自动生成可行初始点的两种功能,由使用者选用计算机自动生成可行初始点通常采用的方法是利用随机数生成设计点,2023/5/20,23,
(2)惩罚因子初值r0的选取,惩罚因子的初值r0的选取应适当,否则会影响迭代计算的正常进行r0太大,将增加迭代的次数;r0太小,会使惩罚函数的性态变坏,甚至难以收敛到极值点。
1)取r0=1根据试算的结果,再决定增加或减小r0的值2)按经验公式计算r0值,2023/5/20,24,(3)惩罚因子的缩减系数c的选取,在构造序列惩罚函数时,惩罚因子r是一个逐次递减到0的数列,相邻两次迭代的惩罚因子的关系为式中的c称为惩罚因子的缩减系数,c为小于1的正数。
一般的看法是,c值的大小在迭代过程中不起决定性作用,通常的取值范围在0.10.7之间,2023/5/20,25,(4)收敛条件,内点法的收敛条件为,2023/5/20,26,内点法的计算步骤,
(1)选取可行的初始点x0,惩罚因子的初值r0,缩减系数c以及收敛精度1,2
(2)构造惩罚函数(x,r),选择适当的无约束优化方法,求函数的无约束极值,得x*(rk)点(3)有收敛条件判断迭代是否收敛,若满足收敛条件,迭代终止,否则令rk1=crk,x0=x*(rk),k=k+1,转步骤
(2),2023/5/20,27,外点惩罚函数法,外点惩罚函数法简称外点法。
这种方法与内点法相反,新目标函数定义在可行域之外,序列迭代点从可行域之外逐渐逼近约束边界上的最优点。
外点法可以用来求解含不等式约束和等式约束的优化问题,r惩罚因子,它是由小到大且趋近于的数列,即r0r1r2,转化后的外点惩罚函数,分别为对应于不等式约束和等式约束函数的惩罚项,2023/5/20,28,由于外点法的迭代过程在可行域之外进行,惩罚项的作用是迫使迭代点逼近约束边界或等式约束曲面由惩罚项的形式可知,当迭代点x0不可行时,惩罚项的值大于0。
使得惩罚函数(x,r)大于原函数值,这可看成是对迭代点不满足约束条件的一种惩罚。
当迭代点离约束边界愈远,惩罚项的值愈大,这种惩罚愈重当迭代点不断接近约束边界和等式约束曲面时,惩罚项的值减小,且趋近于0,惩罚项的作用逐渐消失,迭代点也就趋近于约束边界上的最优点,2023/5/20,29,外点法,初始点x0的选择惩罚因子的初值r0的选择惩罚因子的递增系数c的选择收敛条件,2023/5/20,30,
(1)惩罚因子初值r0的选取,惩罚因子的初值r0的选取应适当,否则会影响迭代计算的正常进行,与内点法相反r0太小,将增加迭代的次数;r0太大,会使惩罚函数的性态变坏,甚至难以收敛到极值点。
1)许多计算表明,取r0=1常常可以取得满意的效果2)按经验公式计算r0值,2023/5/20,31,
(2)惩罚因子的递增系数c的选取,在构造序列惩罚函数时,惩罚因子r是一个逐次增加到的数列,相邻两次迭代的惩罚因子的关系为式中的c称为惩罚因子的递增系数,c为大于1的正数。
通常取c510,许多计算表明取c10常常可以取得满意的结果,2023/5/20,32,惩罚函数法的特点,惩罚函数法原理简单,算法易行,适用范围广,并且可以和各种有效的无约束最优化方法结合起来,因此得到了广泛的应用但是惩罚函数法也存在不少问题,从理论上讲只有当r(外点法)或r0(内点法)时算法才能收敛,因此序列迭代过程收敛较慢。
另外,当惩罚因子的初值r0取值不合适时,惩罚函数可能变得病态,使无约束最优化计算发生困难。
2023/5/20,33,四.增广乘子法,随着近年来,对增广乘子法研究的不断深入,增广乘子法在计算过程中的数值稳定性,计算效率不断提高,都超过了惩罚函数法目前增广乘子法在理论上得到了总结提高,在算法上也积累了不少经验,使得这种方法日益完善增广乘子法以拉格朗日乘子法为基础,2023/5/20,34,拉格朗日乘子法,极值必要条件,拉格朗日函数,联立求解,可得极值点x*和拉格朗日乘子,2023/5/20,35,用拉格朗日乘子法求问题,构造拉格朗日函数,令L0,2023/5/20,36,拉格朗日乘子法,缺点对于非凸问题容易失败对于大型的非线性优化问题,需求解高次联立方程组,其数值解法几乎和求解优化问题同样困难还必须分离出方程组的重根拉格朗日乘子法用来求解一般的约束优化问题并不是一种有效的方法,2023/5/20,37,等式约束的增广乘子法,基本原理将惩罚函数法和拉格朗日乘子法结合起来,求解非凸问题容易失败求解大型非线性方程组分离方程的重根,计算效率低,2023/5/20,38,增广乘子函数,约束极值点x*,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 约束 优化 方法