% 清除工作区
clear;clc;close all;
% 创建决策变量
x = sdpvar(1,2);
y=[0,0];
% 添加约束条件
constr1=x(1)+x(2)>= 2;
constr2=x(2)-x(1)<=1;
constr3=x(1)<=1;
constr4=x>=y;
C = [ constr1
constr2
constr3
constr4];
% 配置
ops = sdpsettings('verbose',0,'solver','cplex');
% 目标函数
z = -(x(1)+2*x(2))/(2*x(1)+x(2)); % 注意这是求解最大值
% z = x(1)+2*x(2);
% 求解
reuslt = optimize(C,z);
if reuslt.problem == 0 % problem =0 代表求解成功
value(x)
-value(z);% 反转
else
disp('求解出错');
end
一个很简单的规划问题 当目标函数z取原式的时候可以求解,换成下面注释掉的简单函数反而求解失败,请问这是什么原因。