线性规划问题是在一组线性约束条件下,求线性目标函数最大/最小值的问题。这些约束条件有不等式约束、等式约束以及边界约束,这和中学讲的线性规划无异。

此类问题的MATLAB标准形式为:

  

其中,max问题可以转换为min求解,三个约束条件分别为不等、等式、边界约束。

MATLAB求解函数:

[x,fval]=linprog(c,A,b,Aeq,beq,LB,UB,X0,OPTIONS)

param:

  c是目标系数;

  A、b对应不等条件;

  Aeq、beq对用等式条件;

  LB、UB为边界;

  x0是求解的初始值;

  OPTIONS是控制参数,一般不用。

return:

   x向量是使得目标函数最小的x取值;

  fval是相应的目标函数最优值,若是由max问题转化为min,还要取反。

例题以及matlab求解:

一、求解线性规划问题

  

求解的matlab程序如下:

 f = [-2;-3;5];
A = [-2,5,-1;1,3,1];
b = [-10;12];
Aeq = [1,1,1];
beq = 7;
lb = [0;0;0];
ub = [inf;inf;inf];
[x,y]=linprog(f,A,b,Aeq,beq,zeros(3,1));
x
y = -y

二、其他可以转换为线性规划问题,如目标为绝对值函数,指派问题(匈牙利算法),对偶理论与敏感度分析,在此略过,使用时查阅。

三、应用建模:投资的收益与风险

模型一的求解:

 clc,clear
a = 0;
hold on
while a<0.05
c = [-0.05,-0.27,-0.19,-0.185,-0.185]
A = [zeros(4,1),diag([0.025,0.015,0.055,0.026])];
b = a*ones(4,1);
Aeq = [1,1.01,1.02,1.045,1.065];
beq = 1;
LB = zeros(5,1);
[X,Q] = linprog(c,A,b,Aeq,beq,LB);
Q = -Q;
Q
plot(a,Q,'*k');
a = a + 0.001;
end
xlabel('风险水平a');
ylabel('最大收益Q');

结果分析:

【数学建模】day01-线性规划问题的更多相关文章

  1. 【数学建模】线性规划各种问题的Python调包方法

    关键词:Python.调包.线性规划.指派问题.运输问题.pulp.混合整数线性规划(MILP) 注:此文章是线性规划的调包实现,具体步骤原理请搜索具体解法.   本文章的各个问题可能会采用多种调用方 ...

  2. Python数学建模-02.数据导入

    数据导入是所有数模编程的第一步,比你想象的更重要. 先要学会一种未必最佳,但是通用.安全.简单.好学的方法. 『Python 数学建模 @ Youcans』带你从数模小白成为国赛达人. 1. 数据导入 ...

  3. Python小白的数学建模课-03.线性规划

    线性规划是很多数模培训讲的第一个算法,算法很简单,思想很深刻. 要通过线性规划问题,理解如何学习数学建模.如何选择编程算法. 『Python小白的数学建模课 @ Youcans』带你从数模小白成为国赛 ...

  4. BITED数学建模七日谈之二:怎样阅读数学模型教材

    今天进入我们数学建模七日谈的第二天:怎样阅读数学建模教材? 大家再学习数学建模这门课程或准备比赛的时候,往往都是从教材开始的,教材的系统性让我们能够很快,很深入地了解前人在数学模型方面已有的研究成果, ...

  5. Python数学建模-01.新手必读

    Python 完全可以满足数学建模的需要. Python 是数学建模的最佳选择之一,而且在其它工作中也无所不能. 『Python 数学建模 @ Youcans』带你从数模小白成为国赛达人. 1. 数学 ...

  6. Python小白的数学建模课-A1.2021年数维杯C题(运动会优化比赛模式探索)探讨

    Python小白的数学建模课 A1-2021年数维杯C题(运动会优化比赛模式探索)探讨. 运动会优化比赛模式问题,是公平分配问题 『Python小白的数学建模课 @ Youcans』带你从数模小白成为 ...

  7. Python小白的数学建模课-04.整数规划

    整数规划与线性规划的差别只是变量的整数约束. 问题区别一点点,难度相差千万里. 选择简单通用的编程方案,让求解器去处理吧. 『Python小白的数学建模课 @ Youcans』带你从数模小白成为国赛达 ...

  8. Python小白的数学建模课-A1.国赛赛题类型分析

    分析赛题类型,才能有的放矢. 评论区留下邮箱地址,送你国奖论文分析 『Python小白的数学建模课 @ Youcans』 带你从数模小白成为国赛达人. 1. 数模竞赛国赛 A题类型分析 年份 题目 要 ...

  9. Python小白的数学建模课-05.0-1规划

    0-1 规划不仅是数模竞赛中的常见题型,也具有重要的现实意义. 双十一促销中网购平台要求二选一,就是互斥的决策问题,可以用 0-1规划建模. 小白学习 0-1 规划,首先要学会识别 0-1规划,学习将 ...

  10. Python小白的数学建模课-A3.12 个新冠疫情数模竞赛赛题与点评

    新冠疫情深刻和全面地影响着社会和生活,已经成为数学建模竞赛的背景帝. 本文收集了与新冠疫情相关的的数学建模竞赛赛题,供大家参考,欢迎收藏关注. 『Python小白的数学建模课 @ Youcans』带你 ...

随机推荐

  1. face detection[FaceBoxes]

    该文来自<FaceBoxes: A CPU Real-time Face Detector with High Accuracy>.该文时间线是2018年1月 虽然人脸检测上随着深度学习的 ...

  2. C# Oracle 时间字符串转时间类型

    C# 字符串转时间类型 yyyy-MM-dd HH:mm:ss  yyyy-MM-dd hh:mm:ss d 月中的某一天.一位数的日期没有前导零. dd 月中的某一天.一位数的日期有一个前导零. d ...

  3. 微信小程序大型系统架构中应用Redis缓存要点

    在大型分布式系统架构中,必须选择适合的缓存技术以应对高并发,实现系统相应的高性能,酷客多小程序经过慎重选型,选择了采用基于腾讯云服务的Redis弹性缓存技术,结合Redis官方推荐的.NET驱动类库S ...

  4. 【愚人节快乐】拥抱Bootstrap,FineUI新版效果超炫!

    鉴于 Bootstrap 备受欢迎,我们决定用 Bootstrap 完全替换掉 jQuery,得到了更加漂亮的界面,先睹为快: 注:网页背景图片来自百度网盘,版权归百度所有! 详情:http://fi ...

  5. Java多线程核心技术(四)Lock的使用

    本文主要介绍使用Java5中Lock对象也能实现同步的效果,而且在使用上更加方便. 本文着重掌握如下2个知识点: ReentrantLock 类的使用. ReentrantReadWriteLock ...

  6. Vs2017_创建项目引用Core2.2报错找不到

    错误: 解决方案: 这个勾一定要画上

  7. js canvas图片压缩

    function preview_picture(pic){ var r=new FileReader(); r.readAsDataURL(pic); r.onload=function(e){ d ...

  8. java的instanceof关键字

    java 中的instanceof 运算符是用来判断对象是否是 特定类或这个特定类的子类 的一个实例. 用法: result = object instanceof class 参数: Result: ...

  9. Python—生成器

    列表生成式 现在有个需求,看列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],要求你把列表里的每个值加1,你怎么实现? >>> a = [i+1 for i in r ...

  10. Python编码与变量

    (一)Python执行的方式 Window: 在CMD里面,使用 Python + 相对路径/绝对路径 在解释器里面,直接输入,一行代码一行代码的解释 Linux: 明确地指出用Python解释器来执 ...