Dear all,
I want to maximize a function, where the univariate unknown, x, with respect to which the maximization takes place is bound between -1 and 1. This is the only constraint. So, I use this
[xx,fval,exitflag,output,lambda,grad,HH]=fmincon('function',x0,... [],[],[],[],-1,1,[], options);
The function is complicated which means that I can not solve the gradient or Hessian anallytically
However, I am not sure how to set up the 'options' part.
I thought of something like
options=optimset('LargeScale','off','display','off','TolFun',0.0001,'TolX',0.0001,... 'GradObj','off', 'Hessian','off','DerivativeCheck','off');
or
options = optimoptions('fmincon','Display','off','Algorithm','sqp');
Is there a more correct set up for the 'options'?
When I use the fminunc:
options=optimset('LargeScale','off','display','off','TolFun',0.0001,'TolX',0.0001,... 'GradObj','off', 'Hessian','off','DerivativeCheck','off');[xx,fval,exitflag,output,G_sum,HH]=fminunc('function',x0,options);
I get better results but sometimes the algorithm stops and throws me the following warning
Error using roots (line 27)Input to ROOTS must not contain NaN or Inf. Error in lineSearch Error in lineSearch Error in lineSearch Error in lineSearch Error in fminusub (line 189) lineSearch(funfcn,x,dir,f,dirDerivative, ... Error in fminunc (line 457) [x,FVAL,GRAD,HESSIAN,EXITFLAG,OUTPUT] = fminusub(funfcn,x, ... Error in unified_2 (line 92) [xx,fval,exitflag,output,G_sum,HH]=fminunc('function',x0,options,...
Thanks
Best Answer