关于如何安排生产的数学模型

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

蒋爱萍200911131904 韩昕彤200911131976 菅美娟200911131914

关于如何安排生产的数学模型

【摘要】为了对生产做出正确的安排,使得收入达到最大,根据题中的条件和数据找到决策变量和目标函数,从而抽象出数学表达,并得到约束条件,利用lingo程序对此优化模型进行求解,得到最优解,再对此做灵敏度分析,得出增加三个工序的生产能力时工序的单位增长带来的价值,利用结果与P1,P2相比P3,,P4,P5的定价提到什么程度时值得生产。

【关键词】决策变量目标函数约束条件灵敏度分析优化模型

1.问题重述

某工厂生产5种产品为P1,P2,P3,P4,P5,它们的单价分别为550, 600, 350, 400, 200。每种产品的生产过程都要经过三道工序:研磨、钻孔和装配,分别记为工序I、II、III。每道工序所需的工时见下表:

每道工序的生产能力即工时数分别为288、192、384,建立模型讨论,如何安排生产才能使得收入达到最大。并进一步讨论(1)如果增加三个工序的生产能力,每个工序的单位增长会带来多少价值?(2)结果表明与P1,P2相比P3,,P4,P5的定价低了,那么价格提到什么程度,它们才值得生产?

2.问题分析

对于工厂生产的五种产品,要确定如何安排生产才能使得收入达到最大,根据题中的数据确定决策变量xi,列出目标函数为max f=550x1+600x2+350x3+400x4+200x5,并且得到约束条件,即建立了关于收入达到最大的优化模型,运用lingo程序对模型进行化简和求值。表明三道工序的工时均未被完全利用,即劳动力并没达到完全利用,所以在此基础上对模型进行灵敏度分析,讨论增加三个工序的生产能力时每个工序的单位增长会带来的价值和与P1,P2相比P3,,P4,P5的定价提高到多少时才值得生产。

3 .模型假设

(1)上述使用的数据都是准确合理的。

(2)假设生产出来的产品全部是合格的,不考虑生产过程中的浪费情况。

(3)假设生产过程是匀速进行的,无突发情况发生,不受其他因素影响。

3.符号说明

(1)Pi 表示第i种产品(i=1,2,3,4,5)

(1)xi 分别表示第Pi种商品的生产数量(i=1,2,3,4,5)。

(2)maxf 收入的最大值。

5. 模型建立和求解

(一)模型的建立。

我们可以看出,在这个问题中,决策变量是xi。我们探讨如何安排5种产品的生产,以使得收入达到最大,因此目标函数为收入最大,抽象出数学语言如下:max f=550x1+600x2+350x3+400x4+200x5。每种产品的生产过程都要经历研磨,钻孔和装配三道工序,但每道工序的生产能力及工时数已经给定,所以各个商品所用的各道工时之和不能超过这个上限,于是我们自然的得出如下的限制条件:

工序I(研磨):12x1+20x2+25x4+15x5<=288;

工序II(钻孔):10x1+8x2+16x3<=192;

工序III(装配):20x1+20x2+20x3+20x4+20x5<=384;

此外,由常识可得,xi均为非负值,且为整数,即xi>=0,于是我们考虑建立优化模型:

目标函数:f=550x1+600x2+350x3+400x4+200x5

约束条件:

12x1+20x2+25x4+15x5<=288;

10x1+8x2+16x3<=192;

20x1+20x2+20x3+20x4+20x5<=384;

xi>=0(i=1,2,3,4,5)

我们要得到一组xi值,使得目标函数f最大。

(二)模型的化简和求解。

1. 运用lingo程序求解(程序见附录),我们可以得出如下结果:

(a).将xi取整得最优解:

在lingo中运行如下程序:

【程序一】:

model:

max=550*x1+600*x2+350*x3+400*x4+200*x5;

12*x1+20*x2+25*x4+15*x5 <= 288;

10*x1+8*x2+16*x3 <=192;

20*x1+20*x2+20*x3+20*x4+20*x5<=384;

@gin(x1);@gin(x2);@gin(x3);@gin(x4);@gin(x5);

end

我们将得到下图结果:

图一:

由上图可知,

Variable Value表示最优解为:P1生产12件,P2生产7件,其他3种产品不生产。(b).数据分析:

运行如下lingo程序:

【程序二】:

model:

max=550*x1+600*x2+350*x3+400*x4+200*x5;

12*x1+20*x2+25*x4+15*x5 <= 288;

10*x1+8*x2+16*x3 <=192;

20*x1+20*x2+20*x3+20*x4+20*x5<=384;

End

得到如下结果:

图二:

(1)Dual Price表示对偶价格:每增加一个产值,产值增加1元;而每增加一个第I种工序工时,产值增加6.25元;每增加一个第II种工序工时,产值不变;每增加一个第III种工序工时,产值增加23.75元。

(2)Reduced cost表示减少的费用:当最优解中零分量增加一个单位,其他变量保持不变是,目标函数减少的量,也即为了使该分量变成非零分量,目标函数中对应系数应增加的量。

在本模型中,产品P3的价格应该增加125元,变为375元;P4的价格应该增加231.25元,变为631.25元;产品P5的价格应该增加368.75元,变为568.75元才值得生产。(3)Row Slack or Surplus表示松弛量或剩余量。

在该模型中,产值剩余量也就是最优值为10800元;

工序I的剩余量为4个工时;

工序II的剩余量为16个工时;

工序III的剩余量为4个工时;

它表明三道工序的工时均未被完全利用,即劳动力并没达到完全利用。

3.对图二结果进行灵敏度分析,得:

图三:

相关文档
最新文档