A catch and index-based assessment model. Compared to the discrete delay-difference (annual time-step in production and fishing), the delay-differential model (cDD) is based on continuous recruitment and fishing mortality within a time-step. The continuous model works much better for populations with high turnover (e.g. high F or M, continuous reproduction). This model is conditioned on catch and fits to the observed index. In the state-space version (cDD_SS), recruitment deviations from the stock-recruit relationship are estimated.
cDD(
x = 1,
Data,
AddInd = "B",
SR = c("BH", "Ricker"),
rescale = "mean1",
start = NULL,
fix_h = TRUE,
dep = 1,
LWT = NULL,
n_itF = 5L,
silent = TRUE,
opt_hess = FALSE,
n_restart = ifelse(opt_hess, 0, 1),
control = list(iter.max = 5000, eval.max = 10000),
...
)cDD_SS(
x = 1,
Data,
AddInd = "B",
SR = c("BH", "Ricker"),
rescale = "mean1",
start = NULL,
fix_h = TRUE,
fix_sigma = FALSE,
fix_tau = TRUE,
dep = 1,
LWT = NULL,
n_itF = 5L,
integrate = FALSE,
silent = TRUE,
opt_hess = FALSE,
n_restart = ifelse(opt_hess, 0, 1),
control = list(iter.max = 5000, eval.max = 10000),
inner.control = list(),
...
)
An index for the objects in Data
when running in closed loop simulation.
Otherwise, equals to 1 when running an assessment.
A vector of integers or character strings indicating the indices to be used in the model. Integers assign the index to the corresponding index in Data@AddInd, "B" (or 0) represents total biomass in Data@Ind, "VB" represents vulnerable biomass in Data@VInd, and "SSB" represents spawning stock biomass in Data@SpInd.
Stock-recruit function (either "BH"
for Beverton-Holt or "Ricker"
).
A multiplicative factor that rescales the catch in the assessment model, which
can improve convergence. By default, "mean1"
scales the catch so that time series mean is 1, otherwise a numeric.
Output is re-converted back to original units.
Optional list of starting values. Entries can be expressions that are evaluated in the function. See details.
Logical, whether to fix steepness to value in Data@steep
in the assessment model.
The initial depletion in the first year of the model. A tight prior is placed on the model objective function to estimate the equilibrium fishing mortality corresponding to the initial depletion. Due to this tight prior, this F should not be considered to be an independent model parameter.
A vector of likelihood weights for each survey.
Integer, the number of iterations to solve F conditional on the observed catch.
Logical, passed to MakeADFun
, whether TMB
will print trace information during optimization. Used for dignostics for model convergence.
Logical, whether the hessian function will be passed to nlminb
during optimization
(this generally reduces the number of iterations to convergence, but is memory and time intensive and does not guarantee an increase
in convergence rate). Ignored if integrate = TRUE
.
The number of restarts (calls to nlminb
) in the optimization procedure, so long as the model
hasn't converged. The optimization continues from the parameters from the previous (re)start.
A named list of parameters regarding optimization to be passed to
nlminb
.
Additional arguments (not currently used).
Logical, whether the standard deviation of the index is fixed. If TRUE
,
sigma is fixed to value provided in start
(if provided), otherwise, value based on Data@CV_Ind
.
Logical, the standard deviation of the recruitment deviations is fixed. If TRUE
,
tau is fixed to value provided in start
(if provided), otherwise, equal to 1.
Logical, whether the likelihood of the model integrates over the likelihood of the recruitment deviations (thus, treating it as a state-space variable). Otherwise, recruitment deviations are penalized parameters.
An object of '>Assessment
containing objects and output
from TMB.
cDD
: Cat, Ind, Mort, L50, vbK, vbLinf, vbt0, wla, wlb, MaxAge
cDD_SS
: Cat, Ind, Mort, L50, vbK, vbLinf, vbt0, wla, wlb, MaxAge
cDD
: steep
cDD_SS
: steep, CV_Ind, sigmaR
To provide starting values for cDD
, a named list can be provided for R0
(unfished recruitment) and
and h
(steepness) via the start
argument (see example).
For cDD_SS
, additional start values can be provided for and sigma
and tau
, the standard
deviation of the index and recruitment variability, respectively.
Hilborn, R., and Walters, C., 1992. Quantitative Fisheries Stock Assessment: Choice, Dynamics and Uncertainty. Chapman and Hall, New York.
DD_TMB plot.Assessment summary.Assessment retrospective profile make_MP
# NOT RUN {
#### Observation-error delay difference model
res <- cDD(Data = DLMtool::Red_snapper)
# Provide starting values
start <- list(R0 = 1, h = 0.95)
res <- cDD(Data = DLMtool::Red_snapper, start = start)
summary(res@SD) # Parameter estimates
### State-space version
### Set recruitment variability SD = 0.6 (since fix_tau = TRUE)
res <- cDD_SS(Data = Red_snapper, start = list(tau = 0.6))
# }
Run the code above in your browser using DataLab