采用yalmip求解非线性凸优化问题时出现以下报错:
错误使用 solvesdp_multiple (line 8)
Parts of your matrix objective is not linear (multiple solutions can currently only be obtained for linear objectives)
出错 solvesdp (line 17)
diagnostic = solvesdp_multiple(varargin{:});
出错 optimize (line 31)
[varargout{1:nargout}] = solvesdp(varargin{:});
出错 IEEE33 (line 126)
optimize(C, objective);
其中优化目标为:
%% 4.设目标函数
objective = 0.5*sum((Vi-1).*(Vi-1).*100)+ 0.5*sum(sum(I.*(R*ones(1,T)))); %电压偏差+子配电网有功损耗
toc%建模时间
%% 5.设求解器
ops = sdpsettings('solver','fmincon','verbose',1);%设置求解器,solver为参数名,ipopt为求解器
result = optimize(C, objective, ops);
objective = value(objective);
yalmip不是可以解决非线性凸优化问题吗,为什么还会报错需要线性化,如何进行修改