- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Tsinghua University Uncertainty Theory Laboratory lzb8401552@hgnc.net 数学模型与实验 用MATLAB优化工具箱解线性规划 min z=cX 1、模型: 命令:x=linprog(c,A,b) 2、模型:min z=cX 命令:x=linprog(c,A,b,Aeq,beq) 注意:若没有不等式: 存在,则令A=[ ],b=[ ]. 3、模型:min z=cX VLB≤X≤VUB 命令:[1] x=linprog(c,A,b,Aeq,beq, VLB,VUB) [2] x=linprog(c,A,b,Aeq,beq, VLB,VUB, X0) 注意:[1] 若没有等式约束: , 则令Aeq=[ ], beq=[ ]. [2]其中X0表示初始点 4、命令:[x,fval]=linprog(…) 返回最优解x及x处的目标函数值fval. 解 编写M文件xxgh1.m如下: c=[-0.4 -0.28 -0.32 -0.72 -0.64 -0.6]; A=[0.01 0.01 0.01 0.03 0.03 0.03;0.02 0 0 0.05 0 0;0 0.02 0 0 0.05 0;0 0 0.03 0 0 0.08]; b=[850;700;100;900]; Aeq=[]; beq=[]; vlb=[0;0;0;0;0;0]; vub=[]; [x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub) ? 解: 编写M文件xxgh2.m如下: c=[6 3 4]; A=[0 1 0]; b=[50]; Aeq=[1 1 1]; beq=[120]; vlb=[30,0,20]; vub=[]; [x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub) 投资的收益和风险 一、问题提出 市场上有 n 种资产 i s ( i =1,2 …… n )可以选择,现用数额为 M 的相当大的资金作一个时 期的投资。这 n 种资产在这一时期内购买 i s 的平均收益率为 i r ,风险损失率为 i q ,投资越分 散,总的风险越小,总体风险可用投资的 i s 中最大的一个风险来度量。 购买 i s 时要付交易费, ( 费率 i p ) ,当购买额不超过给定值 i u 时,交易费按购买 i u 计 算。另外,假定同期银行存款利率是 0 r ,既无交易费又无风险。 ( 0 r =5% ) 已知 n=4 时相关数据如下: i s i r ( % ) i q ( % ) i p ( % ) i u (元) S 1 28 2.5 1 103 S 2 21 1.5 2 198 S 3 23 5.5 4.5 52 S 4 25 2.6 6.5 40 试给该公司设计一种投资组合方案,即用给定达到资金 M ,有选择地购买若干种资产或存银行 生息,使净收益尽可能大,使总体风险尽可能小。 二、基本假设和符号规定 三、模型的建立与分析 1.总体风险用所投资的Si中最大的一个风险来衡量,即max{ qixi|i=1,2,…n} 4. 模型简化: 四、模型1的求解 由于a是任意给定的风险度,到底怎样给定没有一个准则,不同的投资者有不同的风险度。我们从a=0开始,以步长△a=0.001进行循环搜索,编制程序如下: a=0; while (1.1-a)1 c=[-0.05 -0.27 -0.19 -0.185 -0.185]; Aeq=[1 1.01 1.02 1.045 1.065]; beq=[1]; A=[0 0.025 0 0 0;0 0 0.015 0 0;0 0 0 0.055 0;0 0 0 0 0.026]; b=[a;a;a;a]; vlb=[0,0,0,0,0];vub=[]; [x,val]=linprog(c,A,b,Aeq,beq,vlb,vub); a x=x Q=-val plot(a,Q,.),axis([0 0.1 0 0.5]),hold on a=a+0.001; end x
文档评论(0)