How to solve the following error : "Maximum number of function evaluations exceeded; increase OPTIONS.MaxFunEvals".

6 visualizaciones (últimos 30 días)
I need to maximize the objective function y = exp(x) using 'fmincon' and a -ve sign in the objective function.I have used upper & lower bounds of x as 300 and 400. When I run with y=exp(x), I get the error: Maximum number of function evaluations exceeded;
increase OPTIONS.MaxFunEvals.
When I run for y = exp(-x), I get the error:
Optimization terminated: first-order optimality measure less than options.TolFun and maximum constraint violation is less
than options.TolCon.
Active inequalities (to within options.TolCon = 1e-006):
lower upper ineqlin ineqnonlin
1
The code is :
function xout = s1
%---------------------------optimization-------------------
x0 = [300]; % Just some Initial Condition
ub = [400]; % Upper bounds
lb = [300]; % Lower bounds
F = @(x) obj(x);
xout = fmincon(F,x0,[],[],[],[],lb,ub); %optimization operator
function obj = obj(x)
y = exp(x)
obj = -y
end
end
Please help me as to how I can remove this error. Thanks.

Respuesta aceptada

Walter Roberson
Walter Roberson el 17 de Dic. de 2012
options = struct('MaxFunEvals', 2000);
xout = fmincon(F, x0, [], [], [], [], lb, ub, options);
  4 comentarios
Nitin Samuel
Nitin Samuel el 17 de Dic. de 2012
Thanks Mr.Roberson. I tried and it shows following error:
Maximum number of iterations exceeded; increase OPTIONS.MaxIter.
I have added "options = struct('MaxIter',2000);"
Still it shows the same...

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Get Started with Optimization Toolbox en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by