系列文章目录

基础篇:

​​​​​​1.matlab线性规划问题---------基于问题求解函数optimproblem

2. matlab线性规划系列之基础解题

文章目录

目录

系列文章目录

基础篇:

​​​​​​1.matlab线性规划问题---------基于问题求解函数optimproblem

2. matlab线性规划系列之基础解题

欢迎来到苦幽幽,线性规划解千愁系列。

一、上手实际问题

1.1温习(承上)0-1模型的选课制度-多目标:

若是还没有看过我上一篇文章的小伙伴,记得去看看呀,和上一篇的问题是有联系的哟。这次我将在单目标的基础之上增加一个学分最多的目标,也就是咱们需要实现在选课数量尽可能少的前提下,学分也尽可能多这两个目标。 其实很简单,伙伴们多想一下,代码在最下面呀!同时分析将会在下一期出!

2.开辟新类型- 类型2 - 普通线性规划:

三、多目标0-1的代码答案~


前言

这里将展示一些用我之前发过的关于问题求解函数optimproblem的一些解题方法思路,以及对应的代码,在这里声明一下,本篇文章所用的题目来自于哒哒子前辈的如下文章:数学建模【规划模型--线性规划(整数规划、0-1规划)、非线性规划-附:案例分析、奶制品的生产和销售(详细求解过程)】_厚德载物-CSDN博客

欢迎来到苦幽幽,线性规划解千愁系列。

一、上手实际问题

1.1温习(承上)0-1模型的选课制度-多目标:

若是还没有看过我上一篇文章的小伙伴,记得去看看呀,和上一篇的问题是有联系的哟。这次我将在单目标的基础之上增加一个学分最多的目标,也就是咱们需要实现在选课数量尽可能少的前提下,学分也尽可能多这两个目标。 其实很简单,伙伴们多想一下,代码在最下面呀!同时分析将会在下一期出!

2.开辟新类型- 类型2 - 普通线性规划:

2.1牛奶加工售出计划:

这里和上一篇所讲的题一样用三步法。我们求满足约束条件后,获利最大化

       2.2.1 分类问题

文字分析:

关于这道题,首先是先将问题分类,毫无疑问,和我们之前所讲的0-1规划不一样,因为没             有体现出选择的关系,也没有体现出数量值为0-1;这时候看题目显然就是一道普通的线性             规划,就是需要规划你怎么去安排这个制作,三点都是线性的函数,哪三点?看下方。

        2.2.2 找对应三

那么接下来就找那三个点:

第一:决策变量,其实就是选择A1还是A2,一桶牛奶是用A1做还是A2做。

第二:约束条件,约束条件是题目所给的,一天所产的牛奶桶数小于等于50;A1,A2加                 工时间不超过不超过480h;A1至多不超过100公斤

第三:目标函数,目标函数就是要使得获利最大化。

1. 关于决策变量

文字分析:

这里我们很容易知道,能否获利,是看我们做出了几桶牛奶,并且这几桶牛奶是由A                  还是B来做的,因为他们所能制造的牛奶的“转化率”是不同的,所以甚至于后期我们还可                  以计算出他们的经济效益(也就是性价比的东西,其实就是1/各自的需求量 再除以各自                 的单价,不是利润价阿!!,在这里单价没给,是没有办法求的!到最后面的时候会讲                 述2021国赛题目,会给例子的!),但显然单纯的求利益最大化是不需要的。

在这里因为要知道我们要规划用多少桶A1和多少桶A2,所以,我分别设置了x1桶牛                 奶用A1和x2桶牛奶用A2故设置两行的列向量即可,然后下界设置为0。

代码分析:

x = optimvar('x',2,'LowerBound',0);

2. 关于约束条件

文字分析:

约束条件感觉没啥好讲的,看题设条件就行,这个比较简单,直接看代码吧。

代码分析:

con1 = 3*x(1) <= 100;%A1的小于100
con2 = 12*x(1) + 8*x(2) <= 480;%时间
con3 = x(1)+x(2) <= 50;pro.Constraints.con1 = con1;
pro.Constraints.con2 = con2;
pro.Constraints.con3 = con3;

3. 关于目标函数

文字分析:

目标函数无非就是运用A1的公斤数乘以每公斤的利润加上A2的即可,这里需要注意的                 是,要知道自己设立的变量是桶数还是公斤数,这样所列出来的目标函数也是不一样                 的。

代码分析:

pro.Objective = x(1)*24*3 + 16*x(2)*4;%获利最大化

2.2.3 代码示例


pro = optimproblem('ObjectiveSense','max');%使得获利最大化x = optimvar('x',2,'LowerBound',0);
%x1桶牛奶用A1制作,x2桶牛奶用A2制作pro.Objective = x(1)*24*3 + 16*x(2)*4;%获利最大化con1 = 3*x(1) <= 100;%A1的小于100
con2 = 12*x(1) + 8*x(2) <= 480;%时间
con3 = x(1)+x(2) <= 50;pro.Constraints.con1 = con1;
pro.Constraints.con2 = con2;
pro.Constraints.con3 = con3;
[sol_LL fval_LL] = solve(pro);sol_LL.x
fval_LL

可以知道答案分别是A1 = 20,A2 =30 ,利润是3360。

三、多目标0-1的代码答案~

