Matlab建模实战学习——(规划问题)

news2024/11/15 19:58:42

1.Matlab函数linprog()的使用

1.1 Matlab基本描述

在这里插入图片描述

1.2 函数linprog()

三种表达形式

  • [x,fval] = linprog(c,A,b)
  • [x,fval] = linprog(c,A,b,Acq,bcq)
  • [x,fval]=linprog(c,A,b,Aeq,beq,lb,ub)

其中

  • x返回的是决策向量的取值,
  • fval返回的是目标函数的最优值,
  • c为价值向量
  • A,b对应的是线性不等式约束
  • Aeq,beq对应的是线性等式约束
  • lb和b分别对应的是决策向量的下界向量和上界向量

1.3 求解例子1

在这里插入图片描述
step1改写目标函数

  • 目标函数改写为(-4 x 1 x_1 x1 -3 x 2 x_2 x2

step2约束条件

  • 不等式
    在这里插入图片描述
  • 上下界约束可直接写。
    step3编程
c=[-4;-3];
a=[2  1;
   1  1];
b=[10;8];
lb=[0 0];
ub=[inf 7];
[x,y]=linprog(c,a,b,[],[],lb,ub);%无等式约束,但是也得写[],否则报错
x;
y=-y;

结果
在这里插入图片描述

1.3 求解例子2

在这里插入图片描述

step1改写目标函数

  • matlab优化函数只认识min,所以把目标函数改写为(-2 x 1 x_1 x1 -3 x 2 x_2 x2+5 x 3 x_3 x3
    从而可知列向量c=[-2;-3;5]

step2改写约束条件

  • 等式:
    aeq=[1;1;1]
  • 不等式:
    把≥改为≤,把两个不等式约束一起写为矩阵形式。

在这里插入图片描述

step3编程

c=[-2;-3;5];
a=[-2 5 -1;
    1 3 1];
b=[-10;12];
aeq=[1 1 1];
beq=7;
lb=[0 0 0];
[x,y]=linprog(c,a,b,aeq,beq,lb);
x;
y=-y;

结果
在这里插入图片描述

2 数模规划问题1——投资收益与风险

2.1 题目

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

2.2 符号规定

在这里插入图片描述

3 模型一

3.1 分析

在这里插入图片描述

3.2 建模

本来是一个多目标规划问题,然后他把风险转为了约束条件,变为了单目标优化。
在这里插入图片描述
代入数据
在这里插入图片描述
就是相当于每间隔0.001做一次规划

3.3 求解

主要看一下不等式约束的矩阵形式
在这里插入图片描述
编程

a=0;
i=1;
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;
    m(i)=Q;%每次计算的值
    for j=1:5
        mm(i,j)=x(j);%每次的投资方案
    end
        
    plot(a,Q,'*k');
    a=a+0.001;
    i=i+1;
end
xlabel('a');
ylabel('Q');

结果
在这里插入图片描述
然后再去对结果做一个分析。

主要来自:B站【零基础教程】老哥:数学建模算法、编程、写作和获奖指南全流程培训!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/738614.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

K8S应用服务安全(最小特权 策略方案 资源限制 调用限制 沙箱)

应用服务安全 1 应用服务安全1.1 最小特权1.1.1 基础知识1.1.2 安全上下文1.1.3 资源实践1.1.4 特权基础1.1.5 特权实践1.1.5 PSP实践 1.2 策略方案1.2.1 OPA简介1.2.2 特权策略1.2.3 策略进阶 1.3 资源限制1.3.1 AppArmor简介1.3.2 基础知识1.3.2 应用实践 1.4 调用限制1.4.1 …

Git装机基础配置

Git在开发中可谓是必用的工具软件了&#xff0c;下面介绍下装机必须的几个配置 配置用户身份 git config –global user.name “Your Name” git config –global user.email “emailexample.com”// 例如&#xff1a; git config –global user.name “xiaowag” git config …

openpnp - 负压传感器DP102的设置

文章目录 openpnp - 负压传感器DP102的设置概述笔记上电后的画面查看模式进入设置模式输出1检测模式输出2检测模式输出1和输出2的常态(常开/常闭状态)设置动作响应时间输出动作颜色的设置压力单位的设置回到正常的运行模式输出1下限的设置输出1上限的设置输出2下限的设置输出2上…

有趣的命令——————用shell脚本实现三角形(直角三角形、等腰三角形)

直角三角形 vim zhijiao.sh 输入以下内容&#xff1a;#!/bin/bashread -p "几层的三角形:" nfor ((i1;i<$n;i)) dofor ((jn;j>i;j--))doecho -n " "donefor ((j1;j<i;j))doecho -n "*"doneecho done例&#xff1a; 测试&#xff1a; 等…

JDBC事务操作

1、 事务概述 事务的概念&#xff1a;逻辑上的一组SQL语句&#xff08;一个或者多个&#xff09;执行的时候要么全部执行成功&#xff0c;要么全部执行失败。 事务的案例&#xff1a;转账案例&#xff1a;一个账户中的余额减少&#xff0c;另一个账户中的余额增加。 更新数据…

Docker笔记 Docker架构与常用命令

大家好 我是积极向上的湘锅锅&#x1f4aa;&#x1f4aa;&#x1f4aa; 1. Docker 架构 首先Docker由三大部分组成 Clients:客户端 通过docker的客户端操作命令&#xff0c;然后命令发送到daemon&#xff08;守护进程&#xff09;里面去执行操作Hosts&#xff1a;主机 主机包…

Linux——内核概念

一、内核 什么是内核&#xff1f; 计算机是由各种外部硬件设备组成的&#xff0c;如内存、cpu、硬盘等。如果每个应用都要和这些硬件对接通信协议&#xff0c;就太麻烦了&#xff0c;所以这个工作就由内核来负责。内核作为软件连接硬件设备的桥梁&#xff0c;使应用开发者只需…

C++常用库函数 1.缓冲区操作函数

函数名&#xff1a;memchr 函数原型&#xff1a;void *memchr(const void *buf&#xff0c;int c&#xff0c;sizet count)&#xff1b; 参数&#xff1a;buf 缓冲区的指针&#xff1b;c 查找的字符&#xff1b;count 检查的字符个数。 所需头文件&#xff1a;<cstring&g…

Python算法中的时间复杂度与空间复杂度

大家好&#xff0c;当谈论算法性能时&#xff0c;经常提到两个关键的衡量标准&#xff1a;时间复杂度和空间复杂度。时间复杂度指的是随着输入规模的增长&#xff0c;执行一个算法需要的时间&#xff0c;而空间复杂度指的是一个算法在执行过程中所使用的内存量。本文将详细探讨…

机器学习-sigmoid函数和relu函数-个人解读

机器学习-sigmoid函数和relu函数-个人解读 今天博主来解读一下sigmoid函数和relu函数&#xff0c;我觉得很多同学可能都知道这两个函数是什么&#xff0c;他们干什么的&#xff0c;他们有什么用&#xff0c;但是呢&#xff1f;我想这两个常用的激活函数内在的本质&#xff0c;…

Ai数字人——为写实而生

在当今数字化时代&#xff0c;人工智能技术正成为推动各行各业发展的重要驱动力。企业需要创新的解决方案&#xff0c;以提高效率、降低成本、增强客户体验并应对市场竞争。Ai数字人作为数字化转型的关键组成部分&#xff0c;具备强大的潜力和多样化的应用场景。 根据市场研究…

dbeaver配置SQL server连接

一、需要java jdk环境&#xff0c;我用的比较新 新的&#xff0c;那坑可就来了&#xff0c;先记着 cmd中 java --version出现版本号代表安装成功 二、dbeaver新建连接SQL server 点击测试连接会自动下载驱动&#xff0c;这个时候重点报错就开始出现了 错误一&#xff1a;DBea…

【已解决】matrix contains invalid numeric entries,记录bug修改

文章目录 摘要原因解决办法图像分类网络AlexNetVGGNetGooLeNet系列ResNetDenseNetSwin TransformerMAECoAtNetConvNeXtV1、V2MobileNet系列MPViTVITSWAEfficientNet系列MOBILEVITEdgeViTsMixConvRepLKNetTransFGConvMAEMicroNetRepVGGMaxViTMAFormerGhostNet系列DEiT系列MetaFo…

CMOS图像传感器——三星ISOCELL HP2技术解析

在之前有写文章介绍三星在2022年技术日活动分享的包括图像传感器在内的各种系统相关技术的最新改进和未来愿景,可以回顾下看看。 三星ISOCELL——2022 改进与展望_沧海一升的博客-CSDN博客三星ISOCELL最新改进和未来发展趋势https://blog.csdn.net/qq_21842097/article/detai…

Stable Diffusion AI 绘画入门指南

Stable Diffusion AI 绘画入门指南 市面上用的最多的AI绘画工具是 Stable-Diffusion&#xff08;SD&#xff09; 和 Midjourney&#xff08;Mid&#xff09;&#xff0c;SD是在本地运行的服务&#xff0c;开源&#xff0c;门槛高&#xff0c;但自控性极高。而Mid作为在线的服务…

Redis——基础篇(包含redis在云服务上的docker化安装和连接以及常用命令)

初识Redis Redis为键值型数据库&#xff0c;数据以键值形式存储。没有表&#xff0c;没有约束。 认识NoSQL mysql就是典型的关系型数据库(SQL)。 目的都是数据的增删改查&#xff0c;但数据存储方式不一样。 关系型和非关系型在结构上有差异 关系型的结构一般定好后就很少修…

基于 FFmpeg 的跨平台视频播放器简明教程(六):使用 SDL 播放音频和视频

系列文章目录 基于 FFmpeg 的跨平台视频播放器简明教程&#xff08;一&#xff09;&#xff1a;FFMPEG Conan 环境集成基于 FFmpeg 的跨平台视频播放器简明教程&#xff08;二&#xff09;&#xff1a;基础知识和解封装&#xff08;demux&#xff09;基于 FFmpeg 的跨平台视频…

【unity小技巧】委托(Delegate)的基础使用和介绍

文章目录 一、前言1. 什么是委托&#xff1f;2. 使用委托的优点 二、举例说明1. 例12. 例2 三、案例四、泛型委托Action和Func1. Action委托2. Func委托 五、参考六、完结 一、前言 1. 什么是委托&#xff1f; 在Unity中&#xff0c;委托&#xff08;Delegate&#xff09;是一…

2FRE-10B-35-G24电比例调速阀控制器

2FRE-06B-20-G24、2FRE-10B-35-G24、2FRE-10B-50-G24、2FRE-16B-80-G24、2FRE-16B-115-G24、2FRE-16B-160-G24电比例调速阀&#xff0c;通过给定电信号&#xff0c;控制阀出口流量大小&#xff0c;并且采用压力补偿原理&#xff0c;保证输出流量大小不受负载压力影响维持恒定;该…

低代码平台实用吗?有哪些大型企业在用低代码?

一、目前正在使用低代码平台的企业有哪些&#xff1f; &#xff08;例举一些各行业规模较大的企业&#xff09; 制造行业&#xff1a;施耐德电气、吉利汽车、科大能通、伟星集团、远东控股、一汽大众、老板电器、双菱电梯、君乐宝。 建筑行业&#xff1a;中国交建、筑福集团…