9.10 Homework discussion and data

For the homework this week we will use a DLM to examine some of the time-varying properties of the spawner-recruit relationship for Pacific salmon. Much work has been done on this topic, particularly by Randall Peterman and his students and post-docs at Simon Fraser University. To do so, researchers commonly use a Ricker model because of its relatively simple form, such that the number of recruits (offspring) born in year \(t\) (\(R_t\)) from the number of spawners (parents) (\(S_t\)) is

\[\begin{equation} \tag{9.31} R_t = a S_t e^{-b S + v_t}. \end{equation}\]

The parameter \(a\) determines the maximum reproductive rate in the absence of any density-dependent effects (the slope of the curve at the origin), \(b\) is the strength of density dependence, and \(v_t \sim N(0,\sigma)\). In practice, the model is typically log-transformed so as to make it linear with respect to the predictor variable \(S_t\), such that

\[\begin{align} \tag{9.32} \text{log}(R_t) &= \text{log}(a) + \text{log}(S_t) -b S_t + v_t \\ \text{log}(R_t) - \text{log}(S_t) &= \text{log}(a) -b S_t + v_t \\ \text{log}(R_t/S_t) &= \text{log}(a) - b S_t + v_t. \end{align}\]

Substituting \(y_t = \text{log}(R_t/S_t)\), \(x_t = S_t\), and \(\alpha = \text{log}(a)\) yields a simple linear regression model with intercept \(\alpha\) and slope \(b\).

Unfortunately, however, residuals from this simple model typically show high-autocorrelation due to common environmental conditions that affect overlapping generations. Therefore, to correct for this and allow for an index of stock productivity that controls for any density-dependent effects, the model may be re-written as

\[\begin{align} \tag{9.33} \text{log}(R_t/S_t) &= \alpha_t - b S_t + v_t, \\ \alpha_t &= \alpha_{t-1} + w_t, \end{align}\]

and \(w_t \sim N(0,q)\). By treating the brood-year specific productivity as a random walk, we allow it to vary, but in an autocorrelated manner so that consecutive years are not independent from one another.

More recently, interest has grown in using covariates (\(e.g.\), sea-surface temperature) to explain the interannual variability in productivity. In that case, we can can write the model as

\[\begin{equation} \tag{9.34} \text{log}(R_t/S_t) = \alpha + \delta_t X_t - b S_t + v_t. \end{equation}\]

In this case we are estimating some base-level productivity (\(\alpha\)) plus the time-varying effect of some covariate \(X_t\) (\(\delta_t\)).

9.10.1 Spawner-recruit data

The data come from a large public database begun by Ransom Myers many years ago. If you are interested, you can find lots of time series of spawning-stock, recruitment, and harvest for a variety of fishes around the globe. Here is the website: https://www.ramlegacy.org/

For this exercise, we will use spawner-recruit data for sockeye salmon (Oncorhynchus nerka) from the Kvichak River in SW Alaska that span the years 1952-1989. In addition, we’ll examine the potential effects of the Pacific Decadal Oscillation (PDO) during the salmon’s first year in the ocean, which is widely believed to be a “bottleneck” to survival.

These data are in the atsalibrary package on GitHub. If needed, install using the devtools package.

library(devtools)
## Windows users will likely need to set this
## Sys.setenv('R_REMOTES_NO_ERRORS_FROM_WARNINGS' = 'true')
devtools::install_github("nwfsc-timeseries/atsalibrary")

Load the data.

data(KvichakSockeye, package = "atsalibrary")
SR_data <- KvichakSockeye

The data are a dataframe with columns for brood year (brood_year), number of spawners (spawners), number of recruits (recruits) and PDO at year \(t-2\) in summer (pdo_summer_t2) and in winter (pdo_winter_t2).

## head of data file
head(SR_data)
# A tibble: 6 x 5
# Groups:   brood_year [6]
  brood_year spawners recruits pdo_summer_t2 pdo_winter_t2
       <dbl>    <dbl>    <dbl>         <dbl>         <dbl>
1       1952       NA    20200         -2.79         -1.68
2       1953       NA      593         -1.2          -1.05
3       1954       NA      799         -1.85         -1.25
4       1955       NA     1500         -0.6          -0.68
5       1956     9440    39000         -0.5          -0.31
6       1957     2840     4090         -2.36         -1.78