[SciPy-dev] optimize.fmin: xtol/ftol
Michael.J.Culbertson at wheaton.edu
Thu Sep 2 15:42:28 CDT 2004
I think there is an error in the termination of the Simplex optimization
algorithm implemented by scipy.optimize.fmin(). According to the doc
string, xtol and ftol are _relative_ values:
xtol -- acceptable relative error in xopt for convergence.
ftol -- acceptable relative error in func(xopt) for convergence.
Yet, as I read the termination condition:
if (max(Num.ravel(abs(sim[1:]-sim))) <= xtol \
and max(abs(fsim-fsim[1:])) <= ftol):
the values are taken as absolute quantities. Shouldn't the condition
include some division of the difference by one of the values or a
multiplication of the relative tolerances by one of the values for a
proper relative comparison? Or, have I misinterpreted the statements
More information about the Scipy-dev