【Matlab】混合整数规划
混合整数规划
- 官方文档
- 语法
- 实例1
- 实例2
官方文档
链接
语法
x = intlinprog(f, intcon,A,b)
x = intlinprog(f , intcon,A,b,Aeq, beq)
X=intlinprog(f , intcon, A, b, Aeq, beq,1b,ub)
x = intlinprog(f, intcon,A, b,Aeq, beq, lb, ub,x0)
x = intlinprog(f, intcon, A, b,Aeq, beq,lb, ub, x0, options)
x = intlinprog(problem)
[x, fval, exitflag,output] = intlinprog(__)
f、x、intcon、lb、beq、Ib和ub是向量,A和Aeq是矩阵
minxfTxsubject to {x(intcon )are integers A⋅x≤bAeq x=beqlb≤x≤ub\min _{x} f^{T} x \text { subject to }\left\{\begin{array}{l} x(\text { intcon }) \text { are integers } \\ A \cdot x \leq b \\ \text { Aeq } x=b e q \\ l b \leq x \leq u b \end{array}\right. xminfTx subject to ⎩⎪⎪⎨⎪⎪⎧x( intcon ) are integers A⋅x≤b Aeq x=beqlb≤x≤ub
x = intlinprog(f,intcon,A,b) 最小化 f'*x,使得 intcon 中的 x 分量是整数,且 A*x ≤ b。x = intlinprog(f,intcon,A,b,Aeq,beq) 求解上述问题,同时还满足等式约束 Aeq*x = beq。如果不存在不等式,请设置 A = [] 和 b = []。x = intlinprog(f,intcon,A,b,Aeq,beq,lb,ub) 定义设计变量 x 的一组下界和上界,使解始终在 lb ≤ x ≤ ub 范围内。如果不存在等式,请设置 Aeq = [] 和 beq = []。x = intlinprog(f,intcon,A,b,Aeq,beq,lb,ub,x0) 使用初始可行点 x0 进行优化。如果不存在边界,请设置 lb = [] 和 ub = []。x = intlinprog(f,intcon,A,b,Aeq,beq,lb,ub,x0,options) 使用 options 中指定的优化选项执行最小化。使用 optimoptions 可设置这些选项。如果不存在初始点,请设置 x0 = []。
f-系数向量。intcon -整数约束组成的向量,就说受到约束的整数个数。A-线性不等式约束矩阵。b-线性不等式约束向量。Aeq -线性等式约束矩阵。beq -线性等式约束向量。Ib-下界。ub-上界。x0 -初始点。
实例1
minx8x1+x2subject to {x2is an integer x1+2x2≥−14−4x1−x2≤−332x1+x2≤20\min _{x} 8x_1+x_2\text { subject to }\left\{\begin{array}{l} x_2 \text { is an integer } \\ x_1+2x_2\geq-14\\ -4x_1-x_2\leq -33\\ 2x_1+x_2 \leq 20 \end{array}\right. xmin8x1+x2 subject to ⎩⎪⎪⎨⎪⎪⎧x2 is an integer x1+2x2≥−14−4x1−x2≤−332x1+x2≤20
z=8x1+x2z=8x_1+x_2z=8x1+x2受x1和x2x_1和x_2x1和x2限制。
代码构建和之前的类似
f = [8;1];%确定目标函数系数
intcon = 2;%理解为两个受x受到整数限制
A = [-1,-2;-4,-1;2,1];%构造不不等式左边系数矩阵
b = [14;-33;20];%构造不等式右边矩阵
x = intlinprog(f,intcon,A,b)
实例2
minx(−3x1−2x2−x3)subject to {x3binary x1,x2≥0−x1+x2+x3≤74x1+2x2+x3=20\min _{x} \left( {-3x_1-2x_2-x_3} \right)\text { subject to }\left\{\begin{array}{l} x_3 \text { binary } \\ x_1,x_2\geq0\\ -x_1+x_2+x_3\leq7\\ 4x_1+2x_2+x_3 = 20 \end{array}\right. xmin(−3x1−2x2−x3) subject to ⎩⎪⎪⎨⎪⎪⎧x3 binary x1,x2≥0−x1+x2+x3≤74x1+2x2+x3=20
%案例二
clear all
clc
% 编写目标函数向量和由整数变量组成的向量。
f = [-3;-2;-1];
intcon = 3;
% 编写线性不等式约束。
A = [1,1,1];
b = 7;
% 编写线性等式约束。
Aeq = [4,2,1];
beq = 12;
% 编写边界约束。
lb = zeros(3,1);%等效于lb=[0;0;0]
ub = [Inf;Inf;1]; %强制x(3)为一个固定1
%调用intlinprog
x = intlinprog(f,intcon,A,b,Aeq,beq,lb,ub)
返回结果:
当x2=5,x3=1,x1=0x_2=5,x_3=1,x_1=0x2=5,x3=1,x1=0时,最值为−12-12−12
【Matlab】混合整数规划相关推荐
- matlab 整数规划工具箱,Matlab中的YALMIP工具箱 混合整数规划
YALMIP工具箱 混合整数规划 定义变量: sqdvar()实型 intvar()整型 binvar()0-1型 设定目标函数 : f=目标函数 设定限定条件: F=set(限定条件) 多个限定条件 ...
- 【遗传算法不求人】MATLAB轻代码玩转GA:0-1背包问题+混合整数规划
[遗传算法不求人]GA实时编辑优化器解决0-1背包问题+混合整数规划 课程简介 视频课程 问题描述 1.初始化,导入数据.设置变量 2.MATLAB语法表示-GA(全局优化器) 3.MATLAB语法表 ...
- MATLAB代码:基于混合整数规划的微网储能电池容量规划 关键词:储能配置 电池容量规划 微网 混合整数规划
MATLAB代码:基于混合整数规划的微网储能电池容量规划 关键词:储能配置 电池容量规划 微网 混合整数规划 关键词:储能配置 电池容量规划 微网 混合整数规划 参考文档:<基于全寿命周期成本的 ...
- matlab cplex 混合整数规划,Leapms + cplex解决 混合整数规划问题
Leapms + cplex解决 混合整数规划问题 O.概述 CPleX是一个神秘的求解器, 听说久了就想用, 但是直接用有些困难, 尤其入门困难. 对初学者来说Leapms是一个好的通道. 在Lea ...
- 混合非线性整数规划matlab,matlab学习——02整数规划(蒙特卡洛法,指派问题,混合整数规划)...
02整数规划 蒙特卡洛法(随机取样法) 编写文件mengte.m,目标函数f和约束向量g function[f,g]=mengte(x); f=x(1)^2+x(2)^2+3*x(3)^2+4*x(4 ...
- python 混合整数规划_matlab求解混合整数规划的困惑
请问谁用过CPLEX 之类的 求解混合整数规划(Mixed integer prgramming)的matlab插件 mex file 1.能给我传一个直接可用(好用)的么... 万分感谢 网上找了好 ...
- 整数规划matlab实例,整数规划matlab
整数规划matlabTag内容描述: 1.例已知非线性整数规划为max z=x12+x22+3x32+4x42+2x52-8x1-2x2-3x3-x4-2x5s.t.0xi99,i=1,2,5x1+x ...
- 主题:基于混合整数规划方法的微网电池储能容量优化配置
关键词:储能容量优化 储能配置 微网 编程语言:matlab 主题:基于混合整数规划方法的微网电池储能容量优化配置 主要内容: 本代码目的为实现微电网内电池容量的优化配置,目标函数为配置过程中整体的运 ...
- 主题:基于混合整数规划方法的微网电池储能容量优化配 关键词:储能容量优化 储能配置 微网
关键词:储能容量优化 储能配置 微网 编程语言:matlab 主题:基于混合整数规划方法的微网电池储能容量优化配置 主要内容: 本代码目的为实现微电网内电池容量的优化配置,目标函数为配置过程中整体的运 ...
最新文章
- 2022-2028年中国特高压电网行业深度调研及投资前景预测报告
- Captaris Workflow 6.0 EventService 执行效率低下的排除。
- RNN代码解释pytorch
- FPGA在其他领域的应用(二)
- java做的一个将中文转换成Unicode码的工具类【转载】做个标记,明天研究下
- 前端开发 常见的网页导航制作 0228
- Linux之cat命令
- 模拟(堆):USACO Jan11 瓶颈
- kmeans算法经典案例C语言,kmeans聚类算法以及使用案例
- JavaScript 打印星号三角形
- 【DP】【Burnside】【多项式】烷基计数
- 关于数据可视化图表的制作,你需要关注的30个小技巧
- 租用国内的云主机的话,选阿里云还是盛大云?
- 一文揭开ALBERT的神秘面纱
- 彻底解决烦人的win10更新
- 通信原理学习笔记:通信系统
- STM32c8t6串口+蓝牙控制PC13亮灭
- Java开发基础教学,如何让自己像打王者荣耀一样发了疯
- 微信小程序开发——cloudfunctions | 未指定环境
- 【014】基于Vue.js的移动端购物商城网站(含源码、课设报告)
热门文章
- 计算机桌面运维工作案例,【桌面云案例专题】桌面云 R5问题处理指导书(For 一线服务/运维/管理员)...
- Xcode13编译提示构建系统错误Legacy Build System
- matlab欧拉法原理,欧拉法函数
- 自己制作“EleksTubeIPS创意复古RGB拟辉光管时钟”分享《一》---(持续更新2021-12-17)
- Hadoop那些事儿(四)---MapReduce编程实例(基础)
- 【Linux成长之路】CentOS7中netstat命令详解
- Unity协程相关_学习笔记
- Blender插件-破碎爆炸火焰烟雾特效 KhaosUltimate Explosion Destruction
- qsql 关联_QSqlDatabase和QSqlQuery的正确方法是什么?
- 基于javaee的酒店预订管理系统设计与实现、ssh框架+mysql数据库