一,线性规划标准形式

所以对于目标函数为max f(x),我们将其转化为求min -f(x),在结尾输出-f(x)即为所求;

对于A*x>=b,我们将其转化为-A*x<=-b。

二,问题求解

1,基于求解器

接下来对同种题用二-1,二-2分别求解,并做函数引入和介绍:

利用求解器求解的程序为:

2,基于问题求解

这里要用到优化问题的求解函数OptimizationProblem:

一个OptimizationProblem 对象说明一个优化问题,包括优化的变量、约束、目标函数以及目标是最大化还是最小化。使用 solve 求解完整的问题。

使用 optimproblem 创建一个 OptimizationProblem 对象:

prob = optimproblem('ObjectiveSense', 'max')

ObjectiveSense指示最小化或最大化,指定为 'minimize' 或 'maximize',该属性影响 solve 的运行。可以使用短名称 'min' 表示 'minimize' 或 'max' 表示 'maximize'

Objective目标函数,可以在创建问题时加入目标函数,也可以在此后通过圆点表示法将目标函数加入问题中:

prob = optimproblem('Objective',5*brownies + 2*cookies)
% or
prob = optimproblem;
prob.Objective = 5*brownies + 2*cookies

OptimizationConstraint优化约束,可以在创建问题时加入约束,或之后通过圆点表示法将约束加入问题中:

constrs = struct('TrayArea',10*brownies + 20*cookies <= traysize,...'TrayWeight',12*brownies + 18*cookies <= maxweight);
prob = optimproblem('Constraints',constrs)
% or
prob.Constraints.TrayArea = 10*brownies + 20*cookies <= traysize
prob.Constraints.TrayWeight = 12*brownies + 18*cookies <= maxweight

对例题(1.1)基于问题的求解方法:

clc, clear
prob = optimproblem('ObjectiveSense', 'max')
c = [4;3]; b = [10;8;7];
a = [2,1;1,1;0,1]; lb = zeros(2,1);
x = optimvar('x',2,'LowerBound',0);  %定义两个变量x1,x2,LowerBound下限为0,等价于题目中最后一个约束
prob.Objective = c'*x;  %目标函数
prob.Constraints.con = a*x<=b;  %约束
[sol, fval, flage, out] = solve(prob)  %用solve求解,fval为结果
sol.x  %显示决策变量x1,x2的值

基于问题求解可以用来解决大多的线性规划问题,而且他的约束,目标函数等表达的形式有很多,在此不再一一列举,都是基于基础的语法,大家可以多看代码,有自己的风格就好,其实花哨的格式都是一个目的。

三,可转化为线性规划的问题

