1、第五章 约束优化设计的直接解法,5.1 约束优化设计直接解法的基本特点 一.直接解法 1.定义:直接解法:是在满足不等式约束gu(X)0(u=1,2,m)的可行设计区域内直接求出问题的约束最优解法。该方法主要用于求解仅含不等式约束条件的最优化问题。,2. 迭代公式要求:下降性,收敛性,还必须具有可行性 3.特点 1)若f(X)是凸函数,可行域是凸集,解为全域最有解;否则不一定为最优解。,2.要求可行域是有界的非空集,即在有界可行域内存在满足全部约束条件的点,且目标函数f(X)有定义。 3.由于整个求解过程在可行域内进行,且是下降,可行的,因此迭代计算不论何时终止,都可以获得一个比初始点好的设计
2、点。 具体的方法:随机试验法,随机方向探索法,复合形法,可行方向法,可变容差法,简约梯度法及广义简约梯度法,线性逼近法等.,二.间接解法 1.基本思想是按照一定的原则构造一个包含原目标函数和约束条件的新目标函数,即使约束最优化问题的求解转换成无约束最优化问题求解。 2.适用范围对于不等式约束问题和等式约束问题均有效。惩罚函数法是比较有代表性的方法。,5.2 随机方向探索法约束随机方向搜索法是在可行域内利用随机产生的可行方向进行搜索的一种直接解法。 一.基本原理 1.基本思想 关键是如何确定初 始点、搜索方向和 搜索步长,而这些 都需要涉及随机数 问题,2.随机数的产生 1)先给出一个随机数式中
3、Z为任一整数。 2)产生随机数列,3)得0,1区间内的伪随机数列ri,3.初始点的选择约束随机方向搜索法的初始点X(0)必须是一个可行点,即满足全部约束条件(1)决定性的方法当约束条件比较简单时,可在可行域内人为地确定一个可行的初始点。,(2)随机选择方法 1)输入设计变量估计的上限值和下限值2)在区间0,1内产生n个伪随机数ri 3)计算随机点X的各个分量4)判断X是否可行,可行则取为初始点X(0)=X, 否则,转2),重新计算,直至可行。,4.随机搜索方向的产生随机搜索方向是从N个随机方向中,选取一个较好的方向,通常Nn,并且N一般取500,1000,10000等数,以二维为例: 1)在区
4、间内产生N个随机单位向量 a)若r以弧度角计,ri为在0,2内均匀分布的伪随机数,就可以产生N个随机单位向量b)若以直角坐标计,rij为-1,1区间内均匀分布的伪随机数,(i=1,2;j=1,2,.N)就可产生,N个随机单位向量推广至n维问题,2)取试验步长H0, 计算N个随机点,3)选出函数值最小的随机点检验N个随机点,除去非可行点,计算余下的点,找出函数值最小的点,即4)确定可行搜索方向 比较X(L)与X(0)两点的目标函数值的大小 若f(X(L)f(X(0),则取可行方向S= f(X(L)-f(X(0) 若f(X(L)f(X(0),则缩小H0,转至第二步,重新,计算,直至f(X(L)f(
5、X(0)为止; 若H0缩小到很小(如10-6),仍找不到一个X(L)使f(X(L)f(X(0),则说明X(0)是一个局部极小点,则更换初始点,再转至第一步,重新开始。 综上所述,产生可行搜索方向的条件为:,5.搜索 步长的确定 1)定步长:即步长是定长的,只要所得新点的目标函数值是下降的且满足约束条件,就继续以定步长前进,直至违背了约束条件或目标函数的下降性条件时为止,于是迭代点由起始点移到新点。 2)变步长法:即步长按一定的倍增系数等比递增或递减。例如以1.3倍递增,那么每次向前的移动步长为前一次的1.3倍,二.计算步骤,三.随机方向法的特点 1.对目标函数的性态 无特殊要求 2.程序结构简
6、单,使 用方便 3.由于搜索方向是从 许多方向中选择出目 标函数值下降最好的方向,再加上随机变更步长,所以收敛速度比较快 4.计算精度较低,5.4 约束优化设计的复合形法,所谓复合形是指在n维设计空间内,由k=n+l2n个顶点所构成的多面体。复合形法就是在n维设计空间的约束可行域内,对复合形各顶点的目标函数值逐一进行比较,不断地去掉最坏点,代之以既能使目标函数值有所下降,又满足所有约束条件的新点,逐步调向最优点。,541 复合形法的基本原理 5411 搜索方向的确定,5412 步长因子的确定首先沿最坏点的映射方向选取映射点如果该方向不能满足要求,就只能改用次坏点 的映射方向了。,变形的措施 1
7、.扩展,2.收缩如果中心点以为找不到好的映射点,还可以到中心点内寻找,即向中心点以内收缩,按下式计算,3.重构若采取上述措施均无效,还可以采取向最好点靠拢的措施,即,542 初始复合形的构成由于复合形是一种在可行域内直接求优的方法,因此要求第一个复合形就必须在可行域内生成。A 给定n个初始顶点由设计者预先选择n个设计方案,即人工构造一个初始复合形。,B 给定一个初始顶点,随机产生其它顶点这样随机产生的n-1个顶点,虽然可以满足边界约束条件,但不一定能满足性能约束条件,还必须逐个进行检查,把不满足约束条件的顶点移到可行域内。,设已有q个顶点满足全部约束条件,先求出q个顶点的中心点然后将不满足约束
8、条件的点向中心点靠拢,即事实上,只要可行域是凸集,其中心点必为可行点,因而用上述方法可以成功地在可行域内构成初始复合形。如果可行域为非凸集那就有失败的可能,当中心点处于可行域之外时,就应该缩小随机选点的边界域,重新产生各顶点。,C 随机产生全部顶点初始复合形的各顶点也可以全部用随机法产生,首先须用下式产生一个满足全部约束的可行顶点,然后再按前一小节所述方法随机产生其他k-1个顶点。,543复合形法的寻优规则和程序计算框图,第六章 约束优化设计的间接解法,6.1 约束优化设计间接解法的基本思想 1.基本思想将一个有约束的问题转化为一个或一系列无约束的问题来求解。 需满足的条件: 1)不破坏原约束
9、问题的约束条件 2)最优解必须归结到原约束问题的最优解上,2.惩罚函数法的基本思想按照前述方法构造的函数,我们把其称为是惩罚函数法或增广函数,求解的思路就是按照一定的法则不断改变加权因子r1,r2的值,就可以得到一系列的无约束优化问题,求解这一系列的无约束优化问题的最优解,这一求解过程的一系列极小点序列X*(r1(k),r2(k)(k=0,1,2)逐渐收敛到原目标函数f(X)的约束最优解上。,3.分类按照惩罚函数在优化过程中迭代点是否在可行域,惩罚函数法可分为: 1)内点惩罚函数法:求解不等式约束问题 2)外点惩罚函数法:易求解等式约束问题 3)混合惩罚函数法:求解同时含有等式和不等式约束问题
10、,6.2 内点惩罚函数法 一.引例 设有一维不等式约束优化问题的数学模型它的最优解显然是 X*=b ,F(X*=b)=ab,现在来观察按如下形式构造的惩罚函数分析如下: 1)当给定参数 为某一正数,且迭代点是在可行域内时,当Xb,惩罚项+,罚函数+;只要适当控制搜索步长不使迭代点跳入非可行域,则所解得的无约束极小点X*必可保持在可行城内;,2)当惩罚因子 由初始的较大值 逐渐变小时,惩罚函数也愈逼近于原目标函数F(x),罚函数曲线越来越接近于原F(x)=ax直线。对应惩罚函数 的最优点列就不断趋近于原约束优化问题的最优点 二.罚函函数的形式,三.内点法的步骤,四.注意的问题 1.初始可行点X(
11、0)的确定 (1)决定性的方法 (2)随机选择的方法 (3)搜索初始点的方法1)任选一个设计点X(k),2.惩罚因子初始值r(0)的选择 一般取1-50,多数时候取1,3.惩罚因子的缩减系数cr(k)=cr(k-1)k=1,2,. 一般取c=0.1-0.02 4. 收敛准则 一般联合使用设计变量准则和目标函数准则,五.特点:内点法是机械设计中一般愿意采用的方法。因为这种方法有一个诱人的特点,就是在给定一个可行的初始方案之后,它能给出一系列逐步得到改进的可行的设计方案,因此,只要设计要求允许,我们可以选用其中任一个无约束最优解;该法只适用于不等式约束优化问题,并且初始点必须是可行域内部的点,63
12、外点惩罚函数法631外点惩罚函 数法的基本原理 是将惩罚项函数定义 于可行区域的外部。,令函数的一阶导数为零,可得其无约束极值点和惩罚函数值为,可见,外点惩罚函数法是通过求一系列惩罚因子的函数的无约束极值来逼近原约束问题最优解的一种方法。,现在让我们来考察惩罚函数 的无约束极小点是否收敛到原目标函数的约束极小点的问题 1.当x点在可行区域内时,不管ro取何值,惩罚项总为零,因此,惩罚函数的极小点如果在可行域内,则该点必为原问题的最优解,2.当惩罚函数的无约束极小点在可行域外,此时有当r(k)趋近于无穷大时随着惩罚因子值的增加逐渐减小,3.惩罚因子通常是按下面递推公式增加的,632外点惩罚函数法的算法和程序计算框图,633外点惩罚函数法使用中的问题及特点这种方法的一个重要优点是容易处理等式约束条件的优化设计问题。,64混合惩罚函数法 641混合惩罚函数法及其算法步骤将内点法与外点法结合起来,处理同时具有等式约束和不等式约束的优化设计问题。,在构造惩罚函数时,可以同时包括障碍项与衰减项,并将惩罚因子统一,或者对于设计点X不满足的等式约束和不等式约束都用外点法,而对于X满足的不等式约束用内点法,若是用第一种方式的混合惩罚函数法,则其计算步骤与内点惩罚函数法相类似,