整数线性规划问题的基本内容

整数线性规划解决的是自变量在一定的线性约束条件下,使得线性目标函数求得最大值或者最小值的问题。其中自变量只能取整数。特别地,当自变量只能取0或者1时,称之为 0-1 整数规划问题。

当目标函数为最小值时,上述问题可以写成如下形式:

$$ \min z=\mathbf{F}^{T}\mathbf{X} $$

$$ \text { s.t. } \left{\begin{array}{l} {\mathbf{A}\mathbf{X} \leqslant \mathbf{B}} \ {\mathbf{A}{\mathrm{eq}} \mathbf{X}=\mathbf{B}{\mathrm{eq}}} \ {\mathbf{LB} \leqslant \mathbf{X} \leqslant \mathbf{UB}} \\mathbf{X} \text{取整数} \end{array}\right. $$

其中

$F$线性目标函数系数向量

$\mathbf{X}$ 为决策变量向量

$\mathbf{A}$ 为线性不等式系数矩阵

$\mathbf{B}$ 为线性不等式右端常数向量

$\mathbf{A}_\mathrm{eq}$ 为线性等式系数矩阵

$\mathbf{B}_\mathrm{eq}$ 为线性等式右端常数向量

$\mathbf{L B}$ 为决策变量下界向量

$\mathbf{U B}$ 为决策变量上界向量

Matlab模型代码

调用形式

[X,FVAL,EXITFLAG,OUTPUT,LAMBDA] = intlinprog(F,intcon,A,B,Aeq,Beq,LB,UB) % 统一形式

输入变量

F为目标函数系数向量

intcon为整数变量的地址

A 为不等式约束系数矩阵(注意默认不等式方向为小于等于,若为大于等于,需要将其取相反数)

B 为不等式右端常数向量(注意默认不等式方向为小于等于,若为大于等于,需要将其取相反数)

Aeq 为等式约束系数矩阵

Beq 为等式右端常数向量

LB 为决策变量下界向量

UB为决策变量上界向量

在调用时,输入参数不存在时,可以将其输入用 [] 空矩阵表示。

输出变量

X 为最优解

FVAL 为最优目标值

EXITFLAG 为运行结束标志,当等于1时,表示程序收敛于解 X;当等于0时,表示程序运行次数到达最大;当小于0时,说明情况较多

OUTPUT 为程序迭代次数

LAMBDA 为解X相关的Largrange乘子和影子价格

案例演示

目标函数与约束条件

$$\min z=-3 x_{1}-2 x_{2}-x_{3}$$ $$\text { s. t. }\left{\begin{array}{l}{x_{1}+x_{2}+x_{3} \leq 7} \ {4 x_{1}+2 x_{2}+x_{3}=12} \ {x_{1}, x_{2} \geqslant 0} \ {x_{3}=0\text{ or }1}\end{array}\right.$$

Matlab程序

clc,clear

f = [-3;-2;-1];

intcon = 3; % 整数变量的地址

A = ones(1,3);

B = 7;

Aeq = [4,2,1];

Beq = 12;

LB = zeros(3,1);

UB = [inf;inf;1]; % 只有x(3)取0或者1

[x,fval]= intlinprog(f,intcon,A,B,Aeq,Beq,LB,UB)

运行结果

x =

0

5.5000

1.0000

fval =

-12.0000

MATLAB线性规划整数变量,Matlab 整数线性规划问题模型代码相关推荐

  1. matlab矩阵运算带变量,MATLAB矩阵及其数值运算

    matlab矩阵及其数值运算 变量和数据操作 变量与赋值 1.变量命名 在MATLAB6.5中,变量名是以字母开头,后接字母.数字或下划线的字符序列,最多63个字符.在MATLAB中,变量名区分字母的 ...

  2. matlab子函数调用变量,matlab中,怎么样用function自定义函数调用另一个函数名为输入?...

    点击查看matlab中,怎么样用function自定义函数调用另一个函数名为输入?具体信息 答:test定义两个参数,一个是函数,一个是函数的变量. function [z]=test11(funna ...

  3. matlab的精度变量,MatLab - 变量精度算术

    永远不要假设像vpa(sin(pi / 4))这样的数字精确到完全精度,因为MATLAB通常会使用浮点运算来计算vpa调用内的数字,因此只能精确到大约16位数. 但是,它似乎在这里是正确的.例如,我们 ...

  4. matlab不显示变量,Matlab空间面板SAR模型运行时解释变量显示不全

    在论坛里找到的SAR程序,按照自己的数据修改T.N,当解释变量为2时运行正常,但是当增加解释变量个数后,解释变量显示不全.请教各位这是什么原因? 原程序: T=30; N=46; W=normw(W1 ...

  5. matlab基础之变量,matlab基础知识(4):特殊变量

    单元型变量 单元型变量是以单元为变量的数组,每个元素为单元,每个单元可以包含其他类型的数组,如实数矩阵,字符串,复数向量等.单元型变量通常由{}创建,数据通过数组下标来引用. 单元型变量的创建 1.赋 ...

  6. matlab循环读取变量,Matlab for 多个变量循环能不能这样啊 ,求教高手!!!!

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 for a=0.003:0.0005:1; b=0.002:0.0005:0.9; c=0.001:0.0005:0.8;d=0.0005:0.0005: ...

  7. matlab 引号内变量,MATLAB 7.0 单引号内变量现实问题!

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 @gjqzaqmlp function Draw(a1,a2,a3,x) t=0:0.5:x; y1=exp(-a1*t); y2=exp(-a2*t); ...

  8. matlab 有公式 变量,matlab两个变量拟合公式x=0.40.450.50.550? 爱问知识人

    %很奇怪,与x无关?!但是,图形表明有关. clear x=[0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95]; y=[5 8 11 14 ...

  9. matlab 01变量,MATLAB变量

    序言 在**Matlab**中,变量名由A~Z.a~z.数字和下划线组成,且变量的第一个字符必须是字母. 尽管变量名可以是任意长度, 但是Matlab只识别名称的前N=namelengthmax个字符 ...

  10. Matlab 整数线性规划问题模型代码

    整数线性规划问题的基本内容 整数线性规划解决的是自变量在一定的线性约束条件下,使得线性目标函数求得最大值或者最小值的问题.其中自变量只能取整数.特别地,当自变量只能取0或者1时,称之为 0-1 整数规 ...

最新文章

  1. Python 批量处理 Excel 数据后,导入 SQL Server
  2. Mysql跨机房同步方案
  3. POSTMAN 数据关联
  4. 005_FreeMarker入门程序
  5. 【Python】青少年蓝桥杯_每日一题_5.15_打印 99 乘法表
  6. java数据类型_Java 变量、表达式和数据类型详解
  7. Shell-11--for
  8. 将Java程序作成exe文件的几种方法【转载】
  9. 不是python文件处理seek()方法的参数是_python文件操作seek()偏移量,读取指正到指定位置操作...
  10. LeetCode 1834. 单线程 CPU(排序 + 优先队列)
  11. ASI进行POST网络请求
  12. linux下mknod命令介绍
  13. 虚拟机安装日志服务器,rsyslog日志服务器搭建
  14. 怎么查看当前登录的svn账号_在linux下查看svn对应的账号和密码
  15. 042 实例10-文本词频统计
  16. 计算机应用的核心能力,应用能力为核心的高职计算机应用分析
  17. HDU 4825 (01字典树)
  18. Android中Xposed框架篇---修改系统位置信息实现自身隐藏功能
  19. 服务器外置硬盘的分区格式,MacBook下移动硬盘分区配置几种格式解决方案
  20. 《智慧政府之路:大数据、云计算、物联网架构应用》

热门文章

  1. FFT运算的加深理解——频谱泄露
  2. 南开100题c语言计算机二级,3月计算机二级C语言题库南开100题.pdf
  3. 使用Mapviz、中科图新 进行机器人GPS轨迹卫星地图绘制
  4. 画法几何,工程制图基础.....多角度平面投影图推断立体空间结构,实际距离的判别等
  5. ecshop批量打印快递单
  6. 12款高质量的免费 HTML 网站模板下载
  7. 后台开发笔记-在服务器上运行java后台项目
  8. 解决 VS2008安装过程更改路径的问题
  9. android packages/apps 加入工程,深入安卓Package Manager和Package Installer
  10. SQLServer 2000 Service Pack 4 简体中文版