Commit dc06439b authored by Iago Mosqueira's avatar Iago Mosqueira
Browse files

Progress on WD

parent aa642bc8
report.pdf: report.Rmd references.bib
R -e "source('../utilities.R')" -e "rmarkdown::render('report.Rmd', output_format='pdf_document')"
references.bib: report.Rmd
pubs refs report.Rmd
# pubs refs report.Rmd
pubs allrefs report.Rmd
# code.R - DESC
# /code.R
# Copyright Iago MOSQUEIRA (WMR), 2020
# Author: Iago MOSQUEIRA (WMR) <iago.mosqueira@wur.nl>
#
# Distributed under the terms of the EUPL-1.2
library(flextable)
render_flextable <- function(x, ...) {
if (knitr::opts_knit$get("rmarkdown.pandoc.to") == "docx" && rmarkdown::pandoc_version() >= 2)
knitr::asis_output(
paste(
"```{=openxml}",
docx_str(x), # <- this is the function which generates table's XML code
"```",
sep = "\n"
)
)
else # fallback to default behaviour (htmlwidget)
knitr::knit_print(tabwid(x))
}
knit_print.flextable = render_flextable
docx_str <- function( x ){
UseMethod("docx_str")
}
## This is basically a copy of body_add_flextable, which just generates needed
## XML without inserting into a document (x is a flextable object here), as
## a consequence images are not supported since a document seems to be needed
## for that.
docx_str.flextable <- function(x, align = "center", ...){
imgs <- character(0)
align <- match.arg(align, c("center", "left", "right"), several.ok = FALSE)
align <- c("center" = "center", "left" = "start", "right" = "end")[align]
align <- as.character(align)
dims <- dim(x)
widths <- dims$widths
colswidths <- paste0("<w:gridCol w:w=\"", round(widths*72*20, 0), "\"/>", collapse = "")
out <- paste0(
"<w:tbl xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" ",
"xmlns:w15=\"http://schemas.microsoft.com/office/word/2012/wordml\" ",
"xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" ",
"xmlns:m=\"http://schemas.openxmlformats.org/officeDocument/2006/math\" ",
"xmlns:w14=\"http://schemas.microsoft.com/office/word/2010/wordml\" ",
"xmlns:wp=\"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing\" ",
"xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" ",
"xmlns:mc=\"http://schemas.openxmlformats.org/markup-compatibility/2006\" ",
"xmlns:ns9=\"http://schemas.openxmlformats.org/schemaLibrary/2006/main\" ",
"xmlns:wne=\"http://schemas.microsoft.com/office/word/2006/wordml\" ",
"xmlns:c=\"http://schemas.openxmlformats.org/drawingml/2006/chart\" ",
"xmlns:ns12=\"http://schemas.openxmlformats.org/drawingml/2006/chartDrawing\" ",
"xmlns:dgm=\"http://schemas.openxmlformats.org/drawingml/2006/diagram\" ",
"xmlns:pic=\"http://schemas.openxmlformats.org/drawingml/2006/picture\" ",
"xmlns:xdr=\"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing\" ",
"xmlns:dsp=\"http://schemas.microsoft.com/office/drawing/2008/diagram\" ",
"xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" ",
"xmlns:ns19=\"urn:schemas-microsoft-com:office:excel\" xmlns:w10=\"urn:schemas-microsoft-com:office:word\" ",
"xmlns:ns21=\"urn:schemas-microsoft-com:office:powerpoint\" xmlns:ns23=\"http://schemas.microsoft.com/office/2006/coverPageProps\" ",
"xmlns:odx=\"http://opendope.org/xpaths\" xmlns:odc=\"http://opendope.org/conditions\" ",
"xmlns:odq=\"http://opendope.org/questions\" xmlns:oda=\"http://opendope.org/answers\" ",
"xmlns:odi=\"http://opendope.org/components\" xmlns:odgm=\"http://opendope.org/SmartArt/DataHierarchy\" ",
"xmlns:ns30=\"http://schemas.openxmlformats.org/officeDocument/2006/bibliography\" ",
"xmlns:ns31=\"http://schemas.openxmlformats.org/drawingml/2006/compatibility\" ",
"xmlns:ns32=\"http://schemas.openxmlformats.org/drawingml/2006/lockedCanvas\" ",
"xmlns:wpc=\"http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas\" ",
"xmlns:wpg=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\" ",
"xmlns:wps=\"http://schemas.microsoft.com/office/word/2010/wordprocessingShape\">")
out <- paste0(out, "<w:tblPr><w:tblLayout w:type=\"fixed\"/>",
sprintf( "<w:jc w:val=\"%s\"/>", align ),
"</w:tblPr>" )
out = paste0(out, "<w:tblGrid>" )
out = paste0(out, colswidths )
out = paste0(out, "</w:tblGrid>" )
if( !is.null(x$header) ){
xml_content <- format(x$header, header = TRUE, type = "wml")
imgs <- append( imgs, attr(xml_content, "imgs")$image_src )
out = paste0(out, xml_content )
}
if( !is.null(x$body) ){
xml_content <- format(x$body, header = FALSE, type = "wml")
imgs <- append( imgs, attr(xml_content, "imgs")$image_src )
out = paste0(out, xml_content )
}
imgs <- unique(imgs)
out <- paste0(out, "</w:tbl>" )
if( length(imgs) > 0 ) {
warning("Images are not supported yet for docx-rmarkdown generation",
call. = FALSE)
}
out
}
docx_str.complextable <- docx_str.regulartable
render_flextable(flextable(as.data.frame(catch(ple4)[, ac(1990:2010)])))
......@@ -12,4 +12,271 @@
doi = {10.1093/icesjms/fsp033}
}
@article{Bentley_2012,
author = {Bentley, Nokome and Langley, Adam~D.},
title = {Feasible stock trajectories: a~flexible and efficient sequential estimator for use in fisheries management procedures},
journal = {Canadian Journal of Fisheries and Aquatic Sciences},
publisher = {Canadian Science Publishing},
year = {2012},
month = {jan},
number = {1},
volume = {69},
pages = {161--177},
url = {https://doi.org/10.1139%2Ff2011-143},
doi = {10.1139/f2011-143},
editor = {Hilborn, Ray}
}
@article{Berg_2014,
author = {Berg, Casper W. and Nielsen, Anders and Kristensen, Kasper},
title = {Evaluation of alternative age-based methods for estimating relative abundance from survey data in relation to assessment models},
journal = {Fisheries Research},
publisher = {Elsevier BV},
year = {2014},
month = {mar},
volume = {151},
pages = {91--99},
doi = {10.1016/j.fishres.2013.10.005}
}
@techreport{Brunel_2018,
author = {Brunel, Thomas and Verkempynck, Ruben},
title = {Variations in North Sea sole distribution : variation in North Sea sole distribution with respect to the 56°N parallel perceived through scientific survey and commercial fisheries},
publisher = {Wageningen Marine Research},
year = {2018},
url = {https://doi.org/10.18174%2F465031},
doi = {10.18174/465031}
}
@article{Chong_2019,
author = {Chong, Lisa and Mildenberger, Tobias K and Rudd, Merrill B and Taylor, Marc H and Cope, Jason M and Branch, Trevor A and Wolff, Matthias and Stäbler, Moritz},
title = {Performance evaluation of data-limited, length-based stock assessment methods},
journal = {ICES Journal of Marine Science},
publisher = {Oxford University Press (OUP)},
year = {2019},
month = {nov},
url = {https://doi.org/10.1093%2Ficesjms%2Ffsz212},
doi = {10.1093/icesjms/fsz212},
editor = {Anderson, Emory}
}
@article{Cote_2001,
author = {Cote, I. M. and Mosqueira, I. and Reynolds, J. D.},
title = {Effects of marine reserve characteristics on the protection of fish populations: a meta-analysis},
journal = {Journal of Fish Biology},
publisher = {Wiley},
year = {2001},
month = {dec},
number = {sa},
volume = {59},
pages = {178--189},
url = {https://doi.org/10.1111%2Fj.1095-8649.2001.tb01385.x},
doi = {10.1111/j.1095-8649.2001.tb01385.x}
}
@article{Fournier_2012,
author = {Fournier, David A. and Skaug, Hans J. and Ancheta, Johnoel and Ianelli, James and Magnusson, Arni and Maunder, Mark N. and Nielsen, Anders and Sibert, John},
title = {AD Model Builder: using automatic differentiation for statistical inference of highly parameterized complex nonlinear models},
journal = {Optimization Methods and Software},
publisher = {Informa UK Limited},
year = {2012},
month = {apr},
number = {2},
volume = {27},
pages = {233--249},
url = {https://doi.org/10.1080%2F10556788.2011.597854},
doi = {10.1080/10556788.2011.597854}
}
@article{Garcia_2019,
author = {Garcia, Dorleta and Dolder, Paul J and Iriondo, Ane and Moore, Claire and Prellezo, Raúl and Urtizberea, Agurtzane},
title = {A multi-stock harvest control rule based on “pretty good yield” ranges to support mixed-fisheries management},
journal = {ICES Journal of Marine Science},
publisher = {Oxford University Press (OUP)},
year = {2019},
month = {oct},
url = {https://doi.org/10.1093%2Ficesjms%2Ffsz181},
doi = {10.1093/icesjms/fsz181},
editor = {Jardim, Ernesto}
}
@article{Goethel_2019,
author = {Goethel, Daniel R. and Lucey, Sean M. and Berger, Aaron M. and Gaichas, Sarah K. and Karp, Melissa A. and Lynch, Patrick D. and Walter, John F. and Deroba, Jonathan J. and Miller, Shana and Wilberg, Michael J.},
title = {Closing the feedback loop: on stakeholder participation in management strategy evaluation},
journal = {Canadian Journal of Fisheries and Aquatic Sciences},
publisher = {Canadian Science Publishing},
year = {2019},
month = {oct},
number = {10},
volume = {76},
pages = {1895--1913},
url = {https://doi.org/10.1139%2Fcjfas-2018-0162},
doi = {10.1139/cjfas-2018-0162}
}
@article{Hordyk_2014,
author = {Hordyk, Adrian and Ono, Kotaro and Valencia, Sarah and Loneragan, Neil and Prince, Jeremy},
title = {A novel length-based empirical estimation method of spawning potential ratio (SPR), and tests of its performance, for small-scale, data-poor fisheries},
journal = {ICES Journal of Marine Science},
publisher = {Oxford University Press (OUP)},
year = {2014},
month = {feb},
number = {1},
volume = {72},
pages = {217--231},
url = {https://doi.org/10.1093%2Ficesjms%2Ffsu004},
doi = {10.1093/icesjms/fsu004}
}
@article{ICES2019,
author = {ICES, },
title = {Working Group on the Assessment of Demersal Stocks in the North Sea and Skagerrak(WGNSSK)},
publisher = {ICES},
year = {2019},
number = {ICES Scientific Reports. 1:7},
pages = {1271},
url = {http://www.ices.dk/sites/pub/Publication Reports/Forms/DispForm.aspx?ID=35718},
doi = {10.17895/ICES.PUB.5402}
}
@techreport{ICES_WGBEAM_2009,
author = {ICES, },
title = {Manual for the Offshore Beam Trawl Surveys, Revision 1.2, June 2009. Working Group on Beam Trawl Surveys},
institution = {ICES},
year = {2009},
pages = {30}
}
@techreport{ICES_WKNSEA_2015,
author = {ICES, },
title = {Report of the Benchmark Workshop on North Sea Stocks (WKNSEA)},
institution = {ICES},
year = {2015},
number = {ICES CM 2015/ACOM:32},
pages = {253},
day = {2-6}
}
@article{Kell_2007,
author = {Kell, L. T. and Mosqueira, I. and Grosjean, P. and Fromentin, J-M. and Garcia, D. and Hillary, R. and Jardim, E. and Mardle, S. and Pastoors, M. A. and Poos, J. J. and Scott, F. and Scott, R. D.},
title = {FLR: an open-source framework for the evaluation and development of management strategies},
journal = {ICES Journal of Marine Science},
publisher = {Oxford University Press (OUP)},
year = {2007},
month = {mar},
number = {4},
volume = {64},
pages = {640--646},
url = {https://doi.org/10.1093%2Ficesjms%2Ffsm012},
doi = {10.1093/icesjms/fsm012}
}
@article{Mohn_1999,
author = {Mohn, R},
title = {The retrospective problem in sequential population analysis: An investigation using cod fishery and simulated data},
journal = {ICES Journal of Marine Science},
publisher = {Oxford University Press (OUP)},
year = {1999},
month = {aug},
number = {4},
volume = {56},
pages = {473--488},
url = {https://doi.org/10.1006%2Fjmsc.1999.0481},
doi = {10.1006/jmsc.1999.0481}
}
@article{Punt_2013,
author = {Punt, André E. and A'mar, Teresa and Bond, Nicholas A. and Butterworth, Douglas S. and de Moor, Carryn L. and Oliveira, José A. A. De and Haltuch, Melissa A. and Hollowed, Anne B. and Szuwalski, Cody},
title = {Fisheries management under climate and environmental uncertainty: control rules and performance simulation},
journal = {ICES Journal of Marine Science},
publisher = {Oxford University Press (OUP)},
year = {2013},
month = {may},
number = {8},
volume = {71},
pages = {2208--2220},
url = {https://doi.org/10.1093%2Ficesjms%2Ffst057},
doi = {10.1093/icesjms/fst057}
}
@article{Punt_2019,
author = {Punt, André E.},
title = {Modelling recruitment in a spatial context: A review of current approaches, simulation evaluation of options, and suggestions for best practices},
journal = {Fisheries Research},
publisher = {Elsevier BV},
year = {2019},
month = {sep},
volume = {217},
pages = {140--155},
url = {https://doi.org/10.1016%2Fj.fishres.2017.08.021},
doi = {10.1016/j.fishres.2017.08.021}
}
@article{Scranton_2014,
author = {Scranton, Katherine and Knape, Jonas and de Valpine, Perry},
title = {An approximate Bayesian computation approach to parameter estimation in a stochastic stage-structured population model},
journal = {Ecology},
publisher = {Wiley},
year = {2014},
month = {may},
number = {5},
volume = {95},
pages = {1418--1428},
url = {https://doi.org/10.1890%2F13-1065.1},
doi = {10.1890/13-1065.1}
}
@article{Wilkinson_2013,
author = {Wilkinson, Richard David},
title = {Approximate Bayesian computation (ABC) gives exact results under the assumption of model error},
journal = {Statistical Applications in Genetics and Molecular Biology},
publisher = {Walter de Gruyter GmbH},
year = {2013},
month = {jan},
number = {2},
volume = {12},
url = {https://doi.org/10.1515%2Fsagmb-2013-0010},
doi = {10.1515/sagmb-2013-0010}
}
@article{Winker_2020,
author = {Winker, Henning and Carvalho, Felipe and Thorson, James T. and Kell, Laurance T. and Parker, Denham and Kapur, Maia and Sharma, Rishi and Booth, Anthony J. and Kerwath, Sven E.},
title = {JABBA-Select: Incorporating life history and fisheries' selectivity into surplus production models},
journal = {Fisheries Research},
publisher = {Elsevier BV},
year = {2020},
month = {feb},
volume = {222},
pages = {105355},
url = {https://doi.org/10.1016%2Fj.fishres.2019.105355},
doi = {10.1016/j.fishres.2019.105355}
}
@article{Winker_2020a,
author = {Winker, Henning and Carvalho, Felipe and Thorson, James T. and Kell, Laurance T. and Parker, Denham and Kapur, Maia and Sharma, Rishi and Booth, Anthony J. and Kerwath, Sven E.},
title = {JABBA-Select: Incorporating life history and fisheries' selectivity into surplus production models},
journal = {Fisheries Research},
publisher = {Elsevier BV},
year = {2020},
month = {feb},
volume = {222},
pages = {105355},
url = {https://doi.org/10.1016%2Fj.fishres.2019.105355},
doi = {10.1016/j.fishres.2019.105355}
}
@article{Zurell_2010,
author = {Zurell, Damaris and Berger, Uta and Cabral, Juliano S. and Jeltsch, Florian and Meynard, Christine N. and Münkemüller, Tamara and Nehrbass, Nana and Pagel, Jörn and Reineking, Björn and Schröder, Boris and Grimm, Volker},
title = {The virtual ecologist approach: simulating data and observers},
journal = {Oikos},
publisher = {Wiley},
year = {2010},
month = {feb},
number = {4},
volume = {119},
pages = {622--635},
url = {https://doi.org/10.1111%2Fj.1600-0706.2009.18284.x},
doi = {10.1111/j.1600-0706.2009.18284.x}
}
......@@ -5,6 +5,7 @@ author:
- Iago MOSQUEIRA (WMR) <iago.mosqueira@wur.nl>
date: "`r format(Sys.time(), '%d %B, %Y')`"
fontfamily: libertine
fontsize: 12pt
header-includes:
- \usepackage{float}
output:
......@@ -12,6 +13,7 @@ output:
fig_caption: yes
number_sections: yes
toc: yes
bibliography: references.bib
tags: [SOL sole North_Sea stock assessment]
abstract:
license: Creative Commons Attribution-ShareAlike 4.0 International Public License
......@@ -21,7 +23,7 @@ license: Creative Commons Attribution-ShareAlike 4.0 International Public Licens
library(knitr)
# library(kableExtra)
opts_chunk$set(echo=FALSE, message=FALSE, warning=FALSE, results="hide",
cache=FALSE, fig.width=4.5, fig.height=4, out.width='65%', dev="pdf",
cache=TRUE, fig.width=4.5, fig.height=4, out.width='65%', dev="pdf",
fig.align='center', fig.pos='H')
```
......@@ -31,17 +33,33 @@ library(FLSAM)
library(FLa4a)
library(ggplotFL)
library(icesAdvice)
source("../utilities.R")
```
# Introduction
## Stock structure
## Issue list
# Life-history parameters
**Tuning series**
## Weights, maturities, growth
- Evaluate Belgium BTS index, and other surveys (eg. German BTS) covering stock area not
covered by other surveys currently in assessment (SNS, BTS-ISIS).
- Explore combining surveys. Analyse data and construct index using Delta GAM method.
**Assessment**
- Assessment Residuals patterns age 2-3 in landings. Investigate residuals using different setting of AAP model.
**Forecast**
- Review forecast procedure. Evaluate current RCT3 settings and autumn reopening.
**Biological Reference Points**
- Determine MSY (proxy) reference points. Depending on the assessment method and available data.
The work carried out for this benchmark has concentrated on addressing the first items in the list. An standardized BTS index of abundances, using all samples available in DATRAS, has been developed and is presented in a working document to this meeting. Patterns in residuals to the catch-at-age fit for ages 2 and 3 have been improved by separating the parameters controlling the flexibility of the selectivity-at-age and fishing mortality splines. Regarding the settings used for the RCT3 recruitment forecast and its application in the autumn reopening of advice, an ICES workshop will soon meet to discuss the issue in detail, so further work has been carried out. Finally, the determination of candidate reference points is presented below based on the results of the base case stock assessment run.
## Natural mortality
# Data
......@@ -49,8 +67,29 @@ library(icesAdvice)
load("../data/data.RData")
```
## Life history parameters
### Growth
Weights-at-age in the landings are obtained from the various national market sampling programmes, while those in the stock are the 2nd quarter landings weights, as estimated when raising the North Sea sole data. Estimates of weights for older ages fluctuate more widely due to the smaller samples sizes, most notably on ages 8-10 over the last few years. The discards-at-age are estimated from the different sampling programmes since 2002. Discards weights-at-age for the period prior to 2002 are assumed to be equal to the average of the period 2002–2013.
```{r wtseries, fig.cap="Time series of weights-at-age in the landings, discards and stock for North Sea sole (sol.27.4) and for the 1957-2018 period, as used in all stock assessment runs."}
wts <- metrics(stock, Landings=landings.wt, Discards=discards.wt, Stock=stock.wt)
plot(wts) + facet_grid(age~qname)
```
### Maturity
A knife-edged maturity-ogive is used, assuming no maturation at-ages 1 and 2, and full maturation at-age 3, as has been done in the past. Although data on maturity is available from sampling on both surveys and commercial fleets, no investigation of possible alternative maturity schedules, or of changes over time, could be conducted.
### Natural mortality
As in previous assessments, natural mortality in the period 1957–2019 has been assumed constant over all ages at 0.1, except for 1963 where a value of 0.9 was used to take into account the effect of the severe 1962-1963 winter.
## Landings and discards
TODO ADD TEXT
```{r catchseries, fig.cap="Time series of total catch, landings and discards for North Sea sole (sol.27.4) and for the 1957-2018 period."}
ggplot(FLQuants(catch=catch(stock), landings=landings(stock),
discards=discards(stock)), aes(x=year, y=data, group=qname)) +
......@@ -63,27 +102,15 @@ ggplot(FLQuants(catch=catch(stock), landings=landings(stock),
ggplot(as.data.frame(catch.n(stock)),
aes(x=year, y=factor(age, levels=seq(10, 1)))) +
geom_point(aes(size=abs(data)), shape=21, na.rm=TRUE) +
scale_size(range = c(0.1, 10)) +
scale_size(range = c(0.1, 6)) +
theme(legend.position="none") + xlab("cohort") + ylab("age")
```
## Surveys
### Survey data
- TS plots
- Maps by year/5 years
TODO ADD TEXT, refer to WD
### GAM-standardized BTS
```{r gambts}
plot(index(indices[["GAM"]]))
plot((indices[["GAM"]]))
```
- Internal consistency plot
### Traditional BTS-ISIS
### BTS tuning indices
```{r btsurveys, fig.cap="Comparison of the three alternative indices of abundance-at-age derived from samples taken during the quarter 3 Beam Trawl Survey (BTS). BTS-ISIS refers to the traditional index based, GAM to the standardized index using NL, BE and DE data, and GAM-ISIS to a standardized index based on the ISIS dataset only. Indices are rescaled to the mean by age for plotting.", fig.width=6.5, fig.height=6, out.width='80%'}
ggplot(lapply(indices[c("BTS-ISIS", "GAM", "GAM-ISIS")],
......@@ -95,18 +122,6 @@ ggplot(lapply(indices[c("BTS-ISIS", "GAM", "GAM-ISIS")],
theme(legend.title=element_blank())
```
```{r btsisis_corr, fig.height=8, fig.width=8, out.width="65%", fig.cap="Internal consistency of the information by cohort of the traditional BTS-ISIS index of abundance at age.\\label{plot:btsisis_corr}"}
cohcorrplot(FLCohort(index(indices[["BTS-ISIS"]])))
```
```{r btsgam_corr, fig.height=8, fig.width=8, out.width="65%", fig.cap="Internal consistency of the information by cohort of the delta-lognormal, time invariant GAM index of abundance at age (GAM).\\label{plot:btsgam_corr}"}
cohcorrplot(FLCohort(index(indices[["GAM"]])))
```
```{r gamisis_corr, fig.height=8, fig.width=8, out.width="65%", fig.cap="Internal consistency of the information by cohort of the delta-lognormal, time invariant GAM index of abundance at age based on BTS-ISIS samples (GAM-ISIS).\\label{plot:btsgamisis_corr}"}
cohcorrplot(FLCohort(index(indices[["GAM-ISIS"]])))
```
### SNS - Sole Net Survey
```{r snssurvey, fig.cap="(SNS).", fig.width=6.5, fig.height=6, out.width='80%'}
......@@ -121,14 +136,45 @@ ggplot(index(indices[["SNS"]]), aes(x=year, y=data)) +
cohcorrplot(FLCohort(index(indices[["SNS"]])))
```
\newpage
### Commercial landings-per-unit-effort series
# Assessment models
No commercial LPUE series has been included in this analysis, following the considerations of the previous benchmark [@ICES_WKNSEA_2015] on the suitability of the Dutch beam trawl series as an index of abundance. The changes brought to this fleet by the adoption of pulse fishing over the recent period will furthermore soon be undone, as a ban on the use of this gear will be applied in 2020-2021.
\clearpage
# Assessment models
## AAP
[@Aarts_2009]
The base case stock assessment has been carried out using the currently-employed model, AAP [@Aarts_2009]. This is a traditional discrete-time age-structured population model that estimates separately both landings and discards-at-age. The extensions to the original formulation used in the sol.27.4 assessment since the last benchmark [@ICES_WKNSEA_2015] have been retained, namely:
1. Modelling of the F-at-age matrix by means of a tensor spline rather than using a full separability assumption.
2. The proportion discarded at-age is described by a simple logistic function.
3. Use of the maximum likelihood search in ADMB [@Fournier_2012].
In addition, the model has been modified so as to separate the number of knots in the selectivity-at-age spline and those in the age dimension of the F-at-age tensor spline. Finally, the model has been turned into an R package (available at <https://github.com/iagomosqueira/AAP>), making use of the FLR classes and methods [@Kell_2007]. This has simplified the development of the stock assessment work following the ICES TAF guidelines.
### Model settings and data
The base case run of AAP employs the following data sources and model settings. In the case if the tuniung indices, the base case run empoyes the standardized BTS series (BTS-GAM) and the SNS one. Comparison runs are presented using the traditonal BTS-based index of abundance (BTS-Isis), and one in which the data employed in this index (BTS samples for the Dutch Isis series) have also been standardized using the same GAM-based methodlology, so as to assess the effect of the procedure on the index.
| Setting / data | Value / source |
|----------------|----------------|
| Catch-at-age | Landings (since 1957, ages 1-10) |
| | Discards (since 1957, ages 1-10) |
| Tuning indices | BTS-GAM (since 1985, ages 1-9) |
| | SNS (since 1970, ages 1-6) |
| | BTS-Isis (since 1985, ages 1-9) |
| | GAM-Isis (since 1985, ages 1-9) |
| Plus group | 10 |
|First tuning year | 1970 |
| Time-series weights | No taper |
| Catchability catches independent of ages stock size for age >= | 9 |
| Catchability surveys independent of ages for ages >= | 8 |
| Tensor spline for catchability-at-age both indices k value ages | 6 |
| Tensor spline for F-at-age: k value ages | 8 |
| Tensor spline for F-at-age: k value years | 28 |
## SAM
......@@ -136,37 +182,47 @@ cohcorrplot(FLCohort(index(indices[["SNS"]])))
# Stock assessment runs
## Base case (Combined BTS)
## Base case (GAM-combined BTS)
```{r aapbase}
load("../output/aap.RData")
run <- runs[['BTS-GAM']]
stock <- stocks[['BTS-GAM']]
# RESIDUALS
residuals <- FLQuants(c(run@index.res, list(
landings.n=residuals(landings.n(run), landings.n(stock) + 0.5),
discards.n=residuals(discards.n(run), discards.n(stock) + 0.5),
catch=residuals(catch(run), catch(stock) + 0.5))))
residuals <- residuals[['BTS-GAM']]
```
### Model estimates
#### Abundances and fishing mortality
#### Abundances, recruitment and fishing mortality
#### Recruitment
```{r aapbase_ssbfrec}
# Time series of SSB, F and Rec
plot(stock, metrics=list(SSB=ssb, F=fbar, Rec=rec))
```
```{r aapbase_fatage}
# F at age
wireframe(data ~ year * age, harvest(run), zlab="F",
scales = list(arrows = FALSE), drape = TRUE,
colorkey=FALSE, col.regions=heat.colors(150),
par.settings = list(axis.line = list(col = 'transparent')))
ggplot(harvest(run), aes(x=year, y=data, group=age,
colour=as.factor(age))) + geom_line() +
xlab("") + ylab("F (2-6)") + facet_wrap(~age)
```
#### Selectivity
### Diagnostics
- [AAP] Model estimated sigmas
- Selectivities
\newpage
```{r aapbase_selex}