linprog函数的用法

Matlab 中规定线性规划的标准形式为

其中 c 和 x 为 n 维列向量, A 、 Aeq 为适当维数的矩阵,b beq 为适当维数的列向量

注意:如果约束条件为Ax>=b,需要吧矩阵A和b乘以-1。A和b按照乘-1的新矩阵进行运算。如果目标函数是求最大值max需要吧矩阵c乘以-1

使用方法

求解线性规划问题:

List item

其中,f, x, b, beq, lb, ub为向量, A, Aeq为矩阵。
求解最小化问题 min x 条件 Ax ≤ b。

x = linprog(f,A,b)

求解最小化问题 min x 条件 Ax ≤ b Aeq*x = beq,如果没有不等式就设置A = [ ]和b = [ ];没有等式就设置 Aeq=[ ],beq=[ ]

x = linprog(f,A,b,Aeq,beq)

求解最小化问题 min x 条件 Ax ≤ b Aeq*x = beq lb ≤ x ≤ ub,决策变量有上下限时,如果没有不等式就设置A = [ ]和b = [ ] ;没有等式就设置 Aeq=[ ],beq=[ ]

 x = linprog(f,A,b,Aeq,beq,lb,ub)

求解最小化问题 min x 条件 Ax ≤ b Aeq*x = beq lb ≤ x ≤ ub,如果没有不等式就设置A = [ ]和b = [ ]。设置初始点x0,这个选择项只是对medium-scale算法有效。默认的large-scale算法和简单的算法忽略任何初始点。

x = linprog(f,A,b,Aeq,beq,lb,ub,x0)

最小化带有参数项的线性规划问题。其中options可以使用optimset来设置。

x = linprog(f,A,b,Aeq,beq,lb,ub,x0,options)

对problem求最小值,其中problem是一个结构体。通过优化工具箱来创建,导入到MATLAB工作空间。

x = linprog(problem)

功能:返回目标函数最优解x,和在x处的值:fval = *x.

[x,fval] = linprog(...)

返回目标函数最优解x,和在x处的值:fval = *x,是否存在exitflag标志

[x,fval,exitflag] = linprog(...)

返回目标函数最优解x,和在x处的值:fval = *x,是否存在exitflag标志,优化解结构体output

[x,fval,exitflag,output] = linprog(...)

返回目标函数最优解x,和在x处的值:fval = *x,是否存在exitflag标志,优化解结构体output,拉格朗日乘子结构体lambda

[x,fval,exitflag,output,lambda] = linprog(...)

应用举例

最小解: f(x) = –5x1 – 4x2 –6x3, 满足:
x1 – x2 + x3 ≤ 20
3x1 + 2x2 + 4x3 ≤ 42
3x1 + 2x2 ≤ 30
0 ≤ x1,
0 ≤ x2,
0 ≤ x3.
首先,输入系数、条件;
f = [-5;-4;-6] ;
A = [1 -1 1; 3 2 4 ;3 2 0];
b = [20; 42; 30];
lb = zeros(3,1);
然后,调用线性规划函数;
[x,fval,exitflag,output,lambda] = linprog(f,A,b,[ ],[ ],lb);
最后,得到:
x = 0.0000 15.0000 3.0000
lambda.ineqlin = 0 1.5000 0.5000
lambda.lower = 1.0000 0 0
相关函数
quadprog, optimtool book.

