- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数学实验作业8月12日第五组供参习
实验九T1(2):
用分枝定界算法求解(略),并用 LINDO 或LINGO 验证你的结果是否正确:
解:在LINGO中输入以下程序(LINGO0901):
实验九T2(1):
用动态规划方法求解(略),并用LINDO 或LINGO 验证你的结果是否正确:
解:在LINGO中输入以下程序(LINGO0902):
则输出:
易得x1=x2=2,x3=x4=3时,得到全局最优解-1.
实验9 T2(4):
取不同的初值计算下列非线性规划,尽可能求出所有局部极小点,进而找出全局极小点。
解:利用matlab求局部解
function [f,g]=examfeifun(x)
f=-x(1)-x(2);
if nargout 2
g(1)=-1;
g(2)=-1;
end
if nargout 2
H=[0,0;0,0]
end
end
function [c,ceq,g,geq]=examfeicon(x)
c=[];
ceq=[x(1)+x(2)^2+x(3)^3-3*sqrt(2)-2;x(2)-x(3)^2+x(4)-2*sqrt(2)+2;x(1)*x(5)-2];
if nargout 2
g=[];
geq=[1,0,x(5);2*x(2),1,0;3*x(3),2*x(3),0;0,1,0;0,0,x(1)];
end
clear all;clc
x0=[5 0 0 0 0 ];
opt1=optimset(largescale,off,MaxIter,3000,MaxFun,20000);
[x,fv,ef,out,lag,grad,hess]=fmincon(@examfeifun,x0,[],[],[],[],-5,5,@examfeicon,opt1),
则输出的结果为
x =
Columns 1 through 3
5.0000 1.1147 0.0000
Columns 4 through 5
-0.2863 0.4000
fv =
-6.1147
ef =
1
然后改变初值,观察结果,会得到不同的局部最优解。
求解全局最优解利用LINGO软件,则编程如下:
min=-x1-x2;
x1+x2^2+x3^3=3*2^(1/2)+2;
x2-x3^2+x4=2*2^(1/2)-2;
x1*x5=2;
-5=x1;
-5=x2;
-5=x3;
-5=x4;
-5=x5;
x1=5;
x2=5;
x3=5;
x4=5;
x5=5;
输出的结果为:
x1 5.000000
x2 1.062671
x3 0.4839874
x4 0.000000
x5 0.4000000
z=-6.06267
即上述目标函数的全局最优解为
实验九T4:
某公司将3种不同含硫量的液体原料(分别为甲、乙、丙)混合生产两种产品(分别记为A,B)。按照生产工艺的要求,原料甲、乙必须首先倒入混合池中混合,混合后的液体在分别与原料丙混合生产A,B。已知原料甲、乙、丙的含硫量分别是3%,1%,2%,进货价格分别为6千元/t,16千元/t,10千元/t;产品A,B的含硫量分别不能超过2.5%,1.5%,售价分别为9千元/t,15千元/t。根据市场信息,原料甲、乙、丙的供应量都不能超过500t;产品A,B的最大市场需求量分别为100t,200t。试问:
(1) 应如何安排生产?(2) 如果产品A的最大市场需求量增长为600t,应如何安排生产?(3) 如果乙的进货价格下降为13千元/t,应如何安排生产?分别对(1)、(2)两种情况进行讨论。
解:
模型的假设与简化:
(1)设甲、乙、丙的进货量为(单位为t);A、B的产量为(单位为t);甲、乙混合物分为两部分,设生产A、B的部分分别为;丙分为两部分,生产A、B的部分分别为。公司的利润为z(单位为千元),可列出相关式如下:
z=9*x(4)+15*x(5)-6*x(1)-16*x(2)-10*x(3)
约束条件为:(0.03*x(1)+0.01*x(2))/(x(1)+x(2))*x(6)+0.02*x(8)≤0.025*x(4)?(3*x(1)+x(2) )*x(6)+(2*x(8)-2.5*x(4) )*(x(
文档评论(0)