Question about nlminb function
On Thu, 2 Apr 2020 10:26:07 +0000
"Lim, Hwanggyu" <hlim at gmac.com> wrote:
when n-1th estimates and nth estimates have absolute differences less than 0.001 for all three parameters, the iteration must stop
I am using nlminb optimization function
nlminb function uses the PORT library. According to [1], the closest thing PORT has to what you want is the notion of X-convergence, namely, stopping when max(scale * abs(x - xstar))/max(scale * abs(x + xstar)) is considered to be below control$x.tol (with xstar being supposed local minimiser and scale being all ones by default). Using it as an absolute stopping criterion in x requires knowledge of at least order of magnitude of xstar, though, so it might not be feasible. Note that ?nlminb says in the description that it is there "for historical compatibility." The nloptr package offers an xtol_abs option [2] that results in the behaviour you want.
Best regards, Ivan [1] David M. Gay, Usage Summary for Selected Optimization Routines. <http://web.archive.org/web/20070508140716/http://netlib.bell-labs.com/cm/cs/cstr/153.pdf> [2] https://nlopt.readthedocs.io/en/latest/NLopt_Reference/#stopping-criteria