Lingo求解线性规划案例2——多阶段投资问题
凯鲁嘎吉 - 博客园
http://www.cnblogs.com/kailugaji/
某公司现有资金30万元可用于投资,5年内有下列方案可供采纳:
1号方案:在年初投资1元,2年后可收回1.3元;
2号方案;在年初投资1元,3年后可收回1.45元;
3号方案:仅在第1年年初有一次投资机会。每投资1元,4年后可收回1.65元;
4号方案:仅在第2年年初有一次投资机会。每投资1元,4年后可收回1.7元;
5号方案。在年初存入银行1元,下一年初可得1.1元。
每年年初投资所得收益及银行利息也可用作安排。
问该公司在5年内怎样使用资金,才能在第6年年初拥有最多资金?
解:设xij为i号方案在第j年年初所使用的资金数。
显然,对于3号及4号方案,仅有x31和x42。此外,不考虑x15,x24,x25,因为其相应投资方案回收期超过我们所讨论的期限。
我们将各年的决策变量(表中虚线起点)及其相应效益(表中虚线终点)列表。
显然,第j年年初可使用的资金之和应等于第j年年初所引用的决策变量之和。于是,根据表所示的各种因果关系,我们不难建立如下模型:
maxf=1.7x42+1.45x23+1.3x14+1.1x55
s.t. x11+x21+x31+x51=300000
x12+x22+x42+x52=1.1x51
x13+x23+x53=1.3x11+1.1x52
x14+x54=1.45x21+1.3x12+1.1x53
x55=1.65x31+1.45x22+1.3x13+1.1x54
x1j≥O, j=1,2,3,4
x2j≥O, j=1,2,3;
x31≥0, x42≥0, x5i≥0,i=1,…,5
Lingo程序:
max=1.7*x42+1.45*x23+1.3*x14+1.1*x55;
x11+x21+x31+x51=300000;
x12+x22+x42+x52=1.1*x51;
x13+x23+x53=1.1*x52+1.3*x11;
x14+x54=1.1*x53+1.3*x12+1.45*x21;
x55=1.1*x54+1.3*x13+1.45*x22+1.65*x31;
end
结果为:
Global optimal solution found.
Objective value: 565500.0
Infeasibilities: 0.000000
Total solver iterations: 0 Variable Value Reduced Cost
X42 0.000000 0.1363636E-01
X23 0.000000 0.000000
X14 435000.0 0.000000
X55 0.000000 0.000000
X11 0.000000 0.000000
X21 300000.0 0.000000
X31 0.000000 0.7000000E-01
X51 0.000000 0.000000
X12 0.000000 0.2363636E-01
X22 0.000000 0.1186364
X52 0.000000 0.1186364
X13 0.000000 0.2000000E-01
X53 0.000000 0.2000000E-01
X54 0.000000 0.9000000E-01 Row Slack or Surplus Dual Price
1 565500.0 1.000000
2 0.000000 1.885000
3 0.000000 1.713636
4 0.000000 1.450000
5 0.000000 1.300000
6 0.000000 1.100000
Lingo求解线性规划案例2——多阶段投资问题的更多相关文章
- Lingo求解线性规划案例4——下料问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 造纸厂接到定单,所需卷纸的宽度和长度如表 卷纸的宽度 长度 5 7 9 10000 30000 20000 工 ...
- Lingo求解线性规划案例1——生产计划问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 说明: Lingo版本: 某工厂明年根据合同,每个季度末 ...
- Lingo求解线性规划案例3——混料问题
凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 某糖果厂用原料A.B和C按不向比率混合加工而成甲.乙.丙三种糖果(假设混合加工中不损耗原料).原料A.B.C ...
- 用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个志愿者的招募次数,以样例为例,则不难列出如下的线性规划方程: ...
随机推荐
- 分布式系统监视zabbix讲解五之web监控--技术流ken
Web 监控 概况 你可以使用 Zabbix 检查几个网站可用性方面. 如果要使用 Web 检测功能,必须在 编译Zabbix 的时候加入 cURL(libcurl) 的支持. 要使用 Web 监控, ...
- C#异常处理。
一.什么是异常? 程序运行时发生的错误. 二.异常处理的一般代码模式. try{..可能发生异常的代码} catch{..对异常的处理} finally{...无论是否发生异常.是否捕获异常都会执行的 ...
- c# Cookie,Session,Application,Cache 四种缓存使用情景
好记性不如烂笔头,记录一下C#缓存使用的情景模式....个人理解,不正之处,欢迎指正 讨论 Cookie,Session,Application,Cache 四种,有的缓存情景对人,有的缓存情景对事儿 ...
- EF(EntityFramework)与mysql使用,序列化问题[System.ObjectDisposedException]
在EF 中使用mysql关联取数据时,如果当前实体中包含另一个实体的list成员,而这个成员为空的话,在json序列化的时候就会报错: '((System.Data.Entity.DynamicPro ...
- 29.C++- 异常处理
C++内置了异常处理的语法元素 try catch try语句处理正常代码逻辑 当try语句发现异常时,则通过throw语句抛出异常,并退出try语句 catch语句处理异常情况 当throw语句抛出 ...
- 买or不买?如何测试博彩公司赔率是否合理?
世界杯期间,烧烤店.酒吧都热闹起来了,柔柔我的朋友圈也热闹起来了,有酱紫的: 还有酱紫的: 然后还有酱紫的: 酱紫的: 当然天台也是一如既然的热闹: 似乎人人都在输钱,那真正的赢家在哪里呢?博彩业的真 ...
- JAVA JVM常见内存参数配置简析
JVM常见内存参数配置简析 常见参数 -Xms .-Xmx.-XX:newSize.-XX:MaxnewSize.-Xmn(-XX:newSize.-XX:MaxnewSize) 简析 1.-Xm ...
- Elasticsearch系列(1):认识Elasticsearch
官方定义 Elasticsearch 是一个实时的分布式搜索分析引擎, 它能让你以一个之前从未有过的速度和规模,去探索你的数据. 它被用作全文检索.结构化搜索.分析以及这三个功能的组合. Elasti ...
- js 策略模式 实现表单验证
策略模式 简单点说就是:实现目标的方式有很多种,你可以根据自己身情况选一个方法来实现目标. 所以至少有2个对象 . 一个是策略类,一个是环境类(上下文). 然后自己就可以根据上下文选择不同的策略来执 ...
- 事件处理程序 (DOM0级)
DOM0事件处理程序 每个元素都有自己的事件处理程序属性,那么直接获取对象,然后在对象上设置事件处理程序属性. 1:获取节点对象引用 2:在事件成员上设置处理函数,这时函数内部this指向节点对象. ...