Changing the default tolerance for fmincon
Mostra commenti meno recenti
I am doing a computation using fmincon, and it says tolfun=1e-06 and options.TolCon = 1e-06. I am trying to have a tolerance of 10^-20 instead.
I guess my question is,how do I change the tolerance for fmincon?
Risposta accettata
Più risposte (2)
Brian B
il 16 Feb 2013
1 voto
2 Commenti
Ehsan Khorsandnejad
il 5 Apr 2018
When I use this code fmincon(....., options), I get the following error:
Error using optimfcnchk (line 91) NONLCON must be a function.
Error in fmincon (line 410) confcn = optimfcnchk(NONLCON,'fmincon',length(varargin),funValCheck,flags.gradconst,false,true);
Error in Fitting_EIS_RQ_RC (line 39) x_final = fmincon(f,x_initial,[],[],[],[],[0,0,0,0,0,0,0,0],[10^4,10^4,10^4,10^4,10^4,10^4,10^4,1], options);
Steven Lord
il 5 Apr 2018
You missed specifying [] for the nonlcon input between ub and the options structure.
x_final = fmincon(f,x_initial,... % fun, x0
[],[],[],[], ... % A, b, Aeq, beq
[0,0,0,0,0,0,0,0], ... % lb
[10^4,10^4,10^4,10^4,10^4,10^4,10^4,1], ... % ub
options); % this should be nonlcon, options
Make that last line:
[], options);
Alan Weiss
il 19 Feb 2013
Modificato: John Kelly
il 3 Giu 2014
1 voto
Seting a tolerance of 1e-20 is the same as disabling that tolerance, or setting it to 0. See the documentation of tolerances.
Alan Weiss
MATLAB mathematical toolbox documentation
Categorie
Scopri di più su Solver Outputs and Iterative Display in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!