rrvglm.optim.control: Control Function for rrvglm() Calling optim()

View source: R/family.rrr.R

rrvglm.optim.controlR Documentation

Control Function for rrvglm() Calling optim()

Description

Algorithmic constants and parameters for running optim within rrvglm are set using this function.

Usage

rrvglm.optim.control(Fnscale = 1, Maxit = 100,
                     Switch.optimizer = 3, Abstol = -Inf,
                     Reltol = sqrt(.Machine$double.eps), ...)

Arguments

Fnscale

Passed into optim as fnscale.

Maxit

Passed into optim as maxit.

Switch.optimizer

Iteration number when the "Nelder-Mead" method of optim is switched to the quasi-Newton "BFGS" method. Assigning Switch.optimizer a negative number means always BFGS, while assigning Switch.optimizer a value greater than maxits means always use Nelder-Mead.

Abstol

Passed into optim as abstol.

Reltol

Passed into optim as reltol.

...

Ignored.

Details

See optim for more details.

Value

A list with components equal to the arguments.

Note

The transition between optimization methods may be unstable, so users may have to vary the value of Switch.optimizer.

Practical experience with Switch.optimizer shows that setting it to too large a value may lead to a local solution, whereas setting it to a low value will obtain the global solution. It appears that, if BFGS kicks in too late when the Nelder-Mead algorithm is starting to converge to a local solution, then switching to BFGS will not be sufficient to bypass convergence to that local solution.

Author(s)

Thomas W. Yee

See Also

rrvglm.control, optim.


VGAM documentation built on Sept. 19, 2023, 9:06 a.m.