钢管下料的数学模型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
钢管下料
一. 实验问题
某钢管零售商从钢管厂进货,将钢管按照顾客的要求切割后售出。从钢管厂进货时得到的原料钢管长度都是1850mm.现有一客户需要15根290mm,28根315mm,21根350mm 和30根455mm 的钢管。为了简化生产过程,规定所使用的切割模式的种类不能超过4种,使用频率最高的一种切割模式按照一根原料钢管价值的1/10增加费用,使用频率次之的切割模式按照一根原料钢管价值的1/20增加费用,以此类推,且每种切割模式下的切割次数不能太多(一根原料钢管最多生产5根产品),此外,为了减少余料浪费,每种切割模式下的余料浪费不能超过100mm.为了使总费用最小,应如何下料。
二. 建立模型
决策变量:xi ~按第i 种模式切割的原料钢管根数(i =1,2,3,4),
r 1i , r 2i , r 3i , r 4i ~第i 种切割模式下,每根原料钢管生产290mm 、315mm 、350mm 和455mm 长的
钢管的数量。
目标函数(总费用):(p 表示原料钢管价格)
[])10/41()10/31()10/21()10/11(4321+++++++=x x x x p goal
43214.13.12.11.1.x x x x goal Min +++=即
约束条件:
条件1:满足客户需求 x 1r 11+x 2r 21+x 3r 31+x 4r 41≥15
x 1r 12+x 2r 22+x 3r 32+x 4r 42≥28
x 1r 13+x 2r 23+x 3r 33+x 4r 43≥21 x 1r 14+x 2r 24+x 3r 34+x 4r 44≥30
条件2:余料限制 0≤1850-290r 11-315r 12-350r 13-455r 14≤100
0≤1850-290r 21-315r 22-350r 23-455r 24≤100 0≤1850-290r 31-315r 32-350r 33-455r 34≤100 0≤1850-290r 41-315r 42-350r 43-455r 44≤100
条件3:四种模式下每根原料钢管切割次数的限制 r 11+r 12+r 13+r 14≤5 r 21+r 22+r 23+r 24≤5
r 31+r 32+r 33+r 34≤5 r 41+r 42+r 43+r 44≤5
条件4:四种切割模式使用频率的大小 x 1≥x 2,x 2≥x 3,x 3≥x 4
条件5:决策变量非负约束 x i ≥0,r ij ≥0 (i,j=1,2,3,4) 条件6:决策变量整数约束 x i ,r ij ∈ z
使用原料钢管数量的下限为(290×15+315×28+350×21+455×30)/1850=18.4 模式一:只切割290mm 的钢管需要3根原料钢管 模式二:只切割315mm 的钢管需要6根原料钢管 模式四:只切割350mm 的钢管需要5根原料钢管
模式五:只切割455mm的钢管需要8根原料钢管所以使用原料钢管数量的上限为3+6+5+8=22
条件7:18≤x
1+x
2
+x
3
+x
4
≤22
求出目标函数goal满足以上7个条件下的最小值,从而就能确定出决策变量x i,r ij 三.程序设计
用Lingo编写程序如下:
min=1.1*x1+1.2*x2+1.3*x3+1.4*x4;
x1*r11+x2*r21+x3*r31+x4*r41>=15;
x1*r12+x2*r22+x3*r32+x4*r42>=28;
x1*r13+x2*r23+x3*r33+x4*r43>=21;
x1*r14+x2*r24+x3*r34+x4*r44>=30;
1850-290*r11-315*r12-350*r13-455*r14>=0;
1850-290*r21-315*r22-350*r23-455*r24>=0;
1850-290*r31-315*r32-350*r33-455*r34>=0;
1850-290*r41-315*r42-350*r43-455*r44>=0;
1850-290*r11-315*r12-350*r13-455*r14<=100;
1850-290*r21-315*r22-350*r23-455*r24<=100;
1850-290*r31-315*r32-350*r33-455*r34<=100;
1850-290*r41-315*r42-350*r43-455*r44<=100;
r11+r12+r13+r14<=5;
r21+r22+r23+r24<=5;
r31+r32+r33+r34<=5;
r41+r42+r43+r44<=5;
x1+x2+x3+x4>=18;
x1+x2+x3+x4<=22;
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);
end
四.计算结果
利用Lingo运行以上程序,得出如下结果:
采取三种切割模式(x4=0),各切割模式如下表所示
290 315 350 455
x1=14 1 2 0 2
x2=4 0 0 5 0
x3=1 2 0 1 2
x4=0 1 0 3 1