optimization problem exceeding high limit

rtx=2;
objective= @(a) a;
options=optimoptions('fmincon', 'Display','iter','MaxFunctionEvaluations',30000);
a0=0.8;
A = [];
b = [];
Aeq = [];
beq = [];
lb=0.5;
ub=1;
nonlincon=@nl2 ;
a=fmincon(objective,a0,A,b,Aeq,beq,lb,ub,nonlincon,options)
fmincon stopped because it exceeded the function evaluation limit,
options.MaxFunctionEvaluations = 3.000000e+04.
i have the following optimization probelm and the result is as follows. i tried to inrease the MaxFunctionEvaluation and decrease StepTolerance but it always exceed the limit. Any ideas how to fix such problem to obtain an optimal value?

Answers (1)

As nl2 function definition is not known I am unable to reproduce the error. With the provided information, Setting lower bond equal to upper bound might be causing the error.
If you set a lower bound equal to an upper bound, iterations can violate constraints. You can refer to this

Categories

Asked:

on 9 Apr 2020

Answered:

on 15 Apr 2020

Community Treasure Hunt

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

Start Hunting!