数学模型课程设计三答案

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

课程设计目的:

1. 了解线性规划、整数规划、0-1规划、非线性规划的基本内容;

2. 掌握MA TLAB 优化工具箱求解各类规划问题;

3. 掌握用LINDO 软件求解线性规划问题;

4. 掌握用LINGO 软件求解线性规划和非线性规划问题。

课程设计准备:

1. 在开始本实验之前,请回顾相关内容;

2. 需要一台准备安装Windows XP Professional 操作系统和装有数学软件的计算机。

课程设计内容及要求

要求:设计过程必须包括问题的简要叙述、问题分析、实验程序及注释、实验数据及结果分析和实验结论几个主要部分。

1. 任务分配问题:某车间有甲、乙两台机床,可用于加工三种工件,假定这两台车床的可用台数分别为800和900,三种工件的数量分别为400、600和500,且已知用三种不同车床加工单位数量不同工件所需的台数和加工费用如下表。问怎么样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用

一、问题分析:本题要使加工费用最低,需要考虑的约束条件有,车床的可用台数限制和工件必须达到的

数量要求,由此建立以下数学模型。 二、模型建立:设机床甲、乙加工工件1,2,3的数量为ij x , (1,2;1,2,3)i j ==

111213212223111213212223112112221323min 1391011128.0.4 1.18000.5 1.2 1.3900400600500

0,(1,2;1,2,3)

ij z x x x x x x s t

x x x x x x x x x x x x x i j =+++++++≤++≤+=+=+=>==

三、模型求解:用MATLAB 软件求解:

f=[13 9 10 11 12 8]; %目标函数 A=[0.4 1.1 1 0 0 0;0 0 0 0.5 1.2 1.3]; %不等式约束 B=[800;900];

Aeq=[1 0 0 1 0 0;0 1 0 0 1 0;0 0 1 0 0 1]; %等式约束 beq=[400;600;500];

vlb = zeros(6,1); %待定参数的上下确界 vub=[];

[x,fval] = linprog(f,A,B,Aeq,beq,vlb,vub) %返回最优解x及x处的目标函数值fval

得到结果:在甲机床上加工600个工件2,在乙机床上加工400个工件1和500个工件3,最少费用13800元

用LINDO 软件求解:

min 13x11+9x12+10x13+11x21+12x22+8x23 !需要求解的目标函数 st 0.4x11+1.1x12+x13<=800 !约束条件

0.5x21+1.2x22+1.3x23<=900 x11+x21=400 x12+x22=600 x13+x23=500 end

gin 6 !定义参数为整数

得到结果与MATLAB 中相同,由此说明该结果为最优解。

2. 某厂每日8小时的产量不低于1800件,为了进行质量控制,计划聘请两种不同水平的检验员,且每种检验员的日产量不高于1800件。一级检验员的标准为:速度25件/小时,正确率98%,计时工资4元/小时;二级检验员的标准为:速度15件/小时,正确率95%,计时工资3元/小时.检验员每错检一次,工厂要损失2元,为使总检验费用最省,该工厂应聘一级、二级检验员各几名?要求用MATLAB 和LINDO 软件进行求解,并比较其结果。

一、问题分析:本题要达到的目标是使招聘费和损失费的和最低,由题中给出的约束条件可建立数学模型

如下。

二、模型建立:设聘请一级、二级检验员人数为x 1,x 2人,

则:应给检验员的工资为:121284833224x x x x ⨯⨯+⨯⨯=+

因错误造成的损失为:1212(8252%8155%)2812x x x x ⨯⨯⨯+⨯⨯⨯⨯=+

1212121212min 32248128258151800

8251800.8151800

0,0

z x x x x x x x s t

x x x =+++⨯⨯+⨯⨯≥⨯⨯≤⨯⨯≤≥≥ 即 12

121212min 4036.53459150,0

z x x s t x x x x x x =++≥≤≤≥≥

三、模型求解:用MATLAB 软件求解:

f=[40 36]; %目标函数

A=[-5 -3]; %不等式约束 B=[-45];

Aeq=[];beq=[]; %该模型没有等式约束 vlb = zeros(2,1); %参数的上下确界 vub=[9,15];

[x,fval] = linprog(f,A,B,Aeq,beq,vlb,vub) %返回最优解x及x处的目标函数值fval

得到结果只需聘请一级检验员9名,所需最少检验费用为360元。

用LINDO 软件求解:

min 40x1+36x2 st 5x1+3x2>=45

x1<=9

x2<=15 end

gin 2

得到结果与MATLAB 中相同,从结果看来这样的聘用方案是合理的、最优的。

3. 某储蓄所每天的营业时间为上午9:00到下午17:00,根据经验,每天不同时间段所需要服务员的数量为:

储蓄所可以雇佣全时和半时两类服务员,全时服务员每天报酬100元,从上午9:00到下午17:00工作,但中午12:00到下午14:00之间必须安排1小时的午餐时间,;储蓄所每天可以雇用不超过3名的半时服务员,每个半时服务员必须连续工作4小时,报酬为40元。问:

(1)该储蓄所应该如何雇用全时和半时两类服务员? (2)如果不能雇用半时服务员,每天至少增加多少经费?

(3)如果雇用半时服务员的数量没有限制,每天可以减少多少经费? 要求用LINDO 和LINGO 软件分别求解,并比较其结果。 1) 雇佣全时和半时两类服务员

一、问题分析:该储蓄所雇佣全时和半时服务员,由题知中午有两个小时为全时服务员的午餐时间,所以

在这期间必须有半时服务员接替,由各时段服务员的数量需求我们可以建立以下模型。

二、模型建立:设每天雇佣的全时服务员以12:00~13:00为午餐时间的有x 1名,以13:00~14:00为午餐时

间的有x 2名;半时服务员从9:00,10:00,11:00,12:00,13:00开始工作的人数分别为y 1,y 2,y 3,y 4,y 5名。 则:储蓄所雇佣服务员的总费用1212345100()40()z x x y y y y y =++++++

每个时段的服务员数不少于需求量,且每天半时服务员不超过三名,以此建立模型:

12123451211212121232123412345123451245125123451212345min 100()40().4346

56883,,,,,,0

z x x y y y y y s t

x x y x x y y x x y y y x y y y y x y y y y x x y y y x x y y x x y y y y y y x x y y y y y =++++++++≥+++≥++++≥++++≥++++≥++++≥+++≥++≥++++≤≥

三、模型求解:用LINDO 软件求解:

min 100x1+100x2+40y1+40y2+40y3+40y4+40y5 !目标函数

st x1+x2+y1>=4 !各时段服务员数量要求

x1+x2+y1+y2>=3 x1+x2+y1+y2+y3>=4 x2+y1+y2+y3+y4>=6 x1+y2+y3+y4+y5>=5 x1+x2+y3+y4+y5>=6

相关文档
最新文档