凯鲁嘎吉 - 博客园

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——下料问题的更多相关文章

  1. Lingo求解线性规划案例1——生产计划问题

    凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 说明: Lingo版本:                            某工厂明年根据合同,每个季度末 ...

  2. Lingo求解线性规划案例3——混料问题

    凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/  某糖果厂用原料A.B和C按不向比率混合加工而成甲.乙.丙三种糖果(假设混合加工中不损耗原料).原料A.B.C ...

  3. Lingo求解线性规划案例2——多阶段投资问题

     凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 某公司现有资金30万元可用于投资,5年内有下列方案可供采纳:   1号方案:在年初投资1元,2年后可收回1. ...

  4. 用Lingo求解线性规划问题

    第一步:输入目标条件和约束条件.每行以分号隔开.然后点击工具栏上的Solve按钮,或Lingo菜单下的Solve子菜单. 第二步:检查report中的结果. 默认情况下,Lingo不进行灵敏度分析. ...

  5. 图论中最优树问题的LINGO求解

    树:连通且不含圈的无向图称为树.常用T表示.树中的边称为树枝,树中度为1的顶点称为树叶. 生成树:若T是包含图G的全部顶点的子图,它又是树,则称T是G的生成树. 最小生成树:设T=(V,E1)是赋权图 ...

  6. 钢管下料问题2(剩余材料最少)lingo求解

    大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang !钢管下料问题2(剩余材料最少) 题目: 钢管原料   每根19m 客户需求   4m   50根 ...

  7. 钢管下料问题(钢管用量最少)Lingo求解

    大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang !钢管下料问题1(钢管用量最少) 题目: 钢管原料   每根19m 客户需求   4m   50根 ...

  8. matlab学习笔记之求解线性规划问题和二次型问题

    一.线性规划问题 已知目标函数和约束条件均为线性函数,求目标函数的最小值(最优值)问题. 1.求解方式:用linprog函数求解 2.linprog函数使用形式: x=linprog(f,A,b)  ...

  9. matlab 求解线性规划问题

    线性规划 LP(Linear programming,线性规划)是一种优化方法,在优化问题中目标函数和约束函数均为向量变量的线性函数,LP问题可描述为: minf(x):待最小化的目标函数(如果问题本 ...

随机推荐

  1. HttpClients+Jsoup抓取笔趣阁小说,并保存到本地TXT文件

    前言 首先先介绍一下Jsoup:(摘自官网) jsoup is a Java library for working with real-world HTML. It provides a very ...

  2. 编写你的第一个 Java 版 Raft 分布式 KV 存储

    前言 本文旨在讲述如何使用 Java 语言实现基于 Raft 算法的,分布式的,KV 结构的存储项目.该项目的背景是为了深入理解 Raft 算法,从而深刻理解分布式环境下数据强一致性该如何实现:该项目 ...

  3. 在.net中怎么解析json串 [Error reading JObject from JsonReader. Current JsonReader item is not an obj]

    编辑时间:2017-05-10,增加一种转化list的方法 一.以前知道一种解析json串的方法,觉得有点麻烦.就从别的地方搜到了另一种 string json = vlt.getlist(); JO ...

  4. C#基础知识总结(二)

    摘要 第二篇主要讲:变量.连接符占位符等.转义字符.数据的计算.数据的转换.try-catch的简单熟悉.复合运算符和自加自减 一.变量 1.数据存储在内存中:内存叫做RAM,内存被分隔为一小格一小格 ...

  5. CIL中间语言浅谈

    CIL中间语言 通用中间语言(Common Intermediate Language,简称CIL)(曾经被称为微软中间语言或MSIL)是一种属于通用语言架构和.NET框架的低阶(lowest-lev ...

  6. PHP程序员解决问题的能力

    这个话题老生长谈了,在面试中必然考核的能力中,我个人认为解决问题能力是排第一位的,比学习能力优先级更高.解决问题的能力既能看出程序员的思维能力,应变能力,探索能力等,又可以看出他的经验.如果解决问题能 ...

  7. Netty实战七之EventLoop和线程模型

    简单地说,线程模型指定了操作系统.编程语言.框架或者应用程序的上下文中的线程管理的关键方面.Netty的线程模型强大但又易用,并且和Netty的一贯宗旨一样,旨在简化你的应用程序代码,同时最大限度地提 ...

  8. Android Studio 学习(五)网络

    HttpURLConnection OkHttp 添加依赖 编辑 app/build.gradle 在dependencies闭包中添加 implementation 'com.squareup.ok ...

  9. jQuery根据元素值或元素下标来删除一个数组元素及数组对象方法列表

    在前提不知道b在这个数组的下标,删除b这个元素  var arrList = ['a','b','c','d'];         arrList.splice(jQuery.inArray('b', ...

  10. es6 语法 (函数扩展)

    //函数参数默认值(more值后不能有参数) { function test(x,y = 'world'){ console.log('默认值',x,y); } test('hello');// he ...