clc, clear
c = [1:4]'; b = [-2,-1,-1/2]';
a = [1,-1,-1,1;1,-1,1,-3;1,-1,-2,3];
prob = optimproblem;  %默认求max
u = optimvar('u',4,'LowerBound',0);
v = optimvar('v',4,'LowerBound',0);
prob.Objective = sum(c'*(u+v));
prob.Constraints.con = a*(u-v)<=b;
[sol,fval,flag,out]=solve(prob)
x = sol.u - sol.v

博客首发哈哈,博主也是暑假正式接触数学建模担任编程手,小白一名。想记录一下所学避免忘记,也希望能帮到大家。有问题欢迎评论区交流呀~

线性规划Matlab程序(小白向)相关推荐

  1. 线性规划单纯形法的matlab程序,线性规划单纯形法的MATLAB实现_数学专业.doc

    摘要:运筹学有着长远的发展历史,并且不断地发展变化出许多分支理论,线性规划是运筹学中专研较早,发展比较快速,对现实社会作用涵盖面广,理论系统趋于成熟的一个重要分支,虽然其只是运筹学的一小部分,但是作用 ...

  2. 基于变色龙算法的线性规划问题求解matlab程序

    基于变色龙算法的线性规划问题求解matlab程序 1 变色龙算法 变色龙是爬行动物,是非常奇特的动物,它有适于树栖生活的种种特征和行为.避役的体长约15-25厘米,身体侧扁,背部有脊椎,头上的枕部有钝 ...

  3. 基于人工蜂群算法的线性规划求解matlab程序

    基于人工蜂群算法的线性规划求解matlab程序 1 人工蜂群算法概述 2005年D. Karaboga教授仿照蜜蜂集群采蜜生物行为,提出了人工蜂群仿生算法,可以有效解决有关函数优化等相关难题.ABC算 ...

  4. 基于沙猫群优化算法的线性规划求解matlab程序

    基于沙猫群优化算法的线性规划求解matlab程序 1 沙猫群优化算法 沙猫的中文学名叫沙丘猫,俗名沙漠猫,与荒漠猫名字相似,但却是两种不同的猫科动物.沙猫生活在茫茫沙漠里,主要分布在分布于非洲北部,阿 ...

  5. 基于鲸鱼算法的线性规划问题求解matlab程序

    基于鲸鱼算法的线性规划问题求解matlab程序 1 鲸鱼算法 座头鲸有特殊的捕猎方法,这种觅食行为被称为泡泡网觅食法:标准 WOA 模拟了座头鲸特有的搜索方法和围捕机制,主要包括:围捕猎物.气泡网捕食 ...

  6. 基于杂草优化算法的线性规划问题求解matlab程序

    基于杂草优化算法的线性规划问题求解matlab程序 1 杂草算法简介 1.1 IWO定义 IWO是2006年由A. R. Mehrabian等提出的一种从自然界杂草进化原理演化而来的随机搜索算法,模仿 ...

  7. 一般单纯形法的matlab程序,实验报告(单纯形法的matlab程序)

    <实验报告(单纯形法的matlab程序)>由会员分享,可在线阅读,更多相关<实验报告(单纯形法的matlab程序)(5页珍藏版)>请在人人文库网上搜索. 1.实验一:线性规划单 ...

  8. 基于主从博弈的智能小区代理商定价策略及 电动汽车充电管理matlab程序(yalmip+cplex)(yalmip+gurobi)

    基于主从博弈的智能小区代理商定价策略及电动汽车充电管理matlab程序(yalmip+cplex)(yalmip+gurobi) 参考文献:基于主从博弈的智能小区代理商定价策略及电动汽车充电管理 智能 ...

  9. 基于双层优化的微电网系统规划设计方法matlab程序(yalmip+cplex)

    基于双层优化的微电网系统规划设计方法matlab程序(yalmip+cplex) 参考文献:基于双层优化的微电网系统规划设计方法 摘要:规划设计是微电网系统核心技术体系之一.从分布式电源的综合优化(组 ...

最新文章

  1. Service 与 Thread 的区别
  2. 浅谈Hive和HBase区别
  3. faster rcnn源码理解(二)之AnchorTargetLayer(网络中的rpn_data)
  4. wxWidgets:wxTaskBarButton 示例
  5. android系统镜像:boot.img kernel.img ramdisk.img system.img userdata.img cache.img recovery.img
  6. JAVA基础知识+基础代码
  7. android 水印背景功能,Android 给View添加剧复的文字水印背景 相似钉钉通信录的背景效果...
  8. 【渝粤教育】电大中专计算机应用基础作业 题库
  9. bzoj 4026 dC Loves Number Theory(主席树)
  10. 系统调用服务号 linux 2.6.32
  11. 如何下载mysql-java驱动jar包
  12. java毕业设计鸿鹄教育培训mybatis+源码+调试部署+系统+数据库+lw
  13. 专业SMT贴片螺母生产厂家|支持贴片螺母非标定制符合产品要求
  14. Linux c线程间的同步----互斥锁、条件变量、信号量
  15. 直播入口地址的数据库修改
  16. CSP认证(2022-06-12)
  17. webrtc streamer前端页面js播放摄像头rtsp流
  18. 资料搜集-JAVA系统的梳理知识
  19. 程序员升职记-五种种说话套路
  20. 解决IntelliJ IDEA创建Maven项目没有src目录的问题

热门文章

  1. 1688获得店铺的所有商品教程
  2. Centos 7 怎么都连不上手机阿阿阿阿Android Studio 怎么都检测不到真机啊还有关于git本地提交就缺少文件啊啊啊啊
  3. Oracle ODBC 驱动安装及详细配置(不需安装客户端)
  4. 如何简单理解贝叶斯决策理论(Bayes Decision Theory)?
  5. 深入理解DSP中的重要概念(FT、DTFT、DFT、DFS、ZT、FFT)
  6. 百度云 文字识别 身份证识别
  7. python抓取数据库数据_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储...
  8. 关于笔记本真机装Linux连接WIFI并设置静态IP
  9. 第二章 2.1 机器视觉——图像《2022年斯坦福AI指数报告》中文全解读
  10. 渝粤题库 陕西师范大学 《法语》作业