- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验六 线性规划
一、债券投资
㈠问题描述
给定可供购进的证券以及其信用等级、到期年限、收益。市政证券的收益可以免税,其他证券的收益需按50%的税率纳税。此外还有以下限制:
(1) 政府及代办机构的证券总共至少要购进400万元;
(2) 所购证券的平均信用等级不超过1.4;
(3) 所购证券的平均到期年限不超过5年。
1、若经理有1000万元资金,应如何进行投资?
2、如果能以2.75%的利率借到不超过100万元资金,该经理应如何操作?
3、在1000万元资金情况下,若证券A的税前收益增加为4.5%,投资应够改变?若证券C的税前收益减少为4.8%,投资应否改变?
㈡简要分析
本题是一个比较简单的线性规划+扰动分析问题,对所谓问题进行建模,可以得到线性规划如下:
设分别购入A、B、C、D、E五种证券a、b、c、d、e万元。
于是对第1问有
b+c+d≥400
2a+2b+c+d+5e≤1.4(a+b+c+d+e)
9a+15b+4c+3d+2e≤5(a+b+c+d+e)
a+b+c+d+e≤100
a,b,c,d,e≥0
max
对第2问,增设a1,b1,c1,d1,e1分别表示用借来的资金购买证券的金额,于是规划变为
b+c+d+b1+c1+d1≥400
2
9(a+a1)+15(b+b1)+4(c+c1)+3(d+d1)+2(e+e1)≤5(a+b+c+d+e+a1+b1+c1+d1+e1)
a+b+c+d+e≤1000
a1+b1+c1+d1+e1≤100
a,b,c,d,e,a1,b1,c1,d1,e1≥0
max
对第三问,仅需将第一问中的规划做一点修改即可。
㈢方法与公式
线性规划方法:
(1)内点算法
opt1=optimset(’largescale’,’on’);
[x,f,exitflag,output,lag]= linprog(c,A,b,[],[],[],[],[],opt1);
(2)有效集方法
opt2=optimset(’largescale’,’off’);
[x,f,exitflag,output,lag]= linprog(c,A,b,[],[],[],[],[],opt2);
(3)单纯形算法
opt3=optimset(’largescale’,’off’,’simplex’,’on’);
[x,f,exitflag,output,lag]= linprog(c,A,b,[],[],[],[],[],opt3);
㈣结果与分析
1、第一问:
最优解
最优目标值
平均迭代次数
平均使用
时间
内点
218.181818
8.45E-09
736.363636
2.29E-08
45.4545455
-29.8363636352
6
0有效集
218.181818
-8.81E-16
736.363636
0
45.4545455
-29.8363636364
5
0.004822365
单纯形
218.181818
0
736.363636
0
45.4545455
-29.8363636364
4
0.009097038
使用三种方法进行计算,得到结果对比如下:
结果为:
应购买A种证券218.18万元、B种证券0元、C种证券736.36万元、D种证券0元、E种证券45.45万元;最终得到的收益约为29.8364万元。
通过对比可以发现以下几点结论:
(1)三种算法所得的计算结果基本一致,各种算法计算得到的目标值仅在小数点后第10位才有所区别;
(2)三种算法得到的最优解略有区别,其中内点算法没有得出第2、4项为0的结论(虽然已很接近),这也许只是因为计算精度的问题,但也有可能是算法本身的原因;
(3)迭代次数上,内点算法有效集算法
(4)使用时间上,这里对三种算法分别进行了100次调用,计算得到平均使用时间。从表格可以看出使用时间上内点算法单纯性算法
2、第二问
继续采用三种算法,计算结果如下:
最优解
内点
229.1
1.74E-07
739.3996
8.11E-06
31.52
1.09E+01
1.73E-07
7.06E+01
5.39E-06
18.478886
有效集
240
-5.32E-15
710
0
50
-1.36E-14
-6.71E-16
100
0
-8.52E-15
单纯形
240
0
710
0
50
0
0
100
0
0
将所得的最优解根据债券类型进行合并,即计算a+a1,b+b1,c+c1,d+d1,e+e1,记录如下:
最优解
最优目标值
平均迭代次数
平均使用时间
内点
240.00
0.00
810.00
0.00
50.00
-30.0699999606
7
0.01
文档评论(0)