What does Tolcon, Tolfun and Diffminchange do?
8 views (last 30 days)
Show older comments
I have read a few questions and comments and I am still quite confused as to what exactly is the effect of tolcon, tolfun and diffminchange on my optimisation.
Say I have a variable t_2 such that it must always be greater (but not too much than) t_1 and this gives
C=t_1-t_2;
For the sake of argument, my t_1 is defined to be about 0.135. For a tolcon of say 0.01, what is the tolerance of the constraint of t_2? between 0.135 to 0.145 and anything outside this is considered to be unfeasible? However, I did notice that that sometimes my t_2 becomes unexplainably high (i.e 0.15 to 0.16).
Similar is the same to be said of tolfun? The objective function is to minimise D where D is expected to be in the magnitude of 0.00823
What then exactly is diffminchange? is it the stepsize for fmincon (the function my script is using) to iterate and find the optimum solution that satisfies tolfun and tolcon? By setting a smaller diffminchange, will fmincon be less susceptible to finding the optimal point more slowly?
Regards, Ben
0 Comments
Accepted Answer
Alan Weiss
on 29 Feb 2016
You might check the documentation of fmincon options. There is more information in the Tolerances and Stopping Criteria documentation.
DiffMinChange is an option for controlling finite difference steps the solver takes to estimate derivatives. It does not directly relate to the step size that the solver takes in its iterations. Usually it is safe to ignore this option, but if you are optimizing a simulation or ODE, consult Optimizaing a Simulation or ODE.
Good luck,
Alan Weiss
MATLAB mathematical toolbox documentation
4 Comments
Alan Weiss
on 2 Mar 2016
I am sorry, but I am afraid that we are not communicating well. I asked if you had tried to use a linear inequality constraint. It seems as if you are continuing to use a nonlinear inequality constraint.
Is there some reason that you did not try to use a linear inequality constraint?
You brought up DiffMinChange again. Did you read what I told you about ignoring DiffMinChange?
I am sorry that we are having trouble communicating. If you continue to have trouble, perhaps you should start a new question, because people might not look for a new question in a question that has an accepted answer.
Good luck,
Alan Weiss
MATLAB mathematical toolbox documentation
More Answers (0)
See Also
Categories
Find more on Systems of Nonlinear Equations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!