工厂计划最优化模型文档格式.docx
《工厂计划最优化模型文档格式.docx》由会员分享,可在线阅读,更多相关《工厂计划最优化模型文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
已知每种产品存货最多可达到100件,并且存费每件每月0.5元,在一月初,工厂内无存货,现要求在六月底各种产品存货各50件。
工厂每周工作6天,每天两班,每班工作8个小时。
无需考虑排队等待加工的问题。
1、为使收益最大,工厂应如何安排各月份各种产品的产量?
考虑价格的某种变化及引入新机床对计划和收益的影响。
注意,可假设每月仅有24个工作日。
2、在工厂计划问题中,各台机床的停工维修不是如问题1那样规定了月份,而是选择最合适的月份维修。
除了磨床外,每台机床在这6个月中的一个月必须停工维修;
6个月中4台磨床只有2台需要维修。
扩展工厂计划模型,以使可作上述灵活安排维修时间的决策。
停工时间的这种灵活性价值如何?
2.模型的假设与符号说明
2.1模型的假设与说明
(1)在产品加工过程中不考虑排队等待加工的问题。
(2)假设工厂每月只有24个工作日。
(3)假设工厂里的原材料足够多,不会出现原料短缺的情况。
(4)产品的生产不受工厂的工作工人的限制。
(5)忽略生产设备的新旧对产品加工工时的影响。
(6)假设生产设备的维修不产生维修费用,从而不影响工厂的收益情况。
(7)在这连续的六个月中假设产品的单位售价保持不变。
(8)假设工厂里的原材料得到了充分的利用,无原材料浪费现象。
说明:
对于假设
(1),在不考虑排队加工的同时也忽略更换产品的时间,保持机床加工是在理想的状态下进行。
2.2符号的使用与说明
表示i月份j种产品的生产量
表示i月份j种产品的销售量
表示i月份底j种产品的库存量
表示销售j种产品的单位收益,其中Max为销售的最后总收益
表示i月份j种产品的市场容量
表示i月份k种设备的最大有效工作时间
表示i月份k种设备正常工作的台数
表示i月份k种设备的总台数
表示i月份维修的k种设备的台数
表示k种设备生产j种单位产品所花费的时间
说明:
上述变量中i,j,k的取值范围分别如下,
i=1,2,3,4,5,6(表示1-6个月)
j=1,2,3,4,5,6,7(表示P1-P7七种品)
k=1,2,3,4,5(其中k=1时表示的是磨床,k=2表示的是立式钻床,k=3表示的是卧式钻床,k=4时表示的是镗床,k=5时表示的是刨床)
3.模型的准备
这是一个求收益的问题,由于收益=收入-成本,而题目中给出了每件产品的收益,工厂收益规定作产品售价减去原材料费用之剩余,意思是此时的收益并不是最后收益,最后收益应该是所得收益减去库存所需要支出费用的剩余。
由于本题中有很多约束条件:
每月库存容量的限制,6月份有固定的库存量的限制,每月各种产品的市场容量的限制,工作时间的限制,各机床需要维修的限制,一月份没有存货的限制,经过分析比较,利用线性规划模型来完成本次建模是最合适的,写出目标函数和约束条件,利用lingo软件编程,最后可以得出最优解。
4.问题的分析
对于问题
(1)的目标是确定各月份各种产品的最佳产量,使得工厂的收益最大。
(1)考虑到工厂的收益是产品的售价减去原材料费用之剩余的基础上扣除产品因某种因素而出现积压后产生的库存费用。
所以,如果在不考虑维修机床产生的费用的基础上,在进行产品生产之前进行预测性对各产品进行定量生产,同时针对各产品在市场上的市场容量减少各产品的库存,继而到达最大工厂收益的预期效果。
(2)对于产品价格的某种变化对计划和收益的影响的问题,市场中会不可避免的出现产品的价格上下波动的变化,如何知道该变化对生产计划和收益的影响?
我们可以根据lingo软件中的灵敏度分析知道价格在一定范围内的变动不会对生产计划产生影响。
由于在其他条件不变的情况下对产品的价格进行变动必定会对收益产生影响,这时再据软件得到的生产量和销售量,找出两者之间的关系,而销售量与收益应成正相关,从而得出其对工厂收益的影响。
针对引入新机床对计划和收益的影响,引入新机床很明显会增加工作时间,提高对原材料的利用,缩短产品生产的时间等等。
最后利用结果数据对相关变量进行分析影响。
对于问题
(2),在除了不规定哪个月维修哪种机床的基础上其他条件与问题
(1)都相同的前提下,灵活处理机床维修的情况。
在问题分析的过程中,可以将六个月机床维修的台数问题转换为各种机床维修的总次数的问题,再通过相关的约束条件用lingo算法求解得出怎样条件下安排的机床维修计划可使得工厂的总收益Max达到最大值。
5.模型的建立与求解
5.1问题
(1)的解决方案及模型
5.1.1确定工厂总益
建立目标函数是在合理安排各月各种产品的产量下工厂所得的最大收益Max.
由题中可知,收入=售价-成本
根据模型的准备和问题的分析可知,收益=收入-库存费用
在模型中的合理假设条件下,根据已知假设的变量可以求出六个月库存所需的费用S即
说明:
问题
(1)中已经定好六月底各种产品分别库存50件,由于到六月底产品不会产生库存费用,即表达式中i的取值范围为1,2,3,4,5.
其中,库存量
的表达式如下
再根据题中所给条件,求得收入为单件收益与销售量的乘积,式子如下,
由以上
(1)式和(3)式可知,目标函数工厂收益Max为
其约束条件如下,
在上述的约束条件中有i=1,2,3,4,5,6(分别表示六个月)
j=1,2,3,4,5,6,7(分别代表7种产品)
k=1,2,3,4,5(分别代表五种机床,符号假设与说明中已说明)
条件1即为题目中每种产品存货最多可到100件;
条件2是题中的要求,到6月底每种产品有存货50件;
条件3表示的是1月底各产品的库存量;
条件4则说明各产品每月的销售量不得超过各产品每月的市场容量;
条件5表示的是各种机床每月的最大有效工作时间;
条件6是指各种机床每月的实际工作时间不得超过其每月的最大工作的有效时间.
再利用lingo软件的最优算法求解得工厂在安排如下生产量(表5-1),销售量(表5-2)时可以得到最大的收益,Max=93886.5
表5-1各月份各种产品的生产量安排表(单位/台)
P1
P2
P3
P4
P5
P6
P7
一月
500
889
383
300
800
200
二月
700
600
118
250
三月
400
四月
100
五月
1100
六月
550
350
表5-2各月份各种产品销售量安排表(单位/台)
产品
月份
150
1000
50
5.1.2讨论价格的变化及引入新机床对计划和收益的影响
用lingo软件对模型进行灵敏分析结果见附录,将其整理为表格(表5-3)如下,
表5-3产品收益变(单位/元)
产品
(4.28,∞)
(4.2,14)
(0,∞)
(2.57,∞)
(1.71,∞)
(0,4.28)
(0.12,∞)
(0.5,∞)
(0.37,∞)
(10,∞)
(0.5,6)
(0.5,20)
(0.87,∞)
(2.2,∞)
(0.5,40)
题目中所给的单位产品的收益可以看成是各单位产品的价格的综合体现,在lingo软件结果分析中可知,各种产品的单位收益在一定范围内上下波动不会对生产计划安排产生影响,从另一方面来说价格不影响生产,但价格在其范围内变动时工厂总收益与其成正相关
另外一方面,我们模拟单位产品库存的价格变化对收益的影响得到如下数据:
库存单价
0.2
0.3
0.4
0.5
0.6
0.7
收益
94229.9
94116.7
94003.4
93890.2
93776.9
93663.7
由上图易知工厂收益与库存单价大致呈反比例关系,从总体来说库存单价对收益的影响不是很大。
通过对lingo软件运行结果的分析除立式机床外,其他机床的资源都有剩余于是我们进行了机床变量的微调,对引入新机床对计划和收益的影响进行分析,并为工厂提出最佳的引进机床的方案。
下表(表5-3)为引入新机床的收益情况,
表5-3引入机床前后的收益情况(单位/元)
未购置
新购一台
收益增加量
磨床
93886.5
94858.5
972
立式钻床
卧式钻床
93928
41.5
镗床
103528
9641.5
刨床
106017
12130.5
由上表可知,新引进一台刨床或者一台镗床后所得到的收益将明显增加,所以建议工厂引进镗床和刨床两种设备。
5.2问题
(2)的解决方案及模
该题的解决方案与题一类似。
各种产品在每月底时的库存量为
其中一月初个产品都没有库存,在六月底每种产品分别库存50件,即
工厂需付出的库存费用为每件每月存费与库存量的乘积,即
工厂的毛收益为单件产品的收益与其销售量的乘积,即
其中建立了一个“机床-月份”的矩阵
则有,目标函数,即
约束条件如下,
前面六个条件与题一相同。
最后面五个条件分别表示五种机床i月份维修各机床的台数(即次数)。
通过lingo软件的计算可知在如下生产安排和机床维修安排的前提下可以到达最大的工厂收益的效果。
由整理结果可得到各种产品的生产量的安排(表5-4),如下表所示:
表5-4各月份各种产品的生产量(单位/件)
837
1200
1150
110
各月份各种产品的销售量通过整理可得如下表(表5-5):
表5-5各月份各种的销售量(单位/件)
月份
60
通过整理得到的机床维修的安排如下表(表5-6):
表5-6各月份各种设备的维修台数(单位/台)
月份
设备
2
1
3
最终的最大工厂收益为Max=111302.
6.模型的改进
在以上的模型当中,机床的维修都是以月为单位进行,与实际工厂中机床的维修不尽相同,如果机床突然出现故障会对工厂的生产计划产生极大的影响,为克服机床维修时间不灵活的问题,我们提出了一下两种模型改变方案。
方案一:
我在考虑到现实情况中可能机床的维修有他自己的维修周期,所以我们在保持其维修机器时间周期为一个月的时间的基础上对第二题的模型进行了进一步的改进消除了月份界限的限制已达到灵活安排维修时间使合收益最大的目的。
首先我们对原有的时间界限进行了处理,将前后两个月划分为一个时间段,形成新的六个时间段,分别是:
(一月,二月),(二月,三月),(三月,四月),(四月,五月),(五月,六月),(六月,一月);
这样相应的市场容量也会随之改变为相邻两个月的是市场容量的和得到如下矩阵:
相应的收益,约束条件也会被扩大了一倍,模型公式如下:
目标函数:
利用lingo软件编程求解(程序见附件2-2);
得到总收益是:
113227元。
如下生产安排和机床维修安排的前提下可以到达最大的工厂收益的效果。
表5-7各个机床的维修安排(单位/台)
(一月,二月)
(二月,三月)
(三月,四月)
(四月,五月)
(五月,六月)
(六月,一月)
磨
垂直钻孔
水平钻孔
镗孔
刨
表5-8各个月各种产品的生产,销售情况(单位/台)
产量
2000
1917
2100
销售
1500
900
417
1600
260
1900
160
方案二:
我们可以将机床维修的时间换为更小的时间单位,避免机床维修好后出现闲置的现象,更充分的利用机床,以此达到工厂收益最大。
下列表达式中
表示五种机床的台数,从上到下依次为磨床,立式钻长床,卧式钻床,镗床,刨床.
表示五种机床中各种机床需要维修的台数。
该模型的目标函数与其他约束条件(除了最后五个条件不需要和将
变为
外)与题二的模型一样。
计算求得工厂最大收益为:
116630元。
7.模型的优缺点
优点:
模型的适用性较好,能够随着市场的变化而作出相应的变动,从而得到更大的收益,具有较强的应用指导意义。
模型的建立运用规划的方法,可理解性强,应用广泛。
缺点:
没有考虑到机床维修的费用对工厂总体收益的影响,与实际情况有出入。
参考文献
[1].数学建模竞赛:
获奖论文精选与点评/韩中庚主编.—北京:
科学出版社,2007.
[2].数学建模方法/刘承平主编.—北京:
高等教育出版社,2002.7.
[3].LINGO和EXCEL在数学建模中的应用/袁新生,邵大宏,郁时炼主编.—北京:
科学出版社,2007
附表
表一
设备月份
1152
1536
768
384
表二
10
6
8
4
11
9
0.70
0.1
0.8
0.05
0.03
0.07
0.08
0.01
表三
附录
灵敏度分析
:
range
Rangesinwhichthebasisisunchanged:
ObjectiveCoefficientRanges
CurrentAllowableAllowable
VariableCoefficientIncreaseDecrease
Y(1,1)10.00000INFINITY5.714286
Y(1,2)6.0000008.0000001.800000
Y(1,3)8.000000INFINITY8.000000
Y(1,4)4.000000INFINITY4.000000
Y(1,5)11.00000INFINITY8.428571
Y(1,6)9.000000INFINITY7.285714
Y(1,7)3.0000001.285714INFINITY
Y(2,1)10.00000INFINITY9.875000
Y(2,2)6.000000INFINITY6.000000
Y(2,3)8.000000INFINITY7.500000
Y(2,4)4.000000INFINITY4.000000
Y(2,5)11.00000INFINITY11.00000
Y(2,6)9.000000INFINITY9.000000
Y(2,7)3.000000INFINITY2.625000
Y(3,1)10.00000INFINITY0.0
Y(3,2)6.0000000.05.500000
Y(3,3)8.000000INFINITY8.000000
Y(3,4)4.000000INFINITY3.500000
Y(3,5)11.000009.00000010.50000
Y(3,6)9.000000INFINITY9