diff --git a/assessments/yfs/doc/BSAIyfin.Rmd b/assessments/yfs/doc/BSAIyfin.Rmd deleted file mode 100644 index a6b3bb7..0000000 --- a/assessments/yfs/doc/BSAIyfin.Rmd +++ /dev/null @@ -1,1681 +0,0 @@ ---- -output: - pdf_document: default - word_document: default - html_document: - df_print: paged ---- - ---- -header-includes: - \usepackage{booktabs} - \usepackage{float} - \usepackage{graphicx} - \usepackage{floatrow} - \usepackage{caption} - \usepackage{subcaption} - \usepackage{subfigure} -geometry: - left=1in,right=1in,top=1in,bottom=1in ---- - -```{r global options, include=FALSE, message=FALSE} -library(here) -library(here) -library(adnuts) -library(ggplot2) -library(RColorBrewer) -library(doBy) -library(tidyr) -library(dplyr) -library(gridExtra) -library(tidyverse) -library(purrr) -library(stringr) -library(ggplot2) -library(knitr) -library(kableExtra) -options(knitr.kable.NA = '') -knitr::opts_knit$set(root.dir = '../../' ) -library(captioner) -library(bibtex) -library(knitcitations) -library(cowplot) -library(magick) -library(bookdown) -library(ggthemes) -library(scales) -library(gridExtra) -library(RColorBrewer) -library(ggridges) -require(knitr) -library(scales) -require(kfigr) # devtools::install_github("github mkoohafkan/kfigr") -opts_chunk$set(message=FALSE, warning=FALSE) - -table_nums <- captioner::captioner(prefix = "Table 4.",levels=1,auto_space = FALSE) -figure_nums <- captioner::captioner(prefix="Figure 4.",levels = 1, auto_space = FALSE) - -knitr::opts_chunk$set(fig.pos = 'H') -knitr::opts_chunk$set(echo = FALSE, warning = FALSE, message = FALSE, cache=FALSE,results="asis") -#clean_cache(clean = TRUE) - -thisyr = 2019 - - -#source("/Users/ingridspies/admbmodels/flatfish/assessments/R/prelims.R") -source("/Users/ingridspies/admbmodels/Katch/assessments/R/read-rep.R") -#source("/Users/ingridspies/admbmodels/flatfish/assessments/R/plot_m.R") -YFS0=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m0/fm.rep") -YFS1=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m1/fm.rep") -YFS2=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/fm.rep") -extra_sd2=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/extra_sd.rep",header=TRUE) -extra_sd1=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m1/extra_sd.rep",header=TRUE) -extra_sd0=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m0/extra_sd.rep",header=TRUE) -B0_2=formatC(1000*YFS2$Bzero,format="d",big.mark=",") -B0_1=formatC(1000*YFS1$Bzero,format="d",big.mark=",") -B0_0=formatC(1000*YFS0$Bzero,format="d",big.mark=",") - -ABC_this=1000*extra_sd2$ABC_HM[1] -ABC_next=1000*extra_sd2$ABC_HM[1] -TotBio_this=extra_sd2$GM_Biom[1]*1000 -TotBio_next=extra_sd2$GM_Biom[2]*1000 - -femcat=YFS2$catage_f/rowSums(YFS2$catage_f) -malcat=YFS2$catage_m/rowSums(YFS2$catage_m) - -#Base version M0.34,with fishlenlikelihood, stark mat -bigfile=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/bigfile.out",header=TRUE) - -percentiles=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/percentiles.out",nrows =1,header=TRUE) - -percentdb=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/percentdb.out") - -PABC_this=1000*mean(bigfile$ABC[which(bigfile$Yr==2020&bigfile$Alternative==1)])#average catch -PABC_thisF=formatC(PABC_this,format="d",big.mark=",") #pmeans from proejction - -PABC_next=1000*mean(bigfile$ABC[which(bigfile$Yr==2021&bigfile$Alternative==1)]) -PABC_nextF=formatC(PABC_next,format="d",big.mark=",") - -ABC_last=267500 -ABC_this=1000*extra_sd2$ABC_HM[1] -ABC_thisF=formatC(ABC_this,format="d",big.mark=",") - -ABC_next=1000*extra_sd2$ABC_HM[2] -ABC_nextF=formatC(ABC_next,format="d",big.mark=",") - -OFL_this=1000*extra_sd2$OFL_AM[1] -OFL_thisF=formatC(OFL_this,format="d",big.mark=",") - -OFL_next=1000*extra_sd2$OFL_AM[2] -OFL_nextF=formatC(OFL_next,format="d",big.mark=",") - -TotBio_this=1000*extra_sd2$GM_Biom[1] -TotBio_thisF=formatC(TotBio_this,format="d",big.mark=",") - -TotBio_next=1000*extra_sd2$GM_Biom[2] -TotBio_nextF=formatC(TotBio_next,format="d",big.mark=",") - -TotBio_last=2331500 -TotBio_lastF=formatC(TotBio_last,format="d",big.mark=",") - -FSB_this=1000*extra_sd2$SSB[1] -FSB_thisF=formatC(FSB_this,format="d",big.mark=",") - -FSB_next=1000*extra_sd2$SSB[2] -FSB_nextF=formatC(FSB_next,format="d",big.mark=",") - -FSB_last=796600 -FSB_lastF=formatC(FSB_last,format="d",big.mark=",") - -FABC_this=round(extra_sd2$HM_Fmsyr[1],3) - -FABC_next=round(extra_sd2$HM_Fmsyr[2],3) - -FOFL_this=round(extra_sd2$AM_Fmsyr[1],3) -FOFL_next=round(extra_sd2$AM_Fmsyr[2],3) - -Bmsy_this=1000*extra_sd2$Bmsy[1] -Bmsy_thisF=formatC(Bmsy_this,format="d",big.mark=",") - -Bmsy_next=1000*extra_sd2$Bmsy[2] -Bmsy_nextF=formatC(Bmsy_next,format="d",big.mark=",") - -catmo=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/YFScatch_OBSINT.csv",header=TRUE) - -#proportion caught before November 2014-2018 -prop=sum(catmo$TOTAL_WEIGHT[which(catmo$Month<11&catmo$Year<2019&catmo$Year>2013)])/sum(catmo$TOTAL_WEIGHT[which(catmo$Year<2019&catmo$Year>2013)]) - -catchZ=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/catch_YFS.csv",header=TRUE,skip=1) - -c10=catchZ$Total[(nrow(catchZ)-10):(nrow(catchZ)-1)] -cn=str_replace(c10, ",", "") -cn10=mean(as.numeric(cn))#average catch last 10 years -``` - ---- -title: 'Assessment of the Yellowfin Sole Stock\ in the Bering Sea and Aleutian Islands' - -#author:

"Ingrid Spies, Thomas K. Wilderbuer, Daniel G. Nichol, and James Ianelli"

