Matlab线性规划实例
线性规划习题
之前的线性规划的练习题
- 题目
解答
f = [3 -1 -1];
A = [1 -2 1;4 -1 -2];
b = [11,-3]';
Aeq = [-2 0 1];
beq = [1];
[x,y] = linprog(-f,A,b,Aeq,beq,zeros(3,1));
z = y这里是一个到线性规划的转换,要做一个变量的变换,把每一个绝对值x都替换成一个u和v的表示变量
如:u = (x + |x|) / 2 v = (|x| - x) / 2
代码:
clc,clear
c = 1:4;
c = [c,c];
aeq = [1 -1 -1 1;1 -1 1 -3;1 -1 -2 3];
Aeq = [aeq,-aeq];
beq = [0 1 -1/2];
[x,y] = linprog(c,[],[],Aeq,beq,zeros(8,1))
x = x(1:4)-x(5:8)
这里可以看到:
将|x|转换为u和v之后,进行一个8个向量的线性规划,修改Aeq和f的值,但是这里的beq不需要8个向量这里根据三种产品对应的六种工序之间可以分类。原因在于每一种工序的价格和约束不同,基于此,可以发现,第一种产品有5个参数,第二种产品3个参数,但是对于第三种产品而言,题目中要求必须完成A、B这2道工序,因此第三个只有一个参数。
a = [0.25 0.35 0.50];
b = [1.25 2.00 2.80];
c = [6000 10000 4000 7000 4000];
d = [300 321 250 783 200];
f = [b(1)-a(1)-d(1)/c(1)*5,b(1)-a(1)-d(2)/c(2)*7,-d(3)/c(3)*6,-d(4)/c(4)*4,-d(5)/c(5)*7,-d(1)/c(1)*10,-d(2)/c(2)*9,b(2)-a(2)-d(3)/c(3)*8,b(3)-a(3)-d(2)/c(2)*12-d(4)/c(4)*11];
Aeq = [5 0 0 0 0 10 0 0 0;0 7 0 0 0 0 9 0 12;0 0 6 0 0 0 0 8 0;0 0 0 4 0 0 0 0 11;0 0 0 0 7 0 0 0 0];
beq = c;
A = [1 1 -1 -1 -1 0 0 0 0;0 0 0 0 0 1 1 -1 0];
b = [0 0];
ub = zeros(9,1);
[x,y] = intlinprog(-f,ones(9,1),Aeq,beq,A,b,ub);
z = -y
x这里的和第三题类似,分成了3×4=12种情况
c = [3100;3800;3500;2850];
c = c*ones(1,3);
c = c(:);
a1 = zeros(4,12);
for i = 1:4
a1(i,i:4:12) = 1;
end
b1 = [18;15;23;12];
a2 = zeros(3,12);
for i = 1:3
a2(i,4*i-3:4*i) = 1;
end
b2 = [10 16 8]';
bb = [480;650;580;390];
a3 = zeros(3,12);
for j = 1:3
a3(j,4*j-3:4*j) = bb;
end
b3 = [6800 8700 5300]';
a = [a1;a2;a3];
b = [b1;b2;b3];
aeq = zeros(2,12);
aeq(1,1:4) = 1/10;
aeq(1,5:8) = -1/16;
aeq(2,5:8) = 1/16;
aeq(2,9:12) = -1/8;
beq = zeros(2,1);
[x,y] = linprog(-c,a,b,aeq,beq,zeros(12,1));
y = -y
总结
对于单纯的线性规划问题来说的话,lingo其实更加好用,而且对于一些数据量较为大的情况,比如超过lingo默认的32M内存的情况,这个时候可以修改lingo的设置,但是Matlab无法进行求解。
原文地址:http://blog.csdn.net/qq_34861102/article/details/76736599
Matlab线性规划实例相关推荐
- MATLAB 线性规划实例应用
线性规划 线性规划函数 功能:求解线性规划问题 语法 x = linprog(f,A,b):求解问题 min fx,约束条件为 Ax <= b x = linprog(f,A,b,Aeq,beq ...
- Matlab应用于配送linprog,Matlab应用实例(4)—linprog(02高级)
续->Matlab应用实例(4)-linprog(01基础) [例5]厂址选择问题 考虑A.B.C三地,每地都出产一定数量的原料,也消耗一定数量的产品(见表9-15).已知制成每吨产品需3吨原料 ...
- 秦九韶算法matlab程序,数值分析matlab程序实例.doc
数值分析matlab程序实例 1,秦九韶算法,求出P(x=3)=2+4x+5x^2+2x^3的值 clear?all; x=3; n=3; a(1)=2;a(2)=4;a(3)=5;a(4)=2 v( ...
- matlab项目实例教程,matlab简明实例教程.doc
matlab简明实例教程.doc 南京航空航天大学王正盛1MATLAB数学工具软件实例简明教程王正盛编写南京航空航天大学南京航空航天大学王正盛2第一章MATLAB简介MALAB译于矩阵实验室MATri ...
- matlab简单程序实例视频,matlab编程实例100例.docx
matlab编程实例100例 1-32是:图形应用篇33-66是:界面设计篇67-84是:图形处理篇85-100是:数值分析篇实例1:三角函数曲线(1)function shili01h0=figur ...
- Python数模笔记-PuLP库(3)线性规划实例
本节以一个实际数学建模案例,讲解 PuLP 求解线性规划问题的建模与编程. 1.问题描述 某厂生产甲乙两种饮料,每百箱甲饮料需用原料6千克.工人10名,获利10万元:每百箱乙饮料需用原料5千克.工人2 ...
- matlab数值模拟的例子,第12章 MATLAB 数值模拟实例解析课件
第12章 MATLAB 数值模拟实例解析课件 采用比母材金属熔点低的金属材料作钎料,将焊件和钎料加热到高于钎料熔点.低于母材溶化温度,利用液态钎料润湿母材 采用比母材金属熔点低的金属材料作钎料,将焊件 ...
- matlab 线性规划求最大值,MATLAB求解线性规划(含整数规划和01规划)问题.pdf
MATLAB求解线性规划(含整数规划和01规划)问题 MATLAB 求解线性规划(含整数规划和0-1 规划)问题 线性规划是数学规划中的一类最简单规划问题,常见的线性规划是一个有约 束的,变量范围为有 ...
- matlab仿真的实例,MATLAB仿真实例
<MATLAB仿真实例>由会员分享,可在线阅读,更多相关<MATLAB仿真实例(51页珍藏版)>请在人人文库网上搜索. 1.实际应用,MATLAB/Simulink,的推出得到 ...
- Matlab数值分析实例:三次样条插值
Matlab数值分析实例:三次样条插值 任务要求 分析 代码实现 总结 任务要求 湖水在夏天会出现分层现象,接近湖面温度较高,越往下温度变低.这种上热下冷的现象影响了水的对流和混合过程,使得下层水域缺 ...
最新文章
- Plotly绘制树状热力图(treemap)【Plotly实例教程】
- php的浏览历史怎么做,php浏览历史记录的方法
- Keras(part1)--Keras简介与安装
- SqlServer自定义排序
- centos7加入第二块网卡无法识别
- windows获取系统补丁+匿名管道
- linux多进程编程(一)
- kafka 可视化工具_Kafka集群在马蜂窝大数据平台的优化与应用扩展
- webpack4.0.1安装问题及解决方法
- 典型的异步服务器端套接字构建
- 镀铬亮条怎么修复_「日系之光」曾经的亚洲C级车排面,十二代丰田皇冠全面修复日记...
- mysql用户登录和第三方登录_mysql 用户表结构设计,第三方登录
- js中break和continue的区别
- 使用jquery控制只能输入数字,并且关闭输入法
- kafka启动异常InconsistentClusterIdException
- 005_wz_bbk_-v详细信息,-c生成中间文件,链接次序
- 常规正则表达式练习,一起来开心的掉发吧
- 组态王--软件安装工程建立
- Matlab之图像变换技术(十二)
- 使用CSS实现多种Noise噪点效果