线性规划linprog相关推荐

  1. python模块:Scipy.optimize.linprog线性规划求解

    目录 一.模块介绍 二.模块源分析与参数解释 三.实例求解 四.参考 一.模块介绍 1.1模块功能 Scipy.optimize是Scipy中一个用于解决数学模型中优化类模型的子包,该子包中又包含了多 ...

  2. matlab中linprog函数不能用,matlab中linprog函数

    §15. 利用 Matlab 求解线性规划问题 线性规划是一种优化方法,Matlab 优化工具箱中有现成函数 linprog 对如 下式描述的 LP 问题求解: % min f'x % s.t ... ...

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

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

  4. matlab fgoalattain,matlab优化工具箱 | 学步园

    1 工具箱概述 1.1 功能 (1)求解无约束条件非线性极小值: (2)求解约束条件下非线性极小值,包括目标逼近问题.极大-极小值问题和半无限极小值问题: (3)求解二次规划和线性规划问题: (4)非 ...

  5. Matlab--优化工具箱

    优化工具箱 优化工具箱(Optimization Toolbox)是对MATLAB数值计算环境扩展得一组函数,它包括以下最优化方法的内容: 1.无约束非线性最小化(Unconstrained nonl ...

  6. L01n matlab,matlab常用语法

    % 方程求根 % inv - 逆矩阵 % roots - 多项式的根 % fzero - 一元函数零点 % fsolve - 非线性方程组,一定要先申明一个函数,里面有要求的方程组 % solve - ...

  7. matlab试用SUMT外点法求解,数学建模集训知识大纲

    数学建模集训知识大纲 文章目录 数学建模集训知识大纲 评价算法 简单加权法 逼近于理想解的排序法(TOPSIS算法) 层次分析法 主成分分析法 模糊综合评价法 聚类分析法 秩和比法 人工神经网络 熵权 ...

  8. matlab精华(转)

    请耐心看完,下面的东东对你肯定有帮助_ 一.安装及调试 I Matlab版本推荐 1.配置较差6.5,较好7或其以上 2.使用version命令可以查看matlab版本 3.版本对应:2006a–7. ...

  9. 清风数学建模代码笔记2(更新课_1

    1.excel制图 2.因子分析 类似于主成分分析也用作降维,但其容易解释,较之主成分分析使用更为广泛. 因子旋转:使得新的载荷系数绝对值尽可能接近于0/1(例如物化生 政史地六个,两个因子为理科和文 ...

最新文章

  1. HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包)
  2. 解决 iframe 在 ios 上不能滚动的问题
  3. Information_Schema系统表
  4. 界面设计方法 (1) — 4. 看板功能的设计
  5. vue引用electron_如何搞定跨平台桌面开发?Electron助你快速起步
  6. elementUI多选框组件:多选数组,取值问题
  7. 我爱计算机视觉精华文章分类汇总(2018年12月13日)
  8. 五一档票房超8.8亿元!张艺谋新片仅第二
  9. amd显卡更新最新驱动鼠标顿卡的解决方法
  10. solr 如何实现精确查询
  11. 金融市场中的NLP——情感分析
  12. c#文件流读取编码问题(转)新增加一个方法解决不带BOM的问题
  13. java的json解析工具_json在java中的几种解析工具的使用
  14. PYECHARTS 实战 国内/国际地图航线图制作 (一)
  15. 南师大GIS考研数据库2013年第四题
  16. 统计模型-基于sas
  17. 短视频内容创作:内容发给谁?为什么发?发什么?以什么形式发?
  18. 浪客云黑-自助收录网站源码
  19. 合工大c语言课后作业,填空类 合工大C语言题库
  20. springboot 整合Swagger及美化

热门文章

  1. (学习笔记)树莓派4B使用usb转串口通讯模块
  2. AEAI Portal网站门户配置手册
  3. Oracle基础和进阶笔记第二篇
  4. 媒体转码切片_【转载】云转码切片,我看很多人在找今天共享出来
  5. DS18B20温度传感器在树莓派下获取实时温度
  6. 更新显示itunes store无法连接服务器,苹果手机无法链接itunes怎么处理 连不上itunes store怎么回事?...
  7. 大数据行业现状分析和最新行业动态
  8. 基于JSoup库的java爬虫开发学习——小步快跑
  9. python函数五要素_机器学习极简入门
  10. 智能网联汽车硬件设备相关资料(取证用)