线性规划模型的基本原理与案例

一,原理与引例:

 

 

 

 

 

 

 

 

 

 

 

 

 这个在matlab里面其实是有一个标准库来处理相应的数据的。如果题目要求最大值的话,只要在Ax前面加上一个负号就好了。

 

 这个稍微解释一下,目标函数不是线性函数,所以这个地方用到了运筹学的知识。上面的u和v其实只是存在关系。对于现在的我来说只要记住就好了。这样就把之前的非线性问题转化为了线性的问题了。然后直接用matlab来求解就好了。

二,案例分析与学习:

 

 

 

 这个ui其实就是s1只是这个地方打错了。其实从这个地方其实就已经可以发现这个其实是一个多目标规划问题,具体怎么转化为一个单目标优化问题还是要看后面的内容。

 

 这个L是一个省略号。这个符号规定认真看一下。

 

 认真思考一下这些假设条件吧。

1,先假设这个M是很大的数,这个1其实就只是一个整体,不是简单的数字1.

2,第二个假设其实是题目里面的内容

3,这个假设是肯定的。因为如果这个风险是所有的投资的和,那么这个风险肯定就会变得非常大了。所以这个地方假设这个风险就是所有投资中分线最大的哪一个

4,这个资产之间是相互独立的一定要说,避免不同资产之间的扰动。这个点比较重要,如果不加的话会让评委感觉很不严谨。

5和6也是很重要的内容,避免确定的因素发生变化。

 

 注意上面的含义,qixi其实是风险所导致的亏损,我要取所有风险中的最大值。,这个东西就是平均收益率减去费率再乘上投资的金额。还有这个相对于很少的问题,这个很明显感觉把这个相对给模糊化了。就是在净收益里面会忽略了这个分段的影响,但是这个分段是需要呈现出来的。

 

所以现在的优化模型的建立就是这下面的式子(目标函数和约束条件):

 

 这两个约束条件其实就是总收益的约束还有就是每一笔投资都要大于0.但是这个很明显是一个多目标规划问题。那么这个其实我们是没办法用matlab来求解的,所以我们要想办法来把这个多目标规划变成单目标的规划。具体方法如下:

 

 第一种就是不考虑分风险,把风险确定在一个有界的范围内。这个东西其实就是我们能接受风险占的比例。假设一个a是能够接受的范围。

 

 

 剩下的两种也是很好的思路要自己学习一下。

后面我们来着重的讲解第一种方法:

 

 因为matlab没有求最大值,所以这个地方是要加上负数的。还有就是这个a的指定,其实这个我一开始也是没有思路的。这个地方的思路就是从0开始以0

001为步长增加进行循环搜索。

 

 这个是程序:

 

 这个是的出来的图

 

 后面就是对这个图的分析。这个自己可以认真看一下。

 

posted @ 2022-03-15 21:56  prize  阅读(1465)  评论(0编辑  收藏  举报