Lingo求解线性规划案例3——混料问题
凯鲁嘎吉 - 博客园
http://www.cnblogs.com/kailugaji/
某糖果厂用原料A、B和C按不向比率混合加工而成甲、乙、丙三种糖果(假设混合加工中不损耗原料)。原料A、B、C在糖果甲、乙、丙中的含量、原料成本、加工成本、原料限量及糖果售价如表所示。
问该厂对这三种糖果各生产多少公斤,使得到的利润最大?
含量(%) |
j号糖果 |
原料供应量 ai(公斤) |
成本(元/公斤) |
|||
甲(1号) |
乙(2号) |
丙(3号) |
||||
i号原料 |
A(1号)
|
≥60%
|
≥15%
|
|
2000
|
2.50
|
B(2号)
|
|
|
|
2500
|
2.00
|
|
C(3号)
|
≤20%
|
≤60%
|
≤70%
|
2200
|
1.70
|
|
加工成本(元/公斤)
|
2.00
|
1.80
|
1.60
|
|
|
|
售价(元/公斤)
|
12
|
10
|
8
|
|
解:设i号原料在j号糖果中的用量为xij公斤。
显然,j号糖果的产量为x1j+x2j+x3j
根据原料供应量情况,有约束条件
xi1+xi2+xi3≤ai i=1,2,3。
根据各种原料在各类糖果中的含量要求,有约束条件:
x11≥0.6(x11+x2l+x31)
x3l≤0.2(xll+x2l+x31)
x12≥0.15(x12+x12+x32)
x32≤0.6(x12+x22+x32)
x33≤0.7(x13+x23+x33)
又知原料成本为
糖果加工成本为
糖果出售收入为
经过整理,本问题的线性规划模型为
max=10*(x11+x21+x31)+8.2*(x12+x22+x32)+6.4*(x13+x23+x33)-2.5*(x11+x12+x13)-2*(x21+x22+x23)-1.7*(x31+x32+x33);
x11>0.6*(x11+x21+x31);
x12>0.15*(x12+x22+x32);
x31<0.2*(x21+x31+x11);
x32<0.6*(x12+x22+x32);
x33<0.7*(x13+x23+x33);
x11+x12+x13<2000;
x21+x22+x23<2500;
x31+x32+x33<2200;
y1=x11+x21+x31;
y2=x12+x22+x32;
y3=x13+x23+x33;
end
结果为:
Global optimal solution found.
Objective value: 45180.00
Infeasibilities: 0.000000
Total solver iterations: 5 Variable Value Reduced Cost
X11 1326.667 0.000000
X21 442.2222 0.000000
X31 442.2222 0.000000
X12 673.3333 0.000000
X22 2057.778 0.000000
X32 1757.778 0.000000
X13 0.000000 5.200000
X23 0.000000 1.200000
X33 0.000000 1.200000
Y1 2211.111 0.000000
Y2 4488.889 0.000000
Y3 0.000000 0.000000 Row Slack or Surplus Dual Price
1 45180.00 1.000000
2 0.000000 -4.000000
3 0.000000 -4.000000
4 0.000000 0.000000
5 935.5556 0.000000
6 0.000000 0.000000
7 0.000000 9.100000
8 0.000000 5.600000
9 0.000000 5.900000
10 0.000000 0.000000
11 0.000000 0.000000
12 0.000000 0.000000
Lingo求解线性规划案例3——混料问题的更多相关文章
- Lingo求解线性规划案例4——下料问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 造纸厂接到定单,所需卷纸的宽度和长度如表 卷纸的宽度 长度 5 7 9 10000 30000 20000 工 ...
- Lingo求解线性规划案例1——生产计划问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 说明: Lingo版本: 某工厂明年根据合同,每个季度末 ...
- 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)是赋权图 ...
- matlab学习笔记之求解线性规划问题和二次型问题
一.线性规划问题 已知目标函数和约束条件均为线性函数,求目标函数的最小值(最优值)问题. 1.求解方式:用linprog函数求解 2.linprog函数使用形式: x=linprog(f,A,b) ...
- matlab 求解线性规划问题
线性规划 LP(Linear programming,线性规划)是一种优化方法,在优化问题中目标函数和约束函数均为向量变量的线性函数,LP问题可描述为: minf(x):待最小化的目标函数(如果问题本 ...
- Python求解线性规划——PuLP使用教程
简洁是智慧的灵魂,冗长是肤浅的藻饰.--莎士比亚<哈姆雷特> 1 PuLP 库的安装 如果您使用的是 Anaconda[1] 的话(事实上我也更推荐这样做),需要先激活你想要安装的虚拟环境 ...
- 单纯形求解线性规划(BZOJ1061)
推荐一篇论文:http://wenku.baidu.com/view/ce5784754a7302768f99391d 我们设xi为第i个志愿者的招募次数,以样例为例,则不难列出如下的线性规划方程: ...
随机推荐
- 第一册:lesson fifteen。
原文:Your passports,please. A:Are you Swedish? B:No,we are not. We are Danish. A:Are your friends Dani ...
- vb.net 使用NPO各種格式設定
'導入命名空間Imports System.IO Imports NPOI.HSSF.UserModelImports NPOI.HPSFImports NPOI.POIFS.FileSystem P ...
- C# Json反序列化
Json反序列化有两种方式[本人],一种是生成实体的,方便处理大量数据,复杂度稍高,一种是用匿名类写,方便读取数据,较为简单. 使用了Newtonsoft.Json,可以自行在nuget中导入 Jso ...
- spring_04bean的生命周期
一.前言 spring框架中的bean对象生命周期是面试时常考的问题 往往笔试,面试总喜欢问生命周期的问题 二.spring_bean应用上下文生命周期图: 三.生命周期流程(bean应用上下文): ...
- springMVC_07乱码及restful风格
乱码的解决 通过过滤器解决乱码问题:CharacterEncodingFilter 配置web.xml文件 <filter> <filter-name>encoding< ...
- Python中的特殊属性与方法
模块的特殊属性 __doc__ 模块的说明文档 __all__ 指明模块希望被使用的属性.类和方法 __file__ 模块所在路径 类的特殊属性 __slots__ 限制类的实例允许添加的属性,是一个 ...
- Laravel 系列入门教程(三)【最适合中国人的 Laravel 教程】
在本篇文章中,我们将尝试构建一个带后台的简单博客系统.我们将会使用到 路由.MVC.Eloquent ORM 和 blade 视图系统. 简单博客系统规划 我们在教程一中已经新建了一个继承自 Eloq ...
- Flex 项目属性:flex 布局示例
flex属性: flex属性是flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto.后两个属性可选. 该属性有两个快捷值:auto (1 1 auto ...
- 解决easyui combobox赋值boolean类型的值时,经常出现的内容显示的value而不是text的bug
版本:EasyUI 1.7.0 在用easyui写项目时,碰到一个combobox的奇葩bug.代码如下: <div> <select class="easyui-comb ...
- java调用matlab
object result[]; result = pClass1.job_3in1(2, c, ws2, 1275, a, 0); string adg[]; adg = result[1].toS ...