"Too many output arguments" error while working with the fmincon solver inside the optimization tool.
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Yagiz Dereboy
el 11 de Sept. de 2021
Comentada: Yagiz Dereboy
el 12 de Sept. de 2021
Explenation after the code.
% Set nondefault solver options
options2 = optimoptions('fmincon','PlotFcn','optimplotfvalconstr');
% Solve
[solution,objectiveValue] = fmincon(@objectiveFcn,w,[],[],[],[],[],[],...
@objectiveFcn,options2);
% Clear variables
clearvars options2
These are at default.
function f = objectiveFcn(optimInput)
x = optimInput(1:8124);
y = optimInput(8125:end);
f = -sum(1./(1+exp(-x))*1./(1+exp(-y')),'all');
end
function [c,ceq] = constraintFcn(optimInput)
x = optimInput(1:8124);
y = optimInput(8125:end);
c = sum(1./(1+exp(-x))*1./(1+exp(-y')).*(1.-aa),'all') - 0.1;
ceq = [];
end
vector w is passed for optimInput which is a 8243*1 vector. aa variable inside the constraint is a 8124*119 matrix. I am getting the error too many output arguments. How should I model something like this?
2 comentarios
Jan
el 11 de Sept. de 2021
Please post the complete error message, not just a part of it. Then the reades can see, where the problem occurs. We cannot run your code because w is missing.
Respuesta aceptada
Jan
el 11 de Sept. de 2021
A bold guess:
[solution,objectiveValue] = fmincon(@objectiveFcn,w,[],[],[],[],[],[],...
@objectiveFcn,options2);
% ^^^^^^^^^^^^^ This should be "constraintFcn" ?!
0 comentarios
Más respuestas (0)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!