数学建模论文
工厂产品计划生产问题
摘要 某电子厂生产三种产品供应给政府部门:晶体管、微型模块、电路集成器。该工程从物理上分为四个加工区域:晶体管生产线、电路印刷与组装、晶体管与模块质量控制、电路集成器测试与包装。由于受到生产时间,投入成本和厂房设备生产加工区域等的限制,同时各种产品之间又相互制约,如何在有限的条件下,使得工厂的获利最高?这中间便产生了一个问题,即各种产品应生产多少。本文先通过对生产各种产品所需的成本,使用各种加工区域的时间及对其他产品的影响做了一个统计,绘制出了一张简易的二维表。通过这张二维表我们再假设单独生产某种产品时的情况,然后进行各种产品之间的搭配生产,由于我们生产的产品有三种,假设各种产品的生产量分别为Xi(i=1,2,3),分析可知总共有7中情况,再将这7中情况分别利用数学软件lingo计算出来,进行整理,即可建立一个数学模型,对比各种情况下工厂的获益,最后得出使工厂获益最大时各种产品的最佳生产量,即解决该问题。
关键词 产品 加工区域 对比 获益最大
1.问题的重述
每个工厂无论大小,其生产设备,生产时间,投入的成本都是有一定限度的,即每个工厂都会遇到这样一个问题,如何生产产品,各种产品生产出多少,才能使工厂的获益最大。每种产品生产少了就会达不到客户的需求,当然它也不是生产的越多越好,因为每个工厂产品的销售量都是一定的,生产多了就会浪费。可见该问题的普遍性和重要性,因此研究该问题很有意义。本文通过建立数学模型,对比分析,最后得出各种产品的最佳生产量,使工厂的获益最大。
2.符号的约定
(=1,2,3)分别表示晶体管、微型模块、电路集成器的生产量;
(=1,2,3;=1,2,3,4)分别表示生产第种产品时在第个加工区域的加工时间,其中是所生产产品的区分标号,是加工区域的区分标号;
(=1,2,3,4)分别表示晶体管生产线、电路印刷与组装、晶体管与模块质量控制、电路集成器测试与包装四个加工区域的最大可用时间;
(=1,2,3)分别表示生产晶体管、微型模块、电路集成器的成本;
分别表示晶体管、微型模块、电路集成器的销售价格。
3.模型的建立求解与结果分析
为求得在工厂获益最大时三种产品的生产量,特建立如下模型:
目标函数: Max= ........(1)
条件约束:
式(1)表示工厂的总收益;
式(2)表示当<1时不符合条件;
式(3)表示生产第种产品时对第个加工区域的限制条件;
式(4)表示当<1时不符合条件。
以上介绍的是在本题上所建立的概要模型,下面介绍7种具体模型:
表一:生产各种产品时所对应的加工区域的占用时间
产 品 种类 时间 加工区域 |
晶体管生产线 |
电路印刷与组装 |
晶体管与模块质量控制 |
电路集成器测试与包装 |
晶体管 | 0.1h |
| 0.5h |
|
微型模块 |
|
| 0.4h |
|
电路集成器 |
| 0.1h |
| 0.5h |
模型一:
此模型是该工厂仅生产晶体管(x1),时的情形。
求解该模型时根据建好的概要模型,直接将变量具体数字化即可,利用lingo算出模型一的结果
max=x1*(c1-b1);
s.t.
x11*x1<=T1;
x13*x1<=T3;
c1代表晶体管的销售价格,其值为2元;
b1代表晶体管的直接生产成本,其值为0.7;
x11代表生产晶体管时需要占用晶体管生产线的时间,其值
为0.1;
x13代表生产晶体管时需要占用晶体管与模块质量控制的时
间,其值为0.5;
T1,T3分别代表晶体管生产线,晶体管与模块质量控制加工区
域的最大可用时间。
以上是在lingo中输入的内容,运行后得出结果:
X1=400 , Max=520
生产晶体管的数量为400个,此时工厂的收益为520元
该结果表明:如果工厂在只生产晶体管的情况下,最多可生产400个晶体管,此时工厂的收益才能达到最大值,最大值为520元。
模型二:
此模型是该工厂仅生产微型模块(x2),时的情形。
参照模型一,同理可利用lingo算出模型二的结果
max=x2*(c2-b2);
s.t.
x21*x2*3<=T1;
x13*x2*3+x23*x2<=T3;
c2代表微型模块的销售价格,其值为8元;
b2代表微型模块的直接生产成本,其值为0.5元;
x21代表生产微型模块时需要占用晶体管生产线的时间,其值
为0.1;
x13代表生产微星模块之前生产晶体管时需要占用晶体管与模块
质量控制的时间,其值为0.5;
x23代表生产微星模块时需要占用晶体管与模块
质量控制的时间,其值为0.4.
T1,T3分别代表晶体管生产线,晶体管与模块质量控制加工区
域的最大可用时间。
以上是在lingo中输入的内容,运行后得出结果:
x2=105 , Max=567
生产微型模块的数量为105个,此时工厂的收益为567元
该结果表明:如果工厂在只生产微型模块的情况下,最多可生产105个微型模块,此时工厂的收益才能达到最大值,最大值为567元。
模型三:
此模型是该工厂仅生产电路集成器(x3),时的情形。
参照模型一,同理可利用lingo算出模型三的结果:
max=x3*(c3-b3)-x3*3*b2-(3*3*x3+3*x3)*b1;
s.t.
x31*(3*x3+3*3*x3)<=T1;
x32*x3*3<=T2;
x331*(3*x3+3*3*x3)+x332*3*x3<=T3;
x34*3*x3<=T4;
c3代表电路集成器的销售价格,其值为25元;
b3代表电路集成器的直接生产成本,其值为2元;
x31代表生产电路集成器时需要占用晶体管生产线的时间,其
值为0.1;
x32代表生产电路集成器时需要占用电路印刷与组装的时间,其
值为0.1;
x331代表生产电路集成器之前生产晶体管时需要占用晶体管与模块
质量控制的时间,其值为0.5;
x332代表生产电路集成器之前生产微型模块时需要占用晶体管与模
块质量控制的时间,其值为0.4;
x34代表生产电路集成器时需要占用电路集成器测试与包装的时间,
其值为0.5;
T1,T2,T3,T4分别代表晶体管生产线,电路印刷与组装,晶体管与模块质量控制,电路集成器测试与包装加工区域的最大可用时间。
以上是在lingo中输入的内容,运行后得出结果:
X3=27 , Max=353.7
生产的电路集成器数量为27个,此时工厂的收益为353.7元
该结果表明:如果工厂在只生产电路集成器的情况下,最多可生产27个电路集成器,此时工厂的收益才能达到最大值,最大值为353.7元。
模型四:
此模型是该工厂仅生产晶体管(x1)和微型模块(x2),时的情形。
参照以上模型,同理可利用lingo算出模型四的结果:
max=x1*(c1-b1)+x2*(c2-b2)-b1*3*x2;
s.t.
x11*x1+x21*3*x2<=T1;
3*x13*0.5+x2*x23<=T3;
x1>0;
x2>0;
以上是在lingo中输入的内容,运行后得出结果:
x1=1 , x2=105 ,Max=568
生产晶体管27个,微型模块105个,此时工厂的收益为568元
该结果表明:如果工厂在只生产晶体管和微型模块的情况下,最多可生产1个晶体管和105个微型模块,此时工厂的收益才能达到最大值,最大值为568元。
模型五:
此模型是该工厂包含生产晶体管(x1)和微型模块(x3)时的情形。
参照模型一,同理可利用lingo算出模型六的结果为:
max=x1*(c1-b1)+x3* (c3-b3)-3*x3*b2-(3*3*x3+3*x3)*b1;
s.t.
(3*x3+3*3*x3)*x11<=200;
x11*x1<=T1-(3*x3+3*3*x3)*x11;
x3*x32<=T2;
x13*(3*x3+3*x3*3)+3*x3*x23<=T3;
x13*x1<=T3-x13*(3*x3+3*x3*3)-3*x3*x23;
x3*x34<=T4;
C1,c3分别代表晶体管,电路集成器的销售价格为8元,25元;
b1,b3分别代表晶体管,电路集成器的直接生产成本为0.5元,2元;
x11代表生产晶体管时需要占用晶体管生产线的时间,其值为0.1;
x21代表生产微型模块时需要占用晶体管生产线的时间,其值为0.1;
x13代表生产微星模块之前生产晶体管时需要占用晶体管与模块质量
控制的时间,其值为0.5;
x23代表生产微星模块时需要占用晶体管与模块质量控制的时间,其
值为0.4.;
x34代表生产电路集成器时需要占用电路集成器测试与包装的时间,其值为0.5;
T1,T2,T3,T4分别代晶体管生产线,表晶体管生产线,电路印刷与组装,晶体管与模块质量控制,电路集成器测试与包装加工区域的最大可用时间。
以上是在lingo中输入的内容,运行后得出结果:
x1=400, x3=0,max=520 ;
生产晶体管的数量为400个,此时工厂的收益为520元;
该结果表明:如果工厂在只生产微型模块的情况下,最多可生产400个晶体管,此时工厂的收益才能达到最大值,最大值为520元。
模型六:
此模型是该工厂包含生产晶体管()和微型模块(x2),时的情形。
参照模型一,同理可利用lingo算出模型六的结果为:
max=x2*(c2-b2)-3*x2*b1+x3*(c3-b3)-3*x3*b2-(3*3*x3+3*x3)*b1;
s.t.
(3*x3+3*3*x3)*<=T1;
x11*3*x2+(3*x3+3*3*x3)*x11<=T1;
x3*x32<=T2;
x13*(3*x3+3*x3*3)+3*x3*x23<=T3;
3*x2*x13+x2*x23+x13*(3*x3+3*x3*3)-3*x3*x23<=T3;
x3*x34<=T4;
c2,c3分别代表微型模块,电路集成器的销售价格为8元,25元;
b2,b3分别代表微型模块,电路集成器的直接生产成本,其值分别为为
0.5元,2元;
x11代表生产晶体管时需要占用晶体管生产线的时间,其值
为0.1;
x21代表生产微型模块时需要占用晶体管生产线的时间,其值
为0.1;
x13代表生产微星模块之前生产晶体管时需要占用晶体管与模块
质量控制的时间,其值为0.5;
x23代表生产微星模块时需要占用晶体管与模块
质量控制的时间,其值为0.4.;
x34代表生产电路集成器时需要占用电路集成器测试与包装的时间,
其值为0.5;
T1,T2,T3,T4 分别代晶体管生产线,表晶体管生产线,电路印
刷与组装,晶体管与模块质量控制,电路集成器测试与包装加工区域的最大可用时间。
以上是在lingo中输入的内容,运行后得出结果:
x2=105 , x3=0, Max=567 ;
生产微型模块的数量为105个,此时工厂的收益为567元;
该结果表明:如果工厂在只生产微型模块的情况下,最多可生产105个微型模块,此时工厂的收益才能达到最大值,最大值为567元。
模型七:
此模型是该工厂包含生产晶体管()和微型模块(x2)和电路集成器(x3),时的情形。
参照模型一,同理可利用lingo算出模型七的结果为:
max=x1*(c1-b1)+x2*(c2-b2)-3*x2*b1+x3*(c3-b3)-3*x3*b2
-(3*3*x3+3*x3)*b1;
s.t.
(3*x3+3*3*x3)*<= T1;
x11*3*x2+(3*x3+3*3*x3)*x11<=T1;
x1*x11+(3*x3+3*3*x3)*x11-3*x2*x11<=T1;
x3*x32<=T2;
x13*(3*x3+3*x3*3)+3*x3*x23<=T3;
3*x2*x13+x2*x23+x13*(3*x3+3*x3*3)-3*x3*x23<=T3;
x1*x13+x13*(3*x3+3*x3*3)+(3*x2*x13+x2*x23)-3*x3*x23<=T3;
x3*x34<=T4;
c1,c2,c3分别代表晶体管,微型模块,电路集成器的销售价格为2元,8
元,25元;
b1,b2,b3分别代表晶体管,微型模块,电路集成器的直接生产成本为
0.7元,0.5元,2元;
x11代表生产晶体管时需要占用晶体管生产线的时间,其值为0.1;
x13代表生产微星模块之前生产晶体管时需要占用晶体管与模块质量
控制的时间,其值为0.5;
x23代表生产微星模块时需要占用晶体管与模块质量控制的时间,其
值为0.4.;
x23代表生产微星模块时需要占用晶体管与模块电路印刷与组装,其
值为0.1.;
x34代表生产电路集成器时需要占用电路集成器测试与包装的时间,
其值为0.5;
T1,T2,T3,T4分别代表晶体管生产线,电路印刷与组装,晶体
管与模块质量控制,电路集成器测试与包装加工区域的最大
可用时间。
以上是在lingo中输入的内容,运行后得出结果:
x1=1, x2=105 , x3=0, max=568 ;
生产晶体管,微型模块的数量分别为1,105个,此时工厂的收益为568元;
该结果表明:如果工厂在生产晶体管,微型模块的情况下,最多可生产105个微型模块,此时工厂的收益才能达到最大值,最大值为568元。
七种情况汇总:
表二:各种模型下各产品的生产量及总收益情况表
| 晶体管的 生产个数 | 微型模块的 生产个数 | 电路集成器的生产个数 | 总收益 (元) |
模型一 | 400 | 0 | 0 | 520 |
模型二 | 0 | 105 | 0 | 567 |
模型三 | 0 | 0 | 37 | 353.7 |
模型四 | 1 | 105 | 0 | 568 |
模型五 | 400 | 0 | 0 | 520 |
模型六 | 0 | 105 | 0 | 567 |
模型七 | 1 | 105 | 0 | 568 |
通过统计七种模型下工厂的收益情况,对比分析可知,模型二与模型六的结果相同,模型四与模型七相同且总收益最大,因此,建议工厂采用模型四或模型七的方案进行生产,即晶体管生产1个,微型模块生产105个。
4.模型的优缺点分析
该模型的特点是简约明了,一般的读者都能理清这种模型,而且具有一定的实用价值,可供工厂在生产产品时参考计算。
虽然解决了本题所提出的问题,但该题毕竟是将现实情况简化了过后的。在实际中,每个工厂所生产的产品可能远远不只该题中所提到的三种,每种产品在生产中受各种条件的制约可能也远远不只是题中所提到的那几个,可能会更复杂。因此,该模型在解决更复杂的问题时可能不能达到预期的效果,该模型还不能解决一些复杂的工厂产品计划生产问题,因此该模型还需要很大改进。
参考文献:
[1] 周义昌,赫孝良《数学建模实验》西安交通大学出版社
[2] 王树禾《数学模型选讲》科学出版社
[3] 杨力士《数学建模基础》北京工业大学出版社
[4] 谭永基 蔡志杰《数学模型》复旦大学出版社
[5] 向鹤梅《数学课程标准教师读本》华中师范大学出版社
[6] LINGO用户指南(LINGO8.0的帮助文档)
附录:
模型一的lingo代码:
(注:x1表示生产晶体管的数量)
max=x1*(2-0.7);
0.1*x1<=200;
0.5*x1<=200;
@gin(x1);
模型二的lingo代码:
(注:x2表示生产微型模块的数量)
max=x2*(8-0.5);
0.1*x2*3<=200;
0.5*x2*3+0.4*x2<=200;
@gin(x2);
模型三的lingo代码:
(注:x3表示生产电路集成器的数量)
max=x3*(25-2)-x3*3*0.5-(3*3*x3+3*x3)*0.7;
0.1*(3*x3+3*3*x3)<=200;
0.1*x3*3<=200;
0.5*(3*x3+3*3*x3)+0.4*3*x3<=200;
0.5*3*x3<=200;
@gin(x3);
模型四的lingo代码:
max=x1*(2-0.7)+x2*(8-0.5)-0.7*3*x2;
0.1*3*x2<=200;
0.1*x1<=200-0.1*3*x2;
3*x2*0.5+x2*0.4<=200;
0.5*x1<=200-3*x2*0.5-x2*0.4;
x1>0;
x2>0;
@gin(x1);
@gin(x2);
模型五的lingo代码:
max=x2*(8-0.5)-0.7*3*x2+x3*(25-2)-3*x3*0.5-(3*x3+3*x3*3)*0.7;
(3*x3+3*3*x3)*0.1<=200;
0.1*3*x2<=200-(3*x3+3*3*x3)*0.1;
x3*0.1<=200;
0.5*(3*x3+3*x3*3)+3*x3*0.4<=200;
3*x2*0.5+x2*0.4<=200-0.5*(3*x3+3*x3*3)-3*x3*0.4;
x3*0.5<=200;
x2>0;
x3>0;
@gin(x2);
@gin(x3);
模型六的lingo代码:
max=x1*(2-0.7)+x3*(25-2)-3*x3*0.5-(3*x3+3*x3*3)*0.7;
(3*x3+3*3*x3)*0.1<=200;
0.1*x1<200-(3*x3+3*3*x3)*0.1;
x3*0.1<=200;
0.5*(3*x3+3*x3*3)+3*x3*0.4<=200;
0.5*x1<=200-0.5*(3*x3+3*x3*3+3*x3*0.4);
x3*0.5<=200;
x1>0;
x3>0;
@gin(x1);
@gin(x3);
模型七的lingo代码:
max=x1*(2-0.7)+x2*(8-0.5)-0.7*3*x2+x3*(25-2)-3*x3*0.5-(3*x3+3*x3*3)*0.7;
(3*x3+3*3*x3)*0.1<=200;
0.1*3*x2<=200-(3*x3+3*3*x3)*0.1;
0.1*x1<200-(3*x3+3*3*x3)*0.1-0.1*3*x2;
x3*0.1<=200;
0.5*(3*x3+3*x3*3)+3*x3*0.4<=200;
3*x2*0.5+x2*0.4<=200-0.5*(3*x3+3*x3*3)-3*x3*0.4;
0.5*x1<=200-0.5*(3*x3+3*x3*3)-3*x3*0.4-(3*x2*0.5+x2*0.4);
x3*0.5<=200;
x1>0;
x2>0;
x3>0;
@gin(x1);
@gin(x2);
@gin(x3);
各种模型下LINGO运行时的部分截图:
图一:该图显示仅生产晶体管时的情况
图二:该图显示仅生产微型模型时的情况
图三:该图显示仅生产电路集成器的情况
图四:该图显示生产晶体管和微型模型时的情况
图五:该图显示生产晶体管和电路集成器时的情况
图六:该图显示生产微型模型和电路集成器时的情况
图七:该图显示生产晶体管、微型模型和电路集成器时的情况