饮料生产计划.docx
《饮料生产计划.docx》由会员分享,可在线阅读,更多相关《饮料生产计划.docx(11页珍藏版)》请在冰豆网上搜索。
饮料生产计划
课程设计报告
课程设计题目:
饮料生产计划
学校:
华东交通大学
学院:
基础科学学院
内容提要:
本文探讨在在人们的生产实践中,经常会遇到如何利用现有资源来安排生产,以取得最大经济效益的问题。
此类问题构成了数学模型的一个重要分支---------数学规划。
在本文中通过线性规划的方法初步解决了饮料生产计划使总成本最低的问题。
先给出目标函数,在通过分析得出约束条件得到可行域,在可行域中寻找最优解得问题。
本文还进一步讨论了限制乙厂的设备,再对生产计划进行调整。
可见,线性规划模型是解决资源最优配置的很重要的一种方法,通过建立这种模型可以解决企业人员分配问题,产品的生产与销售问题,工业原料采购的问题,学生选课策略等等实际性的问题。
这在日常生活及生产中是不可缺少的。
通过根据实际限制,对区间进行划分,在可行域中找最优解,即最好的解决方案。
关键词:
目标函数,可行域,约束条件
一.问题重述
题目:
饮料生产计划
某饮料公司拥有甲、乙两家饮料厂,都能生产A、B两种牌号的饮料。
甲饮料厂生产A饮料的效率为8吨/小时,生产B饮料的效率为10吨/小时;乙饮料厂生产A饮料的效率为10吨/小时,生产B饮料的效率为4吨/小时。
甲饮料厂生产A饮料和B饮料的成本分别为1000元/吨和1100元/吨;乙饮料厂生产A饮料和B饮料的成本分别为850元/吨和1000元/吨。
现该公司接到一生产订单,要求生产A饮料2000吨,B饮料3200吨。
假设甲饮料厂的可用生产能力为400小时,乙饮料厂的生产能力为240小时。
(1)请你为该公司制定一个完成该生产订单的生产计划,使总的成本最小(要求建立相应的线性规划模型,并给出计算结果)。
(2)由于设备的限制,乙饮料厂如果生产某种牌号的饮料,则至少要生产该种牌号的饮料300吨。
此时上述生产计划应如何调整(给出简要计算步骤)?
首先,这是一个简单的线性规划问题。
建立基本模型:
线性规划所解决的问题具有以下共同的特征:
每一个问题都用一组未知数(x1,x2,…xn)表示某一方案;这些未知数的一组定值就代表一个具体方案。
由于实际问题的要求,通常这些未知数值是瞧不非负的。
存在一定的限制条件(即约束条件),这些限制条件是关于未知数的一组线性等式或线性不徒工来表示。
有一个目标要求,称为目标函数。
目标函数可表示为一组未知数的线性函数。
根据问题的需要,要求目标函数实现最大化或最小化。
一般的线性规划问题的数学模型如下:
目标函数:
max(min)z=c1x1+c2x2+…cnxn
约束条件:
s.t.
线性规划模型的求解可用图解法或单纯形法。
由于计算机的普及,可用现成的软件求解。
二.模型假设
1.假设这两家饮料厂在生产期间不会发生停产现象,能持续生产。
2.假设在生产期间,生产线中任何一个环节都不会出问题,能按计划工作。
3.假设甲,乙饮料厂的生产饮料A,B的效率保持不变。
4.假设甲,乙饮料厂的生产能力不变。
5.假设甲,乙饮料厂生产的饮料A,B全部能够销售出去。
三.模型建立
甲,乙两个饮料厂要一起生产两种饮料A,B。
两个厂要完成生产A饮料2000吨,B饮料3200吨的生产计划。
要求建立一个生产计划使得生产成本最低。
假设甲厂生产饮料Ax1吨,生产B饮料x2吨;乙厂生产A饮料y1吨,生产B饮料y2吨。
其中,甲厂生产A饮料的成本是每吨1000元,生产B饮料的成本是每吨1100元;乙厂生产A饮料的成本是每吨850元,生产B饮料的成本是每吨1000元。
所以,可以得出该饮料公司要完成订单的总成本是:
1000*x1+1100*x2+850*y1+1000*y2。
联系实际,甲饮料厂生产A饮料的效率为8吨/小时,生产B饮料的效率为10吨/小时;乙饮料厂生产A饮料的效率为10吨/小时,生产B饮料的效率为4吨/小时。
生产过程中有各种限制,比如机器生产效率,饮料厂的生产能力等等,从而得出了几个约束条件:
1.甲饮料厂的可用生产能力为400小时:
x1/8+x2/10<=400。
2.乙饮料厂的可用生产能力为240小时:
y1/10+y2/4<=240。
3.订单要求生产A饮料2000吨:
x1+y1=2000。
4.订单要求生产B饮料3200吨:
x2+y2=3200。
5.非负约束:
x1,x2,y1,y2>=0。
另一种情况:
由于设备的限制,乙饮料厂如果生产某种牌号的饮料,则至少要生产该种牌号的饮料300吨。
从新给出约束条件:
1.甲饮料厂的可用生产能力为400小时:
x1/8+x2/10<=400。
2.乙饮料厂的可用生产能力为240小时:
y1/10+y2/4<=240。
3.订单要求生产A饮料2000吨:
x1+y1=2000。
4.订单要求生产B饮料3200吨:
x2+y2=3200。
5.非负约束:
x1,x2,y1,y2>=0。
6.乙厂生产一种饮料的最低生产量是300吨:
有三种可能生产情况:
a:
乙厂A,B饮料都生产:
y1,y2>=300。
b:
乙厂只生产A饮料:
y1>=300,y2=0。
c:
乙厂只生产B饮料:
y1=0,y2>=300。
注意:
根据求出的总生产成本值的大小来决定使用哪种生产计划。
三.模型求解
目标函数:
minz=1000*x1+1100*x2+850*y1+1000*y2
约束条件:
x1/8+x2/10<=400
解编写LINGO程序如下:
min=1000*x1+1100*x2+850*y1+1000*y2;
x1/8+x2/10<=400;
y1/10+y2/4<=240;
x1+y1=2000;
x2+y2=3200;
x1>=0;
x2>=0;
y1>=0;
y2>=0;
@gin(x1);@gin(x2);@gin(y1);@gin(y2);
运行结果:
Globaloptimalsolutionfoundatiteration:
1
Objectivevalue:
5204000.
VariableValueReducedCost
X10.0000001000.000
X23040.0001100.000
Y12000.000850.0000
Y2160.00001000.000
RowSlackorSurplusDualPrice
15204000.-1.000000
296.000000.000000
30.0000000.000000
40.0000000.000000
50.0000000.000000
60.0000000.000000
73040.0000.000000
82000.0000.000000
9160.00000.000000
结果分析:
从运行结果得,当甲厂生产A饮料0吨,B饮料3040吨;乙厂生产A饮料2000吨,B饮料160吨。
可以使总成本最低为5204000元。
另一种情况:
增加一个约束条件.
目标函数:
minz=1000*x1+1100*x2+850*y1+1000*y2
有以下三种可能:
a:
乙厂A,B饮料都生产:
解编写LINGO程序如下:
min=1000*x1+1100*x2+850*y1+1000*y2;
x1/8+x2/10<=400;
y1/10+y2/4<=240;
x1+y1=2000;
x2+y2=3200;
x1>=0;
x2>=0;
y1>=0;
y2>=0;
y1>=300;
y2>=300;
@gin(x1);@gin(x2);@gin(y1);@gin(y2);
运行结果:
Globaloptimalsolutionfoundatiteration:
1
Objectivevalue:
5242500.
VariableValueReducedCost
X1350.00001000.000
X22900.0001100.000
Y11650.000850.0000
Y2300.00001000.000
RowSlackorSurplusDualPrice
15242500.-1.000000
266.250000.000000
30.0000000.000000
40.0000000.000000
50.0000000.000000
6350.00000.000000
72900.0000.000000
81650.0000.000000
9300.00000.000000
101350.0000.000000
110.0000000.000000
结果分析:
从运行结果得,当甲厂生产A饮料350吨,B饮料2900吨;乙厂生产A饮料1650吨,B饮料300吨。
可以使总成本最低为5242500元。
b:
乙厂只生产A饮料:
解编写LINGO程序如下:
min=1000*x1+1100*x2+850*y1+1000*y2;
x1/8+x2/10<=400;
y1/10+y2/4<=240;
x1+y1=2000;
x2+y2=3200;
x1>=0;
x2>=0;
y1>=0;
y2>=0;
y1>=300;
y2=0;
@gin(x1);@gin(x2);@gin(y1);@gin(y2);
运行结果:
Globaloptimalsolutionfoundatiteration:
0
Objectivevalue:
5220000.
VariableValueReducedCost
X10.0000001000.000
X23200.0000.000000
Y12000.000850.0000
Y20.0000000.000000
RowSlackorSurplusDualPrice
15220000.-1.000000
280.000000.000000
340.000000.000000
40.0000000.000000
50.000000-1100.000
60.0000000.000000
73200.0000.000000
82000.0000.000000
90.0000000.000000
101700.0000.000000
110.000000100.0000
结果分析:
从运行结果得,当甲厂生产A饮料0吨,B饮料3200吨;乙厂生产A饮料2000吨,B饮料0吨。
可以使总成本最低为5220000元。
c:
乙厂只生产B饮料:
解编写LINGO程序如下:
min=1000*x1+1100*x2+850*y1+1000*y2;
x1/8+x2/10<=400;
y1/10+y2/4<=240;
x1+y1=2000;
x2+y2=3200;
x1>=0;
x2>=0;
y1>=0;
y2>=0;
y1=0;
y2>=300;
@gin(x1);@gin(x2);@gin(y1);@gin(y2);
运行结果:
nofeasiblesolutionfound!
结果分析:
没有找到可行解,这种情况不成立。
所以,当限制乙饮料厂如果生产某种牌号的饮料,则至少要生产该种牌号的饮料300吨时,最优解为b方案,即:
甲厂生产A饮料0吨,B饮料3200吨;乙厂生产A饮料2000吨,B饮料0吨。
可以使总成本最低为5220000元。
四.体会
数学模型主要是将现实对象的信息加以翻译,归纳的产物。
通过对数学模型的假设、求解、验证,得到数学上的解答,再经过翻译回到现实对象,给出分析、决策的结果。
数学建模所要解决的问题决不是单一学科问题,它除了要求我们有扎实的数学知识外,还需要我们不停地去学习和查阅资料,除了我们要学习许多数学分支问题外,还要了解工厂生产、经济投资、保险事业等方面的知识,这些知识决不是任何专业中都能涉猎得到的。
它能极大地拓宽和丰富我们的内涵,让我们感到了知识的重要性,也领悟到了“学习是不断发现真理的过程”这句话的真谛所在,这些知识必将为我们将来的学习工作打下坚实的基础。
在我们的日常生活和工作中,经常会用到有关建模的概念。
例如,我们平时出远门,会考虑一下出行的路线,以达到既快速又经济的目的;一些厂长经理为了获得更大的利润,往往会策划出一个合理安排生产和销售的最优方案……这些问题和建模都有着很大的联系。
而在学习数学建模以前,我们面对这些问题时,解决它的方法往往是一种习惯性的思维方式,只知道该这样做,却不很清楚为什么会这样做,现在,我们这种陈旧的思考方式己经被数学建模中培养出的多角度、层次分明、从本质上区分问题的新颖多维的思考方式所替代。
这种凝聚了许多优秀方法为一体的思考方式一旦被你把握,它就转化成了你自身的素质,不仅在你以后的学习工作中继续发挥作用,也为你的成长道路印下了闪亮的一页。