用惩罚函数外点法求解以下约束最优化问题程序

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用惩罚函数外点法求解以下约束最优化问题程序

用惩罚函数外点法求解以下约束最优化问题:

)( 0)( ..)(min 1222112

1≤-=≤-=+=x X g x x X g t s x x X f ,

当惩罚因子分别为5,10,50,100的计算结果。

解:构造外点法惩罚函数

∅(x ,r)=x 1+x 2+r[max⁡(0,x 12−x 2)]2+r[max⁡(0,−x 1)]2

={x 1+x 2⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡(g 1(x)≤0,g 2(x)≤0)x 1+x 2+r(x 12−x 2)2+r⁡(−x 1)2⁡⁡⁡⁡⁡⁡(g 1(x)>0,g 2(x)>0)

对上式求偏导得

ð∅ðx 1

={11+4r ∗x 1∗(x 12−x 2)+2rx 1 ð∅ðx 2

={11−2r(x 12−x 2) 无约束目标函数极小化问题的最优解系列为:

x 1∗(r )=

−12+2r

x 2∗(r )=14(1+r)2−12r 惩罚函数外点法的M 文件:

syms x1 x2

f=x1+x2;g1=x1^2-x2;g2=-x1;

r0=5;

c=0.5;

km=7;

k=1:km;

r=r0*c.^(k-1);

x1=-1./(2+2.*r);

x2=1./(4.*(1+r).^2)-1./2.*r;

g1=x1.^2-x2;g2=-x1;

f=x1+x2;

p=x1+x2+r.*g1.^2+r.*g2.^2;

[k]

[r]

[x1]

[x2]

[p]

当r=5时的运行结果如下:

k =

1 2 3 4 5 6 7

r =

5.0000 2.5000 1.2500 0.6250 0.3125 0.1563 0.0781 x1 =

-0.0833 -0.1429 -0.2222 -0.3077 -0.3810 -0.4324 -0.4638

x2 =

-2.4931 -1.2296 -0.5756 -0.2178 -0.0111 0.1089 0.1760 p =

28.7083 2.5848 -0.2478 -0.4053 -0.3391 -0.2934 -0.2708当r=10时的运行结果如下:

k =

1 2 3 4 5 6 7

r =

10.0000 5.0000 2.5000 1.2500 0.6250 0.3125 0.1563 x1 =

-0.0455 -0.0833 -0.1429 -0.2222 -0.3077 -0.3810 -0.4324

x2 =

-4.9979 -2.4931 -1.2296 -0.5756 -0.2178 -0.0111 0.1089

p =

244.9773 28.7083 2.5848 -0.2478 -0.4053 -0.3391 -0.2934当r=50时的运行结果如下:

k =

1 2 3 4 5 6 7

r =

50.0000 25.0000 12.5000 6.2500 3.1250 1.5625 0.7813 x1 =

-0.0098 -0.0192 -0.0370 -0.0690 -0.1212 -0.1951 -0.2807

x2 =

-24.9999 -12.4996 -6.2486 -3.1202 -1.5478 -0.7432 -0.3118

p =

1.0e+04 *

3.1225 0.3894 0.0482 0.0058 0.0006 0.0000 -0.0000当r=100时的运行结果如下:

k =

1 2 3 4 5 6 7

r =

100.0000 50.0000 25.0000 12.5000 6.2500 3.1250 1.5625 x1 =

-0.0050 -0.0098 -0.0192 -0.0370 -0.0690 -0.1212 -0.1951

x2 =

-50.0000 -24.9999 -12.4996 -6.2486 -3.1202 -1.5478 -0.7432

p =

1.0e+05 *

2.4995 0.3122 0.0389 0.0048 0.0006 0.0001 0.0000

相关文档
最新文档