-output: - pdf_document: - highlight: zenburn - html_document: default ---- - - -\begin{centering} -\fontfamily{cmr} -\fontsize{10}{12} - Ingrid Spies, Thomas K. Wilderbuer, Daniel G. Nichol, and James Ianelli\\ -\selectfont - Alaska Fisheries Science Center, National Marine Fisheries Service \\ - National Oceanic and Atmospheric Administration \\ - 7600 Sand Point Way NE., Seattle, WA 98115-6349 \\ - {`r format(Sys.time(), '%d %B, %Y')`}\\ -\end{centering} - -# Executive summary - -### Summary of changes in assessment inputs - -Relative to last year’s BSAI SAFE report, the -following substantive changes have been made in the BSAI Yellowfin Sole assessment. - -#### Changes in the data - - 1. The `r thisyr` NMFS eastern Bering Sea shelf bottom-trawl survey biomass estimates and standard error were included. - 2. The `r thisyr-1` fishery age composition was added. - 3. The `r thisyr-1` survey age composition was included. - 4. Estimates of the retained and discarded portions of the `r thisyr-1` catch were added. - 5. The estimate of the total catch made through the end of `r thisyr+1` was used. Catch of 150,000 t was assumed for the `r thisyr+1` and `r thisyr+2` projections. - -### Changes in the assessment methods - -Two models were considered in this assessment. - - 1. The model used in the `r thisyr-1` assessment, and updated with `r thisyr` data is referred to as Model 18.1a. Model 18.1a used the same natural mortality for males and females, M=0.12. Last year's model is referred to as Model 18.1. - - 2. A second model is presented (Model 18.2) that used a fixed value for female natural mortality (M=0.12) and allowed male natural mortality to be estimated within the model. Model 18.2 is the preferred model. - -## Summary of Results - -In `r thisyr` a new model was introduced based on the `r thisyr-1` Model 18.1 that retains female natural mortality fixed at 0.12 while allowing the model to estimate male natural mortality. This model is referred to as Model 18.2. Model 18.1 (and Model 18.1a) included the survey mean bottom temperature across stations < 100m as a covariate on survey catchability, as in previous years, but added survey start date as an additional covariate within the model, based on a recent study by Nichol et al. (2018). Model 18.2 retains these features. - -An unexpected 32% decrease in the NMFS eastern Bering Sea survey biomass was observed in `r thisyr-1`. In `r thisyr` the survey biomass was `r 100*round((YFS2$ob_bts[length(YFS2$yrs_srv)]/YFS2$ob_bts[length(YFS2$yrs_srv)-1])-1,2)`% higher than in `r thisyr-1` at `r formatC(YFS2$ob_bts[length(YFS2$yrs_srv)]*1000, format="d",big.mark=",")` t. Spawning biomass estimated by Model 18.2 remained high at `r round(FSB_this/Bmsy_this,2)` * $B_{MSY}$. Therefore, Yellowfin Sole continues to qualify for management under Tier 1a. Similar to recent years, the 1978-2013 age-1 recruitments and the corresponding spawning biomass estimates were used to fit the stock recruitment curve and determine the Tier 1 harvest recommendations. - -This assessment updates last year’s assessment with results and management quantities that are higher than the `r thisyr-1` assessment. This is due to a higher `r thisyr` survey biomass point estimate, `r 100*round((YFS2$ob_bts[length(YFS2$yrs_srv)]/YFS2$ob_bts[length(YFS2$yrs_srv)-1])-1,2)`% higher than the `r thisyr-1` estimate. Secondarily, the model estimated male natural mortality slightly higher than female natural mortality, `r round(YFS2$natmort_m,3)`, which increased biomass estimates. - -Catch as of October 28, `r thisyr` was `r catchZ$Total[nrow(catchZ)]` t. Over the past 5 years (`r thisyr-5` - `r thisyr-1`), `r 100*round(prop,4)`% of the catch has taken place by this date. Therefore, the full year's estimate of catch in `r thisyr` was `r formatC(as.numeric(str_replace(catchZ$Total[nrow(catchZ)],",",""))/prop,format="d",big.mark=",")` t. Future catch for the next 10 years, `r thisyr+1` - `r thisyr+10` was estimated as the mean of the past 10 years catch, `r formatC(cn10,format="d",big.mark=",")` t. - -Yellowfin Sole continue to be above $B_{MSY}$ and the annual harvest remains below the $ABC$ level. Management quantities are given in the following table for the `r thisyr-1` base model (Model 18.1a) and the `r thisyr` preferred model (Model 18.2). The projected estimate of total biomass for `r thisyr+1` was higher by `r (100*(round(TotBio_this/TotBio_last,2)))-100`% from the `r thisyr-1` assessment of `r TotBio_lastF` t, to `r TotBio_thisF` t. The model projection of spawning biomass for `r thisyr+1`, assuming catch for `r thisyr` as described above, was `r FSB_thisF` t, `r 100*round(FSB_this/FSB_last,2)`% of the projected `r thisyr+1` spawning biomass from the `r thisyr-1` assessment of `r FSB_lastF` t. The `r thisyr+1` and `r thisyr+2` ABCs using $F_{ABC}$ from this assessment model were higher than the `r thisyr-1` ABC of 249,100 t; `r ABC_thisF` t and `r ABC_nextF` t. The `r thisyr+1` and `r thisyr+2` OFLs estimated in this assessment were `r OFL_thisF` t and `r OFL_nextF` t. - -\begin{table}[ht] -\centering -\begin{tabular}{lrr|rr} - \hline - & \multicolumn{2}{c|}{As estimated or $\mathit{specified}$ } & \multicolumn{2}{c}{As estimated or $\mathit{recommended}$ } \\ - & \multicolumn{2}{c|}{$\mathit{last}$ year for:} & \multicolumn{2}{c}{$\mathit{this}$ year for: } \\ - Quantity & `r thisyr` &`r thisyr+1` & `r thisyr+1` &`r thisyr+2` \\ - \hline - M (natural mortality rate) & 0.12 & 0.12 & 0.12, 0.135 & 0.12,0.135 \\ -Tier & 1a & 1a & 1a & 1a \\ -Projected total (age 6+) biomass (t) & 2,388,000 t & 2,331,500 t & `r TotBio_thisF` t & `r TotBio_nextF` t \\ -Projected female spawning biomass (t) & 827,900 t & 796,600 t & `r FSB_thisF` t & `r FSB_nextF` t \\ -$\:\:\:\:\:\:B_{100\%}$ & 1,236,000 t & 1,236,000 t & `r B0_2` t & `r B0_2` t \\ -$\:\:\:\:\:\:B_{MSY\%}$ & 451,600 t & 451,600 t & `r Bmsy_thisF` t & `r Bmsy_nextF ` t \\ -$F_{OFL}$ & 0.118 & 0.118 & `r FOFL_this` & `r FOFL_next` \\ -$maxF_{ABC}$ & 0.107 & 0.107 & `r FABC_this` & `r FABC_next` \\ -$F_{ABC}$ & 0.107 & 0.107 & `r FABC_next` & `r FABC_next` \\ -$OFL$ & 281,800 t & 275,100 t & `r OFL_thisF` t & `r OFL_nextF` t \\ -$maxABC$ & 255,100 t & 249,100 t & `r ABC_thisF ` t & `r ABC_nextF ` t \\ -$ABC$ & 255,100 t & 249,100 t & `r ABC_thisF ` t & `r ABC_nextF` t \\ -\hline -Status & `r thisyr-2` & `r thisyr-1` & `r thisyr-1` & `r thisyr` \\ -\hline -Overfishing & No & n/a & No & n/a \\ -Overfished & n/a & No & n/a & No \\ -Approaching overfished & n/a & No & n/a & No \\ -\hline -\end{tabular} -\begin{tablenotes} -\item Projections were based on estimated catches of 118,642 t in `r thisyr` and `r formatC(cn10,format="d",big.mark=",")` used in place of maximum $ABC$ for `r thisyr+1`. -\end{tablenotes} -\end{table} - - - -## Responses to SSC and Plan Team Comments on Assessments in General - -_SSC December 2017_ - -1.The SSC reminds authors of the need to balance the desire to improve model fit with increased risk of model misspecification. - -_Authors' response_ - -Noted. - -_SSC December 2018_ - -1. The SSC requests that all authors fill out the risk table in 2019, and that the PTs provide comment on the author’s results in any cases where a reduction to the ABC may be warranted (concern levels 2-4). - -_Authors' response_ - -A risk table was included in this assessent. - -## Responses to SSC and Plan Team Comments Specific to this Assessment - -_SSC December 2018_ - -1. The SSC encourages further exploration of the way mortality is handled in the model, for example through the use of sex-specific or time-varying mortality and the authors noted that they may be able to explore this more fully in 2019. - -_Authors' response_ - -In the current assessment, a model was explored that used a fixed value for female natural mortality, and allowed male natural mortality to be estimated by within the model (Model 18.2). - -2. Given recent changes in the distribution of other species, the SSC encourages authors to explore variability over time in the proportion of the stock that occurs in the Northern Bering Sea. While the model may account for this portion of the stock through the catchability parameter this assumes that the fraction of the biomass occurring in the NBS has not changed substantially. There is little evidence for a change in the NBS biomass within the area that was surveyed in all three years, but this does not account for the possibly large fraction of Yellowfin Sole in nearshore areas that were not surveyed in 2018. The SSC suggests a few avenues to explore possible changes in distribution of Yellowfin Sole, including a comparison of the full NBS survey area between 2010 and 2017, the application of the VAST model to estimate the proportion of Yellowfin Sole in the NBS over time, and an examination of other available data sources, in particular the ADF&G survey in Norton Sound that has been conducted triennially since 1978 and annually since 2017. The SSC encourages the authors to consider approaches for including the substantial biomass of NBS Yellowfin Sole in the model, with the expectations that NBS surveys will be conducted regularly in the future. - -_Authors' response_ - -The distribution of Yellowfin Sole in the eastern Bering Sea is shown in `r figure_nums("NBS",display="cite")`, based on results from the four most recent NBS surveys. There does not appear to be a large shift in distribution since 2010. The biomass estimate of Yellowfin Sole in the NBS in 2010 was 310,617 t (95% CI: 215,238-405,997) and it increased to 520,029 t (95% CI: 398,122-641,936) in 2019. This is compared to a survey estimate of 2,006,510 t in the eastern Bering Sea in 2019. The distribution of Yellowfin Sole will continue to be monitored and approaches for including the substantial biomass of Yellowfin Sole in the NBS will be considered in future assessments. - -# Introduction - -The Yellowfin Sole (_Limanda aspera_) is one of the most abundant flatfish species in the eastern Bering Sea (EBS) and currently is the target of the largest flatfish fishery in the world. They inhabit the EBS shelf and are considered one stock. Abundance in the Aleutian Islands region is negligible. - -Yellowfin Sole are distributed in North American waters from off British Columbia, Canada, (approx. lat. 49$^{\circ}$N) to the Chukchi Sea (about lat. 70$^{\circ}$N) and south along the Asian coast off the South Korean coast in the Sea of Japan (to about lat. 35$^{\circ}$N). Adults exhibit a benthic lifestyle and occupy separate winter, spawning and summertime feeding distributions on the eastern Bering Sea shelf. From over-winter grounds near the shelf margins, adults begin a migration onto the inner shelf in April or early May each year for spawning and feeding. The directed fishery historically occurred from winter through autumn (Wilderbuer et al. 1992). Yellowfin Sole are managed as a single stock in the BSAI management area as there is presently no direct evidence of stock structure. - -# Data - -The data used in this assessment include estimates of total catch, bottom trawl survey biomass estimates and their attendant 95% confidence intervals, catch-at-age from the fishery, and population age composition estimates from the bottom trawl survey. Weight-at-age and proportion mature-at-age are also available from studies conducted during the bottom trawl surveys. - -Data source Year ---------------------------------------------------- ---------------------------- -Fishery catch 1954 - `r thisyr` -Fishery age composition 1964 - `r thisyr-1` -Fishery weight-at-age Avg. weight at age from 2008-2016 used for 2008-`r thisyr` -Survey biomass and standard error 1982 - `r thisyr` -bottom temperature 1982 - `r thisyr` -Survey age composition 1979 - `r thisyr-1` -Annual length-at-age and weight-at-age from surveys 1979 - `r thisyr-1` -Age at maturity Combined 1992 and 2012 samples ------------------------ - -_Fishery Catch and Catch-at-Age_ - -This assessment uses fishery catch data from 1954-`r thisyr` (`r table_nums("catch",display="cite")`), and fishery catch-at-age (proportions) from 1964-`r thisyr-1` (`r table_nums("catageprop",display="cite")`, 1975-`r thisyr-1`). The fishery age composition has always been primarily composed of fish older than 9 years with a large amount of 20+ fish, although the proportion has declined from 90% over age 7 to 70% over age 7 since the 1970's. - -_Age Determination_ - -Yellowfin Sole ages have been determined at the AFSC by using the break and burn method on otoliths collected in surveys and from fisheries since 1979. In 2016 the age determination methods for Yellowfin Sole were validated using the bomb-produced uptake measurement of 14C method (Kastelle et al. 2016). - -_Length and Weight-at-Age_ - -Past assessments of Yellowfin Sole have used sex-specific, time-invariant growth based on the average length-at-age and weight-at-length relationships from the time-series of survey observations summed over all years since 1982. These weight-at-age estimates were estimated from the von Bertalanffy growth curve. - -Parameters of the von Bertalanffy growth curve have been estimated for Yellowfin Sole, by sex, from the trawl survey database as follows: - -Sex $L_{inf}$ $K$ $t_0$ $n$ -------- ---------- ------- --------- ---- -Males 34.03 0.161 0.515 656 -Females 38.03 0.137 0.112 709 ------------------------------------------ - -A sex-specific length-weight relationship was also calculated from the survey database using the power function, -$Weight(g) = a*Length(cm)^b$, where $a$ and $b$ are parameters estimated to provide the best fit to the data (`r figure_nums("wtage",display="cite")`). - -Sex $a$ $b$ $n$ -------- --------- ------- ------- -Males 0.00854 3.081 2,701 -Females 0.0054 3.227 3,662 ---------------------------------- - -These estimates of weight at length were applied to the annual trawl survey estimates of population length at age, by sex, to calculate the weight at each age (`r figure_nums("wtage",display="cite")`). Since the resulting estimates of annual weight-at-age were highly variable for fish older than 11 years, ages 11-20 were smoothed using a five-year average smoothing method for 1982-`r thisyr`. - -Applications of dendrochronology (tree-ring techniques) have been used to develop biochronologies from the otolith growth increments of northern rock sole (_Lepidopsetta polyxystra_), Yellowfin Sole and Alaska plaice (_Pleuronectes quadrituberculatus_) in the eastern Bering Sea. These techniques ensure that all growth increments are assigned the correct calendar year, allowing for estimation of somatic growth by age and year for chronologies that span approximately 25 years (Matta et al. 2010). The analysis indicated that Yellowfin Sole somatic growth exhibits annual variability and has a strong positive correlation with May bottom water temperature in the Bering Sea (`r figure_nums("black",display="cite")`). - -The relationship between temperature and growth was further explored by reanalyzing Yellowfin Sole growth by age and year. Length-weight data collected when obtaining otolith (age) samples in RACE surveys (n=7,000 from 1987, 1994 and 1999-2009) also indicate that weight at age exhibits annual variability and is highly correlated with summer bottom water temperature observations with a lag of 2-3 years for the temperature effect to be seen (shown for age 5 fish in `r figure_nums("tempanom",display="cite")`). These observations were then extended back to 1979 using survey population length-at-age estimates (since weight-at-age is a power function of the length-at-age, Clark et al. 1999, Walters and Wilderbuer 2000). - -In order to incorporate time-varying (year effect on growth) and temperature-dependent growth functions into the age-structured stock assessment model we used the annual observed population mean weight-at-age (time-varying) from the trawl survey. These empirical data indicate good somatic growth correspondence with annual bottom temperature anomalies from 1982-`r thisyr` (`r figure_nums("tempanom",display="cite")`). Fishery weight at age data awere averaged across years for each age to provide updated estimates for the fishery. - -_Maturity-at-age_ - -Maturity information collected from Yellowfin Sole females during the 1992 and 1993 eastern Bering Sea trawl surveys have been used in this assessment for the past 20 years (`r table_nums("mature",display="cite")`). Nichol (1995) estimated the age of 50% maturity at 10.5 years based on the histological examination of 639 ovaries. Maturity has recently been re-evaluated from a histological analysis of ovaries collected in 2012 (`r table_nums("mature",display="cite")`). Results were very similar to the earlier study with only a 2% difference in estimates of Yellowfin Sole female spawning biomass (TenBrink and Wilderbuer 2015). In addition, the SSC requested that the assessment use a maturity schedule that uses estimates derived from both the 1992 and the 2012 collections (`r table_nums("mature",display="cite")`). For Yellowfin Sole sexual maturity occurs well after the age of entry into the fishery. Yellowfin Sole females are 82% selected to the fishery by age 10 whereas they have been found to be only 40% mature at this age. - -## Fishery - -Yellowfin Sole have annually been caught with bottom trawls on the Bering Sea shelf since the fishery began in 1954 and were overexploited by foreign fisheries in 1959-62 when catches averaged 404,000 t annually (`r figure_nums("catchfig",display="cite")`, top panel). As a result of reduced stock abundance, catches declined to an annual average of 117,800 t from 1963-71 and further declined to an annual average of 50,700 t from 1972-77. The lower yield in this latter period was partially due to the discontinuation of the U.S.S.R. fishery. In the early 1980s, after the stock condition had improved, catches again increased reaching a peak of over 227,000 t in 1985. - -During the 1980s, there was also a major transition in the characteristics of the fishery. Yellowfin Sole were traditionally taken exclusively by foreign fisheries and these fisheries continued to dominate through 1984. However, U.S. fisheries developed rapidly during the 1980s in the form of joint ventures, and during the last half of the decade began to dominate and then take all of the catch as the foreign fisheries were phased out of the EBS. Since 1990, only domestic harvesting and processing has occurred. - -The management of the Yellowfin Sole fishery changed significantly in 2008 with the implementation of Amendment 80 to the BSAI Fisheries Management Plan. The Amendment directly allocated fishery resources among BSAI trawl harvesters in consideration of their historic harvest patterns and future harvest needs in order to improve retention and utilization of fishery resources by the non-AFA trawl catcher/processor fleet. This was accomplished by extending the groundfish retention standards to all H&G vessels and also by providing the ability to form cooperatives within the newly formed Amendment 80 sector. In addition, Amendment 80 also mandated additional monitoring requirements which included observer coverage on all hauls, motion-compensating scales for weighing samples, flow scales to obtain accurate catch weight estimates for the entire catch, no mixing of hauls and no on-deck sorting. The partitioning of TAC and PSC (prohibited species catch) among cooperatives has significantly changed the way the annual catch has accumulated (Fig 4.1, bottom panel) and the rate of target catch per bycatch ton. There is now a more even and slow attainment of the annual catch relative to the pre-Amendment 80 fishing behavior. - -Yellowfin Sole are usually headed and gutted, frozen at sea, and then shipped to Asian countries for further processing (AFSC 2016). The first wholesale value of Alaska Yellowfin Sole totaled $97.8 million in 2014. From 2016 to 2017 the first wholesale price of all Bering Sea flatfish fisheries increased 16% to $192.9 million t and Yellowfin Sole price increased 19% year over year. In 2010, following a comprehensive assessment process, the Yellowfin Sole fishery was certified under the Marine Stewardship Council environmental standard for sustainable and well-managed fisheries. The certification also applies to all the major flatfish fisheries in the BSAI and GOA. The total annual catch (t) since implementation of the MFCMA in 1977 is shown in `r table_nums("catch",display="cite")`. - -In 2011, federally permitted vessels using non-pelagic trawl gear whose harvest resulted in flatfish retained catch that was greater than any other retained fishery category were required to use modified trawl gear. The modifications required the use of elevating devices to raise the section of the trawl warps between the doors and the trawl wing tips by 2.5 inches off the seafloor. The purpose of the management action was to reduce damage of non-target animals, particularly those that form habitat structure or support other fisheries while not substantially reducing flatfish catch rates or causing gear handling problems (Rose et al. 2010). - -In 2011, federally permitted vessels using non-pelagic trawl gear whose harvest results in flatfish retained catch that is greater than any other retained fishery category were required to use modified trawl gear. The modifications required the use of elevating devices to raise the section of the trawl warps between the doors and the trawl wing tips by 2.5 inches off the seafloor. The purpose of the management action was to reduce damage of non-target animals, particularly those that form habitat structure or support other fisheries while not substantially reducing flatfish catch rates or causing gear handling problems (Rose et al. 2010). - -The 1997 catch of 181,389 t (retained and discards) was the largest since the fishery became completely domestic, but decreased from 1998–2010, averaging 94,004 t (`r table_nums("retdis",display="cite")`). From 2011-2014 the catch increased, averaging 155,000 t. The 2013 catch totaled 165,000 t (73% of the ABC), the highest annual catch in the past 19 years. For `r thisyr`, the catch distribution has been spread out from January through May with the majority coming from four BSAI management areas (509, 513, 514, 517). - -As of mid-September `r thisyr`, the fishing season is ongoing. In order to estimate the total `r thisyr` catch for the stock assessment model, the average proportion of the `r thisyr-8`-`r thisyr-1` cumulative catch attained by the 35th week of the year (mid-September) was applied to the `r thisyr` catch amount at the same time period and results in a `r thisyr` catch estimate of 154,200 t (`r round(100*154200/ABC_this,2)`% of the ABC). - -The size composition of the `r thisyr` catch for both males and females, from observer sampling, are shown in `r figure_nums("obs_sizecomp",display="cite")`, the catch proportions by month and area are shown in `r figure_nums("pie_bymonth",display="cite")`. Maps of the locations where Yellowfin Sole were caught in `r thisyr`, by month (through mid-September), are shown in `r figure_nums("fishmo",display="cite")`. The average age of Yellowfin Sole in the `r thisyr-1` catch is estimated at `r round(sum(femcat[(nrow(femcat)-1),]*seq(1,20,1)),2)` and `r round(sum(malcat[(nrow(malcat)-1),]*seq(1,20,1)),2)` years for females and males, respectively. - -The time-series of catch in `r table_nums("catch",display="cite")` also includes Yellowfin Sole that were discarded in domestic fisheries from 1987 to the present. Annual discard estimates were calculated from at-sea sampling (`r table_nums("retdis",display="cite")`). The rate of discard has ranged from a low of 2% of the total catch in 2012 (and 2015) to 30% in 1992 and is estimated at 3% in the `r thisyr-1` fishery. The trend has been toward fuller retention of the catch in recent years, and with the advent of the Amendment 80 harvest practices, discarding is at its lowest level since these estimates have become available. Historically, discarding primarily occurred in the Yellowfin Sole directed fishery, with lesser amounts in the Pacific cod, Pollock, rock sole, flathead sole, and “other flatfish” fisheries (`r table_nums("retdiscat",display="cite")`). - -## Survey - -_Survey Biomass Estimates and Population Age Composition Estimates_ - -Indices of relative abundance available from AFSC surveys showed a major increase in the abundance of Yellowfin Sole during the late 1970s, increasing from 21 kg/ha in 1975 to 51 kg/ha in 1981 (Fig. 4.2 in Bakkala and Wilderbuer 1990). These increases have also been documented through Japanese commercial pair trawl data and catch-at-age modeling in past assessments (Bakkala and Wilderbuer 1990). - -Since 1981, the survey CPUEs have fluctuated widely (`r figure_nums("cpueline",display="cite")`). Biomass estimates for Yellowfin Sole from the annual bottom trawl survey on the eastern Bering Sea shelf are shown in `r table_nums("biomCI",display="cite")`, `r table_nums("NBS_bio",display="cite")` and `r figure_nums("srvCI",display="cite")`. The data show a doubling of survey biomass between 1975 and 1979 with a further increase to over 3.3 million t in 1981. Total survey abundance estimates fluctuated erratically from 1983 to 1990 with biomass ranging from as high as 3.5 million t in 1983 to as low as 1.9 million t in 1986. Biomass estimates since 1990 indicate an even trend at high levels of abundance for Yellowfin Sole, with the exception of the results from the 1999 and 2000 summer surveys, which were at lower levels. Surveys from 2001-2005 estimated an increase each year but the estimates since 2006 indicate a stable level with some annual variability. However, the 2012 estimate is a 19% decrease from 2011 and the 2013 and 2014 surveys have estimated a 17% increase over 2012. Similarly, there was a 24% decrease from 2014 to 2015 followed by a 48% increase from 2015 to 2016, the highest biomass estimate since 1984. Fluctuations of the magnitude shown between 1980 and 1990, 1998 and 1999, 2008 and 2009, 2011 and 2012, 2014 and 2015, and 2015 and 2016 are unreasonable considering the elements of slow growth and long life span of Yellowfin Sole combined with low to moderate exploitation rate, characteristics which should produce more gradual changes in abundance. - -Variability of Yellowfin Sole survey biomass estimates (`r figure_nums("srvCI",display="cite")`) is in part due to the availability of Yellowfin Sole to the survey area (Nichol 1998). Yellowfin Sole are known to undergo annual migrations from wintering areas off the shelf-slope break to near shore waters where they spawn throughout the spring and summer months (Nichol, 1995; Wakabayashi, 1989; Wilderbuer et al., 1992). Exploratory survey sampling in coastal waters of the eastern Bering Sea during early summer indicate that Yellowfin Sole concentrations can be greater in these shallower areas not covered by the standard AFSC survey than in the survey proper. Commercial bottom trawlers have commonly found high concentrations of Yellowfin Sole in areas such as near Togiak Bay (Low and Narita, 1990) and in more recent years from Kuskokwim Bay to just south of Nunivak Island. The coastal areas are sufficiently large enough to offer a substantial refuge for Yellowfin Sole from the current survey. - -Over the past 18 years, survey biomass estimates for Yellowfin Sole have shown a positive correlation with shelf bottom temperatures (Nichol, 1998); estimates have generally been lower during cold years. The 1999 survey, which was conducted in exceptionally cold waters, indicated a decline in biomass that was unrealistic. The bottom temperatures during the 2000 survey were much warmer than in 1999, and the biomass increased, but still did not approach estimates from earlier years. Average bottom temperature and biomass both increased again during the period 2001 – 2003, with the 2003 value the highest temperature and biomass observed over the 22 year time series up to that time. Given that both the 1999 and 2000 surveys were conducted two weeks earlier than previous surveys, it is possible that the time difference may also have also affected the availability of Yellowfin Sole to the survey. If, for example, the timing of peak Yellowfin Sole spawning in nearshore waters corresponded to the time of the survey, a greater proportion of the population would be unavailable to the standard survey area. This pattern was observed again in 2009 and 2012 when the temperatures and the bottom trawl survey point estimates were lower. Summer shelf bottom temperatures in 2012 were the 2nd coldest recorded by the survey and the time-series and resulted in a 19% decline from 2011. In 2016 the Bering Sea had the highest recorded bottom temperature since measurements began in 1982 and the 2016 estimate of biomass was the highest in 32 years and 48% higher than the 2015 estimate. The 2017 survey estimate of 2,787,700 t was 3% lower than 2016, but the 2018 estimate of 1,892,925 (another warm year) was down 32% from 2017. - -We propose two possible reasons why survey biomass estimates are lower during years when bottom temperatures are low. First, catchability may be lower because Yellowfin Sole may be less active when cold. Less active fish may be less susceptible to herding, and escapement under the footrope of survey gear may increase if fish are less active. Secondly, bottom temperatures may influence the timing of the inshore spawning migrations of Yellowfin Sole and therefore affect their availability to the survey area (Nichol et al. in review). Because Yellowfin Sole spawning grounds include nearshore areas outside the survey area, availability of fish within the survey area can vary with the timing of this migration and the timing of the survey. In the case of 2016, a very warm year in the Bering Sea, it appears that a higher portion of the adult biomass was distributed on the shelf (outside of the spawning areas) relative to the average of all previous survey years, indicating earlier spawning migration (`r figure_nums("cpuediff",display="cite")`). - -Yellowfin Sole population numbers-at-age estimated from the annual bottom trawl surveys are shown in `r table_nums("natagesrv",display="cite")` and their occurrence in trawl survey hauls and associated collections of lengths and age structures since 1982 are shown in `r table_nums("occurrence",display="cite")`. Their total tonnage caught in the resource assessment surveys since 1982 are listed in `r table_nums("rescat",display="cite")` and also in an appendix table with IPHC survey catches. - -_Northern Bering Sea survey_ - -Trawl survey sampling was extended to the northern Bering Sea in 2010, 2017, 2018, and 2019. The trawl surveys conducted in 2010, 2017, and 2019 occupied the same areas with similar sampling densities. The 2018 survey was a reduced effort and only sampled a subset of the northern Bering Sea. Stations in 2018 were 30 nautical miles apart (instead of 20 nm) and excluded Norton Sound and inshore areas north of Nunivak Island. For comparison among years (2010, 2017, 2018), biomass estimates were derived by truncating the areal coverage of the 2010 and 2017 surveys to include only the area covered in 2018 that was common to all three surveys, and this was treated as a single stratum (`r figure_nums("NBS",display="cite")`). This truncated area was 158,286 square kilometers (compared to 200,207 square kilometers in 2010 and 2017). There has been an increase in the biomass estimate of Yellowfin Sole in the northern Bering Sea since 2010; the estimate in 2010 was 310,617 t and the estimate in 2019 was 520,029 t. Since Yellowfin Sole fishing is presently prohibited in the northern Bering Sea, the biomass from this area is not included in the stock assessment model. Large shifts in the abundance of Yellowfin Sole into the Bering Sea have not been observed (`r figure_nums("NBS",display="cite")`), but the spatial distribution will continue to be monitored as shifts may occur under future climate change. - -# Analytic Approach - -## General Model Structure -The abundance, mortality, recruitment and selectivity of Yellowfin Sole were assessed with a stock assessment model using the AD Model Builder language (Fournier et al. 2012; Ianelli and Fournier 1998). The conceptual model is a separable catch-age analysis that uses survey estimates of biomass and age composition as auxiliary information (Fournier and Archibald 1982). The assessment model simulates the dynamics of the population and compares the expected values of the population characteristics to the characteristics observed from surveys and fishery sampling programs. This was accomplished by the simultaneous estimation of the parameters in the model using the maximum likelihood estimation procedure. The fit of the simulated values to the observable characteristics was optimized by maximizing a log(likelihood) function given some distributional assumptions about the observed data. - -The model starts at age one and fish older than twenty are allowed to accumulate into a plus group. Since the sex-specific weight-at-age for Yellowfin Sole diverges after age of maturity (about age 10 for 40% of the stock) with females growing larger than males, the current assessment model is coded to accommodate the sex-specific aspects of the population dynamics of Yellowfin Sole. The model allows for the input of sex-specific estimates of fishery and survey age composition and weight-at-age and provides sex-specific estimates of population numbers, fishing mortality, selectivity, fishery and survey age composition and allows for the estimation of sex-specific natural mortality and catchability. The model retains the utility to fit combined sex data inputs. - -The suite of parameters estimated by the model are classified by three likelihood components: - -Data component Distributional assumption ------------------------------------------ --------------------------- -Trawl fishery catch-at-age Multinomial -Trawl survey population age composition Multinomial -Trawl survey biomass estimates and S.E. Log-normal ----------------------------------------------------------------- - -The total log likelihood is the sum of the likelihoods for each data component (`r table_nums("liketab",display="cite")`). The likelihood components may be weighted by an emphasis factor, however, equal emphasis was placed on fitting each likelihood component in the Yellowfin Sole assessment except for the catch. The AD Model Builder software fits the data components using automatic differentiation (Griewank and Corliss 1991) software developed as a set of libraries (AUTODIFF C++ library). - -Sharp increases in trawl survey abundance estimates for most species of Bering Sea flatfish between 1981 and 1982 indicate that the 83-112 trawl was more efficient for capturing these species than the 400-mesh eastern trawl used in 1975, and 1979-81. Allowing the model to tune to these early survey estimates would most likely underestimate the true pre-1982 biomass, thus exaggerating the degree to which biomass increased during that period. Although this underestimate would have little effect on the estimate of current Yellowfin Sole biomass, it would affect the spawner and recruitment estimates for the time-series. Hence, the pre-1982 survey biomass estimates were omitted from the analysis. - -Total mortality $Z$ in the model was modeled as the sum of fishing mortality $F$ and natural mortality $M$, such that total mortality in year $t$ at age $a$ is $Z_{t,a}=F_{t,a}+M.$ - -Fishing mortality at each year and age, $F_{t,a}$, was the product of age-specific fishing gear selectivity $s_a$ and the median year-effect of fishing mortality ${\mu}^F$, with normally distributed error, $$F_{t,a}=s_a{{\mu}^F}e^{{\epsilon}^F_t}, {{\epsilon}^F_t}\backsim N(0,{{\sigma}_F^2}),$$ where ${\epsilon}^F_t$ is the residual year-effect of fishing mortality and ${\sigma}_F$ is the standard deviation of fishing mortality. Age-specific fishing selectivity $s_a$ was calculated using the logistic equation - -$$s_a={\displaystyle\frac{1}{1+e^{(-{\alpha}+age{\beta})}}}.$$ - -Catch in year $t$ for age $a$ fish $C_{t,a}$ was calculated: $$C_{t,a}={\displaystyle\frac{F_{t,a}}{Z_{t,a}}}(1-e^{Z_{t,a}})N_{t,a},$$ where $N_{t,a}$ is the number of fish at time $t$, age $a$. Total catch in each year $C_t$ was the sum of catch over all ages, $C_t={\sum_a}C_{t,a},$ and the proportion at age in catch was $P_{t,a}={\displaystyle\frac{C_{t,a}}{C_t}}.$ - -Recruitment from 1956-1975 was modeled as $N_{t,1}=R_{t}=R_{0}e^{\tau_{t}}, {\tau}_t \backsim\ N(0,\sigma^2_R)$, where $R_0$ is the geometric mean of the modeled age 1 recruitment from 1956-1975, and $\sigma_{R}$ is the standard deviation of recruitment. - -Recruitment from 1978-`r thisyr` was determined using the Ricker stock recruitment curve, $$R={\alpha}Se^{-{\beta}S}.$$ Parameters $\alpha$ and $\beta$ were estimated by fitting spawning biomass and recruitment during the period 1978-`r thisyr-6` (`r figure_nums("ricker",display="cite")`). - -The number of fish in year $t+1$ at age $a$ was the number of fish in the previous year subjected to natural and fishing mortality, $$N_{t+1,a+1}=N_{t,a}e^{-Z_{t,a}}.$$ - -The number of fish in a "plus group" which included all fish age 20 and older included fish surviving from age 19 as well as those age 20 and higher, $$N_{t+1,A}=N_{t,a}e^{-Z_{t,A-1}}+N_{t,A}e^{-Z_{t,A}}.$$ - -Spawning biomass was calculated as the product of weight at age and the number of mature females at each age, $$S_t={\sum}N_{t,a}W_{t,a}{\phi}_a,$$ where ${\phi}_a$ is the proportion of mature females at age $a$ and $W_{a,t}$ is the mean body weight in kg of fish age $a$ in year $t$. Survey biomass was assumed to be the product of catchability $q$, survey selectivity $s_a$, and the biomass, $$Biomass_{survey,t}=q{\sum}N_{t,a}W_{t,a}s_a.$$ - -The model of Yellowfin Sole population dynamics was evaluated with respect to the observations of the time-series of survey and fishery age compositions and the survey biomass trend since 1982. - -## Description of Alternative Models - -## Parameters Estimated Outside the Assessment Model - -Natural mortality ($M$) was initially estimated by a least squares analysis where catch at age data were fitted to Japanese pair trawl effort data while varying the catchability coefficient ($q$) and M simultaneously. The best fit to the data (the point where the residual variance was minimized) occurred at a value of $M$=0.12 (Bakkala and Wespestad 1984). This was also the value which provided the best fit to the observable population characteristics when M was profiled over a range of values in the stock assessment model using data up to 1992 (Wilderbuer 1992). Since then, natural mortality has been estimated as a free parameter in some of the stock assessment model runs which have been evaluated the past five years. A natural mortality value of 0.12 is used for both sexes in Model 18.1a and fixed female natural mortality at $M$=0.12 and male natural mortality estimated by the model is used in Model 18.2. - -Yellowfin Sole maturity schedules were estimated from in-situ observations from two studies as discussed in a previous section (`r table_nums("mature",display="cite")`). - - -## Parameter Estimates - -A list of selected parameters estimated inside the model are shown in `r table_nums("pars",display="cite")`. - -## Parameters Estimated Inside the Assessment Model - -There were 452 parameters estimated by the model. The number of key parameters are presented below: - -Fishing mortality Selectivity Survey catchability Year-class strength Spawner-recruit M Total ------------------- ------------- ----------------------- -------------------------- ---------------------- ----- ----- -67 272 4 106 2 1 452 ------------------------------------------------------------------------------------------------ - -The increase in the number of parameters estimated in this assessment compared to last year (7) can be accounted for by the input of another year of fishery data and the entry of another year class into the observed population, four more sex-specific fishery selectivity parameters, male natural mortality, and an additional catchability parameters. - -_Year Class Strengths_ - -The population simulation specifies the numbers-at-age in the beginning year of the simulation, the number of recruits in each subsequent year, and the survival rate for each cohort as it moves through the population over time. - -_Selectivity_ - -Fishery and survey selectivity was modeled separately for males and females using the two parameter formulation of the logistic function. The model was run with an asymptotic selectivity curve for the older fish in the fishery and survey, but still was allowed to estimate the shape of the logistic curve for young fish. The oldest year classes in the surveys and fisheries were truncated at 20 and allowed to accumulate into the age category 20+ years. A single selectivity curve, for both males and females, was fit for all years of survey data. - -Given that there have been annual changes in management, vessel participation and most likely gear selectivity, time-varying fishing selectivity curves were estimated. A logistic equation was used to model fishery selectivity and is a function of time-varying parameters specifying the age and slope at 50% selection, $\varphi_t$ and $\eta_t$ , respectively. The fishing selectivity ($S^f$) for age a and year t is modeled as, - -\begin{align} -S^f_{a,t}=[1+e^{\eta_t(a-\varphi_t)}]^{-1}, -\end{align} - -where $\varphi_t$ and $\eta_t$ are time-varying and partitioned (for estimation) into parameters representing the mean and a vector of deviations (log-scale) conditioned to sum to zero. The deviations are constrained by a lognormal prior with a variance that was iteratively estimated. The process of iterating was to first set the variance to a high value (diffuse prior) of $0.5^2$ and estimate the deviations. The next step was to compare the variability of model estimates. The variance of the model estimates were then rounded up slightly and fixed for subsequent runs. The 2016 values were fixed as the average of the 3 most recent years. Survey selectivity curves are shown in `r figure_nums("srvsel",display="cite")` and fishery selectiviyt in `r figure_nums("fshsel",display="cite")` - -_Fishing Mortality_ -The fishing mortality rates (F) for each age and year are calculated to approximate the catch weight by solving for F while still allowing for observation error in catch measurement. A large emphasis (300) was placed on the catch likelihood component to force the model to closely match the observed catch. - -_Survey Catchability_ -A past assessment (Wilderbuer and Nichol 2001) first examined the relationship between estimates of survey biomass and bottom water temperature. To better understand how water temperature may affect the catchability of Yellowfin Sole to the survey trawl, catchability was estimated for each year in the stock assessment model as: - -\begin{align} -q=e^{-{\alpha}+{\beta}T}, -\end{align} - -where $q$ is catchability, $T$ is the average annual bottom water temperature anomaly at survey stations less than 100 m, and $\alpha$ and $\beta$ are parameters estimated by the model. The catchability equation has two parts. The $e^-\alpha$ term is a constant or time-independent estimate of $q$. The second term, $e^{\beta*T}$ is a time-varying (annual) $q$ which responds to metabolic aspects of herding or distribution (availability) which can vary annually with bottom water temperature. The result of incorporating bottom temperature to estimate annual $q$ has resulted in an improved fit to the survey (described in the 2018 BSAI Yellowfin Sole assessment). - -In Model 18.1, a revised survey catchability model was introduced (in `r thisyr-1`), which included survey start date (expressed as deviation in days (- and +) from the average survey start date of June 4th). This feature was retained in the current model, and its interaction with annual bottom water temperature was added to the catchability equation as: - -\begin{align} -q=e^{-{\alpha}+{\beta}T+{\gamma}S+{\mu}T:S}, -\end{align} - -where $T$=survey bottom temperature (averaged per year for all stations <100 m), $S$=survey start date, and $T:S$=interaction of $T$ and $S$. Earlier survey start dates usually encounter colder water and since the timing of the survey start date is positively correlated with bottom water temperature, improvement in fitting the survey biomass estimates can be gained by estimating two new parameters ($\mu$ and $\gamma$). Akaike information criterion (AIC) were used to determine if the additional variables ($S$ and $T:S$) improved the regression fit. The improvement in fit was more than offset by the additional two parameters (Nichol et al. In review). - -_Spawner-Recruit Estimation_ - -Annual recruitment estimates from 1978-`r thisyr-6` were constrained to fit a Ricker (1958) form of the stock recruitment relationship as follows: - -\begin{align} -R={\alpha}Se^{-{\beta}S}, -\end{align} - -where $R$ is age 1 recruitment, $S$ is female spawning biomass in metric tons the previous year, and $\alpha$ and $\beta$ are parameters estimated by the model. The spawner-recruit fitting is estimated in a later phase after initial estimates of survival, numbers-at-age and selectivity are obtained. - -# Results - -## Model Evaluation - -The SSC determined in December 2006 that Yellowfin Sole would be managed under the Tier 1 harvest guidelines, and therefore future harvest recommendations would be based on maximum sustainable yield $MSY$ and the associated fishing effort $F_{MSY}$ values calculated from a spawner-recruit relationship. $MSY$ is an equilibrium concept and its value is dependent on both the spawner-recruit estimates which are assumed to represent the equilibrium stock size-recruitment relationship and the model used to fit the estimates. In the Yellowfin Sole stock assessment model, a Ricker form of the stock-recruit relationship was fit to various combinations of these data and estimates of $F_{MSY}$ and $B_{MSY}$ were calculated, assuming that the fit to the stock-recruitment data represents the long-term productivity of the stock. - -For this assessment, two models were examined. The first was the same model used in the 2018 assessment, Model 18.1a. The second model, Model 18.2, kept female natural mortality at M=0.12 as in previous years, but allowed the model to estimate male natural mortality. - -Experiments examining the bridle efficiency of the Bering Sea survey trawl indicate that Yellowfin Sole are herded into the trawl path from an area between the wing tips of the net and the point where the bridles contact the seafloor (Somerton and Munro 2001). The herding experiments suggest that the survey trawl vulnerability (a component of catchability) is greater than 1.0. The likelihood profile of $q$ from the model indicated a small variance with a narrow range of likely values with a low probability of $q$ being equal to the value of 1.0 in a past assessment (Wilderbuer and Nichol 2003). The trend in survey catchability was similar with Model 18.1a and Model 18.2, but the catchability was lower with Model 18.2 and estimates in some years were slightly over 1.0 (`r figure_nums("plotq",display="cite")`). - -The sex ratio, presented as the proportion female, was estimated to be slightly lower in Model 18.1a than Model 18.2 (`r figure_nums("sexratio",display="cite")`). Overall, the total likelihod was lower for Model 18.2, and provided a better fit to the survey and fishery ages, as well as an improvement to the fit to survey catchability (`r table_nums("liketab",display="cite")`). - -`r table_nums("Mcomparison",display="cite")` indicates that the ABC values from the Model 18.2 harvest scenario for `r thisyr+1` would be `r formatC(1000*(extra_sd2$ABC_HM[1]-extra_sd1$ABC_HM[1]),format="d",big.mark=",")` t higher than Model 18.2. This is due to the higher biomass resulting from an increased value of male natural mortality in Model 18.2. - -It is important for the Tier 1 calculations to identify which subset of the stock recruitment data is used. Using the full time series to fit the spawner recruit curve estimates that the stock is most productive at a small stock size. Thus $MSY$ and $F_{MSY}$ are relatively high values and $B_{MSY}$ is a lower value. If the stock was productive in the past at a small stock size because of non density-dependent factors (environment), then reducing the stock size to low levels could be detrimental to the long-term sustainability of the stock if the environment, and thus productivity, have changed from the earlier period. Since observations of Yellowfin Sole recruitment at low stock sizes are not available from multiple time periods, it is uncertain if future recruitment events at low stock conditions would be as productive as during the late 1960s-early 1970s. - -Given the uncertainty of the productivity of Yellowfin Sole at low spawning stock sizes, and because the AFSC policy for reference point time-series selection is to use the post 1977 regime shift values unless there is a compelling reason to do otherwise, the productivity of Yellowfin Sole in this assessment was estimated by fitting the 1977-`r thisyr-6` spawner-recruit data in the model (`r figure_nums("ricker",display="cite")`). - -A model that allowed $M$ to be estimated as a free parameter for males with females fixed at 0.12 provided a better fit to the sex ratio estimated from the annual trawl survey age compositions than did the base model (both sexes fixed at $M$ = 0.12). However, since the population sex ratio annually observed at the time of the survey is a function of the timing of the annual spawning in adjacent inshore areas, it is questionable that providing the best fit to these observations is really fitting the population sex ratio better. Thus, the model configuration which utilizes the relationship between annual seafloor temperature and survey start date to estimate survey catchability with $M$ fixed at 0.12 for both sexes (Model 18.1a) is the preferred model used to base the assessment of the condition of the Bering Sea Yellowfin Sole resource for the `r thisyr+1` fishing season. - -Given these results, Model 18.2 is the model of choice for estimating the Yellowfin Sole stock size and management quantities for the `r thisyr+1` fishing season. - -## Time Series Results - -The data was updated in `r thisyr` to include current values of catch, fishery and survey age compositions from `r thisyr-1`, and the `r thisyr` survey biomass and standard error estimates. The fishery and survey weights-at-age were also changed in a small amount to include the latest year of data. These changes produced Model 18.1a $ABC$ and $OFL$ estimates for `r thisyr+1` similar to the `r thisyr-1` assessment (Model 18.1) projections for 2019, `r ABC_thisF` t and `r ABC_nextF` t. Introduction of new `r thisyr` data produced a very similar spawner-recruit curve to Model 18.0. Model 18.2 produced slightly higher estimates for ABC and OFL than Model 18.1a due to the estimate of higher male natural mortality (`r table_nums("Mcomparison",display="cite")`). - -The 2018 overall estimate (1982 – 2019) of trawl survey catchability decreased from Model 18.1a to Model 18.2. This resulted in slightly higher model estimates of population numbers at age and biomass for the time-series back to 1992 relative to last year’s assessment and increased the estimated level of female spawning biomass. The model results indicate the stock has been in a slowly declining condition since 1994 (`r figure_nums("srvCI",display="cite")`). The five past years in the Bering Sea have had bottom temperature anomalies above the mean. The temperature-dependent $q$ adjustment for `r thisyr` was `r round(YFS2$q[38,2],2)`. - -_Fishing Mortality and Selectivity_ - -The assessment model estimates of the annual fishing mortality in terms of age-specific annual F and on fully selected ages are given in Tables 4.14 and 4.15, respectively. The full-selection $F$ has averaged 0.07 over the period of 1978-2018 with a maximum of 0.11 in 1978 and a minimum of 0.04 in 2001. Model estimated selectivities, `r figure_nums("srvsel",display="cite")` and `r figure_nums("fshsel",display="cite")` indicate that both sexes of Yellowfin Sole are 50% selected by the fishery at about age 9 and nearly fully selected by age 13, with annual variability. - -_Abundance Trends_ - -Model 18.2 estimated $q$ at an average value of `r round(mean(YFS2$q[,2]),2)` for the period 1982-`r thisyr` which resultd in the model estimate of the `r thisyr` age 2+ total biomass at `r formatC(1000*YFS2$TotBiom[66,2],format="d",big.mark=",")` t (`r table_nums("biomCI",display="cite")`). Model results indicate that Yellowfin Sole total biomass (age 2+) was at low levels during most of the 1960s and early 1970s (700,000-1,000,000 t) after a period of high exploitation (`r table_nums("biomCI",display="cite")`, `r figure_nums("BioFSBCI",display="cite")`). Sustained above average recruitment from 1967-1976 combined with light exploitation resulted in a biomass increase to a peak of 3.6 million t by 1985. The population biomass has since been in a slow decline as the strong 1981 and 1983 year-classes have passed through the population, with only the 1991, 1995 and 2003 year-classes at levels observed during the 1970s. The present biomass is estimated at `r 100*round(YFS2$TotBiom[66,2]/YFS2$TotBiom[32,2],2)`% of the peak 1985 level. - -The female spawning biomass has also declined since the peak in 1994, with a `r thisyr` estimate of `r formatC(1000*YFS2$SSB[66,2],format="d",big.mark=",")` t (`r figure_nums("BioFSBCI",display="cite")`). - -IGNORE THIS SECTION - WORK IN PROGRESS -_The fit to the trawl survey biomass estimates are shown in Figure 4.16. Allowing q to be correlated with annual bottom temperature and survey start date provides a better fit to the bottom trawl survey estimates than using a q fixed at the average value (Fig. 4.18). Table 4.19 lists the numbers of female spawners estimated by the model for all ages and years. The estimated average age of Yellowfin Sole in the population is 6.5 years for males and females. - -Both the trawl survey and the stock assessment model indicate that the Yellowfin Sole resource (total biomass) increased during the 1970s and early 1980s to a peak level during the mid-1980s. The Yellowfin Sole population biomass slowly decreased over the 23 years since the mid-1990s as the majority of year-classes during those years were below average strength. Average to above average recruitment from 2006 to 2009 is expected to maintain the abundance of Yellowfin Sole at a level above $B_{MSY}$ in the near future. The stock assessment projection model indicates a mildly decreasing trend in female spawning biomass through 2023 if the fishing mortality rate continues at the same level as the average of the past 5 years (Fig. 4.22)._ - -_Recruitment Trends_ - -WORK IN PROGRESS -_The primary reason for the sustained increase in abundance of Yellowfin Sole during the 1970s and early 1980s was the recruitment of a series of stronger than average year classes spawned in 1967-76 (Figure 4.19 and Table 4.20). The 1981 year class was the strongest observed (and estimated) during the 47 year period analyzed and the 1983 year class was also very strong. Survey age composition estimates and the assessment model also estimate that the 1987 and 1988 year classes were average and the 1991 and 1995 year classes were above average. With the exception of these 4 year classes, recruitment from 15 of the following 19 years estimated from 1984-2005 (since the strong 1983 year-class) were below the 48 year average, which caused the population to gradually decline. The 2003 year-class has now been observed multiple times in the age compositions and is clearly a strong year class, similar to some of the strong recruitment mentioned above and have contributed to the reservoir of spawning fish in the current population. In addition, recruitment from 2006-2009 appear also to be average to above average._ - -_Historical Exploitation Rates_ - -WORK IN PROGRESS -_Based on results from the stock assessment model, annual average exploitation rates of Yellowfin Sole since 1977 ranged from 3% to 7% of the total biomass, and have averaged 4% (Table 4.15). Posterior distributions of selected parameters from the preferred stock assessment model used in the assessment are shown in Figure 4.20. The values and standard deviations of some selected model parameters are listed in Table 4.21._ - -_Retrospective Analysis_ - -```{r, echo=FALSE, message=FALSE} - - -YFS2019=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_0.rep") -YFS2018retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_1.rep") -YFS2017retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_2.rep") -YFS2016retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_3.rep") -YFS2015retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_4.rep") -YFS2014retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_5.rep") -YFS2013retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_6.rep") -YFS2012retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_7.rep") -YFS2011retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_8.rep") -YFS2010retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_9.rep") -YFS2009retro=read.rep("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_10.rep") - - -a=-1*(YFS2019$SSB[1:65,2]-YFS2018retro$SSB[,2])/YFS2019$SSB[1:65,2] -b=-1*(YFS2019$SSB[1:64,2]-YFS2017retro$SSB[,2])/YFS2019$SSB[1:64,2] -c=-1*(YFS2019$SSB[1:63,2]-YFS2016retro$SSB[,2])/YFS2019$SSB[1:63,2] -d=-1*(YFS2019$SSB[1:62,2]-YFS2015retro$SSB[,2])/YFS2019$SSB[1:62,2] -e=-1*(YFS2019$SSB[1:61,2]-YFS2014retro$SSB[,2])/YFS2019$SSB[1:61,2] -f=-1*(YFS2019$SSB[1:60,2]-YFS2013retro$SSB[,2])/YFS2019$SSB[1:60,2] -g=-1*(YFS2019$SSB[1:59,2]-YFS2012retro$SSB[,2])/YFS2019$SSB[1:59,2] -h=-1*(YFS2019$SSB[1:58,2]-YFS2011retro$SSB[,2])/YFS2019$SSB[1:58,2] -i=-1*(YFS2019$SSB[1:57,2]-YFS2010retro$SSB[,2])/YFS2019$SSB[1:57,2] -j=-1*(YFS2019$SSB[1:56,2]-YFS2009retro$SSB[,2])/YFS2019$SSB[1:56,2] - -Rho=(a[length(a)]+b[length(b)]+c[length(c)]+d[length(d)]+e[length(e)]+ - f[length(f)]+g[length(g)]+h[length(h)]+i[length(i)]+j[length(j)])/10; - -thisyr=2019 -``` - -A within-model retrospective analysis was included for the recommended assessment model (Model 18.2). In this analysis, retrospective female spawning biomass was calculated by sequentially dropping data one year at a time and then comparing the peeled estimate to the reference stock assessment model used in the assessment (`r figure_nums("retro1",display="cite")`). Mohn's rho was `r Rho` using this model. A similar retrospective pattern was observed as in similar yeaars, in which earlier retrospective years indicated a lower level of spawning biomass than the current year's data (`r figure_nums("retro1",display="cite")`). The difference in female spawning biomass was negative for all years, except for the most recent, 2018 (`r figure_nums("retro2",display="cite")`). - -There is a large amount of variability in the annual survey biomass of Yellowfin Sole due to the temperature-influenced availability to the survey. This large variability can contribute to undesirable retrospective patterns since earlier years do not fit the same highly variable information as the current year. In particular, retrospective model runs are outside the confidence intervals of the assessment model spawning biomass trajectory for about a 17 year period from 1986-`r thisyr`. - -In the 2017 assessment it was demonstrated that low values of Mohn’s rho and desirable retrospective patterns of female spawning biomass were obtainable if lower values of $M$ and $q$ were used relative to the base model. The Plan Team and SSC requested a plot of the model-estimated female spawning biomass trajectory that reduced the retrospective pattern using $M$ fixed at 0.09 and $q$=1.0 on top of the estimated female spawning biomass trajectory with confidence interval from the assessment. - -The retrospective technique may not always be the best tool for model selection, at least for BSAI yellowfin sole as there is tension between model fit and good retrospective pattern over the range of parameterization examined. - -The Plan Team recommended that the assessment continue to explore the retrospective patterns in relation to M and q by profiling over a range of combinations of M and q and recording the resulting values of Mohn’s rho and also total likelihood. This was accomplished using data through 2018 and yielded the following results. - -Profiling over $M$ and $q$ was also performed in the 2018 assessment. The best retrospective patterns did not occur at corresponding best model fit values The retrospective technique may not always be the best tool for model selection, at least for BSAI Yellowfin Sole as there is tension between model fit and good retrospective pattern over the range of parameterization examined. - -# Risk assessment table - -## Assessment related considerations - -The BSAI Yellowfin Sole assessment is based on surveys conducted annually on the EBS shelf from 1982-2018 (no skipped years). Fish ages, derived from otoliths collected during the surveys and the fishery to calculate annual estimates of population and fishery age composition, have been validated. The assessment model exhibits good fits to all compositional and abundance data and converges to a single minima in the likelihood surface. Recruitment estimates track strong year classes that are consistent with the data. - -The retrospective pattern from the current assessment model was less than desirable and has been the subject of some concern for the assessment. Peculiar to the Yellowfin Sole assessment, in comparison to the northern rock sole and Alaska plaice assessments (that have nice patterns), is the large amount of variability in the annual survey biomass assessments for this stock due to the temperature-influenced availability to the survey. This large variability in the annual estimates can contribute to undesirable patterns since the earlier years are not fitting the same highly variable information as the current year. - -In the 2017 assessment it was demonstrated that low values of Mohn’s rho and desirable retrospective patterns of female spawning biomass were obtainable if lower values of M and q were used relative to the base model. However, the best retrospective patterns do not occur at the corresponding values of best overall model fit of M and q (which occur at higher levels of M and q). The retrospective technique may not always be the best tool for model selection, at least for BSAI Yellowfin Sole as there is tension between model fit and good retrospective pattern over the range of parameterization examined. - -## Population dynamics considerations - -Stock assessment model results indicate that Yellowfin Sole total biomass (age 2+) was at low levels during most of the 1960s and early 1970s (700,000-1,000,000 t) after a period of high exploitation. Sustained above average recruitment from 1967-76 combined with light exploitation resulted in a biomass increase to a peak of 3.6 million t by 1985. The population biomass has since been in a slow decline as the strong 1981 and 1983 year-classes have passed through the population, with only the 1991, 1995 and 2003 year-classes at levels observed during the 1970s, although the 2006-2010 year-classes all look about average according to the 2018 stock assessment. The present biomass is estimated at 78% of the peak 1985 level and is at twice the level of BMSY. Projections indicate that the FSB will remain well-above the BMSY level through 2028. Population dynamics are not a concern for this assessment. - -## Environmental/ecosystem considerations - -It is unknown how particular environmental factors affect the sustainability of Yellowfin Sole. It has been demonstrated that the migration to spawning grounds and subsequent spawning occurs sooner in warm years. Somatic growth has also been shown to increase in warmer temperatures. The prey field for this species consists primarily of polycheate worms and clam siphons, species whose distribution and abundance patterns relative to a changing environment are unknown. It is also unknown what effect environmental variability has on the distribution of Yellowfin Sole predators. Given the high level of sustained abundance of this species, there is a low level of concern for a variable environment, at least for the levels observed over the past 40 years. -These results are summarized in the table below. - -## Fishery performance considerations - -Recent surveys of the northern Bering sea have not indicated a large shift in the spatial distribution of the eastern Bering Sea stock of Yellowfin Sole. If the stock moves northward out of the eastern Bering Sea under climate change into untrawlable areas in the northern Bering sea, then fisheries would be unable to target the stock in the untrawlable zone. A NOAA Coastal and Oceans Climate Applications proposal will be submitted examine the implications to the fishery and the region of the northern Bering Sea if the stock of Yellowfin Sole shifts northward. At the current time, fishery CPUE is not showing a contrasting pattern from the stock biomass trend, unusual spatial pattern of fishing, or changes in the percent of TAC taken, changes in the duration of fishery openings. - -\begin{table}[ht] -\centering -\begin{tabular}{ p{3cm}p{3cm}p{3cm}p{3cm}p{3cm} } -\hline - Assessment \newline consideration & Population \newline dynamics & Environmental \newline ecosystem & Fishery \newline performance & Overall \\ -\hline - Level 1: Only minor, low level of concern & Level 1: Stock trends are typical for the stock and expected given stock dynamics; recent recruitment is within the normal range. & Level 1: Stock trends are typical for the stock and expected given stock dynamics; recent recruitment is within the normal range. & Level 1: No apparent environmental/ecosystem concerns & Level 1: Normal. \\ -\hline -\end{tabular} -\end{table} - -## Harvest Recommendations -```{r,echo=FALSE} -library(knitr) - -thisyr = 2019 -``` - - -_Scenario Projections and Two-Year Ahead Overfishing Level_ - -In addition to the seven standard harvest scenarios, Amendments 48/48 to the BSAI and GOA Groundfish Fishery Management Plans require projections of the likely OFL two years into the future. The `r thisyr` numbers at age from the stock assessment model are projected to 2019 given the 2018 catch and then a 2019 catch of 150,000 t is applied to the projected 2019 population biomass to obtain the 2020 $OFL$. - -The SSC has determined that Yellowfin Sole qualify as a Tier 1 stock and therefore the `r thisyr+1` $ABC$ is calculated using Tier 1 methodology. The Tier 1 harvest level is calculated as the product of the harmonic mean of $F_{MSY}$ and the geometric mean of the `r thisyr+1` biomass estimate. - -The geometric mean of the `r thisyr+1` biomass estimate, $B_{gm}$, is estimated using the equation $$B_{gm}=e^{ln(B)-(cv^2/2)},$$ -where $B$ is the point estimate of the `r thisyr+1` biomass from the stock assessment model and $cv^2$ is the coefficient of variation of the point estimate (a proxy for sigma). The harmonic mean of $F_{MSY}$, $F_{har}$ is estimated as $F_{har}=e^{ln(F_{MSY}-(ln(sd^2)/2)}$, where $F_{MSY}$ is the peak mode of the $F_{MSY}$ distribution and $sd^2$ is the square of the standard deviation of the $F_{MSY}$ distribution. - -In 2006 the SSC selected the 1978-2001 data set for the Tier 1 harvest recommendation. Using this approach for the `r thisyr+1` harvest (now the 1978-2013 time-series) recommendation ((Model 18.2), the $F_{ABC}$ = $F_{harmonic_mean}$ = `r FABC_this`. The estimate of age 6+ total biomass for `r thisyr+1` is `r TotBio_thisF` t. The calculations outlined above give a Tier 1 ABC harvest recommendation of `r ABC_thisF` t and an $OFL$ of `r OFL_thisF` t for `r thisyr+1`. This results in an `r 100*(1-round(ABC_this/OFL_this,2))` % (`r formatC(OFL_this-ABC_this,format="d",big.mark=",")` t) buffer between ABC and OFL. The ABC value is % lower than last year, primarily due to the 32% decline in the survey estimate from `r thisyr-1` to `r thisyr`. - -The stock assessment analysis must also consider harvest limits, usually described as overfishing fishing mortality levels with corresponding yield amounts. Amendment 56 to the BSAI FMP sets the Tier 1 harvest limit at the $F_{MSY}$ fishing mortality value. The overfishing fishing mortality values, ABC fishing mortality values and their corresponding yields are given as follows: - -Harvest level F value `r thisyr+1` Yield ------------------------------------------ ------------ -------------------- -Tier 1 $F_{OFL}$ = $F_{MSY}$ `r FOFL_this` 289,900 t -Tier 1 $F_{ABC}$ = $F_{harmonic_mean}$ `r FABC_this` 263,200 t ----------------------------------------------------------------- - -_Status Determination_ - -A standard set of projections is required for each stock managed under Tiers 1, 2, or 3 of Amendment 56. This set of projections encompasses seven harvest scenarios designed to satisfy the requirements of Amendment 56, the National Environmental Policy Act, and the 1977 Magnuson-Stevens Fishery Conservation and Management Act (MSFCMA). - -For each scenario, the projections begin with the vector of `r thisyr` numbers at age estimated in the assessment. This vector is then projected forward to the beginning of `r thisyr+1` using the schedules of natural mortality and selectivity described in the assessment and the best available estimate of total (year-end) catch for `r thisyr`. In each subsequent year, the fishing mortality rate is prescribed on the basis of the spawning biomass in that year and the respective harvest scenario. In each year, recruitment is drawn from an inverse Gaussian distribution whose parameters consist of maximum likelihood estimates determined from recruitments estimated in the assessment. Spawning biomass is computed in each year based on the time of peak spawning and the maturity and weight schedules described in the assessment. Total catch is assumed to equal the catch associated with the respective harvest scenario in all years. This projection scheme is run 1,000 times to obtain distributions of possible future stock sizes, fishing mortality rates, and catches. - -Five of the seven standard scenarios will be used in an Environmental Assessment prepared in conjunction with the final SAFE. These five scenarios, which are designed to provide a range of harvest alternatives that are likely to bracket the final TAC for `r thisyr+1`, are as follows (max $F_{ABC}$ refers to the maximum permissible value of $F_{ABC}$ under Amendment 56): - -* Scenario 1: In all future years, $F$ is set equal to max $F_{ABC}$. (Rationale: Historically, $TAC$ has been constrained by ABC, so this scenario provides a likely upper limit on future TACs.) -* Scenario 2: In all future years, F is set equal to a constant fraction of max $F_{ABC}$, where this fraction is equal to the ratio of the FABC value for 2019 recommended in the assessment to the max $F_{ABC}$ for `r thisyr+1`. (Rationale: When $F_{ABC}$ is set at a value below max $F_{ABC}$, it is often set at the value recommended in the stock assessment.) -* Scenario 3: In all future years, $F$ is set equal to the 2014-`r thisyr` average $F$. (Rationale: For some stocks, $TAC$ can be well below $ABC$, and recent average F may provide a better indicator of $F_{TAC}$ than $F_{ABC}$.) -* Scenario 4: In all future years, the upper bound on $F_{ABC}$ is set at F60%. (Rationale: This scenario -provides a likely lower bound on $F_{ABC}$ that still allows future harvest rates to be adjusted -downward when stocks fall below reference levels.) -* Scenario 5: In all future years, $F$ is set equal to zero. (Rationale: In extreme cases, $TAC$ may be set at a level close to zero.) - -Two other scenarios are needed to satisfy the MSFCMA’s requirement to determine whether a stock is currently in an overfished condition or is approaching an overfished condition. These two scenarios are as follow (for Tier 3 stocks, the $MSY$ level is defined as $B_{35\%}$): - -* Scenario 6: In all future years, F is set equal to $F_{OFL}$. (Rationale: This scenario determines whether a stock is overfished. If the stock is expected to be above its $MSY$ level in 2016 and above its $MSY$ level in 2030 under this scenario, then the stock is not overfished.) -* Scenario 7: In `r thisyr+1` and `r thisyr+2`, $F$ is set equal to max $F_{ABC}$, and in all subsequent years, F is set equal to FOFL. (Rationale: This scenario determines whether a stock is approaching an overfished condition. If the stock is expected to be above its $MSY$ level in `r thisyr+13` under this scenario, then the stock is not approaching an overfished condition.) - -Simulation results shown in `r table_nums("projection",display="cite")` indicate that Yellowfin Sole are not currently overfished and are not approaching an overfished condition. A phase plane figure of the estimated time-series of Yellowfin Sole female spawning biomass (FSB) relative to the harvest control rule is shown in `r figure_nums("phase",display="cite")`. - - -Year Catch FSB Geom. mean 6+ biomass ABC OFL ------ --------- ----------------- ------------------------- --------------- --------- -`r thisyr+1` 137,230 `r FSB_thisF` `r TotBio_thisF` `r ABC_thisF` `r OFL_thisF` -`r thisyr+2` 137,230 `r FSB_nextF` `r TotBio_nextF` `r ABC_nextF` `r OFL_nextF` -------------------------------------------------------------- - - -# Ecosystem Considerations - -## Ecosystem Effects on the Stock - -_Prey availability/abundance trends_ - -Yellowfin sole diet by life stage varies as follows: Larvae consume plankton and algae, early juveniles consume zooplankton, late juvenile stage and adults prey includes bivalves, polychaetes, amphipods, mollusks, euphausids, shrimps, brittle stars, sculpins and miscellaneous crustaceans. Information is not available to assess the abundance trends of the benthic infauna of the Bering Sea shelf. The original description of infaunal distribution and abundance by Haflinger (1981) resulted from sampling conducted in 1975 and 1976 and has not been re-sampled since. The large populations of flatfish which have occupied the middle shelf of the Bering Sea over the past twenty-five years for summertime feeding do not appear food-limited. These populations have fluctuated due to the variability in recruitment success which suggests that the primary infaunal food source has been at an adequate level to sustain the yellowfin sole resource. - -_Predator population trends_ - -As juveniles, it is well-documented from studies in other parts of the world that flatfish are prey for shrimp species in near shore areas. This has not been reported for Bering Sea yellowfn sole due to a lack of juvenile sampling and collections in near shore areas, but is thought to occur. As late juveniles they have been found in stomachs of Pacific cod and Pacific halibut; mostly small yellowfin sole ranging from 7 to 25 cm standard length.. -Past, present and projected future population trends of these predator species can be found in their respective SAFE chapters in this volume and also from Annual reports compiled by the International Pacific Halibut Commission. Encounters between yellowfin sole and their predators may be limited since their distributions do not completely overlap in space and time. - -_Changes in habitat quality_ - -Changes in the physical environment which may affect yellowfin sole distribution patterns, recruitment success and migration timing patterns are catalogued in the Ecosystem Considerations Report of this SAFE report. Habitat quality may be enhanced during years of favorable cross-shelf advection (juvenile survival) and warmer bottom water temperatures with reduced ice cover (higher metabolism with more active feeding). - -## Fishery Effects on the Ecosystem - -1. The yellowfin sole target fishery contribution to the total bycatch of other target species is shown for 1992-2017 in Table 4.23. The catch of non-target species from 2003-2016 is shown in Table 4.24. The yellowfin sole target fishery contribution to the total bycatch of prohibited species is summarized for 2015 as follows: - -Prohibited species Yellowfin sole fishery % of total bycatch -------------------------------------- ---------------------------------------------- -Halibut mortality 30 -Herring 2 -Red King crab 5 -C. bairdi 25.5 -Other Tanner crab 78.2 -Salmon <1 ------------------------------------------- - -2. Relative to the predator needs in space and time, the yellowfin sole target fishery has a low selectivity for fish 7-25 cm and therefore has minimal overlap with removals from predation. - -3. The target fishery is not perceived to have an effect on the amount of large size target fish in the population due to its history of light to moderate exploitation (6%) over the past 30 years. Population age composition data indicate a large 20+ age group. - -4. Yellowfin sole fishery discards are presented in the Catch History section. - -5. It is unknown what effect the fishery has had on yellowfin sole maturity-at-age and fecundity, but based on two maturity studies conducted 20 years apart, it is expected to be minimal. - -6. Analysis of the benthic disturbance from the yellowfin sole fishery is available in the Preliminary draft of the Essential Fish Habitat Environmental Impact Statement and summarized in `r table_nums("eco",display="cite")`. - -# Data Gaps and Research Priorities - -Genetic studies are needed to confirm the assumption that Yellowfin Sole consist of a single stock throughout the Bering Sea. Additional studies of maturity at age throughout the range of Yellowfin Sole (including the northern Bering Sea) are also warranted. - -In addition, research is needed to study the spatial variation in juvenile flatfish growth and condition in relation to habitat quality in the Bering Sea. The bottom trawl used in the Bering Sea surveys is not efficient in retaining animals of size $\leq$ 14 cm (Kotwicki et al, 2017). In recent studies where the 83-112 bottom trawl and the 3-m plumb staff beam trawl were fished consecutively at a survey station, the catch per unit effort (CPUE, number/hectare) of juvenile yellowfin sole ($\leq$ 16 cm) estimated from the bottom trawl can be lower than the CPUE from the beam trawl by as high as an order of magnitude, or erroneously indicate absence (Yeung, unpubl. data). As a result of the low catch of small fish in the surveys, there is high uncertainty at the left tail of the age-length curve. The age-at-length from otolith analysis of juveniles collected with the beam trawl (n=84) was consistently older by 1-3 years than the estimated age using the survey-derived age-length key (Matta and Yeung, unpubl. data), suggesting that currently the age of juveniles may have been underestimated. Juvenile yellowfin sole are known historically to be concentrated in shallow, nearshore habitats near Kuskokwim and Togiak Bays in the EBS that are out of bottom-trawl survey range, just as the NBS surveys now showed them in high abundance in habitat of such type in Norton Sound in the NBS. Long-term, systematic survey of the nearshore with appropriate sampling gear will improve the assessment of the density and distribution of juvenile yellowfin sole, and the understanding of the linkages between environmental drivers, habitat quality and usage, and biomass production. Norton Sound and Kuskokwim-Togiak Bays should be focal areas of investigation for their potential importance as nurseries. These coastal areas are of high anthropogenic and environmental sensitivity, and are experiencing anomalously high water temperatures because of climate change that are likely to impact fish growth and condition. To fully assess yellowfin sole stock production, the level of connectivity between the EBS and NBS populations will need to be addressed with tools such as tagging, genomics, biomarkers and otolith microchemistry. - -# Literature Cited - -Alaska Fisheries Science Center. 2016. Wholesale market profiles for Alaska groundfish and crab fisheries. 134 p. Alaska Fish. Sci. Cent., NOAA, Natl. Mar. Fish. Serv. 7600 Sand Point Way NE. Seattle, WA. - -Bakkala, R. G. and V. Wespestad. 1984. Yellowfin sole. In R. G. Bakkala and L. resources of the eastern Bering Sea and Aleutian Islands region in 1983, p. 37-60. U.S. Dep. Commer., NOAA Tech. Memo. NMFS F/NWC-53. - -Bakkala, R. G., V. Wespestad, and L. Low. 1982. The yellowfin sole (Limanda aspera) resource of the eastern Bering Sea--its current and future potential for commercial fisheries. U.S. Dep. Commer., NOAA Tech. Memo. NMFS F/NWC-33, 43p. - -Bakkala, R. G., and T. K. Wilderbuer. 1990. Yellowfin sole. In Stock Assessment and Fishery Evaluation Document for Groundfish Resources in the Bering Sea/Aleutian Islands Region as Projected for 1990, p. 60-78. North Pacific Fishery Management Council, P. O. Box 103136, Anchorage, Ak 99510. - -Clark, W. G., Hare, S. R., Parms, A. M., Sullivan, P, J., Trumble, R. J. 1999. Decadal changes in growth and recruitment of Pacific halibut (Hipplglossus stenolepis). Can. J. fish. Aquat. Sci. 56, 242-252. - -Fournier, D. A., H.G. Skaug, J. Ancheta, J. Ianelli, A. Magnusson, M. N. Maunder, A. Nielsen, and J. Sibert. 2012. AD Model Builder: using automatic differentiation for statistical inference of highly parameterized complex nonlinear models. Optim. Methods Softw. 27:233-239. - -Fournier, D. A. and C.P. Archibald. 1982. A general theory for analyzing catch-at-age data. Can. J. Fish Aquat. Sci. 39:1195-1207. - -Greiwank, A. and G. F. Corliss (eds) 1991. Automatic differentiation of algorithms: theory, implementation and application. Proceedings of the SIAM Workshop on the Automatic Differentiation of Algorithms, held Jan. 6-8, Breckenridge, CO. Soc. Indust. And Applied Mathematics, Philadelphia. - -Haflinger, K. 1981. A survey of benthic infaunal communities of the Southeastern Bering Sea shelf. In Hood and Calder (editors) The Eastern Bering Sea Shelf: Oceanography and Resources, Vol. 2. P. 1091-1104. Office Mar. Pol. Assess., NOAA. Univ. Wash. Press, Seattle, Wa 98105. - -Ianelli, J. N. and D. A. Fournier. 1998. Alternative age-structured analyses of the NRC simulated stock assessment data. In Restrepo, V. R. [ed.] Analyses of simulated data sets in support of the NRC study on stock assessment methods. NOAA Tech. Memo. NMFS-F/SPO-30. 96 p. - -Kastelle, C., T. Helser, S. Wischniowski, T. Loher, B. Geotz and L. Kautzi. 2016. Incorporation of bomb-produced 14C into fish otoliths: A novel approach for evaluating age validation and bias with an application to yellowfin sole and northern rockfish. Ecological modeling 320 (2016) 79-91. - -Kotwicki, S., Lauth, R. R., Williams, K., and Goodman, S. E. 2017. Selectivity ratio: A useful tool for comparing size selectivity of multiple survey gears. Fisheries Research, 191: 76-86. - -Low, L. and R.E. Narita. 1990. Condition of groundfish resources in the Bering Sea-Aleutian Islands region as assessed in 1988. U.S. Dep. Commer., NOAA Tech. Memo. NMFS-F/NWC-178, 224 p. - -Matta, M. E., B. A. Black and T. K. Wilderbuer. 2010. Climate-driven synchrony in otolith growth-increment chronologies for three Bering Sea flatfish species. MEPS, Vol. 413:137-145, 2010. - -Nichol, D. R . 1995. Spawning and maturation of female yellowfin sole in the eastern Bering Sea. In Proceedings of the international flatfish symposium, October 1994, Anchorage, Alaska, p. 35-50. Univ. Alaska, Alaska Sea Grant Rep. 95-04. - -Nichol, D. R. 1998. Annual and between sex variability of yellowfin sole, Pleuronectes asper, spring-summer distributions in the eastern Bering Sea. Fish. Bull., U.S. 96: 547-561. - -Nichol, D.G., Kotwicki, S., Wilderbuer, T.K., Lauth, R.R. and Ianelli, J.N., 2019. Availability of yellowfin sole Limanda aspera to the eastern Bering Sea trawl survey and its effect on estimates of survey biomass. Fisheries Research, 211, pp.319-330. - -Ricker, W. E. 1958. Handbook of computations for biological statistics of fish populations. Bull. Fish. Res. Bd. Can., (119) 300 p. - -Rose, C. S., J. R. Gauvin and C. F. Hammond. 2010. Effective herding of flatfish by cables with minimal seafloor contact. Fishery Bulletin 108(2):136-144. - -Somerton, D. A. and P. Munro. 2001. Bridle efficiency of a survey trawl for flatfish. Fish. Bull. 99:641-652 (2001). - -TenBrink, T. T. and T. K. Wilderbuer. 2015. Updated maturity estimates for flatfishes (Pleuronectidae) in the eastern Bering Sea, with notes on histology and implications to fisheries management. Coastal and Marine Fisheries: Dynamics, Management and Ecosystem Science. O:1-9. 2015. DOI: 10.1080/19425120.2015.1091411. - -Wakabayashi, K. 1989. Studies on the fishery biology of yellowfin sole in the eastern Bering Sea. [In Jpn., Engl. Summ.] Bull. Far Seas Fish. Res. Lab. 26:21-152. - -Wakabayashi, K., R. Bakkala, and L. Low. 1977. Status of the yellowfin sole resource in the eastern Bering Sea through 1976. Unpubl. manuscr., 45p. Northwest and Alaska Fish. Cent., Natl. Mar. Fish. Serv., NOAA, 7600 Sand Point Way N.E., Bin C 15700, Seattle, Wa 98115. - -Walters, G. E. and T. K. Wilderbuer. 2000. Decreasing length at age in a rapidly expanding population of northern rock sole in the eastern Bering Sea and its effect on management advice. Journal of Sea Research 44(2000)17-26. - -Wilderbuer, T. K. 1992. Yellowfin sole. In Stock Assessment and Fishery Evaluation Document for Groundfish Resources in the Bering Sea/Aleutian Islands Region as Projected for 1993, chapter 3. North Pacific Fishery Management Council, P. O. Box 103136, Anchorage, Ak 99510. - -Wilderbuer, T. K. 1993. Yellowfin sole. In Stock Assessment and Fishery Evaluation Document for Groundfish Resources in the Bering Sea/Aleutian Islands Region as Projected for 1994, chapter 3. North Pacific Fishery Management Council, P. O. Box 103136, Anchorage, Ak 99510. - -Wilderbuer, T. K. and D. Nichol. 2001. Yellowfin sole. In Stock Assessment and Fishery Evaluation Document for Groundfish Resources in the Bering Sea/Aleutian Islands Region as Projected for 2004, chapter 4. North Pacific Fishery Management Council, P. O. Box 103136, Anchorage, Ak 99510. - -Wilderbuer, T. K. and D. Nichol. 2003. Yellowfin sole. In Stock Assessment and Fishery Evaluation Document for Groundfish Resources in the Bering Sea/Aleutian Islands Region as Projected for 2004, chapter 4. North Pacific Fishery Management Council, P. O. Box 103136, Anchorage, Ak 99510. - -Wilderbuer, T. K. D. G. Nichol, and J. Ianelli. 2010. Yellowfin sole. In Stock Assessment and Fishery Evaluation Document for Groundfish Resources in the Bering Sea/Aleutian Islands Region as Projected for 2011, chapter 4. North Pacific Fishery Management Council, P. O. Box 103136, Anchorage, Ak 99510. - -Wilderbuer, T.K., G.E. Walters, and R.G. Bakkala 1992. Yellowfin sole, _Pleuronectes aspera_, of the eastern Bering Sea: biological characteristics, history of exploitation, and management. Mar Fish. Rev. 54(4):1-18. - - -```{r, echo=FALSE, hierarchy} - - - -tab.14_cap <- table_nums(name = "tab_14", caption = "Model estimates of annual average fishing mortality for male and female Yellowfin Sole.") - -tab.15_cap <- table_nums(name = "tab_15", caption = "Model estimates of Yellowfin Sole full selection fishing mortality and exploitation rate (catch/total biomass).") - -tab.16_cap <- table_nums(name = "tab_16", caption = "Model estimates of Yellowfin Sole age-specific selectivities for the survey and fishery (ages 4 to 20 from left to right). ") - - - -tab.18_cap <- table_nums(name = "tab_18", caption = "Model estimates of Yellowfin Sole population numbers at age (billions) for 1954-2018.") - -tab.19_cap <- table_nums(name = "tab_19", caption = "Model estimates of the number of female spawners (millions) 1964-2018.") - -tab.20_cap <- table_nums(name = "tab_20", caption = "Model estimates of Yellowfin Sole age 5 recruitment (millions) from the 2017 and 2018 stock assessments.") - -tab.21_cap <- table_nums(name = "tab_21", caption = "Selected parameter estimates and their standard deviation from the preferred stock assessment model in 2018.") - -tab.22_cap <- table_nums(name = "tab_22", caption = "Projections of Yellowfin Sole female spawning biomass (1,000s t), catch (1,000s t) and full selection fishing mortality rate for seven future harvest scenarios.") - -tab.23_cap <- table_nums(name = "tab_23", caption = "Catch and bycatch (t) of other BSAI target species in the Yellowfin Sole directed fishery from 1992-2016 estimated from a combination of regional office reported catch and observer sampling of the catch.") - -tab.24_cap <- table_nums(name = "tab_24", caption = "Estimated non-target species catch (t) in the Yellowfin Sole fishery, 2003-2018 (PSC not included).") - -tab.25_cap <- table_nums(name = "tab_25", caption = "Yellowfin Sole TAC and ABC levels, 1980- 2018") - -tab.26_cap <- table_nums(name = "tab_26", caption = "Catch and bycatch (t) of other BSAI target species in the Yellowfin Sole directed fishery from 1992-2016 estimated from a combination of regional office reported catch and observer sampling of the catch.") - -tab.27_cap <- table_nums(name = "tab_27", caption = "Catch and bycatch (t) of other BSAI target species in the Yellowfin Sole directed fishery from 1992-2016 estimated from a combination of regional office reported catch and observer sampling of the catch.") - -tab.28_cap <- table_nums(name = "tab_28", caption = "Catch and bycatch (t) of other BSAI target species in the Yellowfin Sole directed fishery from 1992-2016 estimated from a combination of regional office reported catch and observer sampling of the catch.") - - -``` - -\pagebreak -# Tables - -`r table_nums(name = "catch", caption = paste("Foreign and domestic datch (t) of Yellowfin Sole 1954-",thisyr,". Foreign catches are designated as joint venture processing (JVP) and domestic annual processing (DAP). Catch for ",thisyr," was downloaded October 28, 2019.",sep=""))` -```{r catch,message=FALSE,echo=FALSE} -catchZ=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/catch_YFS.csv",header=TRUE,skip=1) -colnames(catchZ)=c("Year","Foreign","JVP","DAP","Total") -kable(catchZ,"latex",booktabs=T,linesep="",longtable=TRUE)%>% - add_header_above(c(" ", " ","Domestic" = 2, " " )) -``` - -\pagebreak -`r table_nums(name = "retdis", caption = paste("Estimates of retained and discarded (t) Yellowfin Sole caught in Bering Sea fisheries through September 25th, ",thisyr,", and the proportion discarded.",sep=""))` -```{r retdis,message=FALSE,echo=FALSE} -retdis=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/RetDis_full.csv",header=TRUE)#Sept 25 2019 - -Year=names(table(retdis$Year)) -rdtable_full=matrix(0,length(Year),3) -colnames(rdtable_full)=c("Year","Retained (mt)","Discarded (mt)") -rdtable_full[,1]=Year -for (i in 1:length(Year)){ - rdtable_full[i,2]=round(sum(retdis$Retained..mt.[which(retdis$Year==Year[i])])) - rdtable_full[i,3]=round(sum(retdis$Discards..mt.[which(retdis$Year==Year[i])])) -} -ret=formatC(as.numeric(as.character(rdtable_full[,2])),format="d",big.mark=",") -dis=formatC(as.numeric(as.character(rdtable_full[,3])),format="d",big.mark=",") -prop=round(as.numeric(as.character(rdtable_full[,3]))/(as.numeric(as.character(rdtable_full[,2]))+as.numeric(as.character(rdtable_full[,3]))),2) - -rdfull=cbind(Year,ret,dis,prop) -colnames(rdfull)=c("Year","Retained (mt)","Discarded (mt)","Proportion discarded") - -kable(rdfull,"latex",booktabs=T,linesep="",longtable=TRUE,align='r') -``` - -\pagebreak -`r table_nums(name = "retdiscat", caption = paste("Discarded and retained catch of non-CDQ Yellowfin Sole, by fishery, in ",thisyr-1,". Gear types include longline (HAL), bottom trawl (NPT), pot (POT), and pelagic trawl (PTR). Catch was non-zero for all target-gear combinations shown, but may appear as zero as results were rounded to the nearest metric ton (mt). Source: NMFS AKRO BLEND/Catch Accounting System.",sep=""))` -```{r retdiscat,message=FALSE, echo=FALSE} -#note: get FMP groundfish total discards and discard rate by regulatory area in BSAI -#retdis2018=read.csv(here("/doc/Rmd/retdis2018.csv"),header=TRUE) -retdis2018=retdis[which(retdis$Year=="2018"),] -target=names(table(retdis2018$Target))[2:18] -gear=c("HAL","NPT","POT","PTR") -rdtab=matrix(0,length(target)*4,3) -rownames(rdtab)=rep(target,4) -colnames(rdtab)=c("Gear","Discarded","Retained") -rdtab[,1]=rep(gear,each=length(target)) -for(i in 1:length(target)){ - for(j in 1:length(gear)){ - rdtab[i+((j-1)*13),2]=sum(retdis2018$Discards..mt.[which(retdis2018$Target==target[i]&retdis2018$Gear==gear[j])]) - rdtab[i+((j-1)*13),3]=sum(retdis2018$Retained..mt.[which(retdis2018$Target==target[i]&retdis2018$Gear==gear[j])]) -}} -rd=data.frame(rdtab[which((as.numeric(rdtab[,2])+as.numeric(rdtab[,3]))>0),]) -rd1=cbind(as.character(rownames(rd)),as.character(rd[,1]),formatC(round(as.numeric(as.character(rd[,2]))),big.mark=",",format="d"),formatC(as.numeric(as.character(rd[,3])),big.mark=",",format="d")) -colnames(rd1)=c("Trip target name","Gear type","Discarded (mt)","Retained (mt)") -rownames(rd1)=c("Greenland Turbot","Other Species","Pacific Cod","Alaska Plaice","Atka Mackerel", -"Kamchatka Flounder","No retained catch","Other Species","Pacific Cod","Pollock - bottom", -"Pollock - midwater","Atka Mackerel","Yellowfin Sole","Alaska Plaice") -kable(rd1[,2:4],"latex",booktabs=T,linesep="",longtable=FALSE) -``` - - -\pagebreak -`r table_nums(name = "catageprop", caption =paste("Yellowfin Sole fishery catch-at-age (proportions), 1975-",thisyr-1," (female), ages 7-17+.",sep=""))` -```{r catageprop,message=FALSE,echo=FALSE} -#YFS2$catage_f from 1954-thisyr, want from 1975, ages 7 - 17+ -#select 1975 to last year - -a=data.frame(seq(1975,thisyr-1,1),round(femcat,4)[22:(nrow(femcat)-1),7:17],rowSums(round(femcat,4)[22:(nrow(femcat)-1),7:17])) -colnames(a)=c("Year",seq(7,16,1),"17+","Total proportion over age 7") -kable(a,"latex",booktabs=T,linesep="")%>% - kable_styling(latex_options="scale_down") - -``` - - - -\pagebreak -`r table_nums(name = "tab_5", caption = "Yellowfin Sole biomass estimates (t) from the annual Bering Sea shelf bottom trawl survey, with upper and lower 95% confidence intervals.")` -```{r tab_5, message=FALSE,echo=FALSE} -srvbio=cbind(YFS2$yr_bts,formatC(1000*YFS2$ob_bts,format="d",big.mark=","),formatC(1000*YFS2$ob_bts-1.96*YFS2$sd_ob_bts,format="d",big.mark=","),formatC(1000*YFS2$ob_bts+1.96*YFS2$sd_ob_bts,format="d",big.mark=",")) -colnames(srvbio)=c("Year","Biomass (t)","Lower confidence interval","Upper confidence interval") -kable(srvbio,"latex",booktabs=T,linesep="") - - -``` - -\pagebreak -`r table_nums(name = "NBS_bio", caption = "Yellowfin Sole biomass estimates (t) from the northern Bering Sea survey, with upper and lower 95% confidence intervals, as well as number of hauls, hauls with Yellowfin sole, and hauls in which length data was obtained.")` -```{r NBS_bio, message=FALSE,echo=FALSE} -NBSbiomass2019=520028.93 -NBSvariance2019=3868517857.3 -NBS=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/NBS_survey/NBS_YFS.csv",header=TRUE) -colnames(NBS)=c("Year","Biomass (t)","LCI","HCI","Haul count","Hauls with catch","Number count","Length count") -kable(NBS,"latex",booktabs=T,linesep="") -``` - - -\pagebreak -`r table_nums(name = "natagesrv", caption = paste("Yellowfin Sole population numbers-at-age (millions) estimated from the annual EBS bottom trawl surveys, 1982-",thisyr,". Numbers-at-age from 1982-1986 come from the standard survey area, and years 1987 forward come from the 'plusnw' extended survey area. Females are presented first, followed by males.",sep=""))` -```{r natagesrv} -catage_p=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/YFS_EBS_survey/yfs_agecomp_ebs_plusnw.csv",header=TRUE) -catage_s=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/YFS_EBS_survey/yfs_agecomp_ebs_standard.csv",header=TRUE) - -age=seq(2,17,1) -yrs=names(table(catage_p$YEAR)) - -catage_f=matrix(0,length(yrs),length(age)) -catage_m=matrix(0,length(yrs),length(age)) - -isEmpty <- function(x) - { - return(identical(x, numeric(0))) - } - -for(i in 1:length(yrs)){ - for(j in 1:16) - { - if (yrs[i] %in% c(1982:1986)){ - if(!isEmpty(catage_s$AGEPOP[which(catage_s$YEAR==yrs[i]&catage_s$SEX==2&catage_s$AGE==(j+1)&catage_s$SUBAREA==999999)])) - {catage_f[i,j]=catage_s$AGEPOP[which(catage_s$YEAR==yrs[i]&catage_s$SEX==2&catage_s$AGE==(j+1)&catage_s$SUBAREA==999999)]} - if(!isEmpty(catage_s$AGEPOP[which(catage_s$YEAR==yrs[i]&catage_s$SEX==1&catage_s$AGE==(j+1)&catage_s$SUBAREA==999999)])) - {catage_m[i,j]=catage_s$AGEPOP[which(catage_s$YEAR==yrs[i]&catage_s$SEX==1&catage_s$AGE==(j+1)&catage_s$SUBAREA==999999)]} - } - if (yrs[i] >=1987){ - if(!isEmpty(catage_p$AGEPOP[which(catage_p$YEAR==yrs[i]&catage_p$SEX==2&catage_p$AGE==(j+1)&catage_p$SUBAREA==999999)])) - catage_f[i,j]=catage_p$AGEPOP[which(catage_p$YEAR==yrs[i]&catage_p$SEX==2&catage_p$AGE==(j+1)&catage_p$SUBAREA==999999)] - if(!isEmpty(catage_p$AGEPOP[which(catage_p$YEAR==yrs[i]&catage_p$SEX==1&catage_p$AGE==(j+1)&catage_p$SUBAREA==999999)])) - catage_m[i,j]=catage_p$AGEPOP[which(catage_p$YEAR==yrs[i]&catage_p$SEX==1&catage_p$AGE==(j+1)&catage_p$SUBAREA==999999)] - } - } -} - -rownames(catage_f)=yrs -colnames(catage_f)=c(seq(2,16,1),"17+") - -print(kable(formatC(catage_f/1000000,format="d",big.mark=","),"latex",booktabs=T,linesep="",align='r')%>%kable_styling(latex_options="scale_down")%>%add_header_above(c("Year", "Age (Females)"=16 ))) - -rownames(catage_m)=yrs -colnames(catage_m)=c(seq(2,16,1),"17+") - -print(kable(formatC(catage_m/1000000,format="d",big.mark=","),"latex",booktabs=T,linesep="",align='r')%>%kable_styling(latex_options="scale_down")%>%add_header_above(c("Year", "Age (Males)"=16 ))) - -``` - - - -\pagebreak -`r table_nums(name = "pars", caption = "Parameter values and their 95% confidence intervals, estimated within the preferred stock assessment model, Model 18.2.")` -```{r pars, echo=FALSE,message=FALSE} - -pars=as.data.frame(read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/fm.std",header=TRUE)) -pars2=pars[c(1:6,112,179,180,313,380,447:452,704:708,719,720,721:786),] - -pars3=cbind(pars2[1:45,2:4],c(rep("|",45)),pars2[46:90,2:4]) -pars3[,1]=as.character(pars3[,1]) -pars3[1:7,1]=c("male natural mortality","alpha (q-temp model)","beta (q-temp model)","beta (survey start date)","beta (start date/temp interaction)","mean log recruitment","log_avg_fmort") - -colnames(pars3)=c("Name","Value","Standard Deviation","|","Name","Value","Standard Deviation") -rownames(pars3)=c() -kable(pars3,"latex",booktabs=T,linesep="",align=c("l","r","r","r","l","r","r"))%>%kable_styling(latex_options="scale_down") - - -``` - - -\pagebreak - - -`r table_nums(name="liketab",caption="Comparison of likelihood values for survey and fishery age, selectivity, survey biomass, recruitment, catchability, and total likelihood for Models 18.1 and 18.2.")` -```{r liketab, echo=FALSE} -totallike2=sum(YFS2$wt_like,YFS2$age_likeihood_for_survey,YFS2$age_likelihood_for_fishery,YFS2$catch_likelihood,YFS2$selectivity_likelihood,YFS2$survey_likelihood,YFS2$recruitment_likelilhood) #recommended -totallike1=sum(YFS1$wt_like,YFS1$age_likeihood_for_survey,YFS1$age_likelihood_for_fishery,YFS1$catch_likelihood,YFS1$selectivity_likelihood,YFS1$survey_likelihood,YFS1$recruitment_likelilhood) -``` - -\begin{table}[h] -\centering -\begin{tabular}{ lrr } -\hline - Likelihood component & Model $18.1$ & Model $18.2$ \\ -\hline -Survey age & `r round(YFS1$age_likeihood_for_survey,2)` & `r round(YFS2$age_likeihood_for_survey,2)` \\ -Fishery age & `r round(YFS1$age_likelihood_for_fishery,2)` & `r round(YFS2$age_likelihood_for_fishery,2)` \\ -Selectivity & `r round(sum(YFS1$selectivity_likelihood),2)`& `r round(sum(YFS2$selectivity_likelihood),2)`\\ -Survey biomass & `r round(YFS1$survey_likelihood,2)`& `r round(YFS2$survey_likelihood,2)`\\ -Recruitment & `r round(sum(YFS1$recruitment_likelilhood),2)`& `r round(sum(YFS2$recruitment_likelilhood),2)` \\ -Catchability & `r round(YFS1$catch_likelihood,4)` & `r round(YFS2$catch_likelihood,4)` \\ -\hline -Total & `r round(totallike1,2)` &`r round(totallike2,2)` \\ -\hline -\end{tabular} -\end{table} - - - -\pagebreak - -`r table_nums(name="Mcomparison",caption="Comparison of reference points with Model 18.1a and Model 18.2. Values are in metric tons (t)")` - -\begin{table}[ht] -\centering -\begin{tabular}{lrr|rr|rr} - \hline - & \multicolumn{2}{c|}{Model 18.2} & \multicolumn{2}{c}{Model 18.1a}& \multicolumn{2}{c}{Model 18.1} \\ - Quantity & `r thisyr+1` &`r thisyr+2` & `r thisyr+1` &`r thisyr+2`& `r thisyr+1` &`r thisyr+2` \\ - \hline -$M$ (natural mortality rate) & 0.12, 0.135 & 0.12, 0.135 & 0.12 & 0.12 & 0.12 & 0.12 \\ -Tier & 1a & 1a & 1a & 1a & 1a & 1a \\ -Projected total (age 6+) biomass (t) & `r formatC(extra_sd2$GM_Biom[1]*1000,format="d",big.mark=",")` & `r formatC(extra_sd2$GM_Biom[2]*1000,format="d",big.mark=",")` & `r formatC(extra_sd1$GM_Biom[1]*1000,format="d",big.mark=",")` & `r formatC(extra_sd1$GM_Biom[2]*1000,format="d",big.mark=",")` & 2,462,400 & 2,411,700 \\ -Projected female spawning biomass (t) & `r formatC(extra_sd2$SSB[1]*1000,format="d",big.mark=",")` & `r formatC(extra_sd2$SSB[2]*1000,format="d",big.mark=",")` & `r formatC(extra_sd1$SSB[1]*1000,format="d",big.mark=",")` & `r formatC(extra_sd1$SSB[2]*1000,format="d",big.mark=",")` & 850,600 & 821,500 \\ -$\:\:\:\:\:\:B_{100\%}$ & `r B0_2` & `r B0_2` & `r B0_1` & `r B0_1` & `r B0_0` & `r B0_0` \\ -$\:\:\:\:\:\:B_{MSY\%}$ & `r formatC(1000*extra_sd2$Bmsy[1],format="d",big.mark=",")` & `r formatC(1000*extra_sd2$Bmsy[1],format="d",big.mark=",")` & `r formatC(1000*extra_sd1$Bmsy[1],format="d",big.mark=",")` t & `r formatC(1000*extra_sd1$Bmsy[1],format="d",big.mark=",")` t & 1,245,400 t & 1,245,400 t\\ -$F_{OFL}$ & `r round(extra_sd2$AM_Fmsyr[1],3)` & `r round(extra_sd2$AM_Fmsyr[2],3)` & `r round(extra_sd1$AM_Fmsyr[1],3)` & `r round(extra_sd1$AM_Fmsyr[2],3)` & `r round(extra_sd0$AM_Fmsyr[1],3)` & `r round(extra_sd0$AM_Fmsyr[2],3)` \\ -$maxF_{ABC}$ & `r round(extra_sd2$HM_Fmsyr[1],3)` & `r round(extra_sd2$HM_Fmsyr[2],3)` & `r round(extra_sd1$HM_Fmsyr[1],3)` & `r round(extra_sd1$HM_Fmsyr[2],3)` & `r round(extra_sd0$HM_Fmsyr[1],3)` & `r round(extra_sd0$HM_Fmsyr[2],3)` \\ -$F_{ABC}$ & `r round(extra_sd2$HM_Fmsyr[1],3)` & `r round(extra_sd2$HM_Fmsyr[2],3)` & `r round(extra_sd1$HM_Fmsyr[1],3)` & `r round(extra_sd1$HM_Fmsyr[2],3)` & `r round(extra_sd0$HM_Fmsyr[1],3)` & `r round(extra_sd0$HM_Fmsyr[2],3)` \\ -$OFL$ & `r formatC(1000*extra_sd2$OFL_AM[1],format="d",big.mark=",")` & `r formatC(1000*extra_sd2$OFL_AM[2],format="d",big.mark=",")` & `r formatC(1000*extra_sd1$OFL_AM[1],format="d",big.mark=",")` & `r formatC(1000*extra_sd1$OFL_AM[2],format="d",big.mark=",")` & 290,000 & 284,000 -\\ -$maxABC$ & `r formatC(1000*extra_sd2$ABC_HM[1],format="d",big.mark=",") ` & `r formatC(1000*extra_sd2$ABC_HM[2],format="d",big.mark=",") ` & `r formatC(1000*extra_sd1$ABC_HM[1],format="d",big.mark=",") ` & `r formatC(1000*extra_sd1$ABC_HM[2],format="d",big.mark=",") ` & 263,200 & 257,800 \\ -$ABC$ & `r formatC(1000*extra_sd2$ABC_HM[1],format="d",big.mark=",") ` & `r formatC(1000*extra_sd2$ABC_HM[2],format="d",big.mark=",") ` & `r formatC(1000*extra_sd1$ABC_HM[1],format="d",big.mark=",") ` & `r formatC(1000*extra_sd1$ABC_HM[2],format="d",big.mark=",") ` & 263,200 & 257,800 \\ -\hline -Status & `r thisyr-1` & `r thisyr` & `r thisyr-1` & `r thisyr` & `r thisyr-1` & `r thisyr` \\ -\hline -Overfishing & No & n/a & No & n/a & No & n/a \\ -Overfished & n/a & No & n/a & No & n/a & No \\ -Approaching overfished & n/a & No & n/a & No & n/a & No \\ -\hline -\end{tabular} -\begin{tablenotes} -\item Projections were based on estimated catches of 118,642 t in `r thisyr` and `r formatC(cn10,format="d",big.mark=",")` used in place of maximum $ABC$ for `r thisyr+1`. - \end{tablenotes} -\end{table} - -\pagebreak -`r table_nums(name = "occurrence", caption = "Occurrence of Yellowfin Sole in the eastern Bering Sea trawl survey and collections of length and age structures and the number of otoliths aged from each survey.")` -```{r occurrence} -haul_oto=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/Hauls_otoliths.csv",header=TRUE) -colnames(haul_oto)=c("Year","Total hauls","Hauls with length","Number of lengths","Hauls with otoliths","Hauls with ages","Number of otoliths","Number of ages") -kable(haul_oto,"latex",booktabs=T,linesep="")%>%kable_styling(latex_options="scale_down") -``` - -\pagebreak -`r table_nums(name = "rescat", caption = paste("Total tonnage of Yellowfin Sole caught in resource assessment surveys in the eastern Bering Sea from 1977-",thisyr,"."))` -```{r rescat, message=FALSE,echo=FALSE} -rescatch=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/ResearchCatch.csv",header=TRUE) -colnames(rescatch)=c("Year","Research catch (t)") -kable(rescatch,"latex",booktabs=T,linesep="") -``` - -\pagebreak -`r table_nums(name = "biomCI", caption = paste("Model estimates of Yellowfin Sole age 2+ total biomass (t) from the",thisyr-1," and ",thisyr," stock assessments, Model 18.1a and 18.2."))` -```{r biomCI, message=FALSE,echo=FALSE} -biom=data.frame(1000*YFS2$TotBiom[,c(2,4,5)],1000*YFS1$TotBiom[,c(2,4,5)],c(formatC(1000*YFS0$TotBiom[,2],format="d",big.mark=",",digits=0),"-")) -colnames(biom)=c("Biomass (t)","LCI","HCI","Biomass (t)","LCI","HCI","Biomass (t)") -rownames(biom)=seq(1954,2019,1) -kable(biom,"latex",booktabs=T,linesep="",format.args=list(format="d",big.mark=","),longtable=TRUE,align="r")%>%add_header_above(c(" "=1,"Model 18.2"=3,"Model 18.1a"=3,"Model 18.1 (for 2018)")) -``` - - -\pagebreak -`r table_nums(name = "FSBCI", caption = paste("Model estimates of Yellowfin Sole female spawning biomass (t) from the",thisyr-1," and ",thisyr," stock assessments, including Model 18.1a and 18.2."))` -```{r FSBCI, message=FALSE,echo=FALSE} -biom=data.frame(1000*YFS2$SSB[,c(2,4,5)],1000*YFS1$SSB[,c(2,4,5)],c(formatC(1000*YFS0$SSB[,2],format="d",big.mark=",",digits=0),"-")) -colnames(biom)=c("Biomass (t)","LCI","HCI","Biomass (t)","LCI","HCI","Biomass (t)") -rownames(biom)=seq(1954,2019,1) -kable(biom,"latex",booktabs=T,linesep="",format.args=list(format="d",big.mark=","),longtable=TRUE)%>%add_header_above(c(" "=1,"Model 18.2"=3,"Model 18.1a"=3,"Model 18.1 (for 2018)")) -``` - - -\pagebreak -`r table_nums(name = "wtagetab", caption = "Mean length and weight at age for Yellowfin Sole (unsmoothed), females presented first, followed by males.")` -```{r wtagetab} -thisyr=2019 -nyrs=length(seq(1964,thisyr,1)) -wt_f=YFS2$wt_srv_f[11:(nyrs+10),] -wt_m=YFS2$wt_srv_m[11:(nyrs+10),] -colnames(wt_f)=seq(1,20,1) -rownames(wt_f)=seq(1964,thisyr,1) -colnames(wt_m)=seq(1,20,1) -rownames(wt_m)=seq(1964,thisyr,1) -print(kable(wt_f,"latex",booktabs=T,linesep="")%>%kable_styling(latex_options="scale_down")%>%add_header_above(c("Year", "Age (Females)"=19 ))) - -print(kable(wt_m,"latex",booktabs=T,linesep="")%>%kable_styling(latex_options="scale_down")%>%add_header_above(c("Year", "Age (Males)"=19 ))) -``` - - -\pagebreak -`r table_nums(name = "mature", caption = "Female Yellowfin Sole proportion mature at age from Nichol (1995) and TenBrink and Wilderbuer (2015).")` -```{r mature,message=FALSE,echo=FALSE} -mat=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/maturity_T10.csv",header=TRUE) -colnames(mat)=c("Age","1992, 1993 samples","2012 samples","Combined") -kable(mat,"latex",booktabs=T,linesep="")%>%add_header_above(c(" "=1,"Nichol (1995)"=1,"TenBrink and Wilderbuer (2015)"=1,"Total"=1)) - -``` - - -\pagebreak -`r table_nums(name="projection",caption="Projections of arrowtooth flounder female spawning biomass (FSB), future catch, and full selection fishing mortality rates (F) for seven future harvest scenarios. Estimates of FSB and catch are in metric tons (t).")` -```{r, echo = FALSE, results = 'asis', warning = F} -alt12=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt12.csv",header=TRUE,sep=",");colnames(alt12)=c("","Year","FSB","Catch","F") -alt3=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt3.csv",header=TRUE,sep=",");colnames(alt3)=c("","Year","FSB","Catch","F") -alt4=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt4.csv",header=TRUE,sep=",");colnames(alt4)=c("","Year","FSB","Catch","F") -alt5=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt5.csv",header=TRUE,sep=",");colnames(alt5)=c("","Year","FSB","Catch","F") -alt6=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt6.csv",header=TRUE,sep=",");colnames(alt6)=c("","Year","FSB","Catch","F") -alt7=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt7.csv",header=TRUE,sep=",");colnames(alt7)=c("","Year","FSB","Catch","F") - - -#bigfile=read.table("/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/bigfile.out",header=TRUE) - -#function -altfn=function(source,alt,thisyr){ - Year=seq(thisyr,thisyr+13,1) - altT=matrix(0,14,4) - altT[,1]=Year - for(i in 1:length(Year)){ - altT[i,3]=formatC(round(1000*mean(source$Catch[which(source$Alternative==alt&source$Yr==Year[i])])),format="d",big.mark=",") - altT[i,2]=formatC(round(1000*mean(source$SSB[which(source$Alternative==alt&source$Yr==Year[i])])),format="d",big.mark=",") - altT[i,4]=round(mean(source$F[which(source$Alternative==alt&source$Yr==Year[i])]),3) - } - return(altT) -} - -#alt12=altfn(bigfile,1,2019)#good -#alt3=altfn(bigfile,3,2019)#good? -#alt4=altfn(bigfile,4,2019)#good -#alt5=altfn(bigfile,5,2019)#good -#alt6=altfn(bigfile,6,2019)#good -#alt7=altfn(bigfile,7,2019)#good -#write.csv(alt12,"/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt12.csv") -#write.csv(alt3,"/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt3.csv") -#write.csv(alt4,"/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt4.csv") -#write.csv(alt5,"/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt5.csv") -#write.csv(alt6,"/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt6.csv") -#write.csv(alt7,"/Users/ingridspies/admbmodels/projection/bsai_yfin2019_out/alt7.csv") - -t1 <- kable(alt12[,2:5], format = 'latex',booktabs=TRUE,linesep="")%>%add_header_above(c("Maximum ABC harvest permissible"=4),align="l")%>%add_header_above(c("Scenarios 1 and 2"=4),line=FALSE,align="l") -t2 <- kable(alt3[,2:5], format = 'latex',booktabs=TRUE,linesep="")%>%add_header_above(c(" harvest permissible set at F60"=4),align="l")%>%add_header_above(c("Scenario 3, Maximum Tier 3 ABC"=4),line=FALSE,align="l") -cat(c("\\begin{table}[h] \\centering ", - t1, - "\\hspace{1cm} \\centering ", - t2, - "\\end{table}")) - -t3 <- kable(alt4[,2:5], format = 'latex',booktabs=TRUE,linesep="")%>%add_header_above(c("Harvest at average F over past 5 years"=4),align="l")%>%add_header_above(c("Scenario 4"=4),line=FALSE,align="l") -t4 <- kable(alt5[,2:5], format = 'latex',booktabs=TRUE,linesep="")%>%add_header_above(c("No fishing"=4),align="l")%>%add_header_above(c("Scenario 5"=4),line=FALSE,align="l") -cat(c("\\begin{table}[h] \\centering ", - t3, - "\\hspace{1cm} \\centering ", - t4, - " \\end{table}")) - -t6 <- kable(alt6[,2:5], format = 'latex',booktabs=TRUE,linesep="")%>%add_header_above(c(" arrowtooth flounder are currently overfished"=4),align="l")%>%add_header_above(c("Alternative 6, Determination of whether"=4),line=FALSE,align="l") -t7 <- kable(alt7[,2:5], format = 'latex',booktabs=TRUE,linesep="")%>%add_header_above(c("stock is approaching an overfished condition"=4),align="l")%>%add_header_above(c("Scenario 7, Determination of whether"=4),align="l",line=FALSE) -cat(c("\\begin{table}[h] \\centering ", - t6, - "\\hspace{1cm} \\centering ", - t7, - " \\end{table}")) -``` - - - -\pagebreak -\begin{landscape} -`r table_nums(name="eco",caption="Ecosystem indicators for Yellowfin sole, interpretation and evaluation.")` -```{r eco, message=FALSE, echo=FALSE} - -eco=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/EcoYFS.csv",header=TRUE,skip=1) -kable(eco,"latex",booktabs=T,linesep="")%>%kable_styling(latex_options="scale_down") -``` -\end{landscape} - - -\pagebreak - -# Figures - - -```{r NBS,echo=FALSE,message=FALSE} -``` -\begin{figure}[h] - \centering - \includegraphics[width=0.495\textwidth]{/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/NBS_survey/yfs10bw.png} - \includegraphics[width=0.495\textwidth]{/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/NBS_survey/yfs17bw.png} - \includegraphics[width=0.495\textwidth]{/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/NBS_survey/yfs18bw.png} - \includegraphics[width=0.495\textwidth]{/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/NBS_survey/yfs19bw.png} -\end{figure} - -`r figure_nums(name = "NBS", caption ="Distribution of Yellowfin Sole in the eastern and northern Bering sea based on surveys conducted in 2010 (upper left), 2017 (upper right), 2018 (lower left), and 2019 (lower right).")` - - - -```{r catchfig, message=FALSE, echo=FALSE,fig.width = 5.1, fig.height = 4} -catchtab=data.frame(cbind(YFS2$Yr,YFS2$Obs_catch)) -colnames(catchtab)=c("Year","Catch") -ggplot(data=catchtab,aes(x=Year,y=Catch))+geom_line(aes(x=Year,y=Catch))+ -theme_bw()+theme(legend.title=element_text(size=13),legend.text=element_text(size=11),axis.text=element_text(size=11),axis.title.x = element_text(size=13),axis.title.y = element_text(size=14))+ - ylab("Catch (x 1,000 t)")+scale_x_continuous(breaks = seq(1954,2019, by = 2))+theme(axis.text.x=element_text(angle=90,hjust=1))+ - theme(legend.position="right")+scale_color_discrete(name="") -``` - -```{r fig_1b, message=FALSE, echo=FALSE,fig.width = 6.25, fig.height = 4} -#Figure 1 lower panel -#blend_catchYFS=read.csv("/Users/ingridspies/YFS_Blend_CAS.csv",header=TRUE) -#yrs=c(2003:2018) -#cat_month=matrix(0,length(yrs),12) -#cat_month2=matrix(0,length(yrs),12) -#for (i in 1:length(yrs)){ -#cat_month[i,]=table(blend_catchYFS2$Month[which(blend_catchYFS2$Year==yrs[i])]) -#} -#colnames(cat_month)=c(1:12) -#rownames(cat_month)=yrs -#cat_month1=cat_month/rowSums(cat_month) -#for(i in 1:length(yrs)){ -#cat_month2[i,]=cumsum(cat_month1[i,]) -#} -#Cat=c(cat_month2) -#Year=rep(yrs,12) -#Month=rep(seq(1,12,1),each=length(yrs)) -#catch_month=data.frame(Cat,Year,Month) -#write.csv(catch_month,here("/doc/Rmd/catch_month.csv")) - -catch_month=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/catch_month.csv") -ggplot(data=catch_month, aes(x=Month,y=Cat,group=factor(Year)))+geom_line(aes(colour=Year),size=1.2)+scale_x_continuous(breaks = seq(1,12, by = 1))+theme(legend.position="right")+labs(y = "Relative cumulative catch")+scale_colour_gradient(low="lightblue",high="darkblue")+theme_few(base_size=14) - -``` -\ -`r figure_nums(name="catchfig",caption = paste("Yellowfin Sole annual total catch (1,000s t) in the Eastern Bering Sea from 1954-",thisyr," (upper panel). Yellowfin Sole annual cumulative catch by month and year (non CDQ) 2003-",thisyr-1," (lower panel).",sep=""))` - -\pagebreak - -```{r pie_bymonth,fig.align='center',message=FALSE, echo=FALSE,fig.align='center'} -library(scales) -par(mar=c(5,6,6,1)) -area=names(table(retdis2018$Reporting.Area.Code)) -areaz=vector() -for(i in 1:length(area)){ - areaz[i]=sum(retdis2018$Total.Catch..mt.[which(retdis2018$Reporting.Area.Code==area[i])]) -} -area_res=as.data.frame(cbind(area,round(areaz))) -area_res2=area_res[which(as.numeric(as.character(area_res[,2]))>1000),] -area_res3=data.frame(as.factor(as.character(area_res2[,1])),as.numeric(as.character(area_res2[,2]))) -area_res4=cbind(area_res3,area_res3[,2]/sum(area_res3[,2])) -colnames(area_res4)=c("NMFS.Area","Catch_full","Catch") -area_res5=cbind(area_res4,cumsum(area_res4$Catch)-(area_res4$Catch/2)) -colnames(area_res5)=c("NMFS.Area","Catch_full","Catch","pos") - -blank_theme <- theme_minimal()+ - theme( - axis.title.x = element_blank(), - axis.title.y = element_blank(), - panel.border = element_blank(), - panel.grid=element_blank(), - axis.ticks = element_blank(), - plot.title=element_text(size=14, face="bold") - ) - -ggplot(area_res5, aes(x="", y=Catch, fill=NMFS.Area))+ -geom_bar(width = 2, stat = "identity")+coord_polar("y", start=0,direction=1)+blank_theme+theme(axis.text.x=element_blank()) +geom_text(aes(label = NMFS.Area),position = position_stack(vjust = 0.5), size=c(8,4,4,4,8,8,8))+ scale_fill_discrete(name = "NMFS Area")+ theme(legend.text=element_text(size=15),legend.title=element_text(size=16)) - -``` - -```{r fig_3b, message=FALSE, echo=FALSE,fig.align='center'} -#blend_catch2018=blend_catchYFS[which(blend_catchYFS2$Year==2018),] -#cat_mo2018=data.frame(cbind(c("January","February","March","April","May","June","July","August","September","October","November","December"),table(blend_catch2018$Month))) -#cat_mo2018b=cbind(as.character(cat_mo2018[,1]),formatC(as.numeric(as.character(cat_mo2018[,2])),format="d",big.mark=",")) -#write.csv(cat_mo2018b,here("/doc/Rmd/cat_mo2018b.csv")) -cat_mo2018b=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/cat_mo2018b.csv") -colnames(cat_mo2018b)=c("N","Month","Catch") -cat_mo2018b$Month=factor(cat_mo2018b$Month,levels=cat_mo2018b$Month) -cat_mo2018b$Catch=as.numeric(as.character(cat_mo2018b$Catch)) -Proportion=percent(round(cat_mo2018b$Catch/sum(cat_mo2018b$Catch),2)) -cm=cbind(cat_mo2018b,Proportion) - -ggplot(cm, aes(x="", y=Catch, fill=Month))+ -geom_bar(width = 2, stat = "identity")+coord_polar("y", start=0,direction=-1)+blank_theme+theme(axis.text.x=element_blank()) +geom_text(aes(label = Proportion),position = position_stack(vjust =0.5),vjust=c(-.3,rep(1.1,11)),hjust=c(rep(.5,11),.3), size=c(5,rep(5,11)))+ scale_fill_discrete(name = "Month")+ theme(legend.text=element_text(size=15),legend.title=element_text(size=16)) - -``` -`r figure_nums(name="pie_bymonth",caption = paste("Yellowfin Sole catch proportion by area (upper panel) and by month (lower panel) in the Eastern Bering Sea in ",thisyr-1,"."))` - -\pagebreak -```{r cpue,message=FALSE,echo=FALSE} -cpue=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/cpue_all_species_ebs_shelf_2019.csv",header=TRUE) - -``` - -\pagebreak -```{r obs_sizecomp,message=FALSE,echo=FALSE} - - -``` -`r figure_nums(name="obs_sizecomp",caption="Size composition of the yellowfin sole catch in 2019 (through mid-September), by subarea and total.")` - - -\pagebreak -```{r fishmo,message=FALSE,echo=FALSE} - - -``` -`r figure_nums(name="fishmo",caption="Fishery locations by month, 2019")` - -\pagebreak -```{r cpuediff,message=FALSE,echo=FALSE} - -``` -\begin{center} - \includegraphics[width=6.5in]{/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/yfs_cpuediff_2019_arcmap.pdf} -\end{center} -`r figure_nums(name="cpuediff",caption = "Difference between the 1985-2016 average trawl survey CPUE for Yellowfin Sole and the 2019 survey CPUE. Open circles indicate that the magnitude of the catch was greater in 2017 than the long-term average, closed circles indicate the catch was greater in the long-term average than in 2019.")` - - -\pagebreak - -```{r srvCI, message=FALSE, echo=FALSE} -LCI=YFS2$ob_bts-1.96*YFS2$sd_ob_bts -HCI=YFS2$ob_bts+1.96*YFS2$sd_ob_bts -srv_bio=data.frame(cbind(YFS2$yrs_srv,YFS2$ob_bts,YFS2$sd_ob_bts,LCI,HCI)) - -colnames(srv_bio)=c("Year","Biomass","sd","LCI","HCI") -ggplot(data=srv_bio,aes(x=Year,y=Biomass))+geom_point(aes(x=Year,y=Biomass))+geom_errorbar(aes(ymin=LCI, ymax=HCI), width=.1)+theme_bw()+theme(legend.title=element_text(size=13),legend.text=element_text(size=11),axis.text=element_text(size=11),axis.title.x = element_text(size=13),axis.title.y = element_text(size=14))+ - ylab("Biomass (x 1,000 t)")+scale_x_continuous(breaks = seq(1982,2019, by = 2))+theme(axis.text.x=element_text(angle=90,hjust=1))+ylim(0,4500)+ - theme(legend.position="right")+scale_color_discrete(name="") - -``` -`r figure_nums(name="srvCI",caption = paste("Annual eastern Bering Sea bottom trawl survey biomass point estimates and 95% confidence intervals for Yellowfin Sole, 1982-",thisyr,".",sep=""))` - - -\pagebreak - -```{r wtage, message=FALSE, echo=FALSE} -wts2=data.frame(cbind(seq(1,20,1)),colMeans(YFS2$wt_srv_f),colMeans(YFS2$wt_srv_m)) -colnames(wts2)=c("Age","Females","Males") -ggplot(data=wts2)+geom_line(aes(x=Age,y=Females,colour="Females"))+geom_line(aes(x=Age,y=Males,colour="Males"))+theme_bw()+theme(legend.title=element_text(size=13),legend.text=element_text(size=11),axis.text=element_text(size=11),axis.title.x = element_text(size=13),axis.title.y = element_text(size=14))+ - ylab("Weight (g)")+ - theme(legend.position="right")+scale_color_discrete(name="Sex") - -``` -`r figure_nums(name="wtage",caption = "Average Yellowfin Sole weight-at-age (g) from trawl survey observations.")` - -\pagebreak - -```{r fig_9, message=FALSE, echo=FALSE} - -``` - -\begin{center} -\includegraphics[width=5in,angle=270,origin=c]{/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/Black_Fig3.pdf} -\end{center} -`r figure_nums(name="black",caption = "Master chronology for Yellowfin Sole and time series of mean summer bottom temperature and May sea surface temperature for the southeastern Bering Sea (Panel A). All data were normalized to a mean of 0 and standard deviation of 1. Correlations of chronologies with bottom temperature and sea surface temperature are shown in panels B and C, respectively (Matta et al. 2010).")` - - -\pagebreak - -```{r fig_10, message=FALSE, echo=FALSE} -YFSage=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/YFSage.csv",header=TRUE) -fem5=vector();mal5=vector() -yrs=names(table(substr(YFSage$CRUISE,1,4))) -for(i in 1:length(yrs)){ - fem5[i]=mean(YFSage$LENGTH[which(YFSage$AGE==5&substr(YFSage$CRUISE,1,4)==yrs[i]&YFSage$SEX==2)]) - mal5[i]=mean(YFSage$LENGTH[which(YFSage$AGE==5&substr(YFSage$CRUISE,1,4)==yrs[i]&YFSage$SEX==1)]) -} - -Year=rep(seq(1982,2018,1),3) -Series=c(rep("Temperature",37),rep("Males",37),rep("Females",37)) -Data=c(10*YFS2$Bottom_temp[1,1:37],(mal5[9:45]-mean(mal5[9:45])),(fem5[9:45]-mean(fem5[9:45]))) -env=data.frame(Year,Series,Data) - -ggplot(data=env,aes(x=Year,y=Data,type=Series))+geom_line(aes(x=Year,y=Data,color=Series))+theme_bw()+theme(legend.title=element_text(size=13),legend.text=element_text(size=11),axis.text=element_text(size=11),axis.title.x = element_text(size=13),axis.title.y = element_text(size=14))+ylab("Temperature Anomaly")+scale_x_continuous(breaks = seq(1982,2018, by = 2))+theme(axis.text.x=element_text(angle=90,hjust=1))+geom_hline(yintercept=0,linetype=1) - - -``` -`r figure_nums('tempanom')` - - -\pagebreak - -```{r retro1, echo=FALSE, message=FALSE} - -#c(a[length(a)],b[length(b)],c[length(c)],d[length(d)],e[length(e)],f[length(f)],g[length(g)],h[length(h)],i[length(i)],j[length(j)]) - -#retrospective - -std2019=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_0.std") -std2018=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_1.std") -std2017=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_2.std") -std2016=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_3.std") -std2015=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_4.std") -std2014=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_5.std") -std2013=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_6.std") -std2012=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_7.std") -std2011=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_8.std") -std2010=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_9.std") -std2009=read.table("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/runs/m2/retro/r_10.std") - - -ret18=data.frame(cbind(c(1954:2018),YFS2018retro$SSB[,2],YFS2018retro$SSB[,2]+1.96*as.numeric(as.vector(std2018[['V4']][594:658])),YFS2018retro$SSB[,2]-1.96*as.numeric(as.vector(std2018[['V4']][594:658])))) - -ret17=data.frame(cbind(c(1954:2017),YFS2017retro$SSB[,2],YFS2017retro$SSB[,2]+1.96*as.numeric(as.vector(std2017[['V4']][587:650])),YFS2017retro$SSB[,2]-1.96*as.numeric(as.vector(std2017[['V4']][587:650])))) - -ret16=data.frame(cbind(c(1954:2016),YFS2016retro$SSB[,2],YFS2016retro$SSB[,2]+1.96*as.numeric(as.vector(std2016[['V4']][580:642])),YFS2016retro$SSB[,2]-1.96*as.numeric(as.vector(std2016[['V4']][580:642])))) - -ret15=data.frame(cbind(c(1954:2015),YFS2015retro$SSB[,2],YFS2015retro$SSB[,2]+1.96*as.numeric(as.vector(std2015[['V4']][573:634])),YFS2015retro$SSB[,2]-1.96*as.numeric(as.vector(std2015[['V4']][573:634])))) - -ret14=data.frame(cbind(c(1954:2014),YFS2014retro$SSB[,2],YFS2014retro$SSB[,2]+1.96*as.numeric(as.vector(std2014[['V4']][566:626])),YFS2014retro$SSB[,2]-1.96*as.numeric(as.vector(std2014[['V4']][566:626])))) - -ret13=data.frame(cbind(c(1954:2013),YFS2013retro$SSB[,2],YFS2013retro$SSB[,2]+1.96*as.numeric(as.vector(std2013[['V4']][559:618])),YFS2013retro$SSB[,2]-1.96*as.numeric(as.vector(std2013[['V4']][559:618])))) - -ret12=data.frame(cbind(c(1954:2012),YFS2012retro$SSB[,2],YFS2012retro$SSB[,2]+1.96*as.numeric(as.vector(std2012[['V4']][552:610])),YFS2012retro$SSB[,2]-1.96*as.numeric(as.vector(std2012[['V4']][552:610])))) - -ret11=data.frame(cbind(c(1954:2011),YFS2011retro$SSB[,2],YFS2011retro$SSB[,2]+1.96*as.numeric(as.vector(std2011[['V4']][545:602])),YFS2011retro$SSB[,2]-1.96*as.numeric(as.vector(std2011[['V4']][545:602])))) - -ret10=data.frame(cbind(c(1954:2010),YFS2010retro$SSB[,2],YFS2010retro$SSB[,2]+1.96*as.numeric(as.vector(std2010[['V4']][538:594])),YFS2010retro$SSB[,2]-1.96*as.numeric(as.vector(std2010[['V4']][538:594])))) - -ret09=data.frame(cbind(c(1954:2009),YFS2009retro$SSB[,2],YFS2009retro$SSB[,2]+1.96*as.numeric(as.vector(std2009[['V4']][531:586])),YFS2009retro$SSB[,2]-1.96*as.numeric(as.vector(std2009[['V4']][531:586])))) - - -retro=as.data.frame(rbind(ret09,ret10,ret11,ret12,ret13,ret14,ret15,ret16,ret17,ret18)) -colnames(retro)=c("Year","Female_Spawning_Biomass","UI","LI") - -year=rev(c(rep("2018",length(c(1954:2018))),rep("2017",length(c(1954:2017))),rep("2016",length(c(1954:2016))),rep("2015",length(c(1954:2015))),rep("2014",length(c(1954:2014))),rep("2013",length(c(1954:2013))),rep("2012",length(c(1954:2012))),rep("2011",length(c(1954:2011))),rep("2010",length(c(1954:2010))),rep("2009",length(c(1954:2009))))) -retro=cbind(retro,year) - - -theme_set(theme_gray(base_size = 18)) -p=ggplot(data=retro,aes(x=Year,y=Female_Spawning_Biomass,ymin=LI,ymax=UI))+geom_ribbon(aes(fill=year),alpha=0.3)+geom_line(aes(color=year))+ylab("Female Spawning Biomass (t)")+theme_bw()+theme(legend.text=element_text(size=11),axis.text=element_text(size=9),axis.title.x = element_text(size=14),axis.title.y = element_text(size=14))+scale_x_continuous(breaks = seq(1954,2018, by = 2))+theme(axis.text.x=element_text(angle=90,hjust=-1)) - - -print(p) - -``` -`r figure_nums(name="retro1",caption = paste("Retrospective plot of female spawning biomass. The preferred model with data through ",thisyr," is shown, and data was sequentially removed through ",thisyr-10,".",sep=""))` - -\pagebreak - -```{r retro2, echo=FALSE,message=FALSE} -#plot differences -Years=c(c(1954:2018),c(1954:2017),c(1954:2016),c(1954:2015),c(1954:2014),c(1954:2013),c(1954:2012),c(1954:2011),c(1954:2010),c(1954:2009)) - - -Difference=c(-1*(YFS2019$SSB[1:65,2]-YFS2018retro$SSB[,2])/YFS2019$SSB[1:65,2], --1*(YFS2019$SSB[1:64,2]-YFS2017retro$SSB[,2])/YFS2019$SSB[1:64,2], --1*(YFS2019$SSB[1:63,2]-YFS2016retro$SSB[,2])/YFS2019$SSB[1:63,2], --1*(YFS2019$SSB[1:62,2]-YFS2015retro$SSB[,2])/YFS2019$SSB[1:62,2], --1*(YFS2019$SSB[1:61,2]-YFS2014retro$SSB[,2])/YFS2019$SSB[1:61,2], --1*(YFS2019$SSB[1:60,2]-YFS2013retro$SSB[,2])/YFS2019$SSB[1:60,2], --1*(YFS2019$SSB[1:59,2]-YFS2012retro$SSB[,2])/YFS2019$SSB[1:59,2], --1*(YFS2019$SSB[1:58,2]-YFS2011retro$SSB[,2])/YFS2019$SSB[1:58,2], --1*(YFS2019$SSB[1:57,2]-YFS2010retro$SSB[,2])/YFS2019$SSB[1:57,2], --1*(YFS2019$SSB[1:56,2]-YFS2009retro$SSB[,2])/YFS2019$SSB[1:56,2]) - - - -Year=(c(rep("2018",length(c(1954:2018))),rep("2017",length(c(1954:2017))),rep("2016",length(c(1954:2016))),rep("2015",length(c(1954:2015))),rep("2014",length(c(1954:2014))),rep("2013",length(c(1954:2013))),rep("2012",length(c(1954:2012))),rep("2011",length(c(1954:2011))),rep("2010",length(c(1954:2010))),rep("2009",length(c(1954:2009))))) - -#dat=data.frame(cbind(Years,Difference,Year)) -dat=data.frame(Years,Difference,Year) - -ggplot(data=dat,aes(x=Years,y=Difference,type=Year))+geom_line(aes(x=Years,y=Difference, color=Year))+ylab("Difference")+xlab("Year")+theme_bw()+theme(legend.text=element_text(size=11),axis.text=element_text(size=9),axis.title.x = element_text(size=14),axis.title.y = element_text(size=14))+scale_x_continuous(breaks = seq(1954,2018, by = 2))+theme(axis.text.x=element_text(angle=90,hjust=-1)) -``` -`r figure_nums(name="retro2",caption = paste("Relative differences in estimates of spawning biomass between the ",thisyr," model and the retrospective model run for years ",thisyr-1," through ",thisyr-10,".",sep=""))` - - -\pagebreak - -```{r srvbio_fit, message=FALSE, echo=FALSE} -#fit to survey biomass -LCI=YFS2$ob_bts-1.96*YFS2$sd_ob_bts -HCI=YFS2$ob_bts+1.96*YFS2$sd_ob_bts -srv_bio2=data.frame(cbind(YFS2$yrs_srv,YFS2$ob_bts,YFS2$sd_ob_bts,LCI,HCI,YFS2$pred_srv[29:65])) -colnames(srv_bio2)=c("Year","Biomass","sd","LCI","HCI","Predicted") -ggplot(data=srv_bio2,aes(x=Year,y=Biomass))+geom_point(aes(x=Year,y=Biomass,col="Survey Estimate"))+geom_errorbar(aes(ymin=LCI, ymax=HCI), width=.1)+geom_line(aes(x=Year,y=Predicted,col="Model Estimate"))+theme(legend.title=element_text(size=13),legend.text=element_text(size=11),axis.text=element_text(size=11),axis.title.x = element_text(size=13),axis.title.y = element_text(size=14))+ - ylab("Biomass (x 1,000 t)")+scale_x_continuous(breaks = seq(1982,2018, by = 2))+ylim(0,4500)+ - theme(legend.position="right")+scale_color_discrete(name="")+theme_bw()+theme(axis.text.x=element_text(angle=270,hjust=1)) - -``` -`r figure_nums(name="srvbio_fit",caption = paste("NMFS eastern Bering Sea survey biomass estimates, with 95% confidence intervals. The model fit to survey biomass estimates is shown as a red line. Data from 1982-",thisyr,".",sep=""))` - -\pagebreak -```{r sexratio,message=FALSE,echo=FALSE} - df <- data.frame(rowSums(YFS2$natage_f)/rowSums(YFS2$natage_f+YFS2$natage_m)) - df$Model <- "Model 18.2" - df$Year=YFS2$Yr - colnames(df)=c("Sex_Ratio","Model","Year") - - df1 <- data.frame(rowSums(YFS1$natage_f)/rowSums(YFS1$natage_f+YFS1$natage_m)) - df1$Model <- "Model 18.1a" - df1$Year=YFS2$Yr - - colnames(df1)=c("Sex_Ratio","Model","Year") - df2=rbind(df1,df) - - ggplot(df2) + geom_point(data=df2, aes(x = Year, y = Sex_Ratio,color=Model),size=3)+labs(xlab = "Year", ylab = "Proportion female")+ - ylab("Proportion Female")+theme_bw() - -``` -`r figure_nums(name="sexratio",caption = paste("Model estimates of the proportion of female Yellowfin Sole in the population, 1982-",thisyr,".",sep=""))` - -\pagebreak -```{r plotq, message=FALSE,echo=FALSE} - df <- data.frame( Year = YFS2$yrs_srv ) - df$Model <- "Model 18.2" - df$q_srv <- YFS2$q_srv - - df1 <- data.frame( Year = YFS1$yrs_srv ) - df1$Model <- "Model 18.1a" - df1$q_srv <- YFS1$q_srv - - df2=data.frame(rbind(df1,df)) - - ggplot(df2) +geom_line(aes(x = Year, y = q_srv, col = Model),size=1.2)+ - labs(x = "Year", y = "Survey catchability")+theme_bw() - -``` -`r figure_nums(name="plotq",caption = paste("Survey catchability for Model 18.1a and 18.2, 1982-",thisyr,".",sep=""))` - - -\pagebreak -```{r bioFSBCI, message=FALSE, echo=FALSE} -TotBiom=data.frame(YFS2$TotBiom,rep("Biomass",nrow(YFS2$TotBiom))) -colnames(TotBiom)=c("Year","Biomass","sd","LCI","HCI","Type") -SSB=data.frame(YFS2$SSB,rep("FSB",nrow(YFS2$SSB))) -colnames(SSB)=c("Year","Biomass","sd","LCI","HCI","Type") -TotBiom2=rbind(TotBiom,SSB) -colnames(TotBiom2)=c("Year","Biomass","sd","LCI","HCI","Type") - -theme_set(theme_gray(base_size = 18)) -ggplot(data=TotBiom2,aes(x=Year,y=Biomass,ymin=LCI,ymax=HCI))+ -geom_ribbon(aes(fill=Type),alpha=0.3)+geom_line(aes(color=Type))+ -ylab("Biomass (x 1,000 t)")+theme_bw()+theme(legend.text=element_text(size=11),axis.text=element_text(size=9),axis.title.x = element_text(size=14),axis.title.y = element_text(size=14))+scale_x_continuous(breaks = seq(1954,2019, by = 2))+theme(axis.text.x=element_text(angle=90,hjust=-1)) - -``` -`r figure_nums(name="bioFSBCI",caption = paste("Model estimates of total (age 6+) and female spawning biomass with 95% confidence intervals, 1954-",thisyr,".",sep=""))` - - -#survey selectivity -```{r srvsel} -srvsel=data.frame(cbind(seq(1,20,1),YFS2$sel_srv_f,YFS2$sel_srv_m)) -colnames(srvsel)=c("Age","Female","Male") -ggplot(data=srvsel)+geom_line(aes(x=Age,y=Female,col="Female"))+geom_line(aes(x=Age,y=Male,col="Male"))+theme_bw()+ - theme(legend.title=element_text(size=13),legend.text=element_text(size=11),axis.text=element_text(size=11),axis.title.x = element_text(size=13),axis.title.y = element_text(size=14))+ - ylab("Proportion selected")+scale_x_continuous(breaks = seq(1,20, by = 2))+scale_color_discrete(name="") - - -``` -`r figure_nums(name="srvsel",caption = "Estimate of survey selectivity for males and females.")` - - -\pagebreak -```{r fishsel,fig.height=8.5} -#sf=data.frame(rep(seq(1954,2019,1),20),rep(seq(1,20,1),each=66),as.vector(YFS2$sel_fsh_f)) -#colnames(sf)=c("Year","Age","Selectivity") -#ggplot(data=sf,x=Age,y=Selectivity)+geom_line(aes(x=Age,y=Selectivity))+facet_wrap(~Year)+th#eme_few()+ theme(axis.text.x = element_text(angle = 90, hjust = 1, size=7))+ #theme(axis.text.y = element_text(angle = 0, hjust = 1, size=7)) - -#sf=data.frame(rep(seq(1954,2019,1),each=20),rep(seq(1,20,1),66),as.vector(t(YFS2$sel_fsh_f))) -#colnames(sf)=c("Year","Age","Selectivity") -#ggplot(data=sf,aes(x=Age,y=Selectivity,type=Year))+geom_line(aes(x=Age,y=Selectivity,colour=factor(Year)))+ylab("Fishery Selectivity")+xlab("Age") - -mdf <- data.frame(Year=YFS2$Yr,Sex="males",YFS2$sel_fsh_m) -mdf <- rbind(mdf,data.frame(Year=YFS2$Yr,Sex="females",YFS2$sel_fsh_f)) -names(mdf)[3:22] <- 1:20 -sdf <- (gather(mdf,Age,selectivity,3:22) ) %>% filter(Year>=min(YFS2$Yr),Year<=max(YFS2$Yr)) %>% mutate(Age=as.numeric(Age)) #+ arrange(age,Year) - -ggplot(sdf,aes(x=Age,y=fct_rev(as.factor(Year)),height = selectivity,fill=Sex,color=Sex,alpha=0.3)) + - geom_density_ridges(stat = "identity",scale=1,alpha = 0.3) + ylab("Year")+ theme(axis.text.y = element_text(angle = 0, hjust = 1, size=5)) - -``` - -`r figure_nums(name="fshsel",caption = "Estimate of fishery selectivity for males and females, 1954-2019.")` - - -\pagebreak -```{r ricker,echo=FALSE,message=FALSE} - - df <- data.frame(YFS2$SRR_SSB) - df$Year <- YFS2$Year - df$rhat <- YFS2$rechat - df$rhat.sd <- YFS2$rechat.sd - df$lb <- df$rhat/exp(2*sqrt(log(1+df$rhat.sd^2/df$rhat^2))) - df$ub <- df$rhat*exp(2*sqrt(log(1+df$rhat.sd^2/df$rhat^2))) - colnames(df)=c("ssb","rhat","rhat.sd","lb","ub") - df2=data.frame(YFS2$Yr[60:66],YFS2$SSB[60:66,2],(YFS2$natage_f[60:66,1]+YFS2$natage_m[60:66,1])) - df3=data.frame(YFS2$Yr[25:60],YFS2$SSB[25:60,2],(YFS2$natage_f[25:60,1]+YFS2$natage_m[25:60,1])) - colnames(df2)=c("Year","FSB","Recruitment") - colnames(df3)=c("Year","FSB","Recruitment") - ggplot(df) +geom_line(aes(x = ssb, y = rhat)) + - geom_ribbon(aes(x = ssb, ymax = ub, ymin = lb), alpha=0.3)+labs(x = "Female spawning biomass (x 1,000 t)", y = "Recruits (age 1, millions)")+geom_text(data=df2,aes(x = FSB, y = Recruitment,label=Year),color="blue")+geom_text(data=df3,aes(x = FSB, y = Recruitment,label=Year))+theme_bw() - -``` -`r figure_nums(name="ricker",caption = paste("Ricker stock recruitment curve with 95% confidence intervals (shaded region) fit to female spawning biomass and recruitment data from 1978-2013. Years in black indicate data used to fit the model.",sep=""))` - - -\pagebreak -```{r phaseplane} -#phase plane plot -par(mar=c(5,5,3,2)) -par(mfrow=c(1,1)) -F40=extra_sd2$HM_Fmsyr[1] -B40=extra_sd2$Bmsy[1] -FOFL=extra_sd2$AM_Fmsyr[1] -plot(0,0,xlim=c(0,max(YFS2$SSB[,2])*1.1),ylim=c(0,FOFL*1.6),col=1,xlab="Estimated female spawning biomass (x 1,000 t)",ylab="Estimated fishing mortality rate",cex.axis=1.2,cex.lab=1.1,pch=-1,cex=.00001) -segments(0,0,B40,F40,col="green",lwd=4) -segments(B40,F40,max(YFS2$SSB[,2])*1.1,F40,col="green",lwd=4) -abline(h=FOFL,lty=1) -abline(v=B40,lty=2) -legend("topright",c(expression("F" ["OFL"]),expression("B" ["MSY"]),expression("F" ["MSY"])),lwd=c(1,1,4),lty=c(1,2,1), col=c("black","black","green"),cex=1.1,bty="n") - -#note: female and male fishing mortality rate is the same -points(YFS2$SSB[21:66,2],YFS2$F_f[21:66,19],type="l",col="red",lwd=4) - -points(YFS2$SSB[66,2],YFS2$F_f[66,19],pch=15,col="grey") -text(YFS2$SSB[66,2],YFS2$F_f[66,19]+.005,"2019",cex=0.9) - -#for(i in 1: 59){ -#text(ATF2019$fspbio[i] ,ATF2019$fishmort[i],labels=as.character(seq(1961,2019,1))[i],cex=0.9)} - -points(extra_sd2$SSB[1],extra_sd2$Catch_Assump[1]/extra_sd2$GM_Biom[1],pch=15,col="blue") -text(extra_sd2$SSB[1],(extra_sd2$Catch_Assump[1]/extra_sd2$GM_Biom[1])+.005,"2020",cex=0.9) - -points(extra_sd2$SSB[2],extra_sd2$Catch_Assump[2]/extra_sd2$GM_Biom[2],pch=15,col="black") -text(extra_sd2$SSB[2],(extra_sd2$Catch_Assump[2]/extra_sd2$GM_Biom[2])+.005,"2021",cex=0.9) - - -``` - -`r figure_nums(name="phase",caption = paste("Fishing mortality rate and female spawning biomass from 1975 to ",thisyr," compared to the F35% and F40% control rules. Vertical lines are B35% and B40%.",sep=""))` - -\pagebreak - -## Appendix - -Table A1. Removals (kg) of Yellowfin Sole from the Bering Sea from sources other than those that are included in the Alaska Region’s official estimate of catch, 1990-`r thisyr`. Source NMFS Alaska Region: Sourced by the AKR.V_NONCOMMERCIAL_FISHERY_CATCH table, October 31, `r thisyr`. Abbreviations: IPHC (International Pacific Halibut Commission), ADFG (Alaska Department of Fish and Gam), NMFS (National Marine Fisheries Service). - -```{r rescat2,message=FALSE,echo=FALSE} -recatch2=read.csv("/Users/ingridspies/admbmodels/flatfish/assessments/yfs/doc/data/Noncommercial Fishery CatchYFS.csv",header=TRUE) -yr=names(table(recatch2$Collection.Year)) -ag=names(table(recatch2$Collection.Agency)) -col=matrix(0,length(yr),length(ag)) -for (i in 1:length(yr)){ - for(j in 1:length(ag)){ - col[i,j]=sum(recatch2$Weight[which(recatch2$Collection.Year==yr[i]&recatch2$Collection.Agency==ag[j])]) -}} -col1=round(col) -colnames(col1)=ag -rownames(col1)=yr - -kable(col1,"latex",booktabs=T,linesep="") -``` -