Changing the default tolerance for fmincon

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?

 采纳的回答

options = optimset('TolCol', 1e-6);
fmincon(....., options)

2 个评论

Thanks! It worked perfect
This answer is no longer valid in 2020, with R2020a version.

请先登录,再进行评论。

更多回答(2 个)

Brian B
Brian B 2013-2-16
You can pass an options structure to fmincon. You create the structure using optimset.

2 个评论

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);
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
Alan Weiss 2013-2-19
编辑:John Kelly 2014-6-3
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

类别

在 帮助中心 和 File Exchange 中查找有关 Problem-Based Optimization Setup 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by