线材下料问题线性规划Word文档格式.docx
《线材下料问题线性规划Word文档格式.docx》由会员分享,可在线阅读,更多相关《线材下料问题线性规划Word文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
![线材下料问题线性规划Word文档格式.docx](https://file1.bdocx.com/fileroot1/2023-1/9/793a45ea-d54a-41bc-9f07-ddfe296828ba/793a45ea-d54a-41bc-9f07-ddfe296828ba1.gif)
在本文的分析中,我们选择前者,即:
求解使用的钢材原材料总根数最少。
为了建立模型方便,我们把下料后余下的小于最短用料的钢材称为废弃钢材,把下料得到的长为2.5m,2.6m,1.9m的钢材称为规格钢材,把10米长的原材料钢材称为原钢。
因此,所用的原钢可以分解成三部分:
1、成套利用的规格钢材;
2、剩余的规格钢材;
3、废弃钢材。
通过分析计算,可以得到原钢的11种下料方式如下:
表1:
一条原料钢材的11种切法
X1
X2
X3
X4
X5
X6
X7
X8
X9
X10
X11
2.5m
4
3
2
1
2.6m
1.9m
5
Sum
10
9.4
9.5
8.8
9.6
8.2
8.9
9.7
9
8.3
Remain
0.6
0.5
1.2
0.4
1.8
1.1
0.3
1.7
我们设决策变量:
采取第i种下料方式的有xi根原钢,i=1,2,3,...,11.另外设置辅助变量:
剩余2.5米的规格钢材为y1根,剩余的2.6米规格钢材为y2根,剩余的1.9米规格钢材为y3根。
因此得到模型一:
模型一:
剩余的规格钢材当作废弃钢材的情况
MinZ=0*x1+0.6*x2+0.5*x3+1.2*x4+0.4*x5+1.8*x6+1.1*x7+0.3*x8
+1*x9+1.7*x10+0.5*x11+2.5*y1+2.6*y2+1.9*y3
(1)
4*x1+3*x2+2*x3+2*x4+x5+x6+x7-y1=150
s.t.x3+2*x5+x7+3*x8+2*x9+x10-y2=150
x2+x3+2*x4+x5+3*x6+2*x7+x8+2*x9+3*x10+5*x11-y3=150
xi>
=0,yj>
=0,且为整数
i=1,2,3...11,j=1,2,3
(2)
(3)
由
(1)、
(2)组成的是求废弃钢材最少的整数线性规划模型。
同时,很容易联想到另一个模型,是由
(2)、(3)组成的求所用原料钢材最少的整数线性规划模型。
模型二:
剩余的规格钢材(可同原钢一样可以再利用),不当作废弃钢材的情况
+1*x9+1.7*x10+0.5*x11(4)
4*x1+3*x2+2*x3+2*x4+x5+x6+x7>
=150
s.t.x3+2*x5+x7+3*x8+2*x9+x10>
=150(5)
x2+x3+2*x4+x5+3*x6+2*x7+x8+2*x9+3*x10+5*x11>
=0,i=1,2,3...11
由(4)、(5)组成的是求废弃钢材最少的整数线性规划模型具有一定的实际意义,特别是当最短的规格钢材长度较长时,剩余的规格钢材就可以再次被利用。
在此,我们应该注意到,由(3)、(5)组成的整数线性规划模型就是模型一。
由于在建立模型一和模型二的时候,考虑了剩余规格钢材的不同处理情况,使这个问题变得清晰了,所得到的模型也比较全面,基本没有漏洞和缺陷,并且比较容易在这些基础上修改或添加一些其它的约束条件(比如:
各种规格钢材下料成套时的不同比例等等),所以,我们建立的线材下料问题的模型是可行的。
基于以上的分析,我们选择(3)、(5)组合而成的模型和(4)、(5)组合而成的模型进行具体求解,从而求出组合出150套圆钢所需要的最少原料钢材。
求解模型:
4*x1+3*x2+2*x3+2*x4+x5+x6+x7>
此模型是设定最小使用原料钢材的条数为目标值进行求解。
此模型时设定最小废弃钢材为目标值进行求解。
四、方法选择
指导思路:
线性规划求解思路
选择方法:
Excel规划求解
使用工具:
Excel工具
五、求解过程
1、框架建立
2、模式调整
3、计算原料钢材使用及剩余钢材
4、设置目标函数及变量
Ⅰ、以模型(3)、(5)组合而成的求解模型设定的目标值。
说明:
目标函数单元格D9即为我们所求的最少使用原料钢材条数。
其具体在excel中的操作为D9=C12+D12+E12+F12+G12+H12+I12+J12+K12+L12+M12.
Ⅱ、以模型(4)、(5)组合而成的求解模型设定的目标值。
目标函数单元格D9即为我们所求最少剩余的废弃钢材。
其具体在excel中的操作为:
D9=C7*B12+D7*C12+E7*D12+F7*E12+G7*F12+H7*G12+I7*H12+J7*I12+K7*J12
+L7*K12+M7*L12
5、设置约束条件
约束条件单元格C15、C16、C17分别为规格钢材2.6m、2.5m、1.9m所求的最少使用条数。
其中:
C15=C12*4+D12*3+E12*2+F12*2+G12+H12+I12;
C16=E12+G12*2+I12+J12*3+K12*2+L12;
C17=D12+E12+F12*2+G12+H12*3+I12*2+J12+K12*2+L12*3+M12*5;
6、利用规划求解工具
Excel:
工具-规划求解-依次输入目标单元格、可变单元格、约束条件进行求解。
其中,点击规划求解参数选项框右边的选项按钮,在弹出的选项框中选中采用线性模型和假定非负。
求解结果如下图:
Ⅰ、以模型(3)、(5)组合而成的求解模型求解结果。
从上表可以直接得出:
最小原料钢材使用条数为108条。
但实际的使用情况为107.5条,多切割出来的0.5条((152-150)*2.5)米)。
从上表可以直接看得,最小剩余废弃钢材为25米。
但实际的剩余废弃钢材为30米((152-150)*2.5+25)。
六、答案分析
由上图可知,按照模式1切38条原料钢材,按照模式8切原料钢材50条,按照模式11切原料钢材20条,从而可以得到:
2.6米规格钢材152(38*4)条,2.5米规格钢材150(50*3)条,1.9米规格钢材150(50*1+20*20)条。
同时,可以从得出来的数据算出剩余的废弃钢材为30米,其中包含多切割出的2条2.5米规格钢材共5米,按照模式8切割的剩余废弃钢材15米(0.3*50)以及按照模式11切割的剩余废弃钢材10米(0.5*20)。
通过分别设置目标值为最小使用原料钢材的使用条数和最小剩余废弃钢材的计算,我们得出相同的结果,即切割2.5米规格钢材152条,2.6米规格钢材150条以及1.9米规格钢材150条,同时剩余废弃钢材为30米,使用原料钢材108条。
但是,对不同目标值设定就一定是会得出相同的结果吗?
在这里,我们引出另一种情况来进行对比分析。
如题:
某工厂要做100套钢架,每套钢架需要长度分别为2.9米,2.1米和1.5米的圆钢各一根。
已知原料每根长7.4米,问应该如何下料,可以使所用原料最省?
在这我们利用之前的分析,分别设定最小使用原料条数和最小剩余材料为目标值进行模型建立,如下:
2.9米
2.1米
1.5米
余料
0.1
0.2
0.8
设定最小使用原料条数为目标值模型:
MinZ=x1+x2+x3+x4+x5
x1+2*x2+x4>
=100
2*x3+2*x4+x5>
3*x1+x2+2*x3+3*x5>
xi>
=0(i=1,2,...5)
设定最小余料为目标值模型:
MinZ=0*x1+0.1*x2+0.2*x3+0.3*x4+0.8*x5
对这两个模型进行求解,有:
最小余料为目标值模型解:
最小原料使用条数为目标值模型解:
由以上两种模型解答可知:
在以最小余料为目标值进行求解的时候,得出的原料使用条数为150条,而以最小原料使用条数为目标值进行求解的时候,得出的原料使用的条数为90条。
综合两道题目的比较,可知,两种类型的模型设定是会得到不同的解答。
因此,在不保证未来多余规格材料是否有用的时候,这就可能会造成原料更大的浪费,所以,对此类问题的求解,应多采用以最小原料使用条数为目标值的模型进行求解。
七、总结
通过上面的分析推导,对于线材下料的线性规划模型,目标函数就可以简化为两种明确的情况来考虑,当我们的下料问题是一次行为时,直接求原料钢材总根数最少,而当我们下料问题是多次行为,每次的问题需求各种规格钢材的长度是不变的,并且下料模式中没有余料为零的情况下,才可能考虑使用设置余料最小的模型进行求解。
因此,鉴于对题目所要求余料最少的使用条件的要求,我们一般用原料总根数最少作为目标函数来解决线材下料问题。