1、 无约束优化方法是优化方法中最基本最核心的部无约束优化方法是优化方法中最基本最核心的部分分。在工程实际中,优化问题大都属于有约束的优化。在工程实际中,优化问题大都属于有约束的优化问题,即其设计变量的取值要受到一定的限制,用于问题,即其设计变量的取值要受到一定的限制,用于求解约束优化问题最优解的方法称为约束优化方法。求解约束优化问题最优解的方法称为约束优化方法。puxgtsRxxFun,.,2,1,0)(.)(minDqvxhtsRxxFvn,.,2,1,0)(.)(minDqvxhpuxgtsRxxFvun,.,2,1,0)(,.,2,1,0)(.)(minD 5.15.1约束优化问题的最优解
2、及其必约束优化问题的最优解及其必要条件要条件09)2()(02)(.)1()(min222122212221xxxhxxgtsRxxxxxxFTD 该优化问题的最优点如下图所示,对于这两个局部最小该优化问题的最优点如下图所示,对于这两个局部最小点点 x1*=-1 0 T,x2*=5 0 T,其函数值不同,其函数值不同,F(x1*)=4,F(x2*)=16。全局最优点为。全局最优点为 x1*=-1 0 T F*=4h(x)h(x)g(x)x1*x2*x1x2246-2 对于一般约束优化问题,其约束分为两类:对于一般约束优化问题,其约束分为两类:等式约束等式约束和不等式约束。和不等式约束。在可行设
3、计点在可行设计点x(k)处,对于不等式约束,若处,对于不等式约束,若gi(x(k)=o,则称第则称第i个约束个约束gi(x)为可行点的起作用约束;否则,若为可行点的起作用约束;否则,若gi(x(k)o,则称,则称gi(x)为可行点的不起作用约束。即只有在为可行点的不起作用约束。即只有在可行域的边界上的点才有起作用约束,所有约束对可行域可行域的边界上的点才有起作用约束,所有约束对可行域内部的点都是不起作用约束。内部的点都是不起作用约束。对于等式约束,凡是满足该约束的任一可行点,该等对于等式约束,凡是满足该约束的任一可行点,该等式约束都是起作用约束。式约束都是起作用约束。约束优化问题极小点的条件,
4、是指在满足约束条约束优化问题极小点的条件,是指在满足约束条件下,目标函数局部极小点的存在条件。件下,目标函数局部极小点的存在条件。约束问题最优解的存在条件有两种:一是极小点在约束问题最优解的存在条件有两种:一是极小点在可行域内部,二是极小点在可行域的一个或几个边界交可行域内部,二是极小点在可行域的一个或几个边界交汇处。汇处。:如图所示,:如图所示,g1(x*)=0,g2(x*)0,g3(x*)0。所以。所以g1(x)为起作用约束,为起作用约束,g2(x)、g3(x)为不为不起作用约束。起作用约束。由于约束最优点是目标函数与约束由于约束最优点是目标函数与约束g1(x)边界的切点,边界的切点,故目
5、标函数与约束函数的梯度必共线,而且方向一致。故目标函数与约束函数的梯度必共线,而且方向一致。约束优化问题的最优解不仅与目标函数有关,而且与约束优化问题的最优解不仅与目标函数有关,而且与约束集合的性质有关。约束集合的性质有关。x*g1(x*)g3(x)F(x*)g1(x)g2(x)g1(x*)g2(x*)g2(x)g1(x)F(x*)puxgxgxFuuupuuu,.,2,10)(0)()(*1*0)()(1*qvvvxhxFx*h(x)=0 F(x*)h(x*)由上述不等式约束优化与等式约束优化问题解的必由上述不等式约束优化与等式约束优化问题解的必要条件,可以推出一般约束优化问题最优解的条件:
6、要条件,可以推出一般约束优化问题最优解的条件:quxgpuxhxgxFuuupuqvvvuu,.,2,10)(,.,2,100)()()(*11*puxgxhxgxFukuupuqvkvvkuuk,.,2,100)(0)()()(110)()()()(1)(1)(221)(111)(xxgxxgxxgxxFkJJkkk0)()()()(2)(2)(222)(112)(xxgxxgxxgxxFkJJkkk0)()()()()()(22)(11)(nkJJnknknkxxgxxgxxgxxF)(kxJ21)(kx)(kx)(kx)(kx)(kx)()()()(22)(11)(kkkxgxgxF最优
7、点最优点非最优点非最优点)(kx)(kx2212221)2()(minRDxxxxxxFT01)(2211xxxg0)(22 xxg0)(13 xxgTkx01)()(kx011)(21xg0)(2xg1)(3xg)(kx01)(2211xxxg0)(22 xxg)(kx022)2(2)()0,1(21)(xxxFk1212)()0,1(1)(1xxgk1010)()0,1()(2kxg0)()()()(22)(11)(kkkxgxgxF0101202210022211010121Tkx01)(5.3 5.3 常用约束优化方法常用约束优化方法)0(x)0(x00,1)0()1(1exx)1(1
8、x?)()()0()1(1xFxF?)1(1Dx21)0()1(2exx)1(2x2)1()1(exxi)1(3x)1(x)1(4x02)1()2(1exx)2(x)(kx0)(kx)(Dx)(Cx)(Bx)(Ax)(kx005.00)0(x01)0(Sxx?)()()0(xFxF?Dx xx)0()1(x)1()0(xx0)2(x)1(x)2(x(0)x00 2212122212141060)(minRDxxxxxxxxxxFT0)(11 xxg011)(215xxxg01)(22 xxg06)(13xxg08)(24xxg)()(00)4(Hxxxx qjjsxqx1)()(1 kjjxk
9、x1)(011 21)()()()(kjLjxFxF2121)()()(1kjLjxFxFkkjLjxFxF1)()()()(惩罚函数法是一种使用很广泛、很有效的间接法。惩罚函数法是一种使用很广泛、很有效的间接法。qvxhpuxgtsRxxFvun,.,2,1,0)(,.,2,1,0)(.)(minDqvvpukukkkxhHmxgGrxFmrx11)()()()()()()(),(1)(minRDxaxxF0)(1bxxgD:x*=b ,F*=ab则惩罚函数形式为首先构造b1g(x)1Gg(x)xbxraxxgrxFrxkkk1)(1)(),()(1)()()(1)(xgrk)(kr)(kr
10、)(),()(xFrxk而且,当x越趋近于约束边界时,由于惩罚项)(1)(xgrk增大,所以罚函数 的值越大。当xb时,罚函数的值将趋近于+。因此,当初始点取在可行域内,求函数 的极小值时,只要适当控制搜索步长,防止迭代点跨入非可行域,则所搜索到的无约束极小点x*必可保持在可行域内。),()(krx),()(krx若对于罚因子的取值由初始的 逐渐变小 时,惩罚函数 愈逼近与原目标函数F(x),罚函数曲线越来越接近于原F(x)=ax直线,如上页图,对应罚函数 的最优点列 不断趋近于原约束优化问题的最优点x*=b),()(krx),()(krx,*1*0 xx)0(r)()1()0(rr 由以上可
11、见,如果选择一个可行点作初始点 ,令其罚因子 由大变小,同过求罚函数 的一系列最优点,显见无约束最优点序列 将逐渐趋近于原约束优化问题的最优点x*。)0(x)(kr),()(krx),2,1,0(*kxknRDxxF)(min0)(xguu=1,2,ppuukkxgrxFrx1)()()(1)(),(D:0)(kr)(kr,)1()(kkCrr0C1kkr)(lim=0)()1()0(rr或puukxgr1)()(10)(xgu)(kr)(kr0)(xgu)(),()(xFrxk)(),()(xFrxk0)(kr),()(krx)(xgu),()(krxpuukkxgrxFrx1)()()(1
12、)(),(minnRx)0(x)0(r*kx,*1*0kxxx0)(krkk*lim=x*kxpuukkxgrxFrx1)()()(ln()(),(pnukkxgrxFrx1)()()(ln()(),()(kx)(kx)0(r)0(r),()(krxr(0)=150或或)(kr),()(krx,*1*0kxxx,*1*0k1*1*kkxx2*1*kkk)0(x)0(r12puukkxgrxFrx1)()()(1)(),(),(min)(krx*kx,)1()(kkCrr*)0(1kkxx)(*kxFF*kxx*kx)(*kxFF 1*)0(10)()1(kkxxFFCrrkkkk)(*,*kk
13、xFFxx200FFF1)(minRDxaxxF0)(1bxxgD:2)()()(,bxraxaxrxkkxbxb2)()()(,0min,bxraxrxkk)(),()(xFrxk),()(krx*kx)(kr,*1*0kxxx)(krnRDxxF)(min0)(xguu=1,2,pD:puukkxgGrxFrx1)()()()(),(21)()(,0min)(puukxgrxF)(kr,)()1(kkCrrkkr)(lim=21)()(,0min)(puukxgrxBpuukxgrxB12)()(0)(当gu(x)0 (xD)当gu(x)0 (xD)21)()()(,0min)(),(mi
14、npuukkxgrxFrxxRn*kx,*1*0kxxx外点法罚函数常用形式除上面介绍的两种,还有2)()()(,0min,bxraxrxkk)0(rpuxguu,2,1,0)(u431010u)(kr),()(krx,*1*0kxxx,*1*0k1*1*kkxx2*1*kkk*kx)(*kxFF 1*)0(10)()1(kkxxFFCrrkkkk)(*,*kkxFFxx200FFF),(min)(krx*kx,)()1(kkCrr*)0(1kkxx)(*kxFF*kxx 2222154)(minRDxxxxFD:221)(22212)(2221)()10(54)()(540)(),(xxmx
15、xxhmxFxxxFrxkkk,*1*0kxxx2)(minRDxxFqvxhv,2,1,0)(D:qvvkkxhmxFmx12)()()()(),(qvvkxhm12)()(,)()1(kkCmmqvxhpuxgRxxFvun,.,2,1,0)(,.,2,1,0)(.)(minDD:nRxxF)(minqvvkpuukkkxhmxgrxFmrx12)(1)()()()()(1)(),(,)()1(kkCrr0)(krqvvkpuukkkxhrxgrxFmrx12)(1)()()()(1)(1)(),()()(,0min()(),(1212)()()(qvvpuukkkxhxgrxFmrx,)
16、()1(kkCrr2212221891610)(minRDxxxxxxF010)(11xxg01)(214xxxg01)(22 xxg010)(23xxg0)(12xxxhD:qvvkpuukkkxhrxgrxFmrx12)(1)()()()(1)(1)(),()()(,0min()(),(1212)()()(qvvpuukkkxhxgrxFmrxqvvpukukkkxhHmxgGrxFmrx11)()()()()()()(),(22)()()(,0min)(ln()(1)(xhxhHxgxgxgxgGvvuuuu或),(min)(krx0)(lim1*)(pukukkxgGr0)(lim1*)(qvkvkkxhHM)(),(lim*)(*kkkkxFrx