fmincon optimization not responding to options settings

3 次查看(过去 30 天)
I am performing an optimization where every objective function evaluation involves a time-consuming algorithm. To see whether things are working properly, I thought I'd set the 'MaxFunctionEvaluations' option to a low value. But it seems the optimization is not responding to whatever options I set whatsoever.
My options and fmincon call are:
options = optimoptions('fmincon','Display','iter','Algorithm','sqp','MaxFunctionEvaluations',4,'StepTolerance',1e-2); % 4 eval for tests
[x, fval, exitflag, output, lambda] = fmincon(@(x)this.jumphigh_obj(x),x0,A,b,Aeq,beq,lb,ub,@(x)this.jumpcon(x),options);
I feel like I am missing something basic. I appreciate any help.

采纳的回答

Alan Weiss
Alan Weiss 2017-11-7
It is possible that you have more than 4 dimensions in the problem. No matter what you set for MaxFunctionEvaluations, fmincon will take at least N + 1 function evaluations in order to estimate a gradient, where N is the number of problem variables.
Alan Weiss
MATLAB mathematical toolbox documentation
  6 个评论
Roel
Roel 2017-11-13
Thanks, I have drastically downscaled my number of variables and it works now. A small change in a variable yielded no change in the outcome of the objective function. With less variables actual iterations occur.
Alan Weiss
Alan Weiss 2017-11-13
Thanks for letting us know what happened. You might be interested in this documentation (I guess now that you are optimizing a simulation, but I was not aware of that before).
Alan Weiss
MATLAB mathematical toolbox documentation

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Solver Outputs and Iterative Display 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by