Type: | Package |
Title: | Data-Limited Methods Toolkit |
Version: | 6.0.6 |
Maintainer: | Adrian Hordyk <adrian@bluematterscience.com> |
Description: | A collection of data-limited management procedures that can be evaluated with management strategy evaluation with the 'MSEtool' package, or applied to fishery data to provide management recommendations. |
License: | GPL-3 |
Depends: | R (≥ 3.5.0), MSEtool |
Imports: | dplyr, ggplot2, graphics, methods, Rcpp, stats, TMB (≥ 1.7.22) |
LinkingTo: | TMB, RcppEigen, Rcpp |
Suggests: | gridExtra, mvtnorm, testthat |
LazyLoad: | yes |
Encoding: | UTF-8 |
RoxygenNote: | 7.2.0 |
NeedsCompilation: | yes |
Packaged: | 2022-06-20 15:52:57 UTC; User |
Author: | Tom Carruthers [aut], Quang Huynh [aut], Adrian Hordyk [aut, cre], M. Bryan [ctb], HF. Geremont [ctb], C. Grandin [ctb], W. Harford [ctb], Q. Huynh [ctb], C. Walters [ctb] |
Repository: | CRAN |
Date/Publication: | 2022-06-20 16:20:09 UTC |
DLMtool: Data-Limited Methods Toolkit
Description
A collection of data-limited management procedures that can be evaluated with management strategy evaluation with the 'MSEtool' package, or applied to fishery data to provide management recommendations.
Author(s)
Maintainer: Adrian Hordyk adrian@bluematterscience.com
Authors:
Tom Carruthers tom@bluematterscience.com
Quang Huynh quang@bluematterscience.com
Other contributors:
M. Bryan [contributor]
HF. Geremont [contributor]
C. Grandin [contributor]
W. Harford [contributor]
Q. Huynh [contributor]
C. Walters [contributor]
Average Catch
Description
A simple average catch MP that is included to demonstrate a 'status quo' management option
Usage
AvC(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
The average catch method is very simple. The mean historical catch is calculated and used to set
a constant catch limit (TAC). If reps
> 1 then the reps
samples are drawn from a log-normal
distribution with mean TAC
and standard deviation (in log-space) of 0.2.
For completeness, the TAC is calculated by:
\textrm{TAC} =\frac{\sum_{y=1}^{\textrm{n}}{C_y}}{\textrm{n}}
where \textrm{TAC}
is the the mean catch recommendation, n
is the number of historical years, and
C_y
is the catch in historical year y
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
AvC
: Cat, LHYear, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
See Also
Other Average Catch MPs:
AvC_MLL()
,
DCACs()
Examples
Rec <- AvC(1, MSEtool::Cobia, reps=1000, plot=TRUE) # 1,000 log-normal samples with CV = 0.2
Average Catch with a size limit
Description
A example mixed control MP that uses the average catch output control MP together with a minimul size limit set at the size of maturity.
Usage
AvC_MLL(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
The average catch method is very simple. The mean historical catch is calculated and used to set
a constant catch limit (TAC). If reps
> 1 then the reps
samples are drawn from a log-normal
distribution with mean TAC
and standard deviation (in log-space) of 0.2.
For completeness, the TAC is calculated by:
\textrm{TAC} =\frac{\sum_{y=1}^{\textrm{n}}{C_y}}{\textrm{n}}
where \textrm{TAC}
is the the mean catch recommendation, n
is the number of historical years, and
C_y
is the catch in historical year y
.
The size of retention is set to the length of maturity.
This MP has been included for demonstration purposes of a mixed control MP.
Value
An object of class Rec-class
with the TAC, Retention slot(s) populated
Required Data
See Data-class
for information on the Data
object
AvC_MLL
: Cat, LHYear, Year
Rendered Equations
See Online Documentation for correctly rendered equations
See Also
Other Average Catch MPs:
AvC()
,
DCACs()
Examples
Rec <- AvC_MLL(1, MSEtool::Cobia, reps=1000, plot=TRUE) # 1,000 log-normal samples with CV = 0.2
Beddington and Kirkwood life-history MP
Description
Family of management procedures that sets the TAC by approximation of Fmax based on the length at first capture relative to asymptotic length and the von Bertalanffy growth parameter K.
Usage
BK(x, Data, reps = 100, plot = FALSE)
BK_CC(x, Data, reps = 100, plot = FALSE, Fmin = 0.005)
BK_ML(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Fmin |
The minimum fishing mortality rate that is derived from the catch-curve (interval censor). |
Details
The TAC is calculated as:
\textrm{TAC} = A F_{\textrm{max}}
where A
is (vulnerable) stock abundance, and F_{\textrm{max}}
is calculated as:
F_{\textrm{max}} = \frac{0.6K}{0.67-L_c/L_\infty}
where K
is the von Bertalanffy growth coefficient, L_c
is the
length at first capture, and L_\infty
is the von Bertalanffy asymptotic length
Abundance (A) is either assumed known (BK
) or estimated (BK_CC
and BK_ML
):
A = \frac{\bar{C}}{\left(1-e^{-F}\right)}
where \bar{C}
is the mean catch, and F is estimated.
See Functions section below for the estimation of F.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
BK
: Assumes that abundance is known, i.e.Data@Abun
andData@CV_abun
contain values -
BK_CC
: Abundance is estimated using an age-based catch curve to estimate Z and F, and abundance estimated from recent catches and F. -
BK_ML
: Abundance is estimated using mean length to estimate Z and F, and abundance estimated from recent catches and F.
Required Data
See Data-class
for information on the Data
object
BK
: Abun, LFC, vbK, vbLinf
BK_CC
: CAA, Cat, LFC, vbK, vbLinf
BK_ML
: CAL, Cat, LFC, Lbar, Lc, Mort, vbK, vbLinf
Rendered Equations
See Online Documentation for correctly rendered equations
Note
Note that the Beddington-Kirkwood method is designed to estimate F_\textrm{max}
,
that is, the fishing mortality that produces the maximum yield assuming constant
recruitment independent of spawning biomass.
Beddington and Kirkwood (2005) recommend estimating F using other methods
(e.g., a catch curve) and comparing the estimated F to the estimated
F_\textrm{max}
and adjusting exploitation accordingly.
These MPs have not been implemented that way.
Author(s)
T. Carruthers.
References
Beddington, J.R., Kirkwood, G.P., 2005. The estimation of potential yield and stock status using life history parameters. Philos. Trans. R. Soc. Lond. B Biol. Sci. 360, 163-170.
Examples
## Not run:
BK(1, MSEtool::SimulatedData, reps=1000, plot=TRUE)
## End(Not run)
## Not run:
BK_CC(1, MSEtool::SimulatedData, reps=1000, plot=TRUE)
## End(Not run)
## Not run:
BK_ML(1, MSEtool::SimulatedData, reps=100, plot=TRUE)
## End(Not run)
Age-based Catch Curve
Description
Age-based Catch Curve
Usage
CC(x, Data, reps = 100, plot = FALSE)
Arguments
x |
Iteration number |
Data |
An object of class |
reps |
Number of reps |
plot |
Logical. Show the plot? |
Value
A vector of length reps
of samples of the negative slope of the catch-curve (Z)
Examples
CC(1, MSEtool::SimulatedData, plot=TRUE)
Geromont and Butterworth (2015) Constant Catch
Description
The TAC is the average historical catch over the last yrsmth
(default 5) years,
multiplied by (1-xx
)
Usage
CC1(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0)
CC2(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0.1)
CC3(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0.2)
CC4(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0.3)
CC5(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0.4)
CurC(x, Data, reps = 100, plot = FALSE, yrsmth = 1, xx = 0)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to calculate mean catches |
xx |
Parameter controlling the TAC. Mean catches are multiplied by
(1- |
Details
The TAC is calculated as:
\textrm{TAC} = (1-x)C_{\textrm{ave}}
where x lies between 0 and 1, and C_{\textrm{ave}}
is average historical
catch over the previous yrsmth
years.
The TAC is constant for all future projections.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
CC1
: TAC is average historical catch from recentyrsmth
years -
CC2
: TAC is average historical catch from recentyrsmth
years reduced by 10\ -
CC3
: TAC is average historical catch from recentyrsmth
years reduced by 20\ -
CC4
: TAC is average historical catch from recentyrsmth
years reduced by 30\ -
CC5
: TAC is average historical catch from recentyrsmth
years reduced by 40\ -
CurC
: TAC is fixed at last historical catch
Required Data
See Data-class
for information on the Data
object
CC1
: Cat, LHYear, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Geromont, H. F., and D. S. Butterworth. 2015. Generic Management Procedures for Data-Poor Fisheries: Forecasting with Few Data. ICES Journal of Marine Science: Journal Du Conseil 72 (1). 251-61.
See Also
Other Constant Catch MPs:
GB_CC()
Examples
CC1(1, MSEtool::Cobia, plot=TRUE)
CC2(1, MSEtool::Cobia, plot=TRUE)
CC3(1, MSEtool::Cobia, plot=TRUE)
CC4(1, MSEtool::Cobia, plot=TRUE)
CC5(1, MSEtool::Cobia, plot=TRUE)
CurC(1, MSEtool::Cobia, plot=TRUE)
Age-Composition Stock-Reduction Analysis
Description
A stock reduction analysis (SRA) model is fitted to the age-composition from the last 3 years (or less if fewer data are available)
Usage
CompSRA(x, Data, reps = 100, plot = FALSE)
CompSRA4010(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
A stock reduction analysis (SRA) model is fitted to the age-composition
from the last 3 years (or less if fewer data are available) assuming a constant
total mortality rate (Z) and used to estimate current stock depletion (D),
F_\textrm{MSY}
, and stock abundance (A).
Abundance is estimated in the SRA. F_{\textrm{MSY}}
is calculated assuming
knife-edge vulnerability at the age of full selection.
The TAC is calculated as F_\textrm{MSY} A
. CompSRA4010
uses a 40-10
harvest control rule to reduce TAC at low biomass.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
CompSRA
: TAC is FMSY x Abundance -
CompSRA4010
: With a 40-10 control rule based on estimated depletion
Required Data
See Data-class
for information on the Data
object
CompSRA
: CAA, Cat, L50, LFC, LFS, MaxAge, Mort, steep, vbK, vbLinf, vbt0, wla, wlb
CompSRA4010
: CAA, Cat, L50, LFC, LFS, MaxAge, Mort, steep, vbK, vbLinf, vbt0, wla, wlb
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
Examples
## Not run:
CompSRA(1, MSEtool::SimulatedData, plot=TRUE)
## End(Not run)
CompSRA4010(1, MSEtool::SimulatedData, plot=TRUE)
Internal function for CompSRA MP
Description
Internal function for CompSRA MP
Usage
CompSRA_(x, Data, reps = 100)
Arguments
x |
Simulation number |
Data |
An object of class Data |
reps |
Number of reps |
Value
A list
Depletion-Based Stock Reduction Analysis
Description
Depletion-Based Stock Reduction Analysis (DB-SRA) is a method designed for determining a catch limit and management reference points for data-limited fisheries where catches are known from the beginning of exploitation. User prescribed BMSY/B0, M, FMSY/M are used to find B0 and therefore the a catch limit by back-constructing the stock to match a user specified level of stock depletion.
Usage
DBSRA(x, Data, reps = 100, plot = FALSE)
DBSRA_40(x, Data, reps = 100, plot = FALSE)
DBSRA4010(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
DB-SRA assumes that a complete time-series of catch from the beginning of
exploitation is available. Users prescribe estimates of current depletion (D)
,
biomass at MSY relative to unfished \left(\frac{B_\textrm{MSY}}{B_0}\right)
,
the natural mortality rate (M)
, and the ratio fishing mortality at
MSY to M \left(\frac{F_{\textrm{MSY}}}{M}\right)
.
You may have noticed that you -the user- specify three of the factors that
make the quota recommendation. So this can be quite a subjective method.
In the MSE the MSY reference points (e.g., \left(\frac{F_\textrm{MSY}}{M}\right)
)
are taken as the true value calculate in the MSE with added uncertainty specified
in the Obs object (e.g Obs@FMSY_Mbiascv
).
The catch limit, for the Base Version, is calculated as:
\textrm{TAC} = M \frac{F_{\textrm{MSY}}}{M} D B_0
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
DBSRA
: Base Version. TAC is calculated assumed MSY harvest rate multiplied by the estimated current abundance (estimated B0 x Depletion) -
DBSRA_40
: Same as the Base Version but assumes 40 percent current depletion (Bcurrent/B0 = 0.4), which is more or less the most optimistic state for a stock (ie very close to BMSY/B0 for many stocks). -
DBSRA4010
: Base version paired with the 40-10 rule that linearly throttles back the TAC when depletion is below 0.4 down to zero at 10 percent of unfished biomass.
Required Data
See Data-class
for information on the Data
object
DBSRA
: BMSY_B0, Cat, Dep, FMSY_M, L50, vbK, vbLinf, vbt0
DBSRA_40
: BMSY_B0, Cat, FMSY_M, L50, vbK, vbLinf, vbt0
DBSRA4010
: BMSY_B0, Cat, Dep, FMSY_M, L50, vbK, vbLinf, vbt0
Rendered Equations
See Online Documentation for correctly rendered equations
Note
The DB-SRA method of this package isn't exactly the same as the original method of Dick and MacCall (2011) because it has to work for simulated depletions above BMSY/B0 and even on occasion over B0. It also doesn't have the modification for flatfish life histories that has previously been applied by Dick and MacCall (2011).
Author(s)
T. Carruthers
References
Dick, E.J., MacCall, A.D., 2010. Estimates of sustainable yield for 50 data-poor stocks in the Pacific Coast groundfish fishery management plan. Technical memorandum. Southwest fisheries Science Centre, Santa Cruz, CA. National Marine Fisheries Service, National Oceanic and Atmospheric Administration of the U.S. Department of Commerce. NOAA-TM-NMFS-SWFSC-460.
Dick, E.J., MacCall, A.D., 2011. Depletion-Based Stock Reduction Analysis: A catch-based method for determining sustainable yields for data-poor fish stocks. Fish. Res. 110, 331-341.
Examples
DBSRA(1, MSEtool::ourReefFish, plot=TRUE)
DBSRA_40(1, MSEtool::ourReefFish, plot=TRUE)
DBSRA4010(1, MSEtool::ourReefFish, plot=TRUE)
Depletion-based SRA internal function
Description
Depletion-based SRA internal function
Usage
DBSRA_(x, Data, reps = 100, depo = NULL, hcr = NULL)
Arguments
x |
iteration number |
Data |
object of class Data |
reps |
number of reps |
depo |
Optional fixed depletion (single value) |
hcr |
Optional harvest control rule for throttling catch as a function of B/B0. Numeric vector of length 2 specifying HCR break points - e.g c(0.4, 0.1) for 40-10 HCR |
Internal optimization function
Description
Internal optimization function
Usage
DBSRAopt(lnK, C_hist, nys, Mdb, FMSY_M, BMSY_K, Bt_K, adelay, opt = 1)
Arguments
lnK |
log unfished biomass |
C_hist |
Historical catches |
nys |
number of years (length of C_hist) |
Mdb |
M |
FMSY_M |
FMSY/M |
BMSY_K |
BMSY/K |
Bt_K |
Current depletion |
adelay |
age of maturity |
opt |
Numeric. 1 for optimization. 2 to return Biomass trend |
Depletion Corrected Average Catch
Description
Internal code to calculate dcac
Usage
DCAC_(x, Data, reps = 100, Bt_K = NULL, updateD = FALSE)
Arguments
x |
Simulation number |
Data |
An object of class |
reps |
The number of reps |
Bt_K |
Optional value of depletion (otherwise taken from Data object) |
updateD |
Logical. Should depletion be updated in projection years? |
Value
A list with dcac, Bt_K, and BMSY_K
Depletion Corrected Average Catch
Description
This group of MPs calculates a catch limit (dcac; intended as an MSY proxy) based on average historical catch while accounting for the windfall catch that got the stock down to its current depletion level (D).
Usage
DCACs(x, Data, reps = 100, plot = FALSE)
DCAC(x, Data, reps = 100, plot = FALSE)
DCAC_40(x, Data, reps = 100, plot = FALSE)
DCAC4010(x, Data, reps = 100, plot = FALSE)
DCAC_ML(x, Data, reps = 100, plot = FALSE)
DAAC(x, Data, reps = 100, plot = FALSE)
HDAAC(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
The method calculates the depletion-corrected average catch (dcac) as:
\textrm{dcac} = \frac{\sum_{y=1}^{n}{C_y}}{n+(1-D)/Y_{\textrm{pot}}}
where
Y_{\textrm{pot}} = \frac{B_{\textrm{MSY}}}{B_0}\frac{F_{\textrm{MSY}}}{M}M
and C
is the historical catches; i.e C
does not change in the future projections in the MSE
The methods differ in the assumptions of current depletion (D). See the Functions section below for details.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
DCACs
: Depletion is not updated in the future projections. The TAC is static and not updated in the future years. This represents an application of the DCAC method where a catch limit is calculated based on current estimate of depletion and time-series of catch from the beginning of the fishery, and the TAC is fixed at this level for all future projections. -
DCAC
: Depletion is estimated each management interval and used to update the catch limit recommendation based on the historical catch (which is not updated in the future projections). -
DCAC_40
: Current stock biomass is assumed to be exactly at 40 per cent of unfished levels. The 40 percent depletion assumption may not really affect DCAC that much as it already makes TAC recommendations that are quite MSY-like. -
DCAC4010
: The dynamic DCAC (depletion is updated) is paired with the 40-10 rule that throttles back the OFL to zero at 10 percent of unfished stock size (the OFL is not subject to downward adjustment above 40 percent unfished). DCAC can overfish below BMSY levels. The 40-10 harvest control rule largely resolves this problem providing an MP with surprisingly good performance even at low stock levels. -
DCAC_ML
: This variant uses the mean length estimator to calculate current stock depletion. The mean length extension was programmed by Gary Nelson as part of his excellent R package 'fishmethods'. -
DAAC
: Depletion Adjusted Average Catch: essentially DCAC (with updated Depletion) divided by BMSY/B0 (Bpeak) (Harford and Carruthers, 2017). -
HDAAC
: Hybrid Depletion Adjusted Average Catch: essentially DCAC (with updated Depletion) divided by BMSY/B0 (Bpeak) when below BMSY, and DCAC above BMSY (Harford and Carruthers 2017).
Required Data
See Data-class
for information on the Data
object
DCACs
: AvC, BMSY_B0, Dt, FMSY_M, LHYear, Mort, Year, t
DCAC
: AvC, BMSY_B0, Dt, FMSY_M, LHYear, Mort, Year, t
DCAC_40
: AvC, BMSY_B0, FMSY_M, LHYear, Mort, Year, t
DCAC4010
: AvC, BMSY_B0, Dt, FMSY_M, LHYear, Mort, Year, t
DCAC_ML
: AvC, CAL, Cat, LHYear, Lbar, Lc, Mort, Year, t, vbK, vbLinf
DAAC
: AvC, BMSY_B0, Dt, FMSY_M, LHYear, Mort, Year, t
HDAAC
: AvC, BMSY_B0, Dt, FMSY_M, LHYear, Mort, Year, t
Rendered Equations
See Online Documentation for correctly rendered equations
Note
It's probably worth noting that DCAC TAC recommendations do not tend to zero as depletion tends to zero. It adjusts for depletion only in calculating historical average catch. It follows that at stock levels much below BMSY, DCAC tends to chronically overfish.
Author(s)
T. Carruthers
References
MacCall, A.D., 2009. Depletion-corrected average catch: a simple formula for estimating sustainable yields in data-poor situations. ICES J. Mar. Sci. 66, 2267-2271.
Harford W. and Carruthers, T. 2017. Interim and long-term performance of static and adaptive management procedures. Fish. Res. 190, 84-94.
See Also
Other Average Catch MPs:
AvC_MLL()
,
AvC()
Examples
DCACs(1, MSEtool::Atlantic_mackerel, plot=TRUE)
DCAC(1, MSEtool::Atlantic_mackerel, plot=TRUE)
DCAC_40(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Data <- MSEtool::Atlantic_mackerel
Data@LHYear <- 2005
DCAC4010(1, Data, plot=TRUE)
DCAC_ML(1, MSEtool::SimulatedData, plot=TRUE)
Data <- MSEtool::Atlantic_mackerel
Data@LHYear <- 2005
DAAC(1, Data, plot=TRUE)
Data <- MSEtool::Atlantic_mackerel
Data@LHYear <- 2005
HDAAC(1, Data, plot=TRUE)
Delay - Difference Stock Assessment
Description
A simple delay-difference assessment with UMSY and MSY as leading parameters that estimates the TAC using a time-series of catches and a relative
Usage
DD(x, Data, reps = 100, plot = FALSE)
DD4010(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
This DD model is observation error only and has does not estimate process error (recruitment deviations). Assumption is that knife-edge selectivity occurs at the age of 50% maturity. Similar to many other assessment models it depends on a whole host of dubious assumptions such as temporally stationary productivity and proportionality between the abundance index and real abundance. Unsurprisingly the extent to which these assumptions are violated tends to be the biggest driver of performance for this method.
The method is conditioned on effort and estimates catch. The effort is calculated as the ratio of catch and index. Thus, to get a complete effort time series, a full time series of catch and index is also needed. Missing values are linearly interpolated.
A detailed description of the delay-difference model can be found in Chapter 9 of Hilborn and Walters (1992).
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
DD
: Base version where the TAC = UMSY * Current Biomass. -
DD4010
: A 40-10 rule is imposed over the TAC recommendation.
Required Data
See Data-class
for information on the Data
object
DD
: Cat, Ind, L50, MaxAge, Mort, vbK, vbLinf, vbt0, wla, wlb
DD4010
: Cat, Ind, L50, MaxAge, Mort, vbK, vbLinf, vbt0, wla, wlb
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers, T, Walters, C.J,, and McAllister, M.K. 2012. Evaluating methods that classify fisheries stock status using only fisheries catch data. Fisheries Research 119-120:66-79.
Hilborn, R., and Walters, C. 1992. Quantitative Fisheries Stock Assessment: Choice, Dynamics and Uncertainty. Chapman and Hall, New York.
See Also
Other Delay-Difference MPs:
DDe()
Examples
DD(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
DD4010(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Delay-Difference Internal Function
Description
Delay-Difference Internal Function
Usage
DD_(x, Data, reps = 100, hcr = NULL)
Arguments
x |
iteration number |
Data |
object of class Data |
reps |
number of reps |
hcr |
Optional harvest control rule for throttling catch as a function of B/B0. Numeric vector of length 2 specifying HCR break points - e.g c(0.4, 0.1) for 40-10 HCR |
Delay-Difference Internal Function
Description
Delay-Difference Internal Function
Usage
DD_R(
params,
opty,
So_DD,
Alpha_DD,
Rho_DD,
ny_DD,
k_DD,
wa_DD,
E_hist,
C_hist,
UMSYprior
)
Arguments
params |
internal parameter |
opty |
internal parameter |
So_DD |
internal parameter |
Alpha_DD |
internal parameter |
Rho_DD |
internal parameter |
ny_DD |
internal parameter |
k_DD |
internal parameter |
wa_DD |
internal parameter |
E_hist |
internal parameter |
C_hist |
internal parameter |
UMSYprior |
internal parameter |
Effort-based Delay - Difference Stock Assessment
Description
A simple delay-difference assessment with UMSY and MSY as leading parameters
that estimates E_{\textrm{MSY}}
using a
time-series of catches and a relative abundance index.
Usage
DDe(x, Data, reps = 100, plot = FALSE)
DDes(x, Data, reps = 100, plot = FALSE, LB = 0.9, UB = 1.1)
DDe75(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
LB |
The lowest permitted factor of previous fishing effort |
UB |
The highest permitted factor of previous fishing effort |
Details
This DD model is observation error only and has does not estimate process error (recruitment deviations). Assumption is that knife-edge selectivity occurs at the age of 50% maturity. Similar to many other assessment models it depends on a whole host of dubious assumptions such as temporally stationary productivity and proportionality between the abundance index and real abundance. Unsurprisingly the extent to which these assumptions are violated tends to be the biggest driver of performance for this method.
The method is conditioned on effort and estimates catch. The effort is calculated as the ratio of catch and index. Thus, to get a complete effort time series, a full time series of catch and index is also needed. Missing values are linearly interpolated.
A detailed description of the delay-difference model can be found in Chapter 9 of Hilborn and Walters (1992).
Value
An object of class Rec-class
with the TAE slot(s) populated
Functions
-
DDe
: Effort-control version. The recommended effort is EMSY. -
DDes
: Variant ofDDe
that limits the maximum change in effort to 10 percent. -
DDe75
: Variant ofDDe
where the recommended effort is 75\
Required Data
See Data-class
for information on the Data
object
DDe
: Cat, Ind, L50, MPeff, MaxAge, Mort, vbK, vbLinf, vbt0, wla, wlb
Rendered Equations
See Online Documentation for correctly rendered equations
See Also
Other Delay-Difference MPs:
DD()
Examples
DDe(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
DDes(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
DDe75(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Effort searching MP aiming for a fixed stock depletion
Description
Effort is adjusted using a simple rule that aims for a specified level of depletion.
Usage
DTe40(x, Data, reps = 100, plot = FALSE, alpha = 0.4, LB = 0.9, UB = 1.1)
DTe50(x, Data, reps = 100, plot = FALSE, alpha = 0.5, LB = 0.9, UB = 1.1)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
alpha |
The target level of depletion |
LB |
The lowest permitted factor of previous fishing effort |
UB |
The highest permitted factor of previous fishing effort |
Details
The TAE is calculated as:
\textrm{TAE}_y = \frac{D}{\alpha} \textrm{TAE}_{y-1}
where D
is estimated current level of depletion and \alpha
is argument
alpha
specifying the target level of depletion.
The maximum fractional change in TAE is specified with arguments LB
and UB
Value
An object of class Rec-class
with the TAE slot(s) populated
Functions
-
DTe40
: Effort is adjusted to reach 40 percent stock depletion -
DTe50
: Effort is adjusted to reach 50 percent stock depletion
Required Data
See Data-class
for information on the Data
object
DTe40
: Dep, MPeff
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
Examples
DTe40(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Dynamic Fratio MP
Description
The Fratio MP with a controller that changes the level of F according to the estimated relationship between surplus production and biomass. Ie lower F when dSP/dB is positive and higher F when dSP/dB is negative.
Usage
DynF(x, Data, reps = 100, plot = FALSE, yrsmth = 10, gg = 2)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
The number of historical recent years used for smoothing catch and biomass data |
gg |
A gain parameter that modifies F according to the gradient in surplus production with biomass |
Details
The method smoothes historical catches and biomass and then infers the relationship between surplus production and biomass (as suggested by Mark Maunder and Carl Walters). The approach then regulates a F based policy according to this gradient in which F may range between two different fractions of natural mortality rate.
The core advantage is the TAC(t) is not strongly determined by TAC(t-1) and therefore errors are not as readily propagated. The result is method that tends to perform alarmingly well and therefore requires debunking ASAP.
The catch limit (TAC) is calculated as:
\textrm{TAC}=F B
where F
is fishing mortality and B
is the estimated current biomass.
F
is calculated as:
F = F_{\textrm{MSY}} \exp{-gG}
where F_{\textrm{MSY}}
is calculated from assumed values of \frac{F_{\textrm{MSY}}}{M}
and
M
, g is a gain parameter and G is the estimated gradient in surplus
production (SP) as a function of biomass (B). Surplus production for year y is calculated as:
SP_y = B_{y+1} - B_y + C_y
Trends in historical catch (C) and biomass (B) are both estimated using a loess smoother, over the last yrsmth
years,
of available catch and a time-series of abundance, calculated from an index of abundance (Data@Ind
)
and an estimate of abundance (Data@Abun
) for the current year.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
DynF
: Abun, Cat, FMSY_M, Ind, Mort, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Made-up for this package.
See Also
Other Fmsy/M methods:
Fadapt()
,
Fratio()
Examples
DynF(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Effort Target Optimum Length
Description
This MP adjusts effort limit based on the ratio of recent mean length (over
last yrsmth
years) and a target length defined as L_{\textrm{opt}}
.
Effort MP: adjust effort up/down if mean length above/below Ltarget
Usage
EtargetLopt(x, Data, reps = 100, plot = FALSE, yrsmth = 3, buffer = 0.1)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Number of years to calculate average length |
buffer |
Parameter controlling the fraction of calculated effor - acts as a precautionary buffer |
Details
The TAE is calculated as:
\textrm{TAE}_y = \textrm{TAE}_{y-1} \left((1-\textrm{buffer}) (w + (1-w)r) \right)
where \textrm{buffer}
is specified in argument buffer
, w
is fixed at 0.5, and:
r = \frac{L_{\textrm{recent}}}{L_{\textrm{opt}}}
where L_{\textrm{recent}}
is mean
length over last yrmsth
years, and:
L_{\textrm{opt}} = \frac{L_\infty W_b}{\frac{M}{K} + W_b }
where L_\infty
is von Bertalanffy asymptotic length, W_b
is
exponent of the length-weight relationship, M
is natural mortality, and
K
is von Bertalanffy growth coefficient.#'
Value
An object of class Rec-class
with the TAE slot(s) populated
Required Data
See Data-class
for information on the Data
object
EtargetLopt
: ML, MPeff, Mort, Year, vbK, vbLinf, wlb
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
HF Geromont
Examples
EtargetLopt(1, MSEtool::SimulatedData, plot=TRUE)
Adaptive Fratio
Description
An adaptive MP that uses trajectory in inferred suplus production and fishing mortality rate to update a TAC
Usage
Fadapt(x, Data, reps = 100, plot = FALSE, yrsmth = 7, gg = 1)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to smooth recent estimates of surplus production |
gg |
A gain parameter controlling the speed in update in TAC. |
Details
Fishing rate is modified each year according to the gradient of surplus production with biomass (aims for zero). F is bounded by FMSY/2 and 2FMSY and walks in the logit space according to dSP/dB. This is derived from the theory of Maunder 2014.
The TAC is calculated as:
\textrm{TAC}_y= F_y B_{y-1}
where B_{y-1}
is the most recent biomass, estimated with a loess smoother
of the most recent yrsmth
years from the index of abundance (Data@Ind
)
and estimate of current abundance (Data@Abun
), and
F_y = F_{\textrm{lim}_1} + \left(\frac{\exp^{F_{\textrm{mod}_2}}} {1 + \exp^{F_{\textrm{mod}_2}}} F_{\textrm{lim}_3} \right)
where F_{\textrm{lim}_1} = 0.5 \frac{F_\textrm{MSY}}{M}M
,
F_{\textrm{lim}_2} = 2 \frac{F_\textrm{MSY}}{M}M
, F_{\textrm{lim}_3}
is F_{\textrm{lim}_2} - F_{\textrm{lim}_1}
,
F_{\textrm{mod}_2}
is
F_{\textrm{mod}_1} + g -G
where g
is gain parameter gg
, G
is the predicted surplus production given current abundance,
and:
F_{\textrm{mod}_1} =
\left\{\begin{array}{ll}
-2 & \textrm{if } F_\textrm{old} < F_{\textrm{lim}_1} \\
2 & \textrm{if } F_\textrm{old} > F_{\textrm{lim}_2} \\
\log{\frac{F_\textrm{frac}}{1-F_\textrm{frac}}} & \textrm{if } F_{\textrm{lim}_1} \leq F_\textrm{old} \leq F_{\textrm{lim}_2} \\
\end{array}\right.
where -F_{\textrm{frac}} = \frac{F_{\textrm{old}} - F_{\textrm{lim}_1}}{F_{\textrm{lim}_3}}
,
F_\textrm{old} = \sum{\frac{C_\textrm{hist}}{B_\textrm{hist}}}/n
where C_\textrm{hist}
and B_\textrm{hist}
are smooth catch and biomass over last yrsmth
,
and n
is yrsmth
.
Tested in Carruthers et al. 2015.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
A numeric vector of quota recommendations
Required Data
See Data-class
for information on the Data
object
Fadapt
: Abun, Cat, FMSY_M, Ind, Mort, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
Maunder, M. 2014. http://www.iattc.org/Meetings/Meetings2014/MAYSAC/PDFs/SAC-05-10b-Management-Strategy-Evaluation.pdf
See Also
Other Fmsy/M methods:
DynF()
,
Fratio()
Other Surplus production MPs:
Rcontrol()
,
SPMSY()
,
SPSRA()
,
SPmod()
,
SPslope()
Examples
Fadapt(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Demographic FMSY method
Description
FMSY is calculated as r/2 where r is calculated from a demographic approach (inc steepness). Coupled with an estimate of current abundance that gives you the OFL.
Usage
Fdem(x, Data, reps = 100, plot = FALSE)
Fdem_CC(x, Data, reps = 100, plot = FALSE, Fmin = 0.005)
Fdem_ML(x, Data, reps = 100, plot = FALSE, Fmin = 0.005)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Fmin |
The minimum fishing mortality rate derived from the catch-curve analysis |
Details
The TAC is calculated as:
\textrm{TAC} = F_{\textrm{MSY}} A
where A is an estimate of current abundance, and F_{\textrm{MSY}}
is estimated
as r/2
, where r
is the intrinsic rate of population growth, estimated
from the life-history parameters using the methods of McAllister et al. (2001).
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
Fdem
: Current abundance is assumed to be known (i.eData@Abun
) -
Fdem_CC
: Current abundance is estimated from catch curve analysis -
Fdem_ML
: Current abundance is estimated from mean length
Required Data
See Data-class
for information on the Data
object
Fdem
: Abun, FMSY_M, L50, MaxAge, Mort, steep, vbK, vbLinf, vbt0, wla, wlb
Fdem_CC
: CAA, Cat, FMSY_M, L50, MaxAge, Mort, steep, vbK, vbLinf, vbt0, wla, wlb
Fdem_ML
: CAL, Cat, FMSY_M, L50, Lbar, Lc, MaxAge, Mort, steep, vbK, vbLinf, vbt0, wla, wlb
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
McAllister, M.K., Pikitch, E.K., and Babcock, E.A. 2001. Using demographic methods to construct Bayesian priors for the intrinsic rate of increase in the Schaefer model and implications for stock rebuilding. Can. J. Fish. Aquat. Sci. 58: 1871-1890.
Examples
Fdem(1, MSEtool::SimulatedData, plot=TRUE)
Fdem_CC(1, MSEtool::SimulatedData, plot=TRUE)
Fdem_ML(1, MSEtool::SimulatedData, plot=TRUE)
Internal function for Fdem MP
Description
Internal function for Fdem MP
Usage
Fdem_(x, Data, reps, Ac = NULL)
Arguments
x |
internal |
Data |
internal |
reps |
internal |
Ac |
Optional abundance value |
Kalman filter and Rauch-Tung-Striebel smoother
Description
A function that applies a filter and smoother to estimates
Usage
FilterSmooth(RawEsts, R = 0.2, Q = 0.1, Int = 100)
Arguments
RawEsts |
a vector of estimated values |
R |
variance of sampling noise |
Q |
variance of random walk increments |
Int |
covariance of initial uncertainty |
Value
a vector of smoothed values
FMSY/M ratio methods
Description
Calculates the OFL based on a fixed ratio of FMSY to M multiplied by a current estimate of abundance.
Usage
Fratio(x, Data, reps = 100, plot = FALSE)
Fratio4010(x, Data, reps = 100, plot = FALSE)
DepF(x, Data, reps = 100, plot = FALSE)
Fratio_CC(x, Data, reps = 100, plot = FALSE, Fmin = 0.005)
Fratio_ML(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Fmin |
Minimum current fishing mortality rate for the catch-curve analysis |
Details
A simple method that tends to outperform many other approaches alarmingly often even when current biomass is relatively poorly known. The low stock crash potential is largely due to the quite large difference between Fmax and FMSY for most stocks.
The TAC is calculated as:
\textrm{TAC} = F_{\textrm{MSY}} A
where F_{\textrm{MSY}}
is calculated as \frac{F_\textrm{MSY}}{M} M
and
A is estimate of current abundance.
The MP variants differ in the assumption of current abundance (see Functions section below)
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
Fratio
: Requires an estimate of current abundance (i.eData@Abun
) -
Fratio4010
: Paired with the 40-10 rule that throttles back the OFL to zero at 10 percent of unfished biomass. Requires an estimate of current depletion. -
DepF
: Depletion Corrected Fratio: the Fratio MP with a harvest control rule that reduces F according to the production curve given an estimate of current stock depletion (made-up for this package). -
Fratio_CC
: Current abundance is estimated using average catch and estimate of F from an age-based catch curve -
Fratio_ML
: Current abundance is estimated using average catch and estimate of F from mean lengths
Required Data
See Data-class
for information on the Data
object
Fratio
: Abun, FMSY_M, Mort
Fratio4010
: Abun, Dep, FMSY_M, Mort
DepF
: Abun, Dep, FMSY_M, Mort
Fratio_CC
: CAA, Cat, FMSY_M, Mort
Fratio_ML
: CAL, Cat, FMSY_M, Lbar, Lc, Mort, vbK, vbLinf
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Gulland, J.A., 1971. The fish resources of the ocean. Fishing News Books, West Byfleet, UK.
Martell, S., Froese, R., 2012. A simple method for estimating MSY from catch and resilience. Fish Fish. doi: 10.1111/j.1467-2979.2012.00485.x.
See Also
Other Fmsy/M methods:
DynF()
,
Fadapt()
Examples
Fratio(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Fratio4010(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Fratio_CC(1, MSEtool::SimulatedData, plot=TRUE)
Fratio_ML(1, MSEtool::SimulatedData, plot=TRUE)
Fratio internal function
Description
Fratio internal function
Usage
Fratio_(x, Data, reps = 100, Abun = NULL)
Arguments
x |
Iteration number |
Data |
Object of class Data |
reps |
Number of reps |
Abun |
Optional estimate of abundance |
Geromont and Butterworth Constant Catch Harvest Control Rule
Description
A simple MP that aims for a reference catch (as a proxy for MSY) subject to imperfect information.
Usage
GB_CC(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
Note that this is my interpretation of their MP and is now stochastic. Currently it is generalized and is not 'tuned' to more detailed assessment data which might explain why in some cases it leads to stock declines.
The TAC is calculated as:
\textrm{TAC} = C_\textrm{ref}
where C_\textrm{ref}
is a reference catch assumed to be a proxy for MSY.
In the MSE C_\textrm{ref}
is the calculated MSY subject to observation error
defined in Obs@CV_Cref
.
The TAC is subject to the following conditions:
if next TAC > 1.2 last catch, then TAC = 1.2 last catch
if next TAC < 0.8 last catch, then TAC = 0.8 last catch
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
GB_CC
: Cref
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Geromont, H.F. and Butterworth, D.S. 2014. Complex assessment or simple management procedures for efficient fisheries management: a comparative study. ICES J. Mar. Sci. doi:10.1093/icesjms/fsu017
See Also
Other Constant Catch MPs:
CC1()
Examples
GB_CC(1, MSEtool::SimulatedData, plot=TRUE)
Geromont and Butterworth index slope Harvest Control Rule
Description
An MP similar to SBT1 that modifies a time-series of catch recommendations and aims for a stable catch rates.
Usage
GB_slope(x, Data, reps = 100, plot = FALSE, yrsmth = 5, lambda = 1)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Number of years for evaluating slope in relative abundance index |
lambda |
A gain parameter |
Details
The TAC is calculated as:
\textrm{TAC}_y= C_{y-1} \left(1+\lambda I\right)
where C_{y-1}
is catch from the previous year, \lambda
is a gain parameter, and I
is
the slope of the linear regression of log Index (Data@Ind
) over the last
yrsmth
years.
The TAC is subject to the following conditions:
if next TAC > 1.2 last catch, then TAC = 1.2 last catch
if next TAC < 0.8 last catch, then TAC = 0.8 last catch
Note that this is my interpretation of their approach and is now stochastic. Currently it is generalized and is not 'tuned' to more detailed assessment data which might explain why in some cases it leads to stock declines.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
GB_slope
: Cat, Ind, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Geromont, H.F. and Butterworth, D.S. 2014. Complex assessment or simple management procedures for efficient fisheries management: a comparative study. ICES J. Mar. Sci. doi:10.1093/icesjms/fsu017
See Also
Other Index methods:
GB_target()
,
Gcontrol()
,
ICI()
,
Iratio()
,
Islope1()
,
Itarget1_MPA()
,
Itarget1()
,
ItargetE1()
Examples
GB_slope(1, MSEtool::SimulatedData, plot=TRUE)
Geromont and Butterworth target CPUE and catch MP
Description
An MP similar to SBT2 that modifies a time-series of catch recommendations and aims for target catch rate and catch level based on BMSY/B0 and MSY, respectively.
Usage
GB_target(x, Data, reps = 100, plot = FALSE, w = 0.5)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
w |
A gain parameter |
Details
The TAC is calculated as:
If I_\textrm{recent} \geq I_0
:
\textrm{TAC}= C_\textrm{ref} \left(w + (1-w)\frac{I_\textrm{rec}-I_0}{I_\textrm{target}-I_0} \right)
else:
\textrm{TAC}= wC_\textrm{ref} \frac{I_\textrm{rec}}{I_0}^2
where C_\textrm{ref}
is a reference catch assumed to be a proxy for MSY (Data@Cref
),
w is a gain parameter,
I_\textrm{rec}
is the average index over the last 4 years,
I_\textrm{target}
is the target Index (Data@Iref
), and
I_0
is 0.2 x the average index over the past 5 years.
In the MSE C_\textrm{ref}
is the calculated MSY subject to observation error
defined in Obs@CV_Cref
, and I_\textrm{target}
is assumed to be the index at MSY subject
to observation error (Obs@CV_Iref
). Consequently, the performance of this method in the MSE
is strongly determined by the specified uncertainty for these parameters.
The TAC is subject to the following conditions:
if next TAC > 1.2 last catch, then TAC = 1.2 last catch
if next TAC < 0.8 last catch, then TAC = 0.8 last catch
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
GB_target
: Cref, Ind, Iref
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Geromont, H.F. and Butterworth, D.S. 2014. Complex assessment or simple management procedures for efficient fisheries management: a comparative study. ICES J. Mar. Sci. doi:10.1093/icesjms/fsu017
See Also
Other Index methods:
GB_slope()
,
Gcontrol()
,
ICI()
,
Iratio()
,
Islope1()
,
Itarget1_MPA()
,
Itarget1()
,
ItargetE1()
Examples
GB_target(1, MSEtool::SimulatedData, plot=TRUE)
G-control MP
Description
A harvest control rule proposed by Carl Walters that uses trajectory in inferred surplus production to make upward/downward adjustments to TAC recommendations
Usage
Gcontrol(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 10,
gg = 2,
glim = c(0.5, 2)
)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
The number of years over which to smooth catch and biomass data |
gg |
A gain parameter |
glim |
A constraint limiting the maximum level of change in quota recommendations |
Details
The TAC is calculated as:
\textrm{TAC} = \textrm{SP} \left(1-gG\right)
where \textrm{SP}
is the predicted surplus production for the next year,
g is a gain parameter, and G is the slope of surplus production
as a function of biomass over the last yrsmth
years.
The change in TAC is bounded by the glim
argument, which by default does not allow
the TAC to decrease by more than half or increase more than twice the last annual catch.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
Gcontrol
: Abun, Cat, Ind, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
C. Walters and T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
See Also
Other Index methods:
GB_slope()
,
GB_target()
,
ICI()
,
Iratio()
,
Islope1()
,
Itarget1_MPA()
,
Itarget1()
,
ItargetE1()
Examples
Gcontrol(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Index Confidence Interval
Description
The MP adjusts catch based on the value of the index in the current year relative to the time series mean and standard error.
Usage
ICI(x, Data, reps = 100, plot = FALSE)
ICI2(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
The TAC is calculated as:
\textrm{TAC}_y=C_{y-1} \alpha
where C_{y-1}
is the catch from the previous year, and \alpha
is
defined as:
\alpha =
\left\{\begin{array}{ll}
d & \textrm{if } I < \textrm{CI}_L \\
u & \textrm{if } I > \textrm{CI}_H \\
1 & \textrm{if } \textrm{CI}_L \leq I \leq \textrm{CI}_H \\
\end{array}\right.
where I
is the index in the most recent year, d
is 0.75 for ICI
and ICI2
,
u
is 1.05 and 1.25 forICI
and ICI2
respectively, and \textrm{CI}_L
and \textrm{CI}_L
are the lower and upper bound of the confidence
interval of mean historical index. The confidence interval is
calculated using Z-scores described in the Functions section below.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
ICI
: The catch is reduced by 0.75 if the Z-score of the current year's index is less than -0.44. The catch is increased by 1.05 if the Z-score of the current year's index is greater than 1.96. Otherwise, the catch is held constant. -
ICI2
: This method is less precautionary of the two ICI MPs by allowing for a larger increase in TAC and a lower threshold of the index to decrease the TAC. The catch is reduced by 0.75 if the Z-score of the current year's index is less than -1.96. The catch is increased by 1.25 if the Z-score of the current year's index is greater than 1.96. Otherwise, the catch is held constant.
Required Data
See Data-class
for information on the Data
object
ICI
: Cat, Ind
ICI2
: Cat, Ind
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
Coded by Q. Huynh. Developed by Jardim et al. (2015)
References
Ernesto Jardim, Manuela Azevedo, Nuno M. Brites, Harvest control rules for data limited stocks using length-based reference points and survey biomass indices, Fisheries Research, Volume 171, November 2015, Pages 12-19, ISSN 0165-7836, https://doi.org/10.1016/j.fishres.2014.11.013
See Also
Other Index methods:
GB_slope()
,
GB_target()
,
Gcontrol()
,
Iratio()
,
Islope1()
,
Itarget1_MPA()
,
Itarget1()
,
ItargetE1()
Examples
ICI(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
ICI2(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Iterative Index Target MP
Description
An index target MP where the TAC is modified according to current index levels (mean index over last 5 years) relative to a target level.
Usage
IT5(x, Data, reps = 100, plot = FALSE, yrsmth = 5, mc = 0.05)
IT10(x, Data, reps = 100, plot = FALSE, yrsmth = 5, mc = 0.1)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
The number of historical years over which to average the index |
mc |
The maximum fractional change in the TAC among years. |
Details
The TAC is calculated as:
\textrm{TAC}_y = C_{y-1} I_\delta
where C_{y-1}
is the catch from the previous year and I_\delta
is
the ratio of the mean index over the past yrsmth
years to a reference index level.
The maximum allowable change in TAC is determined by mc
: e.g mc=0.05
means that the maximum change in TAC from the previous
catch is 5%.
The reference index level (Data@Iref
) is assumed to be a proxy for MSY. In the
MSE Iref
is the index at MSY subject to observation error (Obs@Irefbiascv
).
Consequently the performance of these methods in MSE is strongly determined by the
uncertainty the in reference index.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
IT5
: Maximum annual changes in TAC are 5 per cent. -
IT10
: Maximum annual changes are 10 per cent.
Required Data
See Data-class
for information on the Data
object
IT5
: Ind, Iref, MPrec
IT10
: Ind, Iref, MPrec
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
Examples
IT5(1, MSEtool::SimulatedData, plot=TRUE)
IT10(1, MSEtool::SimulatedData, plot=TRUE)
Index Target based on natural mortality rate
Description
An index target MP where the TAC is modified according to current index levels (mean index over last number of years determined by natural mortality (M)) relative to a target level.
Usage
ITM(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
The TAC is caluclated as:
\textrm{TAC}_y = \textrm{TAC}_{y-1} \delta I
where \delta I
is the ratio of the mean index over 4\frac{1}{M}^{1/4}
years
to the reference index (Data@Iref
).
The maximum fractional change in TAC is determined by mc
, defined as
mc = \textrm{max}\left(\frac{5 + 25M}{100}, 0.2\right)
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
ITM
: Ind, Iref, MPrec, Mort
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
Examples
ITM(1, Data=MSEtool::SimulatedData, plot=TRUE)
Index Target Internal Function
Description
Index Target Internal Function
Usage
IT_(x, Data, reps = 100, plot = FALSE, yrsmth = 5, mc = 0.05)
Arguments
x |
Iteration number |
Data |
An object of class |
reps |
Number of replicates |
plot |
Logical. Show the plot? |
yrsmth |
The number of historical years over which to average the index |
mc |
The maximum fractional change in the TAC among years. |
Value
A named list with TAC recommendations of length reps
Index Target Effort-Based
Description
An index target MP where the Effort is modified according to current index levels (mean index over last 5 years) relative to a target level.
Usage
ITe5(x, Data, reps = 100, plot = FALSE, yrsmth = 5, mc = 0.05)
ITe10(x, Data, reps = 100, plot = FALSE, yrsmth = 5, mc = 0.1)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
The number of historical years over which to average the index |
mc |
The maximum fractional change in the effort among years. |
Details
The TAE is calculated as:
\textrm{TAE}_y = \textrm{TAE}_{y-1} \delta
where \delta
is \frac{I} {I_{\textrm{ref}}}
averaged over last
yrsmth
years. I_{\textrm{ref}}
is the index target (Data@Iref
).
The maximum fractional change in TAE is specified in mc
.
Value
An object of class Rec-class
with the TAE slot(s) populated
Functions
-
ITe5
: Maximum annual changes are 5 per cent. -
ITe10
: Maximum annual changes are 10 per cent.
Required Data
See Data-class
for information on the Data
object
ITe5
: Ind, Iref, MPeff
ITe10
: Ind, Iref, MPeff
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
Examples
ITe5(1, MSEtool::SimulatedData, plot=TRUE)
ITe10(1, MSEtool::SimulatedData, plot=TRUE)
Mean Index Ratio
Description
The TAC is adjusted by the ratio alpha, where the numerator being the mean index in the most recent two years of the time series and the denominator being the mean index in the three years prior to those in the numerator. This MP is the stochastic version of Method 3.2 used by ICES for Data-Limited Stocks (ICES 2012).
Usage
Iratio(x, Data, reps = 100, plot = FALSE, yrs = c(2, 5))
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrs |
Vector of length 2 specifying the reference years |
Details
The TAC is calculated as:
\textrm{TAC}_y = \alpha C_{y-1}
where C_{y-1}
is the catch from the previous year, and \alpha
is
the ratio of the mean index in the most recent two years of the time series and the
mean index in 3-5 years before current time (reference years are specified as
yrs
argument.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
Iratio
: Cat, Ind
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
Coded by Q. Huynh. Developed by Jardim et al. (2015)
References
Ernesto Jardim, Manuela Azevedo, Nuno M. Brites, Harvest control rules for data limited stocks using length-based reference points and survey biomass indices, Fisheries Research, Volume 171, November 2015, Pages 12-19, ISSN 0165-7836, https://doi.org/10.1016/j.fishres.2014.11.013
ICES. 2012. ICES Implementation of Advice for Data-limited Stocks in 2012 in its 2012 Advice. ICES CM 2012/ACOM 68. 42 pp.
See Also
Other Index methods:
GB_slope()
,
GB_target()
,
Gcontrol()
,
ICI()
,
Islope1()
,
Itarget1_MPA()
,
Itarget1()
,
ItargetE1()
Examples
Iratio(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Index Slope Tracking MP
Description
A management procedure that incrementally adjusts the TAC to maintain a constant CPUE or relative abundance index.
Usage
Islope1(x, Data, reps = 100, plot = FALSE, yrsmth = 5, lambda = 0.4, xx = 0.2)
Islope2(x, Data, reps = 100, plot = FALSE, yrsmth = 5, lambda = 0.4, xx = 0.3)
Islope3(x, Data, reps = 100, plot = FALSE, yrsmth = 5, lambda = 0.4, xx = 0.4)
Islope4(x, Data, reps = 100, plot = FALSE, yrsmth = 5, lambda = 0.2, xx = 0.4)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to calculate index |
lambda |
A gain parameter controlling the speed in update in TAC. |
xx |
Parameter controlling the fraction of mean catch to start using in first year |
Details
The TAC is calculated as:
\textrm{TAC} = \textrm{TAC}^* \left(1+\lambda I \right)
where \textrm{TAC}^*
is 1-xx
multiplied by the mean catch from the past yrsmth
years for the
first year and catch from the previous year in projection years,
\lambda
is a gain parameter, and I
is the slope of log index over the past yrsmth
years.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
Islope1
: The least biologically precautionary of the Islope methods -
Islope2
: More biologically precautionary. Reference TAC is 0.7 average catch -
Islope3
: More biologically precautionary. Reference TAC is 0.6 average catch -
Islope4
: The most biologically precautionary of the Islope methods. Reference TAC is 0.6 average catch and gain parameter is 0.2
Required Data
See Data-class
for information on the Data
object
Islope1
: Cat, Ind, LHYear, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
Geromont, H.F., Butterworth, D.S. 2014. Generic management procedures for data-poor fisheries; forecasting with few data. ICES J. Mar. Sci. doi:10.1093/icesjms/fst232
See Also
Other Index methods:
GB_slope()
,
GB_target()
,
Gcontrol()
,
ICI()
,
Iratio()
,
Itarget1_MPA()
,
Itarget1()
,
ItargetE1()
Examples
Islope1(1, MSEtool::SimulatedData, plot=TRUE)
Islope2(1, MSEtool::SimulatedData, plot=TRUE)
Islope3(1, MSEtool::SimulatedData, plot=TRUE)
Islope4(1, MSEtool::SimulatedData, plot=TRUE)
Index Slope Internal Function
Description
Index Slope Internal Function
Usage
Islope_(x, Data, reps = 100, yrsmth = 5, lambda = 0.4, xx = 0.2)
Arguments
x |
Iteration number |
Data |
An object of class |
reps |
Number of samples of the TAC |
yrsmth |
Years over which to calculate index |
lambda |
A gain parameter controlling the speed in update in TAC. |
xx |
Parameter controlling the fraction of mean catch to start using in first year |
Incremental Index Target MP
Description
A management procedure that incrementally adjusts the TAC (starting from reference level that is a fraction of mean recent catches) to reach a target CPUE / relative abundance index
Usage
Itarget1(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0, Imulti = 1.5)
Itarget2(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0, Imulti = 2)
Itarget3(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0, Imulti = 2.5)
Itarget4(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0.3, Imulti = 2.5)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which the average index is calculated. |
xx |
Parameter controlling the fraction of mean catch to start using in first year |
Imulti |
Parameter controlling how much larger target CPUE / index is compared with recent levels. |
Details
Four index/CPUE target MPs proposed by Geromont and Butterworth 2014. Tested by Carruthers et al. 2015.
The TAC is calculated as:
If I_\textrm{recent} \geq I_0
:
\textrm{TAC}= 0.5 \textrm{TAC}^* \left[1+\left(\frac{I_\textrm{recent} - I_0}{I_\textrm{target} - I_0}\right)\right]
else:
\textrm{TAC}= 0.5 \textrm{TAC}^* \left[\frac{I_\textrm{recent}}{I_0}^2\right]
where I_0
is 0.8 I_{\textrm{ave}}
(the average index over the 2 x yrsmth
years prior to the projection period),
I_\textrm{recent}
is the average index over the past yrsmth
years, and
I_\textrm{target}
is Imulti
times I_{\textrm{ave}}
,
and \textrm{TAC}^*
is:
(1-x)C
where x
is argument xx
and C is the average catch over the last 5 years of the historical period.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
Itarget1
: The less precautionary TAC-based MP -
Itarget2
: Increasing biologically precautionary TAC-based MP -
Itarget3
: Increasing biologically precautionary TAC-based MP -
Itarget4
: The most biologically precautionary TAC-based MP
Required Data
See Data-class
for information on the Data
object
Itarget1
: Cat, Ind, LHYear, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
Geromont, H.F., Butterworth, D.S. 2014. Generic management procedures for data-poor fisheries; forecasting with few data. ICES J. Mar. Sci. 72, 251-261. doi:10.1093/icesjms/fst232
See Also
Other Index methods:
GB_slope()
,
GB_target()
,
Gcontrol()
,
ICI()
,
Iratio()
,
Islope1()
,
Itarget1_MPA()
,
ItargetE1()
Examples
Itarget1(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Itarget2(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Itarget3(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Itarget4(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Itarget1 with an MPA
Description
A example mixed control MP that uses the Itarget1 output control MP together with a spatial closure.
Usage
Itarget1_MPA(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 5,
xx = 0,
Imulti = 1.5
)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to smooth recent estimates of surplus production |
xx |
Parameter controlling the fraction of mean catch to start using in first year |
Imulti |
Parameter controlling how much larger target CPUE / index is compared with recent levels. |
Details
The TAC is calculated as:
If I_\textrm{recent} \geq I_0
:
\textrm{TAC}= 0.5 \textrm{TAC}^* \left[1+\left(\frac{I_\textrm{recent} - I_0}{I_\textrm{target} - I_0}\right)\right]
else:
\textrm{TAC}= 0.5 \textrm{TAC}^* \left[\frac{I_\textrm{recent}}{I_0}^2\right]
where I_0
is 0.8 I_{\textrm{ave}}
(the average index over the 2 x yrsmth
years prior to the projection period),
I_\textrm{recent}
is the average index over the past yrsmth
years, and
I_\textrm{target}
is Imulti
times I_{\textrm{ave}}
,
and \textrm{TAC}^*
is:
(1-x)C
where x
is argument xx
and C is the average catch over the last 5 years of the historical period.
This mixed control MP also closes Area 1 to fishing.
This MP has been included for demonstration purposes of a mixed control MP.
Value
An object of class Rec-class
with the TAC, Spatial slot(s) populated
Required Data
See Data-class
for information on the Data
object
Itarget1_MPA
: Cat, Ind, LHYear, Year
Rendered Equations
See Online Documentation for correctly rendered equations
See Also
Other Index methods:
GB_slope()
,
GB_target()
,
Gcontrol()
,
ICI()
,
Iratio()
,
Islope1()
,
Itarget1()
,
ItargetE1()
Examples
Itarget1_MPA(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Incremental Index Target MP - Effort-Based
Description
A management procedure that incrementally adjusts the fishing effort to reach a target CPUE / relative abundance index
Usage
ItargetE1(x, Data, reps = 100, plot = FALSE, yrsmth = 5, Imulti = 1.5)
ItargetE2(x, Data, reps = 100, plot = FALSE, yrsmth = 5, Imulti = 2)
ItargetE3(x, Data, reps = 100, plot = FALSE, yrsmth = 5, Imulti = 2.5)
ItargetE4(x, Data, reps = 100, plot = FALSE, yrsmth = 5, Imulti = 2.5)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which the average index is calculated. |
Imulti |
Parameter controlling how much larger target CPUE / index is compared with recent levels. |
Details
Four index/CPUE target MPs proposed by Geromont and Butterworth 2014.
The TAE is calculated as:
If I_\textrm{recent} \geq I_0
:
\textrm{TAE}_y = 0.5 \textrm{TAE}_{y-1} \left[1+ \left( \frac{I_{\textrm{recent}} - I_0}{I_{\textrm{target}} - I_0} \right)\right]
else:
\textrm{TAE}_y= 0.5 \textrm{TAE}_{y-1} \left( \frac{I_{\textrm{recent}}}{I_0}^2 \right)
where I_0
is 0.8 I_{\textrm{ave}}
(the average index over the 2 x yrsmth
years prior to the projection period),
I_\textrm{recent}
is the average index over the past yrsmth
years, and
I_\textrm{target}
is Imulti
times I_{\textrm{ave}}
.
Value
An object of class Rec-class
with the TAE slot(s) populated
Functions
-
ItargetE1
: The less precautionary TAE-based MP -
ItargetE2
: Increasing biologically precautionary TAE-based MP -
ItargetE3
: Increasing biologically precautionary TAE-based MP -
ItargetE4
: The most biologically precautionary TAE-based MP
Required Data
See Data-class
for information on the Data
object
ItargetE1
: Ind, LHYear, MPeff, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
Geromont, H.F., Butterworth, D.S. 2014. Generic management procedures for data-poor fisheries; forecasting with few data. ICES J. Mar. Sci. 72, 251-261. doi:10.1093/icesjms/fst232
See Also
Other Index methods:
GB_slope()
,
GB_target()
,
Gcontrol()
,
ICI()
,
Iratio()
,
Islope1()
,
Itarget1_MPA()
,
Itarget1()
Examples
ItargetE1(1, MSEtool::Atlantic_mackerel, plot=TRUE)
ItargetE2(1, MSEtool::Atlantic_mackerel, plot=TRUE)
ItargetE3(1, MSEtool::Atlantic_mackerel, plot=TRUE)
ItargetE4(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Incremental Index Target MP Internal Function
Description
Incremental Index Target MP Internal Function
Usage
Itarget_(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0, Imulti = 1.5)
Arguments
x |
Iteration number |
Data |
An object of class |
reps |
Number of replicates |
plot |
Logical. Show the plot? |
yrsmth |
Years over which the average index is calculated. |
xx |
Parameter controlling the fraction of mean catch to start using in first year |
Imulti |
Parameter controlling how much larger target CPUE / index is compared with recent levels. |
Value
A named list with TAC of length reps
Incremental Index Target MP Internal Function - Effort MP
Description
Incremental Index Target MP Internal Function - Effort MP
Usage
Itargeteff_(x, Data, reps, plot, yrsmth, Imulti)
Arguments
x |
Iteration number |
Data |
An object of class |
reps |
Number of replicates |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to calculate index |
Imulti |
Parameter controlling how much larger target CPUE / index is compared with recent levels. |
Value
A named list with Effort recommendations
Length-Based SPR MPs
Description
The spawning potential ratio (SPR) is estimated using the LBSPR method and compared to a target of 0.4.
Usage
LBSPR(
x,
Data,
reps = 1,
plot = FALSE,
SPRtarg = 0.4,
theta1 = 0.3,
theta2 = 0.05,
maxchange = 0.3,
n = 5,
smoother = TRUE,
R = 0.2
)
LBSPR_MLL(
x,
Data,
reps = 1,
plot = FALSE,
SPRtarg = 0.4,
n = 5,
smoother = TRUE,
R = 0.2
)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
SPRtarg |
The target SPR |
theta1 |
Control parameter for the harvest control rule |
theta2 |
Control parameter for the harvest control rule |
maxchange |
Maximum change in effort |
n |
Last number of years to run the model on. |
smoother |
Logical. Should the SPR estimates be smoothed? |
R |
variance of sampling noise for smoother |
Details
Effort is modified according to the harvest control rules described in Hordyk et al. (2015b):
Value
An object of class Rec-class
with the TAE slot populated
Functions
-
LBSPR_MLL
: Fishing retention-at-length is set equivalent to slightly higher than the maturity curve if SPR < 0.4
Required Data
See Data-class
for information on the Data
object
LBSPR
: CAL, CAL_bins, L50, L95, LHYear, MPeff, Mort, Year, vbK, vbLinf, wlb
Rendered Equations
See Online Documentation for correctly rendered equations
References
Hordyk, A., Ono, K., Valencia, S., Loneragan, N., and Prince J (2015a). A novel length-based empirical estimation method of spawning potential ratio (SPR), and tests of its performance, for small-scale, data-poor fisheries, ICES Journal of Marine Science, 72 (1), 217-231
Hordyk, A. R., Loneragan, N. R., & Prince, J. D. (2015b). An evaluation of an iterative harvest strategy for data-poor fisheries using the length-based spawning potential ratio assessment methodology. Fisheries Research, 171, 20-32. https://doi.org/10.1016/j.fishres.2014.12.018
Examples
LBSPR(1, Data=MSEtool::SimulatedData, plot=TRUE)
LBSPR_MLL(1, Data=MSEtool::SimulatedData, plot=FALSE)
Internal Estimation Function for LBSPR MP
Description
Internal Estimation Function for LBSPR MP
Usage
LBSPR_(x, Data, reps, n = 5, smoother = TRUE, R = 0.2)
Arguments
x |
Iteration number |
Data |
An object of class |
reps |
Number of samples. Not used in this method. |
n |
Numeric. Number of historical years to run the model. |
smoother |
Logical. Should estimates be smoothed over multiple years? |
R |
variance of sampling noise |
Mean length-based indicator MP of Jardim et al. 2015
Description
The TAC is calculated as the most recent catch, modified by the ratio alpha, where the numerator is the mean length of the catch (of lengths larger than Lc) and the denominator is the mean length expected at MSY. Here, Lc is the length at full selection (LFS).
Usage
Lratio_BHI(x, Data, reps = 100, plot = FALSE, yrsmth = 3)
Lratio_BHI2(x, Data, reps = 100, plot = FALSE, yrsmth = 3)
Lratio_BHI3(x, Data, reps = 100, plot = FALSE, yrsmth = 3)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
The most recent years of data to smooth the calculation of the mean length |
Details
The TAC is calculated as:
\textrm{TAC}_y = C_{y-1} \frac{L}{L_\textrm{ref}}
where C_{y-1}
is the catch from the previous year, L
is the mean
length of the catch over the last yrsmth
years (of lengths larger than Lc) and L_\textrm{ref}
is the
mean length expected at MSY. Here, Lc is the length at full selection (LFS).
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
Lratio_BHI
: Assumes M/K = 1.5 and FMSY/M = 1. Natural mortality M and von Bertalanffy K are not used in this MP (see Appendix A of Jardim et al. 2015). -
Lratio_BHI2
: More general version that calculates the reference mean length as a function of M, K, and presumed FMSY/M. -
Lratio_BHI3
: A modified version of Lratio_BHI2 where mean length is calculated for lengths > modal length (Lc)
Required Data
See Data-class
for information on the Data
object
Lratio_BHI
: CAL, CAL_bins, Cat, LFS, vbLinf
Lratio_BHI2
: CAL, CAL_bins, Cat, FMSY_M, LFS, Mort, vbK, vbLinf
Lratio_BHI3
: CAL, CAL_bins, Cat, FMSY_M, LFS, Mort, vbK, vbLinf
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
Coded by Q. Huynh. Developed by Jardim et al. (2015)
References
Ernesto Jardim, Manuela Azevedo, Nuno M. Brites, Harvest control rules for data limited stocks using length-based reference points and survey biomass indices, Fisheries Research, Volume 171, November 2015, Pages 12-19, ISSN 0165-7836, https://doi.org/10.1016/j.fishres.2014.11.013
See Also
Other Length target MPs:
Ltarget1()
,
LtargetE1()
Examples
Lratio_BHI(1, Data=MSEtool::SimulatedData, plot=TRUE)
Lratio_BHI2(1, Data=MSEtool::SimulatedData, plot=TRUE)
Lratio_BHI3(1, Data=MSEtool::SimulatedData, plot=TRUE)
Step-wise Constant Catch
Description
A management procedure that incrementally adjusts the TAC according to the mean length of recent catches.
Usage
LstepCC1(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 5,
xx = 0,
stepsz = 0.05,
llim = c(0.96, 0.98, 1.05)
)
LstepCC2(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 5,
xx = 0.1,
stepsz = 0.05,
llim = c(0.96, 0.98, 1.05)
)
LstepCC3(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 5,
xx = 0.2,
stepsz = 0.05,
llim = c(0.96, 0.98, 1.05)
)
LstepCC4(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 5,
xx = 0.3,
stepsz = 0.05,
llim = c(0.96, 0.98, 1.05)
)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to calculate mean length. |
xx |
Parameter controlling the fraction of mean catch to start using in first year |
stepsz |
Parameter controlling the size of update increment in TAC or effort. |
llim |
A vector of length reference points that determine the conditions for increasing, maintaining or reducing the TAC or effort. |
Details
The TAC is calculated as:
\textrm{TAC} =
\left\{\begin{array}{ll}
\textrm{TAC}^* - 2 S\textrm{TAC}^* & \textrm{if } r < 0.96 \\
\textrm{TAC}^* - S \textrm{TAC}^* & \textrm{if } r < 0.98 \\
\textrm{TAC}^* & \textrm{if } > 1.058 \\
\end{array}\right.
where \textrm{TAC}^*
is (1-xx
) times average catch in the first year,
and previous catch in all projection years, S
is step-size determined by stepsz
,
and r
is the ratio of L_\textrm{recent}
and L_\textrm{ave}
which are mean length over the most recent yrsmth
years and 2 x yrsmth
historical
years respectively.
The conditions are specified in the llim
argument to the function.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
LstepCC1
: The least biologically precautionary TAC-based MP. -
LstepCC2
: More biologically precautionary thanLstepCC1
(xx
= 0.1) -
LstepCC3
: More biologically precautionary thanLstepCC2
(xx
= 0.2) -
LstepCC4
: The most precautionary TAC-based MP.
Required Data
See Data-class
for information on the Data
object
LstepCC1
: Cat, LHYear, ML, Year
LstepCC2
: Cat, LHYear, ML, Year
LstepCC3
: Cat, LHYear, ML, Year
LstepCC4
: Cat, LHYear, ML, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
Geromont, H.F., Butterworth, D.S. 2014. Generic management procedures for data-poor fisheries; forecasting with few data. ICES J. Mar. Sci. doi:10.1093/icesjms/fst232
Examples
LstepCC1(1, Data=MSEtool::SimulatedData, plot=TRUE)
LstepCC2(1, Data=MSEtool::SimulatedData, plot=TRUE)
LstepCC3(1, Data=MSEtool::SimulatedData, plot=TRUE)
LstepCC4(1, Data=MSEtool::SimulatedData, plot=TRUE)
Step-wise Constant Effort
Description
A management procedure that incrementally adjusts the total allowable effort (TAE) according to the mean length of recent catches.
Usage
LstepCE1(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 5,
stepsz = 0.05,
llim = c(0.96, 0.98, 1.05)
)
LstepCE2(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 5,
stepsz = 0.1,
llim = c(0.96, 0.98, 1.05)
)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to calculate trend in mean length. |
stepsz |
Parameter controlling the size of update increment in effort. |
llim |
A vector of length reference points that determine the conditions for increasing, maintaining or reducing the effort. |
Details
The TAE is calculated as:
\textrm{TAE} =
\left\{\begin{array}{ll}
\textrm{TAE}^* - 2 S\textrm{TAE}^* & \textrm{if } r < 0.96 \\
\textrm{TAE}^* - S \textrm{TAE}^* & \textrm{if } r < 0.98 \\
\textrm{TAE}^* & \textrm{if } > 1.058 \\
\end{array}\right.
where \textrm{TAE}^*
is effort in the previous year, S
is
step-size determined by stepsz
,
and r
is the ratio of L_\textrm{recent}
and L_\textrm{ave}
which are mean length over the most recent yrsmth
years and 2 x yrsmth
historical
years respectively.
The conditions are specified in the llim
argument to the function.
Value
An object of class Rec-class
with the TAE slot(s) populated
Functions
-
LstepCE1
: The least biologically precautionary effort-based MP. -
LstepCE2
: Step size is increased to 0.1
Required Data
See Data-class
for information on the Data
object
LstepCE1
: LHYear, ML, MPeff, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
Geromont, H.F., Butterworth, D.S. 2014. Generic management procedures for data-poor fisheries; forecasting with few data. ICES J. Mar. Sci. doi:10.1093/icesjms/fst232
See Also
LstepCC1
Examples
LstepCE1(1, Data=MSEtool::SimulatedData, plot=TRUE)
LstepCE2(1, Data=MSEtool::SimulatedData, plot=TRUE)
Length Target TAC MP
Description
A management procedure that incrementally adjusts the TAC to reach a target mean length in catches.
Usage
Ltarget1(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0, xL = 1.05)
Ltarget2(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0, xL = 1.1)
Ltarget3(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0, xL = 1.15)
Ltarget4(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0.2, xL = 1.15)
L95target(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xx = 0, xL = 1.05)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to calculate mean length. |
xx |
Parameter controlling the fraction of mean catch to start using in first year |
xL |
Parameter controlling the magnitude of the target mean length of catches relative to average length in catches. |
Details
Four target length MPs proposed by Geromont and Butterworth 2014. Tested by Carruthers et al. 2015.
The TAC is calculated as:
If L_\textrm{recent} \geq L_0
:
\textrm{TAC} = 0.5 \textrm{TAC}^* \left[1+\left(\frac{L_\textrm{recent}-L_0}{L_\textrm{target}-L_0}\right)\right]
else:
\textrm{TAC} = 0.5 \textrm{TAC}^* \left[\frac{L_\textrm{recent}}{L_0}^2\right]
where \textrm{TAC}^*
is (1 - xx
) mean catches from the last yrsmth
historical years (pre-projection),
L_\textrm{recent}
is mean length in last yrmsth
years, L_0
is (except for L95target
) 0.9 average catch in the last
2 x yrsmth
historical (pre-projection years) (L_\textrm{ave}
), and L_\textrm{target}
is
(except for L95target
) xL
L_\textrm{ave}
.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
Ltarget1
: The least biologically precautionary TAC-based MP. -
Ltarget2
: Increasingly biologically precautionary (xL
= 1.1). -
Ltarget3
: Increasingly biologically precautionary (xL
= 1.1). -
Ltarget4
: The most biologically precautionary TAC-based MP (xL
= 1.1,xx
=0.2). -
L95target
: Same as Ltarget1 but here the target and limit mean lengths are based on the length at maturity distribution rather than an arbitrary multiplicative of the mean length
Required Data
See Data-class
for information on the Data
object
Ltarget1
: Cat, LHYear, ML, Year
Ltarget2
: Cat, LHYear, ML, Year
Ltarget3
: Cat, LHYear, ML, Year
Ltarget4
: Cat, LHYear, ML, Year
L95target
: Cat, L50, LHYear, ML, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
Geromont, H.F., Butterworth, D.S. 2014. Generic management procedures for data-poor fisheries; forecasting with few data. ICES J. Mar. Sci. doi:10.1093/icesjms/fst232
See Also
Other Length target MPs:
Lratio_BHI()
,
LtargetE1()
Examples
Ltarget1(1, Data=MSEtool::SimulatedData, plot=TRUE)
Ltarget2(1, Data=MSEtool::SimulatedData, plot=TRUE)
Ltarget3(1, Data=MSEtool::SimulatedData, plot=TRUE)
Ltarget4(1, Data=MSEtool::SimulatedData, plot=TRUE)
L95target(1, Data=MSEtool::SimulatedData, plot=TRUE)
Length Target TAE MP
Description
A management procedure that incrementally adjusts the TAE to reach a target mean length in catches.
Usage
LtargetE1(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xL = 1.05)
LtargetE4(x, Data, reps = 100, plot = FALSE, yrsmth = 5, xL = 1.15)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to calculate mean length |
xL |
Parameter controlling the magnitude of the target mean length of catches relative to average length in catches. |
Details
Four target length MPs proposed by Geromont and Butterworth 2014. Tested by Carruthers et al. 2015.
The TAE is calculated as:
If L_\textrm{recent} \geq L_0
:
\textrm{TAE} = 0.5 \textrm{TAE}^* \left[1+\left(\frac{L_\textrm{recent}-L_0}{L_\textrm{target}-L_0}\right)\right]
else:
\textrm{TAE} = 0.5 \textrm{TAE}^* \left[\frac{L_\textrm{recent}}{L_0}^2\right]
where \textrm{TAE}^*
is the effort in the previous year,
L_\textrm{recent}
is mean length in last yrmsth
years, L_0
is (except for L95target
) 0.9 average catch in the last
2 x yrsmth
historical (pre-projection years) (L_\textrm{ave}
), and L_\textrm{target}
is
(except for L95target
) xL
L_\textrm{ave}
.
Value
An object of class Rec-class
with the TAE slot(s) populated
Functions
-
LtargetE1
: The least biologically precautionary TAE-based MP. -
LtargetE4
: ThexL
argument is increased to 1.15.
Required Data
See Data-class
for information on the Data
object
LtargetE1
: LHYear, ML, MPeff, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Carruthers et al. 2015. Performance evaluation of simple management procedures. ICES J. Mar Sci. 73, 464-482.
Geromont, H.F., Butterworth, D.S. 2014. Generic management procedures for data-poor fisheries; forecasting with few data. ICES J. Mar. Sci. doi:10.1093/icesjms/fst232
See Also
Other Length target MPs:
Lratio_BHI()
,
Ltarget1()
Examples
LtargetE1(1, Data=MSEtool::SimulatedData, plot=TRUE)
LtargetE4(1, Data=MSEtool::SimulatedData, plot=TRUE)
Mean Catch Depletion
Description
A simple average catch-depletion MP that was included to demonstrate just how informative an estimate of current stock depletion can be.
Usage
MCD(x, Data, reps = 100, plot = FALSE)
MCD4010(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
The TAC is calculated as:
\textrm{TAC} = 2 \bar{C} D
where \bar{C}
is mean historical catch, and D
is estimate of current
depletion.
The TAC is modified by a harvest control rule in MCD4010
.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
MCD
: The calculated TAC = 2 \* depletion \* AvC -
MCD4010
: Linked to a 40-10 harvest control rule
Required Data
See Data-class
for information on the Data
object
MCD
: Cat, Dep
MCD4010
: Cat, Dep
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
Examples
MCD(1, MSEtool::Atlantic_mackerel, plot=TRUE)
MCD4010(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Spatial closure and allocation management procedures
Description
Management procedures that close Area 1 to fishing and reallocate fishing effort spatially.
Usage
MRreal(x, Data, reps, plot = FALSE)
MRnoreal(x, Data, reps, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Value
An object of class Rec-class
with the Spatial slot(s) populated
Functions
-
MRreal
: A spatial control that prevents fishing in area 1 and reallocates this fishing effort to area 2 (or over other areas). -
MRnoreal
: A spatial control that prevents fishing in area 1 and does not reallocate this fishing effort to area 2.
Required Data
See Data-class
for information on the Data
object
MRreal
:
MRnoreal
:
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
Examples
MRreal(1, MSEtool::Atlantic_mackerel, plot=TRUE)
MRnoreal(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Intrinsic rate of Increase MP
Description
An MP proposed by Carl Walters that modifies the TAC according to trends in apparent surplus production that includes information from a demographically derived prior for intrinsic rate of increase
Usage
Rcontrol(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 10,
gg = 2,
glim = c(0.5, 2)
)
Rcontrol2(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 10,
gg = 2,
glim = c(0.5, 2)
)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
The number of years for smoothing catch and biomass data |
gg |
A gain parameters |
glim |
Limits for the change in TAC among years |
Details
The TAC is calculated as:
\textrm{TAC} = \textrm{SP} (1-gG)
where g
is a gain parameter, \textrm{SP}
is estimated surplus production,
and G
is:
For Rcontrol
: G = r (1-2D)
where r
is the estimated intrinsic rate
of increase, and D
is assumed depletion.
For Rcontrol2
: G = r - 2bB_\textrm{hist}
where B_\textrm{hist}
is the smoothed biomass overlast yrsmth
years and:
b = \sum{\frac{\textrm{SP}}{B_\textrm{hist}} - r} \frac{\sum{B_\textrm{hist}}}{\sum{B_\textrm{hist}^2}}
.
The TAC is subject to conditions limit the maximum change from the smoothed catch
over the last yrsmth
years by the glim
argument, e.g, default values of glim = c(0.5, 2)
means that maximum decrease in TAC is 50% of average catch and maximum increase
is 2 x average catch.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
Rcontrol
: Base versionRcontrol
-
Rcontrol2
: This is different fromRcontrol
because it includes a quadratic approximation of recent trend in surplus production given biomass
Required Data
See Data-class
for information on the Data
object
Rcontrol
: Abun, Cat, Dep, FMSY_M, Ind, L50, MaxAge, Mort, Year, steep, vbK, vbLinf, vbt0, wla, wlb
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
C. Walters and T. Carruthers
References
Made-up for this package.
See Also
Other Surplus production MPs:
Fadapt()
,
SPMSY()
,
SPSRA()
,
SPmod()
,
SPslope()
Examples
Rcontrol(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Rcontrol2(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
SBT simple MP
Description
An MP that makes incremental adjustments to TAC recommendations based on the apparent trend in CPUE, a an MP that makes incremental adjustments to TAC recommendations based on index levels relative to target levels (BMSY/B0) and catch levels relative to target levels (MSY).
Usage
SBT1(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 10,
k1 = 1.5,
k2 = 3,
gamma = 1
)
SBT2(x, Data, reps = 100, plot = FALSE, epsR = 0.75, tauR = 5, gamma = 1)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
The number of years for evaluating trend in relative abundance indices |
k1 |
Control parameter |
k2 |
Control parameter |
gamma |
Control parameter |
epsR |
Control parameter |
tauR |
Control parameter |
Details
For SBT1
the TAC is calculated as:
\textrm{TAC}_y =
\left\{\begin{array}{ll}
C_{y-1} (1+K_2 \left| \lambda \right| ) & \textrm{if } \lambda \geq 0 \\
C_{y-1} (1-K_1 \left| \lambda \right| ^\gamma) & \textrm{if } \lambda < 0\\
\end{array}\right.
where \lambda
is the slope of index over the last yrmsth
years, and
K_1
, K_2
, and \gamma
are arguments to the MP.
For SBT2
the TAC is calculated as:
\textrm{TAC}_y = 0.5 (C_{y-1} + C_\textrm{targ}\delta)
where C_{y-1}
is catch in the previous year, C_{\textrm{targ}}
is a target catch (Data@Cref
), and :
\delta=
\left\{\begin{array}{ll}
R^{1-\textrm{epsR}} & \textrm{if } R \geq 1 \\
R^{1+\textrm{epsR}} & \textrm{if } R < 1 \\
\end{array}\right.
where \textrm{epsR}
is a control parameter and:
R = \frac{\bar{r}}{\phi}
where \bar{r}
is mean recruitment over last tauR
years and \phi
is mean recruitment over last 10 years.
This isn't exactly the same as the proposed methods and is stochastic in this implementation. The method doesn't tend to work too well under many circumstances possibly due to the lack of 'tuning' that occurs in the real SBT assessment environment. You could try asking Rich Hillary at CSIRO about this approach.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
SBT1
: Simple SBT MP -
SBT2
: Complex SBT MP
Required Data
See Data-class
for information on the Data
object
SBT1
: Cat, Ind, Year
SBT2
: Cat, Cref, Rec
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
http://www.ccsbt.org/site/recent_assessment.php
Examples
SBT1(1, Data=MSEtool::SimulatedData, plot=TRUE)
SBT2(1, Data=MSEtool::SimulatedData, plot=TRUE)
Catch trend Surplus Production MSY MP
Description
An MP that uses Martell and Froese (2012) method for estimating MSY to determine the OFL. Since their approach estimates stock trajectories based on catches and a rule for intrinsic rate of increase it also returns depletion. Given their surplus production model predicts K, r and depletion it is straight forward to calculate the OFL based on the Schaefer productivity curve.
Usage
SPMSY(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
The TAC is calculated as:
\textrm{TAC} = D K \frac{r}{2}
where D
is depletion, K
is unfished biomass, and r
is
intrinsic rate of increasase, all estimated internally by the method based
on trends in the catch data and life-history information.
Requires the assumption that catch is proportional to abundance, and a catch time-series from the beginning of exploitation.
Occasionally the rule that limits r and K ranges does not allow r-K pairs to be found that lead to the depletion inferred by the catch trajectories. In this case this method widens the search.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
SPMSY
: Cat, L50, MaxAge, vbK, vbLinf, vbt0
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
Martell, S. and Froese, R. 2012. A simple method for estimating MSY from catch and resilience. Fish and Fisheries. DOI: 10.1111/j.1467-2979.2012.00485.x
See Also
Other Surplus production MPs:
Fadapt()
,
Rcontrol()
,
SPSRA()
,
SPmod()
,
SPslope()
Examples
SPMSY(1, Data=MSEtool::SimulatedData, plot=TRUE)
Surplus Production Stock Reduction Analysis
Description
A surplus production equivalent of DB-SRA that uses a demographically derived prior for intrinsic rate of increase (McAllister method, below)
Usage
SPSRA(x, Data, reps = 100, plot = FALSE)
SPSRA_ML(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Details
The TAC is calculated as:
\textrm{TAC} = K D \frac{r}{2}
where K
is estimated unfished biomass, D
is depletion, and r
is the estimated intrinsic rate of increase.
Like all SRA methods, this MP requires a time-series of catch extending from the beginning of exploitation.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
SPSRA
: Base version. Requires an estimate of current depletion -
SPSRA_ML
: Variant that uses a mean-length mortality estimator to obtain a prior for current stock depletion.
Required Data
See Data-class
for information on the Data
object
SPSRA
: Cat, Dep, FMSY_M, L50, MaxAge, Mort, steep, vbK, vbLinf, vbt0, wla, wlb
SPSRA_ML
: CAL, Cat, Dep, FMSY_M, L50, Lbar, Lc, MaxAge, Mort, Year, steep, vbK, vbLinf, vbt0, wla, wlb
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
McAllister, M.K., Pikitch, E.K., and Babcock, E.A. 2001. Using demographic methods to construct Bayesian priors for the intrinsic rate of increase in the Schaefer model and implications for stock rebuilding. Can. J. Fish. Aquat. Sci. 58: 1871-1890.
See Also
Other Surplus production MPs:
Fadapt()
,
Rcontrol()
,
SPMSY()
,
SPmod()
,
SPslope()
Examples
SPSRA(1, MSEtool::SimulatedData, plot=TRUE)
SPSRA_ML(1, MSEtool::SimulatedData, plot=TRUE)
Surplus Production Stock Reduction Analysis Internal Function
Description
Surplus Production Stock Reduction Analysis Internal Function
SPSRA Optimizer
Usage
SPSRA_(x, Data, reps = 100, dep = NULL)
SPSRAopt(lnK, dep, r, Ct, PE)
Arguments
x |
A position in a data-limited methods data object |
Data |
A data-limited methods data object (class DLM) |
reps |
The number of samples of the TAC taken for the calculation of the quota |
dep |
internal parameter |
lnK |
internal parameter |
r |
internal parameter |
Ct |
internal parameter |
PE |
internal parameter |
Functions
-
SPSRA_
: internal function -
SPSRAopt
: internal function
Surplus production based catch-limit modifier
Description
An MP that makes incremental adjustments to TAC recommendations based on the apparent trend in surplus production. Based on the theory of Mark Maunder (IATTC)
Usage
SPmod(x, Data, reps = 100, plot = FALSE, alp = c(0.8, 1.2), bet = c(0.8, 1.2))
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
alp |
Condition for modifying the TAC (bounds on change in abundance) |
bet |
Limits for how much the TAC can change among years |
Details
Note that this isn't exactly what Mark has previously suggested and is stochastic in this implementation.
The TAC is calculated as:
\textrm{TAC}_y =
\left\{\begin{array}{ll}
C_{y-1} \textrm{bet}_1 & \textrm{if } r < \alpha_1 \\
C_{y-1} & \textrm{if } \alpha_1 < r < \alpha_2 \\
\textrm{bet}_2 (b_2 - b_1 + C_{y-2} ) & \textrm{if } r > \alpha_2 \\
\end{array}\right.
where \textrm{bet}_1
and \textrm{bet}_2
are elements in bet
,
r
is the ratio of the index in the most recent two years, C_{y-1}
is catch in the previous year, b_1
and b_2
are ratio of index
in y-2
and y-1
over the estimate of catchability \left(\frac{I}{A}\right)
,
and \alpha_1
, \alpha_2
, and \alpha_3
are specified in argument
alp
.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
A numeric vector of TAC recommendations
Required Data
See Data-class
for information on the Data
object
SPmod
: Cat, Ind
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
http://www.iattc.org/Meetings/Meetings2014/MAYSAC/PDFs/SAC-05-10b-Management-Strategy-Evaluation.pdf
See Also
Other Surplus production MPs:
Fadapt()
,
Rcontrol()
,
SPMSY()
,
SPSRA()
,
SPslope()
Examples
SPmod(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Slope in surplus production MP
Description
A management procedure that makes incremental adjustments to TAC recommendations based on the apparent trend in recent surplus production. Based on the theory of Mark Maunder (IATTC)
Usage
SPslope(
x,
Data,
reps = 100,
plot = FALSE,
yrsmth = 4,
alp = c(0.9, 1.1),
bet = c(1.5, 0.9)
)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
yrsmth |
Years over which to smooth recent estimates of surplus production |
alp |
Condition for modifying the Data (bounds on change in abundance) |
bet |
Limits for how much the Data can change among years |
Details
Note that this isn't exactly what Mark has previously suggested and is stochastic in this implementation.
The TAC is calculated as:
\textrm{TAC}_y =
\left\{\begin{array}{ll}
M \bar{C} & \textrm{if } r < \alpha_1 \\
\bar{C} & \textrm{if } \alpha_1 < r < \alpha_2 \\
\textrm{bet}_2 \textrm{SP} & \textrm{if } r > \alpha_2 \\
\end{array}\right.
where r
is the ratio of predicted biomass in next year to biomass in
current year \bar{C}
is the mean catch over the last yrmsth
years, \alpha_1
and \alpha_2
are specified in alp
, \textrm{bet}_1
and \textrm{bet}_2
are specified in bet
, \textrm{SP}
is estimated surplus production in most recent year,
and:
M = 1-\textrm{bet}_1 \frac{B_y - \tilde{B}_y}{B_y}
where B_y
is the most recent estimate of biomass and \tilde{B}
is the predicted biomass in the next year.
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Required Data
See Data-class
for information on the Data
object
SPslope
: Abun, Cat, Ind, Year
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers
References
http://www.iattc.org/Meetings/Meetings2014/MAYSAC/PDFs/SAC-05-10b-Management-Strategy-Evaluation.pdf
See Also
Other Surplus production MPs:
Fadapt()
,
Rcontrol()
,
SPMSY()
,
SPSRA()
,
SPmod()
Examples
SPslope(1, Data=MSEtool::Atlantic_mackerel, plot=TRUE)
Yield Per Recruit analysis to get FMSY proxy F01
Description
A simple yield per recruit approximation to FMSY (F01) which is the position of the ascending YPR curve for which dYPR/dF = 0.1(dYPR/d0)
Usage
YPR(x, Data, reps = 100, plot = FALSE)
YPR_CC(x, Data, reps = 100, plot = FALSE, Fmin = 0.005)
YPR_ML(x, Data, reps = 100, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Fmin |
The minimum fishing mortality rate inferred from the catch-curve analysis |
Details
The TAC is calculated as:
\textrm{TAC} = F_{0.1} A
where F_{0.1}
is the fishing mortality (F) where the slope of the yield-per-recruit
(YPR) curve is 10\
The YPR curve is calculated using an equilibrium age-structured model with life-history and
selectivity parameters sampled from the Data
object.
The variants of the YPR MP differ in the method to estimate current abundance (see Functions section below). #'
Value
An object of class Rec-class
with the TAC
slot populated with a numeric vector of length reps
Functions
-
YPR
: Requires an external estimate of abundance. -
YPR_CC
: A catch-curve analysis is used to determine recent Z which given M (Mort) gives F and thus abundance = Ct/(1-exp(-F)) -
YPR_ML
: A mean-length estimate of recent Z is used to infer current abundance.
Required Data
See Data-class
for information on the Data
object
YPR
: Abun, LFS, MaxAge, vbK, vbLinf, vbt0
YPR_CC
: CAA, Cat, LFS, MaxAge, vbK, vbLinf, vbt0
YPR_ML
: CAL, Cat, LFS, Lbar, Lc, MaxAge, Mort, vbK, vbLinf, vbt0
Rendered Equations
See Online Documentation for correctly rendered equations
Note
Based on the code of Meaghan Bryan
Author(s)
Meaghan Bryan and Tom Carruthers
References
Beverton and Holt. 1954.
Examples
YPR(1, MSEtool::SimulatedData, plot=TRUE)
YPR_CC(1, MSEtool::SimulatedData, plot=TRUE)
YPR_ML(1, MSEtool::SimulatedData, plot=TRUE)
Internal function for YPR MPs
Description
Internal function for YPR MPs
Usage
YPR_(x, Data, reps = 100, Abun = NULL)
YPRopt(Linfc, Kc, t0c, Mdb, a, b, LFS, maxage, reps = 100)
Arguments
x |
Iteration number |
Data |
Object of class Data |
reps |
Number of reps |
Abun |
Optional numeric of length |
Linfc |
von Bertalanffy Linf |
Kc |
von Bertalanffy K |
t0c |
von Bertalanffy t0 |
a |
alpha parameter of L-W relationship |
b |
beta parameter of L-W relationship |
LFS |
Length at full selection |
maxage |
Maximum age |
Functions
-
YPR_
: Internal function for YPR MPs -
YPRopt
: YPR calculation function
Note
Yield per recruit estimate of FMSY Meaghan Bryan 2013
Fishing at current effort levels
Description
Constant fishing effort set at final year of historical simulations subject
to changes in catchability determined by OM@qinc
and interannual variability
in catchability determined by OM@qcv
. This MP is intended to represent a
'status quo' management approach.
Usage
curE(x, Data, reps, plot = FALSE)
curE75(x, Data, reps, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
Value
An object of class Rec-class
with the TAE slot(s) populated
Functions
-
curE
: Set effort to 100\ -
curE75
: Set effort to 75\
Required Data
See Data-class
for information on the Data
object
curE
:
curE75
:
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers.
Examples
curE(1, MSEtool::Atlantic_mackerel, plot=TRUE)
curE75(1, MSEtool::Atlantic_mackerel, plot=TRUE)
Internal demographic function
Description
Internal demographic function
Usage
demographic2(log.r, M, amat, sigma, K, Linf, to, hR, maxage, a, b)
demofn(log.r, M, amat, sigma, K, Linf, to, hR, maxage, a, b)
Arguments
log.r |
internal |
M |
internal |
amat |
internal |
sigma |
internal |
K |
internal |
Linf |
internal |
to |
internal |
hR |
internal |
maxage |
internal |
a |
internal |
b |
internal |
Functions
-
demofn
: Internal function
Internal function to estimate r
Description
Internal function to estimate r
Usage
getr(x, Data, Mvec, Kvec, Linfvec, t0vec, hvec, maxage, r_reps = 100)
Arguments
x |
iteration number |
Data |
Object of class |
Mvec |
M |
Kvec |
K |
Linfvec |
Linf |
t0vec |
t0 |
hvec |
steepness |
maxage |
maximum age |
r_reps |
number of reps |
Inverse von Bertalanffy
Description
Calculate the age given length from the vB equation
Usage
iVB(t0, K, Linf, L)
Arguments
t0 |
Hypothetical age when length is 0 |
K |
Growth coefficient |
Linf |
Asymptotic length |
L |
Length |
Size limit management procedures
Description
A set of size-selectivity MPs that adjust the retention curve of the fishery.
Usage
matlenlim(x, Data, reps, plot = FALSE)
matlenlim2(x, Data, reps, plot = FALSE)
minlenLopt1(x, Data, reps, plot = FALSE, buffer = 0.1)
slotlim(x, Data, reps, plot = FALSE)
Arguments
x |
A position in the data object |
Data |
A data object |
reps |
The number of stochastic samples of the MP recommendation(s) |
plot |
Logical. Show the plot? |
buffer |
Parameter controlling the fraction of Lopt to set the minimum length of fish caught: minlen=Lopt*(0.7+buffer). |
Details
The the LF5
and LFR
slots in the Rec
object are modified to change the
retention curve (length at 5 per cent and smallest length at full retention
respectively). A upper harvest slot limit can be set using the Rec@HS
slot.
The underlying selectivity pattern of the fishing gear does
not change, and therefore the performance of these methods depends on the
degree of discard mortality on fish that are selected by the gear but not
retained by the fishery (Stock@Fdisc
).
The level of discard mortality can be modified using the Rec@Fdisc
slot
which over-rides the discard mortality set in the operating model.
The selectivity pattern can be adjusted by creating MPs that modify the selection
parameters (Rec@L5
, Rec@LFS
and Rec@Vmaxlen
).
Value
An object of class Rec-class
with the Retention slot(s) populated
Functions
-
matlenlim
: Fishing retention-at-length is set equivalent to the maturity curve. -
matlenlim2
: Fishing retention-at-length is set slightly higher (110\ than the length-at-maturity -
minlenLopt1
: The minimum length of retention is set to a fraction of the length that maximises the biomass, Lopt. The aim of this simple MP is restrict the catch of small fish to rebuild the stock biomass towards the optimal length, Lopt, expressed in terms of the growth parameters Lopt=b/(M/k+b) (Hordyk et al. 2015) -
slotlim
: Retention-at-length is set using a upper harvest slot limit; that is, a minimum and maximum legal length. The maximum limit is set here, completely arbitrarily, as the 75th percentile between the new minimum legal length and the estimated asymptotic length Linf. This MP has been included to demonstrate an upper harvest slot limit.
Required Data
See Data-class
for information on the Data
object
matlenlim
: L50
matlenlim2
: L50
minlenLopt1
: Mort, vbK, vbLinf, wlb
slotlim
: L50, vbLinf
Rendered Equations
See Online Documentation for correctly rendered equations
Author(s)
T. Carruthers & A. Hordyk
HF Geromont
References
Hordyk, A., Ono, K., Sainsbury, K., Loneragan, N., and J. Prince. 2015. Some explorations of the life history ratios to describe length composition, spawning-per-recruit, and the spawning potential ratio ICES Journal of Marine Science, doi:10.1093/icesjms/fst235.
Examples
matlenlim(1, MSEtool::Atlantic_mackerel, plot=TRUE)
matlenlim2(1, MSEtool::Atlantic_mackerel, plot=TRUE)
minlenLopt1(1, MSEtool::Atlantic_mackerel, plot=TRUE)
slotlim(1, MSEtool::Atlantic_mackerel, plot=TRUE)