码迷,mamicode.com
首页 > 其他好文 > 详细

线性规划

时间:2018-01-16 14:04:50      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:image   lin   info   顺序   review   ima   and   fence   最优   

线性规划

线性规划问题

MATLAB的标准形式:

 技术分享图片

 

举个栗子吧:

技术分享图片

f = [-2;-3;5];
a = [-2 5 -1;1 3 1];
b = [-10;12];
aeq = [1 1 1];
beq = 7;
?
[x,y] = linprog(f,a,b,aeq,beq,zeros(3,1));
y = -y;
?
% 最优解 
x =
    6.4286
    0.5714
    0.0000
y =
   14.5714

 技术分享图片

 

 

线性规划变形

(带上绝对值咯):

 技术分享图片

 

 

的确很复杂,不能直接用MATLAB直接计算(Lingo完全OK),需要对其进行数学变换:

理论:对于任意的?,可以写成:

? 技术分享图片

原来的目标函数就变成了:

 技术分享图片

不等式就变成了:

 
 技术分享图片

嘿嘿,现在就可以建立矩阵了,举个栗子P4:


clc,clear
c = 1:4;
c = [c,c];
a = [1 -1 -1 1
    1 -1 1 -3
    1 -1 -2 3];
a = [a,-a];
b = [-2 -1 -1/2];
?
[y,z] = linprog(c,a,b,[],[],zeros(4,2));
x = y(1:4)-y(5:end);

 

是不是和书上的程序有点不同,对的,我是完全按照这个式子写的,对于原来的目标函数写一列,但是对于矩阵乘法来说,不是看有多少列吗? 刚好这里是? 扩充矩阵? ,同理? 也是扩充为?

但是求出来的 y 很伤心却还是1维向量,却不是我想要的? 矩阵,转换一下。

当然也可以像书上的那样,令u,v 的顺序,只要不等式还是原来的不等式就行,然后转为你需要的答案即可。

 

 

线性规划

标签:image   lin   info   顺序   review   ima   and   fence   最优   

原文地址:https://www.cnblogs.com/TreeDream/p/8295771.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!