Lingo 实现线性规划求解模型
求点赞关注
如果觉得这篇文章对你有帮助请点赞收藏加关注啊,真的很谢谢大家!大家可以进入我的CSDN主页查看其它文章,都是我在进行课后题目与课程设计时遇到的一些问题,如果你正在学习人工智能,一定会有所收获,并且可以在我的GitHub仓库主页下载相关代码,后续我也会根据需求不断完善。
lazyn的CSDN_blog_codel
同时如果想要系统化的学习人工智能,可以进入下面的网站进行学习
通俗易懂,风趣幽默的人工智能学习网站-床长人工智能教程
作为人工智能专业的学生,我认为该网站的课程设置足够专业与完整,由浅入深,基本涵盖了当前人工智能的热门领域并且在不断完善,目录简洁明了,大家可以对照目录进行查漏补缺,作为读者,我发现课程内容通俗易懂,风趣幽默,可以激发大家的学习兴趣。
目的
通过实现数学建模教材 P103 课后习题为例介绍如何使用 Lingo 软件设计线性规划求解模型。
习题
某银行经理计划用一笔资金进行有价证券的投资,可供购进的证券以及其信用等级、到期年限、收益如表1所示。按照规定,市政证券的收益可以免税,其他证券的收益需按50%的税率纳税、此外还有以下限制:
(1)政府及代办机构的证券总共至少要购进400万元;
(2)所购证券的平均信用等级不超过1.4(信用等级数字越小,信用程度越高);
(3)所购证券的平均到期年限不超过5年。
表1证券信息
证券名称 | 证券种类 | 信用等级 | 到期年限 | 到期税前收益/% |
---|---|---|---|---|
A | 市政 | 2 | 9 | 4.3 |
B | 代办机构 | 2 | 15 | 5.4 |
C | 政府 | 1 | 4 | 5.0 |
D | 政府 | 1 | 3 | 4.4 |
E | 市政 | 5 | 2 | 4.5 |
(1)若该经理有1000万元资金,应如何投资?
(2)如果能够以2.75%的利率借到不超过100万元资金,该经理应如何操作?
(3)在1000万元资金情况下,若证券 A 的税前收益增加为4.5%,投资应否改变?若证券 C 的税前收益减少为4.8%,投资应否改变?
解答
问题(1)
设证券 A、B、C、D、E 的购买数值分别为 x1 、x2、x3、x4、x5 万元,根据题目已知限制,建立如下约束条件:
{x2+x3+x4≥4002x1+2x2+x3+x4+5x5x1+x2+x3+x4+x5≤1.49x1+15x2+4x3+3x4+2x5x1+x2+x3+x4+x5≤5\left \{\begin{array}{ll}x_2+x_3+x_4\geq400&\\ &\\ \dfrac{2x_1+2x_2+x_3+x_4+5x_5}{x_1+x_2+x_3+x_4+x_5}\le1.4&\\ &\\ \dfrac{9x_1+15x_2+{4x}_3+3x_4+2x_5}{x_1+x_2+x_3+x_4+x_5}\le5 \end{array}\right. ⎩⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎧x2+x3+x4≥400x1+x2+x3+x4+x52x1+2x2+x3+x4+5x5≤1.4x1+x2+x3+x4+x59x1+15x2+4x3+3x4+2x5≤5
添加约束条件:x1+x2+x3+x4+x5=1000x_1+x_2+x_3+x_4+x_5=1000x1+x2+x3+x4+x5=1000
此时收益表示为(4.3x1+4.5x5+(5.4x2+5.0x3+4.4x4)×0.5)100\frac{(4.3x_1+4.5x_5+(5.4x_2+5.0x_3+4.4x_4 )×0.5)}{100}100(4.3x1+4.5x5+(5.4x2+5.0x3+4.4x4)×0.5)
应用 Lingo 软件,输入约束如下图1,运行结果如下图2,根据运行结果可知,证券 A 投资218.18万元,证券 C 投资736.36万元,证券 E 投资45.45万元,证券 B 和 D 不投资,收益为29.84万元。
问题(2)
设借贷 y 万元,添加约束条件:x1+x2+x3+x4+x5=1000+yx_1+x_2+x_3+x_4+x_5=1000+yx1+x2+x3+x4+x5=1000+y
此时收益表示为(4.3x1+4.5x5+(5.4x2+5.0x3+4.4x4)×0.5)100−0.0275y\frac{(4.3x_1+4.5x_5+(5.4x_2+5.0x_3+4.4x_4 )×0.5)}{100}-0.0275y100(4.3x1+4.5x5+(5.4x2+5.0x3+4.4x4)×0.5)−0.0275y
约束如下图3,运行结果如下图4,易知,y=100时,即全部借贷时收益最大,为30.07万元,此时证券 A 投资240万元,证券 C 投资810万元,证券 E 投资50万元。
问题(3)
添加约束条件:x1+x2+x3+x4+x5=1000x_1+x_2+x_3+x_4+x_5=1000x1+x2+x3+x4+x5=1000
A 的税前收益增加为4.5%时收益表示为(4.5x1+4.5x5+(5.4x2+5.0x3+4.4x4)×0.5)100\frac{(4.5x_1+4.5x_5+(5.4x_2+5.0x_3+4.4x_4 )×0.5)}{100}100(4.5x1+4.5x5+(5.4x2+5.0x3+4.4x4)×0.5)
Lingo软件运行结果如下图5,易知,A 的税前收益增加为4.5%时投资不发生改变。
C 的税前收益减小为4.8%时收益表示为(4.3x1+4.5x5+(5.4x2+4.8x3+4.4x4)×0.5)100\frac{(4.3x_1+4.5x_5+(5.4x_2+4.8x_3+4.4x_4 )×0.5)}{100}100(4.3x1+4.5x5+(5.4x2+4.8x3+4.4x4)×0.5)
Lingo软件运行结果如下图6,易知,C 的税前收益减小为4.8%时,证券 A 投资336万元,证券 D 投资648万元,证券 E 投资16万元,证券 B 和 C 不投资,收益为29.424万元。
Lingo 实现线性规划求解模型相关推荐
- 使用python scipy.optimize linprog和lingo线性规划求解最大值,最小值(运筹学学习笔记)
1. 线性模型 2. 使用python scipy.optimize linprog求解模型最优解: 在这里我们用到scipy中的linprog进行求解,linprog的用法见https://docs ...
- 基于人工蜂群算法的线性规划求解matlab程序
基于人工蜂群算法的线性规划求解matlab程序 1 人工蜂群算法概述 2005年D. Karaboga教授仿照蜜蜂集群采蜜生物行为,提出了人工蜂群仿生算法,可以有效解决有关函数优化等相关难题.ABC算 ...
- Python数学模型——线性规划求解(一)
线性规划求解 线性规划求解主要弄清楚两个部分,目标函数(max,min)和约束条件(s.t.),我们求解时一般要化为MATLAB标准形式 mincTxs.t.⎧⎩⎨Ax<=bAeq∗x=beql ...
- 人工智能里的数学修炼 | 隐马尔可夫模型:基于EM的鲍姆-韦尔奇算法求解模型参数
人工智能里的数学修炼 | 概率图模型 : 隐马尔可夫模型 人工智能里的数学修炼 | 隐马尔可夫模型:前向后向算法 人工智能里的数学修炼 | 隐马尔可夫模型 : 维特比(Viterbi)算法解码隐藏状态 ...
- 【运筹学】线性规划数学模型 ( 线性规划求解 | 根据非基变量的解得到基变量解 | 基解 | 基可行解 | 可行基 )
文章目录 一.线性规划求解 二.根据非基变量的解得到基变量解 三.基解 四.基可行解 五.可行基 一.线性规划求解 在上一篇博客 [运筹学]线性规划数学模型 ( 求解基矩阵示例 | 矩阵的可逆性 | ...
- 【运筹学】线性规划数学模型 ( 单纯形法 | 迭代原则 | 入基 | 出基 | 线性规划求解示例 )
文章目录 一.单纯形法计算示例 ( 上篇博客回顾总结 ) 二.迭代原则 三.最优解推导 四.出基与入基 五.出基与入基变量选择 一.单纯形法计算示例 ( 上篇博客回顾总结 ) 在上一篇博客 [运筹学] ...
- 线性规划编程求解C语言,C语言大作报告线性规划求解基科3字班.doc
C语言大作报告线性规划求解基科3字班.doc C语言大作业选题设计报告线性规划求解程序一. 概述运筹学(OR)作为强有力的数学工具,在管理科学.决策科学中起到了举足轻重的作用.当最优化的约束条件是线性 ...
- 基于沙猫群优化算法的线性规划求解matlab程序
基于沙猫群优化算法的线性规划求解matlab程序 1 沙猫群优化算法 沙猫的中文学名叫沙丘猫,俗名沙漠猫,与荒漠猫名字相似,但却是两种不同的猫科动物.沙猫生活在茫茫沙漠里,主要分布在分布于非洲北部,阿 ...
- Fluent求解模型设定
Fluent求解模型的设定是在"Outline View--Setup--Models"中进行的. 找到"Models"并双击,在右侧会出现如图所示的" ...
- 线性规划求解器总结与比较
文章目录 Gurobi CPLEX GLPK CBC 线性规划是一种优化问题,其目标是在一定的约束条件下,最大化或最小化一个线性目标函数.线性规划在生产计划.货物运输.网络流量管理等领域都有广泛应用. ...
最新文章
- SpringMvc之@RequestParam详解
- LIVE 预告 | CMU研究者:解放审稿人,AI可以帮我们实现自动审稿吗?
- java窗口如何写不能移动_[求助]请教高手,下面程序为何组件不能自由移动,百思不得其解!...
- DBlink的创建与删除
- Android之back键拦截处理
- Jackson,Gson,Fastjson比较
- 【kafka】Kafka扩容
- 【收藏】RPM包制作和spec文件详解
- P4777 【模板】扩展中国剩余定理(EXCRT)
- VS2005无法调试,绑定句柄无效问题的解决方法
- 韩顺平 Java IO流 自学笔记
- C语言(动态开辟二维数组 指针数组、数组指针、一维数组模拟开辟)
- 汽车维修企业管理【10】
- 【服务器数据恢复】异常断电导致ESXI系统无法连接存储的数据恢复
- go语言能开发什么?go语言开发案例
- IT技术员的发展方向和晋升秘笈
- 服务器同时连接局域网和外网
- Mp3加3d 环绕声
- 目标检测—基于Yolov3的目标检测项目实战(学习笔记)
- 一个免费的在线录屏网站