function F = Fun(x);
F = [-3*x(1)-x(2),
-x(1)-2*x(2)];
a = [1 1
1 0
0 1];
b = [7,5,5];
c1 = [-3 -1];
c2 = [-1 -2];
[x1,g1] = linprog(c1,a,b,[],[],zeros(2,1));
[x2,g2] = linprog(c2,a,b,[],[],zeros(2,1));
g3 = [g1;g2];
[x,fval] = fgoalattain('Fun',rand(2,1),g3,abs(g3),a,b,[],[],zeros(2,1))
想解决的问题如下:
将代码改为如下形式即可:
a = [1 1
1 0
0 1];
b = [7,5,5];
c1 = [-3 -1];
c2 = [-1 -2];
[x1,g1] = linprog(c1,a,b,[],[],zeros(2,1));
[x2,g2] = linprog(c2,a,b,[],[],zeros(2,1));
g3 = [g1;g2];
[x,fval]=fgoalattain(@(x)Fun(x),rand(2,1),g3,abs(g3),a,b,[],[],zeros(2,1))
function F=Fun(x)
F = [-3*x(1)-x(2),
-x(1)-2*x(2)];
end
计算结果:
x =
3.7561
3.2439
fval =
-14.5122
-10.2439
你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,目前超出我们的服务范围,暂时无法为您解答。
首次提问人员可免费体验一次有问必答服务。目前首次提问的问题服务范围为:编程语言、Java开发、python、数据库、前端开发 领域专业技术问题,为您提供问题的解决思路和指导。
不提供源码代写、项目文档代写、论文代写、作业题目代写、安装包资源发送或安装、软件使用指导等服务。
我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。