Lingo求解线性规划案例4——下料问题
凯鲁嘎吉 - 博客园
http://www.cnblogs.com/kailugaji/
造纸厂接到定单,所需卷纸的宽度和长度如表
卷纸的宽度 |
长度 |
5 7 9 |
10000 30000 20000 |
工厂生产1号(宽度10)和2号(宽度20)两种标准卷纸,其长度未加规定。现按定单要求对标准卷纸进行切割,切割后有限长度的卷纸可连接起来达到所需卷纸的长度。问如何安排切割计划以满足定单需求而使切割损失最小?
解:为了满足定单要求和使切割损失最小,我们可以使用多种切割方法来进行组合。此时,我们不但要考虑对两种标准卷纸的宽度如何进行切割,而且还要确定按某一种方式切割时标准卷纸所耗用的长度。
例如,可以把宽10的1号标准卷纸切割成宽5的卷纸2卷,根据定单要求,此时需1号标准卷纸5000单位长度,与此同时,把宽度20的2号标准卷纸切割成宽度7和宽度9的卷纸各1卷,此时为满足定单要求,需2号标准卷纸30000单位长度。按此切割方案,宽度9的卷纸多生产10000单位长度,因此,切割损失的面积为(20-7-9) ×30000+9×10000。
设xij为第i号标准卷纸按第j种方式切割时所耗用的长度。
各种可能的切割方式及切割损失宽度由下表给出(每种方式所产生的切割损失宽度应小于5)。
按这9种切割方式,宽度9的卷纸所得长度为
x13+x23+x25+2x26。
令 xl=x13+x23+x25+2x26-20000,则宽度9、长度x1的卷纸再可切割成宽度5(切割损失宽度4)或宽度7(切割损失宽度2)的卷纸设它们的长度分别为x2及x3
现在切割所得宽度7的卷纸其长度为
x12+x22+2x24+x25+x3
令 x4=x12+x22+2x24+x25+x3-30000,则宽度7、长度x4的卷纸又可切割成宽度5的卷纸(切割损失宽度2)。
在上述切割方式组合的条件下,宽度5的卷纸其所得长度为
2xll+4x21+2x22+2x23+x24+x2+x4
令 x5=2x11+4x21+2x22+2x23+x24+x2+x4-10000
我们应注意到,4x2,2x3,2x4,5x5都为卷纸的切割损失面积。从而,总的切割损失面积
f=3x12+x13+3x22+x23+x24+4x25+2x26+4x2+2x3+2x4+5x5
于是,我们得本问题的线性规划模型:
minf=3x12+x13+3x22+x23+x24+4x25+2x26+4x2+2x3+2x4+5x5
s.t. 2x11+4x21+2x22+2x23+x24+x2+x4- x5=10000
x12+x22+2x24+x25+x3- x4=30000
x13+x23+x25+2x26- x1=20000
x2+x3=x1,
xlj≥0, j=1,2,3
x2j≥0, j=1,…,6
xj≥0, j=1,…,5
Lingo程序:
- min=3*x12+x13+3*x22+x23+x24+4*x25+2*x26+2*x3+5*x5+4*x2+2*x4;
- 2*x11+4*x21+2*x22+2*x23+x24+x2+x4-x5=10000;
x12+x22+2*x24+x25+x3-x4=30000;
x13+x23+x25+2*x26-x1=20000;
x2+x3=x1;- end
结果为:
- Global optimal solution found.
- Objective value: 60000.00
- Infeasibilities: 0.000000
- Total solver iterations: 1
- Variable Value Reduced Cost
- X12 0.000000 0.000000
- X13 0.000000 0.000000
- X22 0.000000 10.00000
- X23 0.000000 10.00000
- X24 10000.00 0.000000
- X25 0.000000 0.000000
- X26 15000.00 0.000000
- X3 10000.00 0.000000
- X5 0.000000 0.000000
- X2 0.000000 10.00000
- X4 0.000000 10.00000
- X11 0.000000 10.00000
- X21 0.000000 20.00000
- X1 10000.00 0.000000
- Row Slack or Surplus Dual Price
- 1 60000.00 -1.000000
- 2 0.000000 5.000000
- 3 0.000000 -3.000000
- 4 0.000000 -1.000000
- 5 0.000000 1.000000
Lingo求解线性规划案例4——下料问题的更多相关文章
- Lingo求解线性规划案例1——生产计划问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 说明: Lingo版本: 某工厂明年根据合同,每个季度末 ...
- Lingo求解线性规划案例3——混料问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 某糖果厂用原料A.B和C按不向比率混合加工而成甲.乙.丙三种糖果(假设混合加工中不损耗原料).原料A.B.C ...
- Lingo求解线性规划案例2——多阶段投资问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 某公司现有资金30万元可用于投资,5年内有下列方案可供采纳: 1号方案:在年初投资1元,2年后可收回1. ...
- 用Lingo求解线性规划问题
第一步:输入目标条件和约束条件.每行以分号隔开.然后点击工具栏上的Solve按钮,或Lingo菜单下的Solve子菜单. 第二步:检查report中的结果. 默认情况下,Lingo不进行灵敏度分析. ...
- 图论中最优树问题的LINGO求解
树:连通且不含圈的无向图称为树.常用T表示.树中的边称为树枝,树中度为1的顶点称为树叶. 生成树:若T是包含图G的全部顶点的子图,它又是树,则称T是G的生成树. 最小生成树:设T=(V,E1)是赋权图 ...
- 钢管下料问题2(剩余材料最少)lingo求解
大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang !钢管下料问题2(剩余材料最少) 题目: 钢管原料 每根19m 客户需求 4m 50根 ...
- 钢管下料问题(钢管用量最少)Lingo求解
大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang !钢管下料问题1(钢管用量最少) 题目: 钢管原料 每根19m 客户需求 4m 50根 ...
- matlab学习笔记之求解线性规划问题和二次型问题
一.线性规划问题 已知目标函数和约束条件均为线性函数,求目标函数的最小值(最优值)问题. 1.求解方式:用linprog函数求解 2.linprog函数使用形式: x=linprog(f,A,b) ...
- matlab 求解线性规划问题
线性规划 LP(Linear programming,线性规划)是一种优化方法,在优化问题中目标函数和约束函数均为向量变量的线性函数,LP问题可描述为: minf(x):待最小化的目标函数(如果问题本 ...
随机推荐
- Haskell复习笔记(一)
Haskell笔记这是第三次总结,前两次都因为各种原因丢失了,对于Haskell我算不上什么大神,只不过在大学时为了学习算法时选择了Haskell. 当时的入门书籍选择的是<Learn You ...
- C#与C++数据类型比较及结构体转换[整理]
//c++:HANDLE(void *) ---- c#:System.IntPtr//c++:Byte(unsigned char) ...
- MySQL分页查询性能优化
当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询.对于数据库分页查询,也有很多种方法和优化的点.下面简单说一下我知道的一些方 ...
- mysql中union 查询
UNION ALL只是简单的将两个结果合并后就返回.这样,如果返回的两个结果集中有重复的数据,那么返回的结果集就会包含重复的数据了. 从效率上说,UNION ALL 要比UNION快很多,所以,如果可 ...
- C++中的stack类、QT中的QStack类
C++中的stack 实现一种先进后出的数据结构,是一个模板类. 头文件 #include<stack> 用法(以int型为例): stack <int> s; //定义一个i ...
- Flask 系列之 Bootstrap-Flask
说明 操作系统:Windows 10 Python 版本:3.7x 虚拟环境管理器:virtualenv 代码编辑器:VS Code 实验目标 通过使用 Bootstrap-Flask 来进行页面美化 ...
- 借鉴Glide思想二次封装Fresco
本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 最近封装了个 Fresco 的组件库:DFresco,就顺便来讲讲. 背景 Fresco 图片库很强大,我们项目中就是使用的 Fre ...
- Python mysql 创建连接
安装 pymysql 模块 pip3 install pymysql # python2, 默认无 pip 命令 # python3, 默认自带 pip3 命令 mysql基本操作 # 导入 pymy ...
- BZOJ2199: [Usaco2011 Jan]奶牛议会(2-SAT)
Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 559 Solved: 360[Submit][Status][Discuss] Descriptio ...
- 我写的.net相关的文章
此文正在更新中... 广州.net俱乐部相关 复活广州.net俱乐部 office365的开发者训练营,免费,在微软广州举办 被低估的.net(上) - 微软MonkeyFest 2018广州分享会活 ...