数学建模实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
园钢下料
摘要:如何按照工艺要求和生产计划确定下料方案,使得原料最省。本文通过数学规划模型和lingo软件可得最优方案。
问题重述
制造产品X,需要A,B,C,D四种轴类零件,其规格和数量如下表:
表1
各类零件都用5.5米长的圆钢下料,如果计划生产产品G 的数量900件,至多用4种切割模式情况下,问如何下料,才能使原料最省?
问题分析切割模式是按照客户需要在原料钢管安排切割的一种组合。一个可行合理的切割模式的余料不应该大于或等于需要的圆钢的最小尺寸(本题中为0.7米),切割计划只使用可行合理的切割模式。
问题化为在满足生产计划和工艺要求的情况下,按照那些种(最多四种)合理的模式,切割多少根原料园钢,最为节省。
而原料最省,有两种标准:一是切割后剩余的总余料量最小,二是切割原料钢管的总根数最少。下面将对这两个目标分别讨论。
模型建立
决策变量由于不同切割模式不能超过4种。可以用x i表示按照第i种模式(i=1,2,3,4)切割的原料钢管的根数,显然它们应当是非负整数。设所使用的第i种切割模式下每根原料原钢生产3.1米,2.3米,1.5米和0.7米的圆钢
数量分别为r1i,r2i,r3i,r4i(非负整数)。
决策目标以切割后剩余的总余料量最小,目标为
Min∑
=
-
-
-
-
4
1 1
)
4
7.0
3
5.1
2
3.2
1
1.3
5.5(i
r
i
r
i
r
i r
xi(1)
以切割原料圆钢的总根数最少,目标为
Min x1+x2+x3+x4 (2)
约束条件为满足需求,应有
r11x1+r12x2+r13x3+r14x4>=900 (3)
r21x1+r22x2+r23x3+r24x4>=1800 (4)
r31x1+r32x2+r33x3+r34x4>=1500 (5)
r41x1+r42x2+r43x3+r44x4>=8100 (6) 每种切割模式必须可行、合理,所以每根原料圆钢的成品量不能超过5.5米,也不能少于4.8米(余量不能大于0.7米),于是
4.8<=3.1r11+2.3r21+1.5r31+0.7r41<=
5.5 (7)
4.8<=3.1r12+2.3r22+1.5r32+0.7r42<=
5.5 (8)
4.8<=3.1r13+2.3r23+1.5r33+0.7r43<=
5.5
(9)
4.8<=3.1r14+2.3r24+1.5r34+0.7r44<=
5.5
(10)
模型求解
在(3)~(6)式中出现决策变量的乘积,是一个整数非线性规划模型,用lingo软件直接求解运行时间很长也难以得到最优解,为此可以增加一些显然的
约束条件,从而缩小可行解的搜索范围。
由于四种切割模式的排列顺序是无关紧要的,不妨增加以下约束
x1>=x2>=x3>=x4
又因为所需原料圆钢的总根数有着明显的上界和下界,首先,原料的圆钢总根数不可能少于(3.1*1+2.3*2+1.5*5+0.7*9)*900/5.5≈36根。其次,考虑一种非常特殊的生产计划:第一种切割模式只生产3.1和2.3米的圆钢,为满足900根3.1米的圆钢,需900根;第二种切割模式只生产2.3和0.7米的圆钢,一根圆钢生产2根2.3米和一根0.7米的圆钢,需要450根;第三种切割模式只生产1.5米和0.7米的圆钢,一根生产3根1.5米和一根0.7米的圆钢,需1500根;第四种切割模式只生产0.7米的圆钢,一根生产7根,需879根原料圆钢,于是满足这种要求的生产计划共需900+450+1500+879=3729根原料圆钢,这样就得到最优解的一个上界。所以增加约束
36<=x1+x2+x3+x4<=3729
(11)
将(1),(3)~(11)构成的整数规划模型(加上整数约束)输入lingo求解,可得到切割原料圆钢的总余料最少的最优解。同样地,将(2)~(11)构成的整数规划模型(加上整数约束)输入lingo求解,可得到切割原料圆钢的总根数最少的最优解。下面就只给出后者的求解和结果分析。
model:
Min=x1+x2+x3+x4;
r11*x1+r12*x2+r13*x3+r14*x4>=900;
r21*x1+r22*x2+r23*x3+r24*x4>=1800; r31*x1+r32*x2+r33*x3+r34*x4>=1500; r41*x1+r42*x2+r43*x3+r44*x4>=8100;
3.1*r11+2.3*r21+1.5*r31+0.7*r41<=5.5;
3.1*r12+2.3*r22+1.5*r32+0.7*r42<=5.5;
3.1*r13+2.3*r23+1.5*r33+0.7*r43<=5.5;
3.1*r14+2.3*r24+1.5*r34+0.7*r44<=5.5;
3.1*r11+2.3*r21+1.5*r31+0.7*r41>=
4.8;
3.1*r12+2.3*r22+1.5*r32+0.7*r42>=
4.8;
3.1*r13+2.3*r23+1.5*r33+0.7*r43>=
4.8;
3.1*r14+2.3*r24+1.5*r34+0.7*r44>=
4.8; x1+x2+x3+x4>=36;
x1+x2+x3+x4<=3729 ;
x1>=x2;
x2>=x3;
x3>=x4;
@gin(x1); @gin(x2); @gin(x3); @gin(x4);
@gin(r11); @gin(r12);@gin(r13);@gin(r14); @gin(r21);@gin(r22);@gin(r23);@gin(r24);
@gin(r31);@gin(r32);@gin(r33);@gin(r34); @gin(r41);@gin(r42);@gin(r43);@gin(r44);
可以得到最优解如下: