数学实验作业8月12日第五组
更新时间:2024-01-19 16:16:01 阅读量: 教育文库 文档下载
- 数学实验大作业推荐度:
- 相关推荐
实验九T1(2):
用分枝定界算法求解(略),并用 LINDO 或LINGO 验证你的结果是否正确: Max z?40x1?90x
s.. 9tx1?7x2?56 x1,x2?z? 7x1?20x2?70
解:在LINGO中输入以下程序(LINGO0901): max=40*x1+90*x2;
9*x1+7*x2<56; 7*x1+20*x2<70; @gin(x1); @gin(x2);
则输出:
Global optimal solution found.
Objective value: 340.0000 Extended solver steps: 0 Total solver iterations: 3
Variable Value Reduced Cost X1 4.000000 -40.00000 X2 2.000000 -90.00000
Row Slack or Surplus Dual Price 1 340.0000 1.000000 2 6.000000 0.000000 3 2.000000 0.000000
易得x1=4,x2=2时,得到全局最优解340.
实验九T2(1):
用动态规划方法求解(略),并用LINDO 或LINGO 验证你的结果是否正确:
minz?x12?x22?x32?x42?x1?2x2?3x3?4x4
s.t. x ?x2?x3?x?1 4 x1,x2,x,3x?4Z.?10,
解:在LINGO中输入以下程序(LINGO0902):
min=x1^2+x2^2+x3^2+x4^2-x1-2*x2-3*x3-4*x4;
x1+x2+x3+x4>=10; @gin(x1);
@gin(x2); @gin(x3); @gin(x4);
则输出:
Global optimal solution found.
Objective value: -1.000000 Objective bound: -1.000000 Infeasibilities: 0.000000 Extended solver steps: 1 Total solver iterations: 152
Model Class: PINLP
Total variables: 4 Nonlinear variables: 4 Integer variables: 4
Total constraints: 2 Nonlinear constraints: 1
Total nonzeros: 8 Nonlinear nonzeros: 4
Variable Value Reduced Cost
X1 2.000000 0.000000
X2 2.000000 -0.9999960
X3 3.000000 0.000000
X4 3.000000 -0.9999960
Row Slack or Surplus Dual Price
1 -1.000000 -1.000000
2 0.000000 -2.999998
易得x1=x2=2,x3=x4=3时,得到全局最优解-1.
实验9 T2(4):
取不同的初值计算下列非线性规划,尽可能求出所有局部极小点,进而找出全局极小点。minz??x1?x2
s..tx?1x2?x1*?5?x22?x32?x5?xi?x33?32?2,x4?2,5,i?1,2,3,4,5,22?2,
解:利用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
即上述目标函数的全局最优解为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)设甲、乙、丙的进货量为x(1),x(2),x(3)(单位为t);A、B的产量为x(4),x(5)(单位为t);甲、乙混合物分为两部分,设生产A、B的部分分别为x(6),x(7);丙分为两部分,生产A、B的部分分别为x(8),x(9)。公司的利润为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(1)+x(2))≤0 (1)
(0.03*x(1)+0.01*x(2))/(x(1)+x(2))*x(7)+0.02*x(9)≤0.015*x(5)
?(3*x(1)+x(2) )*x(7)+(2*x(9)-1.5*x(5) )*(x(1)+x(2))≤0 (2)
x(1)+x(2)-x(6)-x(7)=0 (3) x(3)-x(8)-x(9)=0 (4) -x(4)+x(6)+x(8)=0 (5) -x(5)+x(7)+x(9)=0 (6)
x(i)≥0, i=1,2,3,4,5,6,7,8,9 (7)
x(j)≤500, j=1,2,3
x(4),x(6),x(8)≤100, x(5),x(7),x(9)≤200 (8)
本题要求解z的最大值,即求解(-z)的最小值。这是一个带约束非线性规划的问题。利用MATLAB求解,编写的相关程序如下:
function [f,g,H]=ex10fun(x) %编写目标函数的 M 文件; f=6*x(1)+16*x(2)+10*x(3)-9*x(4)-15*x(5);
if nargout>1 %梯度 g=[6;16;10;-9;-15;0;0;0;0]; end
if nargout>2 H=zeros(9,9); End
function [c,ceq,g,geq]=ex10con(x) % 编写非线性约束的 M 文件; c=[(3*x(1)+x(2))*x(6)+(2*x(8)-2.5*x(4))*(x(1)+x(2));(3*x(1)+x(2))*x(7)+(2*x(9)-1.
5*x(5))*(x(1)+x(2))]; %不等式约束 ceq=0; if nargout>2
d1=[3*x(5)+2*x(8)-2.5*x(4);x(6)+2*x(8)-2.5*x(4);0;-2.5*(x(1)+x(2));0;3*x(1)+x(2);0;2*(x(1)+x(2));0];
d2=[3*x(7)+2*x(9)-1.5*x(5);x(7)+2*x(9)-1.5*x(5);0;0;-1.5*(x(1)+x(2));0;3*x(1)+x(2);0;2+(x(1)+x(2))]; g=[d1,d2];
geq=zeros(1,9); end
A2=[1, 1, 0, 0, 0, -1, -1, 0, 0; 0, 0, 1, 0, 0, 0, 0, -1, -1; 0, 0, 0, -1, 0, 1, 0, 1, 0; 0, 0, 0, 0, -1, 0, 1, 0, 1 ]; b2=zeros(1,4); v1=zeros(1,9);
v2=[500,500,500,100,200,100,200,100,200]; x0=[200,200,200,100,200,200,200,100,100];
opt1=optimset('largescale','off','MaxIter',3000,'MaxFunEvals',5000);
[x1,fv1,ef1,outlag,grad,hess]=fmincon(@ex10fun,x0,[],[],A2,b2,v1,v2,@ex10con,opt1);
[x2,fv2,ef2,outlag,grad,hess]=fmincon(@ex10fun,x1,[],[],A2,b2,v1,v2,@ex10con,opt1);
[x3,fv3,ef3,outlag,grad,hess]=fmincon(@ex10fun,x2,[],[],A2,b2,v1,v2,@ex10con,opt1);
solutions=[x1;x2;x3]; funvalues=[fv1;fv2;fv3]; exitflag=[ef1;ef2;ef3];
[solutions,funvalues,exitflag]
计算结果如下: ans =
Columns 1 through 7
0.0000 100.0000 100.0000 0 200.0000 -0.0000 100.0000 0 100.0000 100.0000 0.0000 200.0000 0 100.0000 0 100.0000 100.0000 0.0000 200.0000 0 100.0000
Columns 8 through 11
0.0000 100.0000 -400.0000 1.0000 0.0000 100.0000 -400.0000 1.0000
0.0000 100.0000 -400.0000 1.0000
得到最优解为 x=[0,100,100,0,200,0,100,0,100],最优值f=-400(最大值z=-f=400),exitflag=1(收敛)。该公司应购进100t 乙,100t 丙,两者混合生产出200t B,此时公司利润最大,为400 千元,即40 万元。
(2) 如果产品A的最大市场需求量增长为600t,则目标函数不变,约束条件的(1)~(7)也不变,而(8)要变为:
x(j)≤500, j=1,2,3
x(4),x(6),x(8)≤600, x(5),x(7),x(9)≤200 (8)
用MATLAB求解,程序如下: A2=[1, 1, 0, 0, 0, -1, -1, 0, 0; 0, 0, 1, 0, 0, 0, 0, -1, -1; 0, 0, 0, -1, 0, 1, 0, 1, 0; 0, 0, 0, 0, -1, 0, 1, 0, 1 ]; b2=zeros(1,4); v1=zeros(1,9);
v2=[500,500,500,600,200,600,200,600,200]; x0=[200,200,200,100,200,200,200,100,100];
opt1=optimset('largescale','off','MaxIter',3000,'MaxFunEvals',5000);
[x1,fv1,ef1,outlag,grad,hess]=fmincon(@ex10fun,x0,[],[],A2,b2,v1,v2,@ex10con,opt1);
[x2,fv2,ef2,outlag,grad,hess]=fmincon(@ex10fun,x1,[],[],A2,b2,v1,v2,@ex10con,opt1);
[x3,fv3,ef3,outlag,grad,hess]=fmincon(@ex10fun,x2,[],[],A2,b2,v1,v2,@ex10con,opt1);
solutions=[x1;x2;x3]; funvalues=[fv1;fv2;fv3]; exitflag=[ef1;ef2;ef3];
[solutions,funvalues,exitflag]
ex10fun.m和ex10con.m 部分程序和(1)中一样。
求得结果为:最优解为 x=[0,100,100,0,200,0,100,0,100],最优值 f=-400(最大值z=-f=400),exitflag=1(收敛)。该公司应购进100t 乙,100t 丙,两者混合生产出200t B,此时公司利润最大,为400 千元,即40 万元。此时的生产安排与(1)中相同。
(3)如果乙的进货价格下降为13千元/t,则目标函数改变,而约束条件不变。 目标函数变为
-z=(9*x(4)+15*x(5)-6*x(1)-13*x(2)-10*x(3)) 用MATLAB求解,代码如下:
function [f,g,H]=ex10fun(x) %编写目标函数的 M 文件; f=6*x(1)+13*x(2)+10*x(3)-9*x(4)-15*x(5); if nargout>1 %梯度
g=[6;13;10;-9;-15;0;0;0;0]; end
if nargout>2 H=zeros(9,9); end
其余部分同(1),(2)。
综上所述,对(1)情况,经求解得:最优解为x = [50,150,0,0,200,0,200,0,0],最优值 f=-750(最大值z=-f=750),exitflag=1(收敛)。该公司应购进50t 甲,150t 乙,两者混合生产出200t B,此时公司利润最大,为750 千元,即75 万元。
对(2)情况,经求解得:最优解为x = [50,150,0,0,200,0,200,0,0],最优值 f=-750(最大值z=-f=750),exitflag=1(收敛)。该公司应购进50t 甲,150t 乙,两者混合生产出200t B,此时公司利润最大,为750 千元,即75 万元。
从结果来看,(2)的条件“产品A的最大市场需求量增长为600t”,在本题中这个约束是不起作用的。我们看到,当产品A的最大市场需求量增长为100t 时,最优解的生产安排中并不生产A产品,所以当产品A的最大市场需求量增长为600t时,最优解的生产安排不变,最大利润也不变。这就是(1)和(2)的生产安排、最大利润相同,(3)中两种情况的生产安排、最大利润也相同的原因。
数学实验作业第五组
侯永利(121170011) 吕菊香(121170012) 陈智杰(121170018) 2014年8月12日星期二
正在阅读:
数学实验作业8月12日第五组01-19
课题:第十二章《简单机械》复习导学案07-09
电大 网络实用技术基础 形考作业四04-02
二次供水水污染事故报告制度10-10
中财各章练习题10-05
(试卷合集)台州市2019届九年级英语期中考试卷16份试卷合集含答04-27
2017年安徽大学文学院615语言文学基础之古代汉语考研仿真模拟题04-28
09级计算机控制课程设计题目05-04
签派旧题库第六章 飞行运行12-26
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 第五组
- 作业
- 数学
- 实验
- Hbase 总结
- 水总(2014)429号水利工程设计概估算编制规定
- 2017年校级优秀硕士士学位论文名单-武汉地大 - 图文
- 受贿、巨额财产来源不明案件判决书
- 东北财经大学网络教育《高级财务会计》随堂随练答案
- 四年级下册《信息技术》教案
- 泰戈尔诗选练习题
- 客户关系管理案例分析
- 期货有限公司资产管理业务投资者适当性管理办法
- UMAT符号说明
- 2015年英语副题及解析
- 体育经济与管理专业求职精美个人简历模板(word版可编辑)-420 - 图文
- 心理学试题
- Amazon Brand Registry Brand Owner Authorization Letter - zh - CN
- C++期末复习题
- 2018年教师招聘教育学心理学试题及答案试卷
- 达州市第三次党代会工作报告
- 东华大学《高分子物理》简答题题库
- 附答案逻辑练习
- 中央电大汉语言专科《中国古代文学(B)1》期末考试历年试题及答案(09至14年)