线性规划论文.doc_第1页
线性规划论文.doc_第2页
线性规划论文.doc_第3页
线性规划论文.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

线性规划论文线性规划 论文金融投资类线性规划及其数学模型的MATLAB求解摘要:线性规划是运筹学中研究较早、发展较快、应用广泛、方法较成熟的一个重要分支,它是辅助人们进行科学管理的一种数学方法,研究线性约束条件下线性目标函数的极值问题的数学理论和方法。本文讨论了在企业的各项管理活动如计划、生产、运输、技术等方面各种限制条件的组合选择出最为合理的一般计算方法。重在通过MATLAB程序设计来实现,建立线性规划模型求得最佳结果。 关键词:MATLAB 线性规划 编程 线性规划主要用于解决生活、生产中的资源利用、人力调配、生产安排等问题,它是一种重要的数学模型。简单的线性规划指的是目标函数含两个自变量的线性规划,其最优解可以用数形结合方法求出。涉及更多个变量的线性规划问题不能用初等方法解决整数规划是从1958年由R.E.戈莫里提出割平面法之后形成独立分支的,30多年来发展出很多方法解决各种问题。从约束条件的构成又可细分为线性,二次和非线性的整数规划。 MATLAB自身并没有提供整数线性规划的函数,但可以使用荷兰Eindhoven科技大学Michel Berkelaer等人开发的LP_Solve包中的MATLAB支持的mex文件。此程序可求解多达30000个变量,50000个约束条件的整数线性规划问题,经编译后该函数的调用格式为 x,how=ipslv_mex(A,B,f,intlist,Xm,xm,ctype) 其中,B,B表示线性等式和不等式约束。和最优化工具箱所提供的函数不同,这里不要求用多个矩阵分别表示等式和不等式,而可以使用这两个矩阵表不等式、大于式和小于式。 如我们在对线性规划 求解中可以看出,其目标函数可以用其系数向量f=-2,-1,-4,-3,-1T来表示,另外,由于没有等式约束,故可以定义Aep和Bep为空矩阵。由给出的数学问题还可以看出,x的下界可以定义为xm=0,0,3.32,0.678,2.57T,且对上界没有限制,故可以将其写成空矩阵 此分析可以给出如下的MATLAB命令来求解线性规划问题,并立即得出结果为x=19.785,0,3.32,11.385,2.57T,fopt=-89.5750。 从运算结果来看,由于key值为1,故求解是成功的。以上只用了5步就得出了线性规划问题的解,可见LP_Solve数据包能较轻松地实现多变量线性规划整数解的问题。 对于小规模问题,可以考采用穷举算法。人为假定xM的各个元素均为20,当然可以采用逐个求取函数值,得出和前面一致的结果。 如果目标函数或约束条件中包含非线性函数,就称这种规划问题为非线性规划问题。对于非线性整数规划问题要比整数线性规划问题更复杂,在实际应用中往往还会遇到整数或混合规划问题,基于该领域的常用算法是分支定界(branch and bound)算法。 通过下面实例归纳出线性规划数学模型的一般形式,最后通过MATLAB来实现其最优解。 (投资的收益和风险) 问题提出市场上有n种资产si(i=1,2,3n)可以选择,现用数额为M的相当大的资金作一个时期的投资。这n种资产在这一时期内购买si的平均收益率为i,风险损失率为Qi,投资越分散,总的风险越小,总体风险可用投资的si中最大的一个风险来度量。 购买si时要付交易费,(费率pi),当购买额不超过给定值ui时,交易费按购买ui计算。另外,假定同期银行存款利率是r0,既无交易费又无风险(r0=5%)。 已知n=4时相关数据如下: 试给该公司设计一种投资组合方案,即用给定达到资金M,有选择地购买若干种资产或存银行生息,使净收益尽可能大,使总体风险尽可能小。 首先,我们做如下符号规定: si:第i种投资项目(如股票,债券) ri,pi,qi:分别为si的平均收益率,风险损失率,交易费率 ui:si的交易定额r0:同期银行利率 xi:投资项目si的资金a:投资风险度 Q:总体收益 Q:总体收益的增量 要使净收益尽可能大,总体风险尽可能小,这是一个多目标规划模型。对此我们首先建立一个初步模型。在实际投资中,投资者承受风险的程度不一样,若给定风险一个界限a,使最大的一个风险qixi/Ma可找到相应的投资方案。这样把多目标规划变成一个目标的线性规划。 因此我们固定风险水平,优化收益,对模型做出简化并对其进行简化: 我们从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 xlabel(a),ylabel(Q) 计算结果如下: a=0.0030 x=0.4949 0.1200 0.2000 0.0545 0.1154 Q=0.1266 a=0.0060 x=0 0.2400 0.4000 0.1091 0.2212 Q=0.2019 a=0.0080 x=0.0000 0.3200 0.5333 0.1271 0.0000 Q=0.2112 a=0.0100 x=0 0.4000 0.58430 0Q=0.2190 a=0.0200 x=0 0.8000 0.18820 0Q=0.2518 a=0.0400 x=0.0000 0.9901 0.0000 0 0Q=0.2673 分析结果可见: 在a=0.006附近有一个转折点,在这一点左边,风险增加很少时,利润增长很快。在这一点右边,风险增加很大时,利润增长很缓慢,所以对于风险和收益没有特殊偏好的投资者来说,应该选择曲线的拐点作为最优投资组合,大约是a*=0.6%,q*=20%, 所对应投资方案为: 对于多变量线性规划问题的求解,常规解法需要设置大量的参数,计算过程繁琐、可操作性差、计算精度不高,而经由MATLAB设计的算法可有效地解决这一问题,大大提高了运算效率与精度,在工程、管理、经济、科研、军事等

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论