Lingo求解线性规划案例1——生产计划问题
凯鲁嘎吉 - 博客园
http://www.cnblogs.com/kailugaji/
说明:
Lingo版本:
某工厂明年根据合同,每个季度末向销售公司提供产品,有关信息如下表。若当季生产的产品过多,季末有积余,则一个季度每积压一吨产品需支付存贮费O.2万元。现该厂考虑明年的最佳生产方案,使该厂在完成合同的情况下,全年的生产费用最低。试建立模型。
季度j |
生产能力aj(吨) |
生产成本dj (万元/吨) |
需求量bj(吨) |
1
|
30
|
15.O
|
20
|
2
|
40
|
14.O
|
20
|
3
|
20
|
15.3
|
30
|
4
|
10
|
14.8
|
10 |
解:现在我们对本问题定义三种不同形式的决策变量,从而从不同的途径来构建模型。
(1)设工厂第j季度生产产品xj吨。
首先,考虑约束条件:
第一季度末工厂需交货20吨;故应有x1≥20;
第一季度末交货后积余(x1-20)吨;
第二季度末工厂需交货20吨,故应有x1-20+ x2≥20;类似地,应有x1+ x2-40+ x3≥30;
第四季度末供货后工厂不能积压产品,故应有x1+ x2+ x3-70+ x4=10;
又考虑到工厂每个季度的生产能力,故应有0≤xj≤aj。
其次,考虑目标函数:
第一季度工厂的生产费用为15.0x1,
第二季度工厂的费用包括生产费用14 x2及积压产品的存贮费0.2(x1-20);
类似地,第三季度费用为15.3x3+0.2(x1+ x2-40),
第四季度费用为14.8x4+0.2(x1+ x2+ x3-70)。
工厂一年的费用即为这四个季度费用之和。
整理后,得下列线性规划模型:
Min f =15.6 x1+14.4 x2+15.5 x3+14.8 x4-26
s.t.x1+ x2 ≥40
x1+ x2+ x3 ≥70
x1+ x2+ x3+ x4=80
20≤x1≤30
0≤x2≤40
0≤x3≤20
0≤x4≤10
Lingo程序:
min=15.6*x1+14.4*x2+15.5*x3+14.8*x4-26; x1>=20; x1<=30; x1+x2>=40; x2<=40; x1+x2+x3>=70; x3<=20; x1+x2+x3+x4=80; x4<=10; end
结果为:
Global optimal solution found.Objective value: 1165.000Infeasibilities: 0.000000Total solver iterations: 0Variable Value Reduced CostX1 20.00000 0.000000X2 40.00000 0.000000X3 10.00000 0.000000X4 10.00000 0.000000Row Slack or Surplus Dual Price1 1165.000 -1.0000002 0.000000 -0.10000003 10.00000 0.0000004 20.00000 0.0000005 0.000000 1.1000006 0.000000 0.0000007 10.00000 0.0000008 0.000000 -15.500009 0.000000 0.7000000
(2)设第j季度工厂生产的产品为xj吨,第j季度初存贮的产品为yj吨(显然,y1=0)。
因为每季度初的存贮量为上季度存贮量、生产量之和与上季度的需求量之差,又考虑到第四季度末存贮量为零,故有;
x1-20=y2,
y2+x2-20=y3,
y3+x3-30=y4,
y4+x4=10;
同时,每季度的生产量不能超过生产能力:xj≤aj;而工厂四个季度的总费用由每季的生产费用与存贮费用组成,于是得线性规划:
minf=15.Ox1+O.2y2+14x2+O.2y3+15.3x3+O.2y4+14.8x4
s.t. x1-y2=20
y2+x2-y3=20
y3+x3-y4=30
y4+x4=10
0≤x1≤30 0≤x2≤40
0≤x3≤20 0≤x4≤10
0≤yj j=2,3,4
Lingo程序:
min=15*x1+14*x2+15.3*x3+14.8*x4+0.2*y2+0.2*y3+0.2*y4; x1-y2=20; x2+y2-y3=20; y3+x3-y4=30; y4+x4=10; x1<30; x2<40; x3<20; x4<10; end
结果为:
Global optimal solution found.Objective value: 1165.000Infeasibilities: 0.000000Total solver iterations: 0Variable Value Reduced CostX1 20.00000 0.000000X2 40.00000 0.000000X3 10.00000 0.000000X4 10.00000 0.000000Y2 0.000000 0.1000000Y3 20.00000 0.000000Y4 0.000000 0.7000000Row Slack or Surplus Dual Price1 1165.000 -1.0000002 0.000000 -15.000003 0.000000 -15.100004 0.000000 -15.300005 0.000000 -14.800006 10.00000 0.0000007 0.000000 1.1000008 10.00000 0.0000009 0.000000 0.000000
(3)设第i季度生产而用于第j季度末交货的产品数量为xij吨。
根据合同要求,必须有:
x11=20,
x12+x22=20,
x13+x23+x33=30,
x14+x24+x34+x44=10。
又每季度生产而用于当季和以后各季交货的产品数不可能超过该季度工厂的生产能力,故应有。
X11+x12+x13+x14≤30,
x22+x23+x24≤40,
x33+x34≤20,
x44≤10。
第i季度生产的用于第j季度交货的每吨产品的费用cij=dj+0.2(j-i),于是,有线性规划模型。
minf=15.0x11+15.2x12+15.4x13+15.6x14+14x22+14.2x23+14.4x24+15.3x33+15.5x34+14.8x44
s.t. x11=20
x12+x22=20
x13+x23+x33=30
x14+x24+x34+x44=10
x11+x12+x13+x14≤30
x22+x23+x24≤40
x33+x34≤20
x44≤10
xij≥0, i=1,…,4;j=1,…,4,j≥i。
Lingo程序为:
min=15*x11+15.2*x12+15.4*x13+15.6*x14+14*x22+14.2*x23+14.4*x24+15.3*x33+15.5*x34+14.8*x44; x11=20; x12+x22=20; x13+x23+x33=30; x14+x24+x34+x44=10; x11+x12+x13+x14<30; x22+x23+x24<40; x33+x34<20; x44<10; end
结果为:
Global optimal solution found.Objective value: 1165.000Infeasibilities: 0.000000Total solver iterations: 4Variable Value Reduced CostX11 20.00000 0.000000X12 0.000000 0.1000000X13 0.000000 0.1000000X14 0.000000 0.1000000X22 20.00000 0.000000X23 20.00000 0.000000X24 0.000000 0.000000X33 10.00000 0.000000X34 0.000000 0.000000X44 10.00000 0.000000Row Slack or Surplus Dual Price1 1165.000 -1.0000002 0.000000 -15.000003 0.000000 -15.100004 0.000000 -15.300005 0.000000 -15.500006 10.00000 0.0000007 0.000000 1.1000008 10.00000 0.0000009 0.000000 0.7000000
转载于:https://www.cnblogs.com/kailugaji/p/8215266.html
Lingo求解线性规划案例1——生产计划问题相关推荐
- Lingo求解线性规划案例2——多阶段投资问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 某公司现有资金30万元可用于投资,5年内有下列方案可供采纳: 1号方案:在年初投资1元,2年后可收回1. ...
- 运筹与决策(三)求解线性规划、运输问题和0-1整数规划问题
一.实验目的及要求 1.分别用excel.matlab和lingo求解线性规划.运输问题和0-1整数规划问题 2.撰写实验报告2 二.实验设备(环境)及要求 Microsoft Excel2016.m ...
- 【数学建模】线性规划模型LINGO求解(最优化)
文章目录 一.算法介绍 二.适用问题 三.算法总结 四.应用场景举例(lingo求解) 五.LINGO代码 六.实际案例 七.论文案例片段(待完善) 线性规划模型主要针对数学建模问题中的一些小的子问题 ...
- 运筹学问题用matlab解答,运筹学课程设计(论文)-用matlab和lingo求解生产问题
<运筹学课程设计(论文)-用matlab和lingo求解生产问题>由会员分享,可在线阅读,更多相关<运筹学课程设计(论文)-用matlab和lingo求解生产问题(13页珍藏版)&g ...
- 启发式算法求解混合整数线性优化问题—— 生产计划安排和资源分配
问题描述和范围限定: 生产计划安排分为两种:静态和动态计划. 静态计划生成的时间距离实际生产时间较长,以假设所有预设条件都满足为前提,在给定优化目标下(比如最小延迟,最低库存金额,etc.)寻找最优计 ...
- Gurobi 生产计划调度学习案例(含代码实现) (生产切换、装配计划)
一.前言 利用数学规划建立和解决生产计划调度问题,已经是运筹学成熟应用领域之一.各种书籍.案例.最佳实践不胜枚举. 大部分数学规划方法在建立生产计划和调度模型时,假设以某个自然的时间间隔为建模时间单位 ...
- 炼油厂将abc三种原油 matlab求解,某工厂制造三种产品A、B和C需要两种资源(劳动力和原材料),目标是要确定总利润最大的最优生产计划。列出的线性...
考虑如下的生产计划问题: 三种产品要经过三种不同的工序加工.各种产品每一件所需要的时间(分钟).每天各道工序的加工能力(每天多少分钟)和销售每一种产品的单位利润如表2-17. 表2-17工序每件时间( ...
- 数学建模学习笔记(2.3)lingo软件求解线性规划问题
数学建模学习笔记(2.3)lingo软件求解线性规划问题 lingo软件的优势在于体积小,专注于解决优化问题 且编程语言通俗易懂,没有门槛 对于刚刚接触数学建模同学比较友善 当然对于已经参与建模很久的 ...
- 2020年全国大学生数学建模竞赛B题穿越沙漠问题——建立整数线性规划模型(ILP)——通过LINGO求解
2020年全国大学生数学建模竞赛B题 穿越沙漠 题目是讲玩家在不同地图下穿越沙漠,所获得的资金数要最多(大概是这个意思).然后通过文章的描述又总结了N个约束条件.整体的思路就是对资金最大化作为目标函数 ...
最新文章
- Java8 中有趣酷炫的小技巧,你用到了那些?
- Android:Handler的消息机制
- linux下svn客户端安装及环境配置(转)
- YOLO-ReT让边缘端也可以实时检测
- flash builder 关联svn
- 韦恩图——帮助你更好地表达多个数据集合之间的相交关系
- mysql6支持connect by_mysql 实现oracle start with connect by递归
- 特殊教育学校计算机教学计划,2021年特殊教育学校教学计划
- Eclipse之Project facet Java version 1.8 is not supported.
- win10搭建Linux子系统,win10中搭建Linux子系统
- 解决filezilla中无法显示中文的文件名
- FFmpeg音视频同步的问题
- 常用元器件使用方法3:电平转换芯片74LVC1T45的使用方法
- 工业物联网设计普遍存在哪些问题?
- 常用的坐标系及其EPSG编码
- 计算机网络篇- 网络层
- linux qt 找不到 lgl,c ++ - Qt:找不到-lGL
- 提升目标检测模型性能的tricks
- 从视网膜到视皮层——视觉系统知多少
- css textarea行数_超级简单:在一个TextArea中如何限制行数和字符数
热门文章
- 全国高考今日开启 报名人数再创历史新高 2022全国高考时间科目安排 优积科技-祝同学们高考顺利
- 奇数位升序偶数位降序的链表进行排序
- 双一次算法作业hhhhhhhhh
- 美满电子-88E1111PHY
- 帮优质粉丝脱单|【英国女】No.33|22岁,硕士,喜欢旅行爱好做饭,消费者心理学...
- tenacity发生异常/失败/错误时重试retry机制,Python
- Jboot用@Cron失效
- 淘宝Hadoop作业平台宙斯(zeus)开源
- JAVA利用第三方平台发送短信验证码
- 消防工程师 1.1 消防给水及设施(2)