1、姜启源版数学模型第四章习题第 7 题一、问题重述某钢管零售商从钢管厂进货,将钢管按照顾客的要求切割后出售。从钢管厂进货时得到的原料钢管的长度都是 1850mm。现有一客户需要 15 根290mm、28 根 315mm、21 根 350mm 和 30 根 455mm 的钢管。为了简化生产过程,规定所使用的切割模式的种类不能超过 4 种,使用频率最高的一种切割模式按照一根原料钢管价值的 1/10 增加费用,使用频率次之的切割模式按照一根原料钢管价值的 2/10 增加费用,依次类推,且每种切割模式下的切割次数不能太多(一根钢管最多生产 5 根产品) 。此外,为了减少余料浪费,每种切割模式下的余料不能
2、超过 100mm。为了使总费用最小,应如何下料?二、基本假设 1、假设所研究的每根钢管的长度均为 1850mm 的钢管。 2、假设每次切割都准确无误。3、假设切割费用短时间内不会波动为固定值。 5、假设钢管余料价值为 0。6、假设一切运作基本正常不会产生意外事件。7、每一根钢管的费用都一样,为一常值。三、符号说明 符号 意义表示采用第 i 种切割模式(i=1,2,3,4)切割的原料钢管的根数。, 每一根原料钢管,在第 i 种切割模式下,生产 j 种产品钢管的根数(j=1,2,3,4 分别表示长度为 290mm,315mm,350mm,455mm 的产品钢管)。M 生产总费用,包括钢管本身(设为
3、 1)及生产过程增加的费用。jD第 种产品钢管的需求。j四、模型建立根据题目要求,不妨假设 ,于是得到目标函数:1 2 3 4min 410.iMxi约束条件如下:(4.1)1234xx需求量的约束:(4.2 )41,12,34ijjxrD每一种切法不能超过限制 1850,余料不超过 100(即产品加起来不小于1750)(4.3)41750850,12,34ijrleni极限情况下,根数的范围:(4.4)4411850850jj jijjDlenDxlen一根原料钢管最多生产 5 根产品: 41,2,34ijr钢管根数和切割方法都为非负整数: ,ijiZx五、模型求解model:!数学模型13
4、2页题7;sets:!定义4种切割模式,每种模式用x(i)根管材;qiegemoshi/m1m4/:x;!定义四种长度,每种有需求;changdu/cd1cd4/:len,demand;!定义切法矩阵,行为模式,列为需要的长度类型;links(qiegemoshi,changdu):r;endsets!目标函数,每种切割模式按切割频率增加10% 的费用;min=sum(qiegemoshi(i):x(i)*(1+i*0.1);!假设4种切法,一种比一种切得少;for(qiegemoshi(i)|i#lt#4:x(i)=x(i+1);!需求量的约束;for(changdu(j):sum(qieg
5、emoshi(i):r(i,j)*x(i)=demand(j);!整数约束;for(qiegemoshi(i):gin(x(i);for(links(i,j):gin(r(i,j);!每一种切法不能超过限制1850,余料不超过100(即产品加起来不小于1750);for(qiegemoshi(i):sum(changdu(j):r(i,j)*len(j)=1750);for(qiegemoshi(i):sum(changdu(j):r(i,j)*len(j)=19;sum(qiegemoshi:x)=22;!一根原料钢管小于5根产品;for(qiegemoshi(i):sum(changdu(
6、j):r(i,j)=5);data:demand=15 28 21 30;len=290 315 350 455;enddataend在 lingo11 中运行,得到如下结果:Local optimal solution found.Objective value: 21.50000Objective bound: 21.50000Infeasibilities: 0.000000Extended solver steps: 155Total solver iterations: 20017Variable Value Reduced CostX( M1) 14.00000 -0.100000
7、0X( M2) 4.000000 0.000000X( M3) 1.000000 0.1000000X( M4) 0.000000 0.2000000LEN( CD1) 290.0000 0.000000LEN( CD2) 315.0000 0.000000LEN( CD3) 350.0000 0.000000LEN( CD4) 455.0000 0.000000DEMAND( CD1) 15.00000 0.000000DEMAND( CD2) 28.00000 0.000000DEMAND( CD3) 21.00000 0.000000DEMAND( CD4) 30.00000 0.000
8、000QIEFA( M1, CD1) 1.000000 0.000000QIEFA( M1, CD2) 2.000000 0.000000QIEFA( M1, CD3) 0.000000 0.000000QIEFA( M1, CD4) 2.000000 0.000000QIEFA( M2, CD1) 0.000000 0.000000QIEFA( M2, CD2) 0.000000 0.000000QIEFA( M2, CD3) 5.000000 0.000000QIEFA( M2, CD4) 0.000000 0.000000QIEFA( M3, CD1) 2.000000 0.000000
9、QIEFA( M3, CD2) 0.000000 0.000000QIEFA( M3, CD3) 1.000000 0.000000QIEFA( M3, CD4) 2.000000 0.000000QIEFA( M4, CD1) 1.000000 0.000000QIEFA( M4, CD2) 0.000000 0.000000QIEFA( M4, CD3) 3.000000 0.000000QIEFA( M4, CD4) 1.000000 0.000000即采用三种方式进行切割,具体切割方法及切割根数如下表所示,总共需要 19 根钢管。290 315 350 455 所用根数模式 1 1 2 0 2 14模式 2 0 0 5 0 4模式 3 2 0 1 2 1