优化设计理论考试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、对边长为3米的正方形铁板,在四个角剪去相等的正方形以制成方形无盖水槽,问如何剪法使水槽的容积最大?(要求:1、建立数学模型,
2、用matlab 编写程序求解) 解:(1)数学模型:
设剪去的正方形的边长为x ,则水槽的容积为()2
32x x -,将求容积最大值问题转化为求最小值问题,因此水槽的最大容积转化为: Min y = -()2
32x x -,0 (2)在命令窗口输入命令: [x,fval]=fminbnd(@(x)-(3-2*x)^2*x,0,1.5); 得 x= 0.5000 fval= -2.0000 即剪掉边长为0.5米的正方形时,水槽的容积最大为2平方米 2、求解约束非线性规划(用matlab 编写程序) ()( )()()2 22 2 1234123412341 m i n 123 4 5..33210 0x x x x x x x x S T x x x x x - +-+-+-+++≤ ⎧⎪ +++≤⎨⎪≥⎩ 初值为[1;1;1;1] 解:(1)首先建立一个m 文件 fun705.m function y=fun705(x) y=(x(1)-1)^2+(x(2)-2)^2+(x(3)-3)^2+(x(4)-4)^2; 存储为fun705.m 文件. (2)在命令窗口输入 x0=[1;1;1;1];A=[1 1 1 1;3 3 2 1]; B=[5;10];Aeq=[];Beq=[]; Lb=[0;0;0;0];(‘fun705‘,x0,A,B,Aeq,Beq,Lb); 得到x = 0.0000 0.6667 1.6665 2.6668 g = 6.3333 3. 用单纯形法求解max 123 2f x x x =++ 1231231 2322256..460,1,2,3i x x x x x x S T x x x x i +-≤⎧⎪ -+-≥-⎪⎨++≤⎪⎪≥=⎩ 解: 先化为标准型:令() 1232t f x x x ==-++将求max f 转变为求min t 得: min 1232t x x x =--- 1234 1235 123 6123456 22256..46,,,,,0x x x x x x x x S t x x x x x x x x x x +-+=⎧⎪ -++=⎪⎨ +++=⎪⎪≥⎩ 列成表格: 2 ① -1 1 0 0 2 2 -1 5 0 1 0 6 4 1 1 0 0 1 6 -1 -2* 1 0 0 0 0 迭代一次: 2 1 -1 1 0 0 2 4 0 4 1 1 0 8 2 0 ② -1 0 1 4 3 0 -3* 2 4 再迭代一次: 3 1 0 0 4 0 0 0 3 1 -2 0 1 1 2 6 0 0 10 这时第 个特点已具备,故终止。从表中读出最优解: 10 4、求下列非线性规划问题的K-T 点 min ()22 112212 221010x f x x x x x x =++-- 2212125..36 x x S T x x ⎧+≤⎨ +≤⎩ 解:将上述约束条件改写为: ()()22 11221250360 g x x x g x x x ⎧=--+≥⎪⎨=--+≥⎪⎩ 设K-T 点为()*12,T x x x =,有 () 12* 1242102210x x f x x x +-⎡⎤∇=⎢⎥+-⎣⎦ () 1* 1222x g x x -⎡⎤∇=⎢⎥-⎣⎦ () * 231g x -⎡⎤∇=⎢⎥-⎣⎦ 由定理可得: ()()1211 21 21222211 121212421023022102050 36000 x x x x x x x x x x γγγγγγγγ+-++=⎧⎪ +-++=⎪⎪--+=⎪⎨ --+=⎪⎪ ≥⎪⎪≥⎩ 分析可知1()0g x ≥是有效约束,2()0g x ≥不是有效约束,则20γ= 故可求解得12 12 1210 x x γγ=⎧⎪=⎪⎨ =⎪⎪=⎩ 代入原问题约束条件中检验,可知该点*(1,2)T x =是可行点,且满足K-T 定理的条件,又是一个正则点,故K-T 点为*(1,2)T x = 5. 用最速下降法求解约束问题 min ()()()2 2 123243x f x x =-+- 取初始点() () 04,3T x = 要求:1 用matlab 编程 2 给出详细计算过程 解:1.12()6836f x x x ∇=+- (a )编写M 文件detaf.m function [f,df]=detaf(x); f=3*(x(1)-2)^2+4*(x(2)-3)^2; df(1)=6*x(1); df(2)=8*x(2); (b )编写M 文件zs.m x=[4;3]; [f0,g]=detaf(x); while norm(g)>0.0001 d=-g'/norm(g); t=1.0;f=detaf(x+t*d); while f>f0 t=t/2;f=detaf(x+t*d); end x= x+t*d [f0,g]=detaf(x) end (c)运行结果 x= 2 3 f= 0 即最优解为*(2,3)T x =,最优值为*0f = 2. 解:1.12()6836f x x x ∇=+- (a )编写M 文件detaf.m function [f,df]=detaf(x); f=3*(x(1)-2)^2+4*(x(2)-3)^2; df(1)=6*x(1); df(2)=8*x(2); (b )编写M 文件zs.m