clc
clear
tic
%第二个目标
score = [5;4;4;3;4;3;2;2;3];%按照序号所对应的每一科的学分
pro1 = optimproblem('ObjectiveSense','max');
v = optimvar('v',9,'Type','integer','LowerBound',0,'UpperBound',1);%选课的学分
pro1.Objective = score'*v;
con_LL = [];
con_LL = sum(v) <=6;
% for i =1:9
%     con_LL = [con_LL;x(i) <= v(i)];
% end
pro1.Constraints.con1=con_LL;
[solz fval_LLz] = solve(pro1);
solz.v
fval_LLztoc


  答案最终是选择第1、2、3、5、6、9门课呀,然后学分是23分~,答案不唯一呀,如果有错误,还请指正~ 

matlab线性规划系列之基础解题-2相关推荐

  1. matlab 积分进阶教程,最适合小白的matlab教程系列_进阶系列二之微积分

    微积分篇 更多文章参考 符号变量 极限问题 求导数 求导数----偏导数 积分--符号解 积分数值解 多重积分 级数求和 泰勒级数展开 常微分方程 更多文章参考 最适合小白的matlab教程系列_基础 ...

  2. 最适合小白的matlab教程系列_进阶系列二之微积分

    微积分篇 更多文章参考 符号变量 极限问题 求导数 求导数----偏导数 积分--符号解 积分数值解 多重积分 级数求和 泰勒级数展开 常微分方程 更多文章参考 最适合小白的matlab教程系列_基础 ...

  3. matlab从无到有系列(四):符号数学基础

    matlab从无到有系列文章汇总: matlab从无到有系列(一):认识matlab matlab从无到有系列(二):矩阵运算基础 matlab从无到有系列(三):数值计算基础 全文共17248个字, ...

  4. Matlab线性规划函数linprog-小白详解

    Matlab线性规划linprog函数 最近开始想学一学数学建模的相关知识,也找了不少视频,感觉无论是PPT做的还是讲解内容没有看起来很舒服的,只能多找几个版本多看几遍然后做一下笔记,先从最基础的线性 ...

  5. 「译」JUnit 5 系列:基础入门

    2019独角兽企业重金招聘Python工程师标准>>> 原文地址:http://blog.codefx.org/libraries/junit-5-basics/ 原文日期:25, ...

  6. 软件测试系列---软件测试基础

    软件测试系列--软件测试基础 1.什么是软件测试? **软件测试是一个过程,包含了若干活动,运行软件进行测试只是活动之一**进行软件测试可以人工方式也可以借助于工具**进行软件测试可以运行软件也可以不 ...

  7. MATLAB实战系列(二十九)-头脑风暴优化(BSO)算法求解旅行商问题(TSP)-交叉算子

    前言 代码明细可参见 MATLAB实战系列(八)-头脑风暴优化(BSO)算法求解旅行商问题(TSP)(附MATLAB代码) 交叉算子的实现机制 我们还是以求解TSP问题为例,8个城市的坐标如下所示. ...

  8. MATLAB实战系列(十九)-遗传算法解决TSP(旅行商)问题-应用及解析(文末附MATLAB源码)

    接上篇MATLAB实战系列(十八)-遗传算法解决TSP(旅行商)问题-算法原理 https://wenyusuran.blog.csdn.net/article/details/114060030 感 ...

  9. openresty开发系列15--lua基础语法4表table和运算符

    openresty开发系列15--lua基础语法4表table和运算符 lua中的表table 一)table (表) Table 类型实现了一种抽象的"关联数组".即可用作数组, ...

  10. openresty开发系列14--lua基础语法3函数

    openresty开发系列14--lua基础语法3函数 一)function (函数) 有名函数: optional_function_scope function function_name( ar ...

最新文章

  1. rewrite or internal redirection cycle while processing nginx重定向报错
  2. Python list排序
  3. linux系统退出当前计算节点命令,Linux下60个系统命令详细解.doc
  4. ​Nature子刊 | 睡眠时型会影响人类大脑生理的认知功能
  5. python3 from import 与 import 区别
  6. 从Wasserstein距离、对偶理论到WGAN
  7. boost::safe_numerics模块实现数组索引值可以超出数组边界的测试程序
  8. java string字节数组_java(基本类型或者String字符串)与(字节数组)相互转换
  9. python装饰器的顺序_python中多个装饰器的执行顺序详解
  10. python三种数据类型_Python-更改Pandas中列的数据类型
  11. 计算机误删怎么恢复数据,电脑资料数据误删怎么恢复?
  12. CDays-3 习题一 (处理命令行参数)及相关内容解析。Python getopt 简介
  13. nodejs如何运行JavaScript代码
  14. 三星android10电话拦截功能,三星手机阻止来电怎么设置 拒接骚扰电话教程 - Iefans...
  15. html5 下拉框 美化,实用select下拉框美化jquery插件
  16. 智能化施工(综合管线)
  17. 视频编辑专家下载v9.3官方免费版
  18. Visio如何画箭头
  19. linux lpte_所有的linux和unix的指令行下的指令都一样吗
  20. 微信支付账单修改数字

热门文章

  1. jq ui-selectable中click单击事件,dblclick双击事件无效
  2. 汽车总线LIN总线协议
  3. SDRAM控制器——仲裁模块的实现
  4. FPGA之SDRAM控制器设计(二)
  5. 康泰克音源采样器完整版-Native Instruments Kontakt 6.5.3 WiN-MAC
  6. 南邮2020/2021电工电子技术期末试卷
  7. 翟菜花:为什么说社区会是虚拟偶像驶向未来的新航标?
  8. 锐捷交换机VSU配置
  9. 基于51单片机三路温湿度语音LCD1602液晶显示报警
  10. pcshare远控软件编译过程