数学建模-线性规划模型基本原理与编程实现



一、线性规划问题与模型

在这里插入图片描述
在这里插入图片描述

二、线性规划定义

在这里插入图片描述
目标函数和约束条件必须是线性函数。

三、MATLAB中求解线性规划的基本描述式

在这里插入图片描述

在这里插入图片描述
MATLAB中求的是最小值,如果要求最大值只需要在目标函数前面加一个负号就可以。

在MATLAB中求线性有标准库,需要有基本的规范

规范如下:
在这里插入图片描述

例题:

在这里插入图片描述
f:
标准形式min C^T*x,现在要求最大值,所以给他加负号就行
f=[-2;-3;-5];

a、b:
然后看标准式子里的Ax <=b
在这道题中
在这里插入图片描述
因为标准式里都是小于所以给第一个式子加负号
a=[-2,5,-1;1,3,1];
b=[-10;12];

Aeq、Beq:
看标准式里的Aeq * x=Beq
在这道题中
在这里插入图片描述
所以Aeq=[1,1,1];
Beq=7;
现在已经转换为MATLAB标准形式,可以用MATLAB来求最优解
[x,y]=linprog(f,a,b,aeq,beq,zeros(3,1));
在这里插入图片描述

zeros(3,1)是生成一个三行一列的全是零的数据

x,y=-y:
此时求出的是最小值,现在再加一个负号就是最大值了

代码演示:

>> f=[-2;-3;5];
>> a=[-2,5,1;1,3,1];
>> b=[-10;12];
>> aeq=[1,1,1];
>> beq=7;
>>> [x,y]=linprog(f,a,b,aeq,beq,zeros(3,1));

>> x,y=-y

x =

    6.4286
    0.5714
         0


y =

   14.5714

四、总结

线性规划问题先把数学的式子转换为MATLAB的标准,然后再用linprog求最优解。

但是很多问题根本就不是线性,这时候我们需要将其转换为线性
在这里插入图片描述

五、例题

在这里插入图片描述
在这里插入图片描述

解题过程:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
如果没有a没法求解,要考虑老板能接受的投资风险,
可以给老板列出每次增长0.001风险度的情况

代码如下:
在这里插入图片描述

代码运行结果如图:

在这里插入图片描述
可以看出收益率随着风险的上升逐渐上升,但是增长趋势逐渐平缓
建议选择风险度在0.025以下的产品
在这里插入图片描述

第二种模型,只需要我的收益不小于K就行
在这里插入图片描述
第三种模型,投资总风险减去投资总收益最小即可,或者总收益减去总风险最大

在这里插入图片描述

  • 10
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸葛东_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值