This function can be called for controling the optimization
procedure used when fitting GALAMMs using galamm
.
galamm_control(
optim_control = list(),
method = c("L-BFGS-B", "Nelder-Mead"),
maxit_conditional_modes = 10,
pirls_tol_abs = 0.01,
reduced_hessian = FALSE
)
Object of class galamm_control
, which typically will be
provided as an argument to galamm
.
List containing optimization parameters. If method
= "L-BFGS-B"
it is passed on to stats::optim
's control
argument and if method = "Nelder-Mead"
, it is passed on to
lme4::Nelder_Mead
's control argument. If not otherwise specified,
and method = "L-BFGS-B"
, the following arguments are set to
non-default values: fnscale = -1
and lmm = 20
.
Character string defining the algorithm to be used for
maximizing the marginal log-likelihood. The default is "L-BFGS-B"
,
which uses the limited memory Broyden-Fletcher-Goldfarb-Shanno algorithm
with box constrained as implemented in stats::optim
. The other
options is "Nelder-Mead"
, which calls the Nelder-Mead algorithm with
box constraints implemented in lme4::Nelder_Mead
. The argument is
case sensitive.
Maximum number of iterations in penalized
iteratively reweighted least squares algorithm. Ignored if family =
"gaussian"
for all observations, since then a single step gives the exact
answer.
Absolute convergence criterion for penalized iteratively reweighted least squares algorithm. Defaults to 0.01, which means that when the reduction in marginal likelihood between two iterations is below 0.01, the iterations stop.
Logical value. Defaults to TRUE
, which means
that the full Hessian matrix at the maximum marginal likelihood solution is
computed. If FALSE
, a reduced Hessian matrix with second order
partial derivatives with respect to fixed regression coefficients and
factor loadings. The latter can help is the full Hessian is not positive
definite.
batesFittingLinearMixedEffects2015galamm
broydenConvergenceClassDoublerank1970galamm
byrdLimitedMemoryAlgorithm1995galamm
fletcherNewApproachVariable1970galamm
goldfarbFamilyVariablemetricMethods1970galamm
nelderSimplexMethodFunction1965galamm
shannoConditioningQuasiNewtonMethods1970galamm
galamm()
Other optimization functions:
extract_optim_parameters.galamm()
# Define control object with quite a high degree of verbosity (trace = 6)
# and using the last 20 BFGS updates to estimate the Hessian in L-BFGS-B.
control <- galamm_control(optim_control = list(trace = 6, lmm = 20))
Run the code above in your browser using DataLab