Segment effort rule with an optional choke-stock closure
Usage
hcr_effort(
sys,
Btrig = 0.5,
Blim = 0.25,
assess_cv = 0.2,
assess_rho = 0,
own_q = 0.5,
close = NULL,
close_q = 0.5,
max_change = Inf,
Emin = 0.1,
Btrig_close = Btrig,
assessed = NULL,
assign = NULL,
complexes = NULL,
complex_index = c("biomass", "cpue"),
aggregate = c("weighted", "min"),
seed = 1
)Arguments
- sys
an
ms_system.- Btrig, Blim
trigger and limit relative to Bmsy (effort rule). The default trigger is 0.5 Bmsy, i.e. at Bpa, as is common in ICES and GFCM advice.
Btrigmay be named by segment to set triggers by segment (e.g.c(trawl = 0.5, purse_seine = 0.8, small_scale = 0.5); unnamed segments get 0.5), or be a vector with one value per simulation row (a grid of triggers, as inms_tune_hcr()).- assess_cv, assess_rho
assessment error CV and its AR(1).
- own_q
a segment answers for a stock it catches as a main fishery: one of its metiers has >=
own_q(default 0.5) of the stock's highest catchability. Lower values (e.g. 0.2) also count by-catch.- close
stocks or complexes protected by a closure.
- close_q
métiers with >=
close_qof the stock's highest catchability are closed.- max_change
limit on the annual change of each segment's days, relative to the previous year (0.2 = at most 20% up or down), as for TAC changes. The first year starts from the reference days (fraction 1); a segment at zero (with
Emin = 0) can reopen from 5% of its reference days.- Emin
minimum effort: the lowest fraction of its reference days a segment is set to (at and below Blim), default 0.1. F scales with days, so the floor puts about
Eminx the reference F on each stock; 0 lets the rule close a segment completely.- Btrig_close
trigger of the closure.
- assessed, assign, complexes, complex_index
see Details.
- aggregate
how a segment's status is formed from the assessed B/Bmsy of the units it answers for:
"weighted"(default), the mean weighted by each unit's potential revenue for the segment (catchability on its metiers x price x K), so the stocks that make up its fishery drive its effort; or"min", the weakest link (the most depleted unit sets the segment's effort), a special, most precautionary case.- seed
seed of the rule's own random stream (assessment errors), kept apart from the simulation's, so rules compared with the same simulation seed see the same process and implementation errors.
Value
A rule function for the hcr argument of ms_simulate(), with attributes own, drive and units.
Details
Each year the assessed B/Bmsy of every stock is the true value times a
lognormal assessment error (CV assess_cv, AR(1) assess_rho). Each
segment's days are a fraction of its reference days, the caps passed to
ms_simulate(): normally the safeguarded-MMSY effort from ms_optimise()
(the "full" effort above the trigger), or the status-quo days. The
fraction ramps from Emin at Blim (and below) to 1 at Btrig (both
relative to Bmsy) of the segment's status: the value-weighted mean
(aggregate = "weighted") or the minimum ("min", weakest link) of the
assessed B/Bmsy of the units it catches as a main fishery (own_q). With
max_change, the first year starts from the current days relative to the
reference days, so the move from the status quo to the reference effort
is phased.
Stocks in close are protected by a closure instead: the open share of
the metiers that drive them (catchability >= close_q of the stock's
highest) follows the same ramp, and they are left out of the effort rule.
max_change limits the annual change of each segment's days relative to
the previous year.
Btrig (effort rule) and Btrig_close (closure) may be vectors with one
value per row of the simulation, so a grid of triggers runs in one call.
assign: nominal assignment of stocks to segments for management, a named
list segment -> stock names (as in practice: a species is "managed" through
one fleet although others catch it). It replaces the catchability-based
responsibility; segments without stocks are not constrained by the rule.
complexes: named list of stock complexes assessed as one unit (pooled
taxa, e.g. reef fish), the remaining stocks are single units. The complex
index is pooled B/Bmsy (complex_index = "biomass": sum B / sum Bmsy, as a
production model fitted to pooled catch and biomass) or a pooled catch rate
("cpue": taxa weighted by their catchability). close, assign and
assessed then refer to unit names (complexes or stocks).
assessed: names of the stocks with an assessment (default all). The rule
sees only these; a stock in close must be assessed.
Create a new rule for every simulation run (it keeps the last fraction and the assessment error between years).