matlab中求解线性规划最优解的问题 20
例如:F(a,b)=|0.3a+0.57b|+|0.23b-0.376b|,其中a+b=1求函数F(a,b)取最小值时a,b的值,怎样用matlab计算求解,求各位大侠指...
例如:F(a,b)=|0.3a+0.57b|+|0.23b-0.376b|,其中a+b=1
求函数F(a,b)取最小值时a,b的值,
怎样用matlab计算求解,求各位大侠指导!!
F(a,b)=|0.3a+0.57b|+|0.23a-0.376b|,其中a+b=1
a>=0;b>=0 展开
求函数F(a,b)取最小值时a,b的值,
怎样用matlab计算求解,求各位大侠指导!!
F(a,b)=|0.3a+0.57b|+|0.23a-0.376b|,其中a+b=1
a>=0;b>=0 展开
2个回答
展开全部
用这个程序:
clear all;clc
F=@(a)abs(0.3*a+0.57*(1-a))+abs(0.23*a-0.376*(1-a));
[a,fval,exitflag]=fminbnd(F,0,1e+7);
a
b=1-a
fval
运行后可见结果。这里用0<=a<=10的7次方来替代a>=0,因为a需要有个上界。但是增加这个上界不改变收敛的结果,所以这个上界并不影响最优解的取值。
clear all;clc
F=@(a)abs(0.3*a+0.57*(1-a))+abs(0.23*a-0.376*(1-a));
[a,fval,exitflag]=fminbnd(F,0,1e+7);
a
b=1-a
fval
运行后可见结果。这里用0<=a<=10的7次方来替代a>=0,因为a需要有个上界。但是增加这个上界不改变收敛的结果,所以这个上界并不影响最优解的取值。
更多追问追答
追问
a+b=1
a>=0;b>=0
说明a的上限为1,b也是如此
其中exitflag=1,说明了什么?
追答
恩,我没考虑到,a的上限应该改成1。
exitflag=1表示这个函数最值在0<=a<=1中是唯一的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |