Objective and constraint function evolution count in fmincon
Afficher commentaires plus anciens
How to find number of objective and constraint function , gradient, hessian count in fmincon using interior point method?
Réponses (1)
Matt J
le 14 Sep 2017
0 votes
The number of function evaluations and number of iterations is returned in fmincon's 4th output argument. The number of Hessian and gradient evaluations should equal the number of iterations.
4 commentaires
Md Abu Talhamainuddin Ansary
le 15 Sep 2017
I see. Well, you can always use persistent variables to count the calls to the constraints (or whatever function). The following, for example, will allow your nonlcon function to return the number of calls when only 1 output argument is requested, but operate normally the rest of the time.
function varargout=nonlcon(...)
persistent count
if isempty(count), count=0; end
count=count+1;
if nargin==1
varargout={count}; return
else
ceq=...
c=...
varargout={c,ceq};
end
end
Md Abu Talhamainuddin Ansary
le 18 Sep 2017
Matt J
le 18 Sep 2017
function varargout=nonlcon(x)
persistent count
if isempty(count), count=0; end
count=count+1;
if nargin==1
varargout={count}; return
else
ceq=[];
c=norm(x)^2-225;
varargout={c,ceq};
end
end
Catégories
En savoir plus sur Write Constraints dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!