Skip to contents

Optimization wrapper to find MSY using constrained optimization. Maximizes total catch while matching target fishery catch shares and avoiding extreme exploitation rates.

Usage

find_msy(
  data,
  lambda = 1e+05,
  control = list(eval.max = 1e+05, iter.max = 1e+05)
)

Arguments

data

A list of model data inputs. See msy_calc for required fields.

lambda

Numeric scalar, penalty weight for deviations from target catch shares (default = 1e5).

control

A list of control parameters passed to nlminb (default: eval.max = 100000, iter.max = 100000).

Value

A list of MSY reference points and optimization diagnostics:

MSY

Maximum sustainable yield (numeric scalar)

SSBmsy

Spawning biomass at MSY (numeric scalar)

MSY.f

MSY catch by fishery (numeric vector, length nfisheries)

Tbio

Total biomass age-2+ (numeric scalar)

Rec

Recruitment at MSY (numeric scalar)

SBR

Spawning biomass per recruit at MSY (numeric scalar)

SBR0

Unfished spawning biomass per recruit (numeric scalar)

Nage

Numbers-at-age at MSY (numeric vector, length last_age+1)

Rel

Survivorship-at-age (numeric vector, length last_age+1)

Rel2

Survivorship at start of season 2 (numeric vector, length last_age+1)

H1

Exploitation rate in season 1 by age (numeric vector, length last_age+1)

H2

Exploitation rate in season 2 by age (numeric vector, length last_age+1)

Fage

Fishing mortality by fishery and age (numeric matrix, dimensions nfisheries x (last_age+1))

Ftot_a

Total annualized fishing mortality by age (numeric vector, length last_age+1)

Rel_twt

Relative survivorship weighted by spawning weight (numeric vector, length last_age+1)

pen

Penalty for exploitation rates near 1 (numeric scalar)

cat_split

Estimated catch composition across fisheries at MSY (numeric vector, length nfisheries)

F_full

Optimized fully-selected F by fishery (numeric vector, length nfisheries)

convergence

Convergence code from nlminb (integer, 0 indicates success)

objective

Final objective function value (numeric scalar)

message

Convergence message from nlminb (character string)