R: Control Function for rrvglm() Calling optim()

rrvglm.optim.control {VGAM} | R 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`.

[Package VGAM version 1.1-3 Index]