MATLAB优化问题

例1:求解线性规划问题:maxf=2x1+5x2s.tx1<=4;x2<=3;x1+2*x2<=8;x1>=0;x2>=0________________________... 例1:求解线性规划问题:

max f=2x1+5x2
s.t x1<=4; x2<=3; x1+2*x2<=8; x1>=0; x2>=0
____________________________________________________________
程序:

f=[-2 -5];

A=[1 0;0 1;1 2];

b=[4;3;8];

[x,fval]=linprog(f,A,b)

f=fval*(-1)

结果: x = 2

3

fval = -19.0000

maxf = 19
_______________________________________________________
程序:
f=[-2 -5];

A=[1 0;0 1;1 2];

b=[4;3;8];
ub=[0;0]
[x,fval]=linprog(f,A,b,[],[],[],ub)

f=fval*(-1)
结果:
x =

1.0e-013 *

0
-0.2842

fval =

1.4211e-013

f =

-1.4211e-013
____________________________________________________
我感觉两个程序应该出一样的的结果,为什么会不一样呢,那个对啊,我是初学者,请大家指点一下
第二个约束条件是不是更充分啊
展开
 我来答
天上观人间
2010-09-09 · TA获得超过6042个赞
知道小有建树答主
回答量:997
采纳率:0%
帮助的人:1644万
展开全部
MATLAB是一种解释性语言,从运行效率来说肯定远不如其他基本语言。但还是有些方法可以提高运行速度的:
1,MATLAB擅长于矩阵运算,但并不适用于循环,能不用循环的地方尽量用矩阵运算代替;
2,对于大维度的矩阵,要预先确定它的维度,比如用zeros(a,b,c)预先定义好,这样每次给矩阵赋值的时候就不用改变维度了,对运算速度的提高很明显,这点你可以用MATLAB自带的tic和toc命令测试。
3.对于多重循环的将长的循环放在内循环。还有对有相似功能的命令的选择也对速度有影响。
如果对于计算量特别大的程序,用MATLAB是不怎么合适的哦,你可以把计算部分用其他语言,比如FORTRAN来实现。
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
书宬
2010-08-27 · TA获得超过7851个赞
知道大有可为答主
回答量:2125
采纳率:75%
帮助的人:3330万
展开全部
约束条件都不一样,结果能一样吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
东哥KIeOK
2010-08-27
知道答主
回答量:10
采纳率:0%
帮助的人:0
展开全部
第二个约束 好一点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式