- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章约束优化计算方法综述
第五章 约束优化计算方法;5.1 引言; 上一章讨论的都是无约束条件下非线性函数的寻优方法,但在实际工程中大部分问题的变量取值都有一定的限制,也就是属于有约束条件的寻优问题。
与无约束问题不同,约束问题目标函数的最小值是满足约束条件下的最小值,即是由约束条件所限定的可行域内的最小值。只要由约束条件所决定的可行域必是一个凸集,目标函数是凸函数,其约束最优解就是全域最优解。否则,将由于所选择的初始点的不同,而探索到不同的局部最优解上。在这种情况下,探索结果经常与初始点的选择有关。为了能得到全局最优解,在探索过程中最好能改变初始点,有时甚至要改换几次。;(1)直接法
??? 直接法包括:网格法、复合形法、随机试验法、随机方向法、可变容差法和可行方向法。
??(2)间接法
??? 间接法包括:罚函数法、内点罚函数法、外点罚函数法、混合罚函数法、广义乘子法、广义简约梯度法和约束变尺度法等。 ; 间接解法是将约束优化问题转化为一系列无约束优化问题来
解的一种方法。; x(k+1)= x(k)+α(k) S(k) (k=0,1,2,…)
逐步趋向最优解,直到满足终止准则才停止迭代。; 直接解法通常适用于仅含不等式约束的问题,思路是在m个不等式约束条件所确定的可行域内,选择一个初始点,然后决定可行搜索方向 S且以适当的步长 ,进行搜索,得到一个使目标函数值下降的可行的新点,即完成一次迭代。再以新点为起点,重复上述搜索过程,直至满足收敛条件。 ;直接解法的原理简单,方法实用,其特点是:;a) 可行域是凸集;b)可行域是非凸集;间接解法的求解思路:;5.2 随机方向法;随机方向法的基本思路:;随机方向探索法的一般迭代计算公式为:
X(k+1)=X(k)+aS(k) (k=0,1,2,…)
式中a为步长,S(k) 为第k次迭代的随机探索方向。
因此,随机方向探索法的计算过程可归结为:
; 复合形法是求解约束非线性最优化问题的一种重要的直接方法。它来源于用于求解无约束非线性最优化问题的单纯形法,实际上是单纯形法在约束问题中的发展。
如前所述,在求解无约束问题的单纯形法中,不需计算目标函数的梯度,而是靠选取单纯形的顶点井比较各顶点处目标函数值的大小,来寻找下一步的探索方向的。在用于求解约束问题的复合形法中,复合形各顶点的选择和替换,不仅要满足目标函数值的下降,还应当满足所有的约束条件。;;二.初始复合形的构成;2. 初始复合形顶点的确定;初始复合形生成的方法:;3)由计算机自动生成初始复合形的所有顶点。;2)计算除去最坏点XH 外的(k-1)个顶点的中心XC ;4)判别反射点XR的位置;3.收缩;三. 终止判别条件;比较复合形各顶点的函数值,找出好点XL,坏点XH;方法特点
(1)复合形法是求解约束非线性最优化问题的一种直接方法,仅通过选取各顶点并比较各点处函数值的大小,就可寻找下一步的探索方向。但复合形各顶点的选择和替换,不仅要满足目标函数值下降的要求,还应当满足所有的约束条件。
(2)复合形法适用于仅含不等式约束的问题。 ;§5-5 惩罚函数法; 将有约束的优化问题转化为无约束优化问题来求解。前提:一是不能破坏约束问题的约束条件,二是使它归结到原约束问题的同一最优解上去。;从而有; 根据约束形式和定义的泛函及罚因子的递推方法等不同,罚函数法可分为内点法、外点法和混合罚函数法三种。这种方法是1968年由美国学者A.V.Fiacco和G.P.Mcormick提出的,把不等式约束引入数学模型中,为求多维有约束非线性规划问题开创了一个新局面。;内点法;rk是惩罚因子,它是一个由大到小且趋近于0的正数列,即: ; 罚因子的作用是:由于内点法只能在可行域内迭代,而最优解很可能在可行域内靠近边界处或就在边界上,此时尽管泛函的值很大,但罚因子是不断递减的正值,经多次迭代,接近最优解时,惩罚项已是很小的正值。 ;例5-2 用内点法求;时不满足约束条件 ;1)? 初始点x0的选取
; 式中的c称为惩罚因子的缩减系数,c为小于1的正数。一般的看法是,c值的大小在迭代过程中不起决定性作用,通常的取值范围在0.1~0.7之间。;算法步骤:
1)选择可行域内初始点X(0);
2)选取初始罚因子r(0)与罚因子降低系数c,并置K←0;
3)求minφ(x(K),r(K))解出最优点xK*;
4)当K=0转步骤5),否则转步骤6);
5)K←K+1,r
文档评论(0)