-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path20240826_EcoCaseStudy_Gaichas.Rmd
1067 lines (861 loc) · 39.8 KB
/
20240826_EcoCaseStudy_Gaichas.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
---
title: "Operationalizing the use of ecosystem <br /> information in Mid-Atlantic science<br /> and management decisions"
subtitle: "SCS8 Case Study <br /> 26 August 2024"
author: Sarah Gaichas <br /> Mid-Atlantic SSC and NOAA NMFS Northeast Fisheries Science Center <br /> <br />Thanks to Geret DePiper (MAFMC SSC, NEFSC) and Brandon Muffley (MAFMC)
output:
xaringan::moon_reader:
css: ["default", "libs/EDAB_theme3_508_SOE_16by9.css", "libs/cols.css"]
lib_dir: libs
nature:
titleSlideClass: ["right", "middle", "my-title"]
ratio: "16:9"
highlightStyle: githubp
highlightLines: true
countIncrementalSlides: false
beforeInit: ["libs/macros.js", "libs/cols_macro.js"]
revealjs::revealjs_presentation:
self_contained: false
reveal_plugins: ["notes", "search"]
---
class: top, left
background-image: url("https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/MAFMC+Jurisdiction+Map+v3-01.jpg")
background-size: 200px
background-position: right
<style>
p.caption {
font-size: 0.6em;
}
</style>
<style>
.reduced_opacity {
opacity: 0.5;
}
</style>
```{r setup, include=FALSE}
options(htmltools.dir.version = FALSE)
knitr::opts_chunk$set(echo = F,
fig.retina = 3,
#fig.width = 4,
#fig.height = 2,
fig.asp = 0.45,
warning = F,
message = F)
#Plotting and data libraries
library(tidyverse)
library(tidyr)
library(here)
library(kableExtra)
library(ecodata)
library(readxl); library(data.table)
library(DT)
library(widgetframe)
library(patchwork)
# if figure output defaults to docs/imaages/ replace with this before moving to
# presentations/docs in both the html output (search and replace)
# and folder name
# 20220316_MAFMCSSC_Gaichas_files/figure-html/
```
```{r, load_refs, include=FALSE, cache=FALSE}
library(RefManageR)
BibOptions(check.entries = FALSE,
bib.style = "authoryear",
cite.style = "authoryear",
longnamesfirst = FALSE,
max.names = 1,
style = "markdown")
myBib <- ReadBib("./MidSOE.bib", check = FALSE)
#,
# hyperlink = FALSE,
# dashed = FALSE
```
# Operational: **in use or ready for use**
Components of an operational process:
* Clear articulation of management objectives (use)
* Standardized information updates on a regular reporting schedule
* Feedbacks from the management system and adjustments to achieve management objectives
"Operationalizing" is an iterative process within a specific context
.contrib[*Mid Atlantic fishery management plans and species*]
![:img MAFMC fishery management plans and species, 80%](https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/MAFMPs4.png)
.footnote[Source: http://www.mafmc.org/fishery-management-plans]
???
(we spend a lot of time on this, understand that operational processes require a lot of time and resources and are *not* research)
---
background-image: url("https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/Ecov_1_North_BT.png")
background-size: 500px
background-position: right
# Mid Atlantic operational use of ecosystem information
.pull-left-60[
## Stock assessments
## ABC setting
## EAFM: risk assessment → conceptual model → management strategy evaluation → operational management tool
## Co-evolution of ecosystem reporting and operational use
Right: Bottom temperature time series covariate on recruitment in the 2024 operational black sea bass assessment
]
.pull-right-40[
.footnote[
Image courtesy Emily Liljestrand, NEFSC
]
]
???
* Stock assessments (ESPs-->assessment structure; ecosystem covariates-->OFL projections)
* ABC setting (data quality, model performance, and ecosystem information-->OFL CV-->ABC)
* EAFM risk assessment (ecosystem information-->prioritize scoping and MSE)
In development, research coordinated with SSC
* Ecosystem overfishing thresholds
Focus on the risk assessment and its operational use, process to bring new science in
---
## Ecosystem and Socioeconomic Profiles (ESPs) in Assessments, and MAFMC ABC process
.pull-left[
![:img Pathways for scientific advice from the northeast ESP process, 90%](https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/ESPdecisionsupporttable.png)
![:img Bluefish ESP conceptual model, 90%](https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/bluefishconceptualmodel.png)
.footnote[
Images courtesy Abigail Tyrell, NEFSC
]
]
.pull-right[
### ABC proportion of OFL given OFL CV
```{r OFLCVtoABC, fig.asp = 0.7}
ABCprop <- data.frame(Bfrac = seq(0, 2.5, 0.01)) %>%
dplyr::mutate(pstar = case_when(Bfrac <= 0.1 ~ 0,
Bfrac > 0.1 & Bfrac <= 1.0 ~ (Bfrac-0.1)*((0.45-0)/(1-0.1)) ,
Bfrac > 1.0 & Bfrac <= 1.5 ~ (Bfrac-1.0)*((0.49-0.45)/(1.5-1))+0.45,
Bfrac > 1.5 ~ 0.49)) %>%
dplyr::mutate("CV=60%" = qlnorm(pstar, log(1), log(0.60 + 1)),
"CV=100%" = qlnorm(pstar, log(1), log(1.00 + 1)),
"CV=150%" = qlnorm(pstar, log(1), log(1.50 + 1))) %>%
pivot_longer(-c(Bfrac, pstar), names_to = "CVlevel")
p2 <- ggplot2::ggplot(ABCprop, aes(x=Bfrac, y=value, colour=CVlevel)) +
geom_line()+
theme_minimal() +
xlab("B/Bmsy") +
ylab("ABC/OFL proportion") +
labs(colour = "OFL CV") #+
#theme(legend.position="bottom")
print(p2, vp=grid::viewport(gp=grid::gpar(cex=1.5)))
```
.footnote[
See [MAFMC ABC control rule](http://www.mafmc.org/s/MAFMC-ABC-Control-Rule-White-Paper.pdf) and [update for 2020 MAFMC risk policy](https://www.mafmc.org/s/b_Implications-of-MAFMC-Risk-Policy-for-Multi.pdf)
]
]
---
## MAFMC Ecosystem Approach to Fisheries Management
.pull-left[
* 2016 Ecosystem Approach to Fishery Management (EAFM) [Policy Guidance document](
http://www.mafmc.org/s/EAFM-Doc-Revised-2019-02-08.pdf)
.center[
![:img EAFM Policy Guidance Doc Word Cloud, 80%](https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/MAFMC_EAFMwordcloud.png)
]
]
.pull-right[
* Mid-Atlantic EAFM framework:
.center[
![:img Mid-Atlantic EAFM framework, 100%](https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/Framework.png)
]
]
???
The Council’s EAFM framework has similarities to the IEA loop on slide 2. It uses risk assessment as a first step to prioritize combinations of managed species, fleets, and ecosystem interactions for consideration. Second, a conceptual model is developed identifying key environmental, ecological, social, economic, and management linkages for a high-priority fishery. Third, quantitative modeling addressing Council-specified questions and based on interactions identified in the conceptual model is applied to evaluate alternative management strategies that best balance management objectives. As strategies are implemented, outcomes are monitored and the process is adjusted, and/or another priority identified in risk assessment can be addressed.
`r Cite(myBib, "depiper_operationalizing_2017")`
`r Cite(myBib, "bastille_improving_2021")`
`r Cite(myBib, "muffley_there_2021")`
`r Cite(myBib,"gaichas_implementing_2018")`
`r Cite(myBib,"depiper_learning_2021")`
`r Cite(myBib, "gaichas_framework_2016")`
---
## EAFM Risk Assessment: 2024 Update with new elements
.pull-left[
*Species level risk elements*
```{r sptable}
#tab.cap="Species level risk analysis results; l=low risk (green), lm= low-moderate risk (yellow), mh=moderate to high risk (orange), h=high risk (red)\\label{sptable}",
# spplist oc, sc, flk, scp, bsb, mack, but, lsq, ssq, gtile, btile, blu, dog, monk
risk.species<-data.frame(
Species = c("Ocean Quahog", "Surfclam", "Summer flounder", "Scup", "Black sea bass", "Atl. mackerel", "Chub mackerel", "Butterfish", "Longfin squid", "Shortfin squid", "Golden tilefish", "Blueline tilefish", "Bluefish", "Spiny dogfish", "Monkfish", "Unmanaged forage", "Deepsea corals"),
Assess = c("l", "l", "l", "l", "l", "l", "h", "l", "lm", "h", "l", "h", "l", "l", "h", "na", "na"),
Fstatus = c("l", "l", "h", "l", "l", "l", "lm", "l", "lm", "lm", "l", "h", "l", "h", "lm", "na", "na"),
Bstatus = c("l", "l", "lm", "l", "l", "h", "lm", "lm", "lm", "lm", "lm", "mh", "lm", "l", "lm", "na", "na"),
#FW1Pred = c("l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l"),
#FW1Prey = c("l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "lm", "l"),
PreyA = c("tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd"),
PredP = c("tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd"),
FW2Prey = c("l", "l", "l", "l", "l", "l", "l", "l", "lm", "lm", "l", "l", "l", "l", "l", "lm", "l"),
Climate = c("h", "mh", "lm", "lm", "mh", "lm", "na", "l", "l", "l", "mh", "mh","l", "l", "l", "na", "na"),
DistShift = c("mh", "mh", "mh", "mh", "mh", "mh", "na", "h", "mh", "h", "l", "l", "mh", "h", "mh", "na", "na"),
EstHabitat = c("l", "l", "h", "h", "h", "l", "l", "l", "l", "l", "l", "l", "h", "l", "l", "na", "na"),
OffHab = c("tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd", "tbd")#,
)
# these elements were removed by the council
# PopDiv = c("na", "na", "na", "na", "na", "na", "na", "na", "na", "na", "na", "na", "na", "na"),
# FoodSafe = c(),
# one column test
# risk.species %>%
# mutate(Fstatus =
# cell_spec(Fstatus, format="latex", color = "black", align = "c", background =factor(Fstatus, c("na", "l", "lm", "mh", "h"),c("white", "green", "yellow", "orange", "red")))) %>%
# kable(risk.species, format="latex", escape = F, booktabs = T, linesep = "")
#convert to longer text for consistency and display in html table
risk.species <- risk.species %>%
mutate_at(vars(-Species), function(x){
recode(x,'tbd' = "tbd", 'l'="lowest",'lm'="lowmod",'mh'="modhigh",'h'="highest")}) %>%
as.data.frame()
#generalize to all
risk.species %>%
mutate_at(vars(-Species), function(x){
cell_spec(x, format="html", color = factor(x, c("tbd", "na", "lowest", "lowmod", "modhigh", "highest"),c("grey","black", "black", "black", "black", "white")), align = "c", background =factor(x, c("tbd","na", "lowest", "lowmod", "modhigh", "highest"),c("grey","white", "lightgreen", "yellow", "orange", "red")), background_as_tile=F)}) %>%
kable(format = "html", escape = F, table.attr='class="risktable"') %>%
kable_styling(font_size = 9)
```
.contrib[
* Mackerel and dogfish **Fstatus** risk reduced to low, Summer flounder risk increased to high. Spiny dogfish **Bstatus** risk decreased to low
* Indicators in development for new Prey Availability, Predation Pressure, and Offshore Habitat elements
]
*Ecosystem level risk elements*
```{r ecotable}
#tab.cap="Ecosystem level risk analysis results; l=low risk (green), lm= low-moderate risk (yellow), mh=moderate to high risk (orange), h=high risk (red)\\label{sptable}",
risk.eco<-data.frame(
System = c("Mid-Atlantic"),
EcoProd = c("lm"),
#EcoDiv = c("lm"),
CommVal = c("mh"),
RecVal = c("lm"),
FishRes1 = c("l"),
FishRes2 = c("mh"),
#CommJobs = c("mh"),
#RecJobs = c("l"),
ComDiv = c("l"),
RecDiv = c("tbd"),
Social = c("lm"),
ComFood = c("mh"),
RecFood = c("mh")
)
#convert to longer text for consistency and display in html table
risk.eco <- risk.eco %>%
mutate_at(vars(-System), function(x){
recode(x,'tbd' = "tbd", 'l'="lowest",'lm'="lowmod",'mh'="modhigh",'h'="highest")}) %>%
as.data.frame()
#make table
risk.eco %>%
mutate_at(vars(-System), function(x){
cell_spec(x, format="html", color = factor(x, c("tbd", "na", "lowest", "lowmod", "modhigh", "highest"),c("grey","black", "black", "black", "black", "white")), align = "c", background =factor(x, c("tbd","na", "lowest", "lowmod", "modhigh", "highest"),c("grey","white", "lightgreen", "yellow", "orange", "red")), background_as_tile=F)}) %>%
kable(format = "html", escape = F, table.attr='class="risktable"') %>%
kable_styling(font_size = 9)
```
.contrib[
* Recreational value risk increased from low to low-moderate
* Recreational diversity added, risk criteria in development
]
]
.pull-right[
*Species and Sector level risk elements*
```{r mgttable, echo=FALSE, message=FALSE, warnings=FALSE}
#tab.cap="Species and sector level risk analysis results; l=low risk (green), lm= low-moderate risk (yellow), mh=moderate to high risk (orange), h=high risk (red)\\label{sptable}",
risk.sppsector<-data.frame(
Species = c("Ocean Quahog-C", "Surfclam-C", "Summer flounder-R", "Summer flounder-C","Scup-R", "Scup-C","Black sea bass-R", "Black sea bass-C","Atl. mackerel-R", "Atl. mackerel-C","Butterfish-C", "Longfin squid-C", "Shortfin squid-C", "Golden tilefish-R", "Golden tilefish-C","Blueline tilefish-R","Blueline tilefish-C", "Bluefish-R", "Bluefish-C","Spiny dogfish-R", "Spiny dogfish-C", "Chub mackerel-C", "Unmanaged forage", "Deepsea corals"),
FControl = c(1,1,2,2,4,1,4,2,2,1,1,1,2,9,1,1,2,2,1,1,1,1,1,9),
Interact = c(1,1,1,2,1,2,1,2,1,2,2,3,2,1,1,1,1,1,1,1,3,2,1,9),
#OceanUse = c(2,2,2,2,2,3,3,4,1,3,3,4,2,1,1,1,1,1,2,1,3,2,3,3),
OSW1 = c(6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6),
OSW2 = c(6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6),
OtherUse = c(6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6),
RegComplex = c(1,1,4,2,4,2,4,2,2,4,3,3,3,1,1,2,1,3,2,1,4,1,1,9),
Discards = c(3,3,3,3,3,3,3,4,2,2,3,3,1,1,1,1,1,2,2,2,2,1,1,9),
Allocation = c(1,1,4,1,4,1,4,1,1,1,1,1,1,1,1,1,1,4,1,1,1,1,1,9)
)
#convert to text for consistency
risk.sppsector <- risk.sppsector %>%
mutate_at(vars(-Species), function(x){
recode(x,'1'="lowest",'2'="lowmod",'3'="modhigh",'4'="highest",'9'="na",
'6' = 'tbd')}) %>%
as.data.frame()
#make table
risk.sppsector %>%
mutate_at(vars(-Species), function(x){
cell_spec(x, format="html", color = factor(x, c("tbd", "na", "lowest", "lowmod", "modhigh", "highest"),c("grey", "black", "black", "black", "black", "white")), align = "c", background =factor(x, c("tbd","na", "lowest", "lowmod", "modhigh", "highest"),c("grey","white", "lightgreen", "yellow", "orange", "red")), background_as_tile=F)}) %>%
kable(format = "html", escape = F, table.attr='class="risktable"') %>%
kable_styling(font_size = 10)
```
.contrib[
* Management fully updated for existing elements
* Offshore wind (OSW) risks split into 2 new elements in development, non-OSW uses added
]
]
---
.pull-left[
```{r sfconceptmod, echo = F, fig.align = "center"}
# setup for conceptual model
PKG <- c(#"foreign","foodweb","sna", "DiagrammeR","circlize", "kableExtra", "googledrive", "readxl"
"RColorBrewer","QPress",
"chorddiag",
"widgetframe")
for (p in PKG) {
if(!require(p,character.only = TRUE)) {
install.packages(p)
require(p,character.only = TRUE)}
}
data.dir <- here::here("data")
#assumes this is a project and .dia file is in data directory
edges <- model.dia(file.path(data.dir, "Summer_Flounder_July22_2019.dia"))
source("R/interactive_chord_sfconsmod.R")
conmod <- interactive_chord_sfconsmod(edges, width=710, height=710, margin=130)
frameWidget(conmod)
```
]
.pull-right[
## How is MAFMC using the risk assessment?
* Risk based prioritization: the Council selected summer flounder for conceptual modeling
* Council completed management strategy evaluation (MSE) addressing [recreational fishery discards](https://www.mafmc.org/actions/summer-flounder-mse) based on conceptual modeling
* Stakeholder driven MSE coupled population and recreational demand models
![](https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/keepOneNoOFkey.png)
* Results: potential improvement in angler welfare with low risk to stock status
]
???
In this interactive circular graph visualization, model elements identified as important by the Council (through risk assessment) and by the working group (through a range of experience and expertise) are at the perimeter of the circle. Elements are defined in detail in the last section of [this page](https://gdepiper.github.io/Summer_Flounder_Conceptual_Models/sfconsmod_riskfactors_subplots.html). Relationships between elements are represented as links across the center of the circle to other elements on the perimeter. Links from a model element that affect another element start wide at the base and are color coded to match the category of the element they affect.Hover over a perimeter section (an element) to see all relationships for that element, including links from other elements. Hover over a link to see what it connects. Links by default show text for the two elements and the direction of the relationship (1 for relationship, 0 for no relationship--most links are one direction).For example, hovering over the element "Total Landings" in the full model shows that the working group identified the elements affected by landings as Seafood Production, Recreational Value, and Commercial Profits (three links leading out from landings), and the elements affecting landings as Fluke SSB, Fluke Distributional Shift, Risk Buffering, Management Control, Total Discards, and Shoreside Support (6 links leading into Total Landings).
---
background-image: url("https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/RecFishDecisionSupportTool.png")
background-size: 1050px
background-position: bottom
## Operational multispecies recreational demand model sets specifications
---
## Updating the risk assessment: add recreational and cross-sectoral risks, static → dynamic indicators
Example: Evaluate risks posed by prey availability to achieving OY for Council managed species
.pull-left[
```{r}
fallmacro <- readRDS(url("https://github.com/NOAA-EDAB/foodweb-risk/raw/main/preyindices/fallmacrobenthosindex.rds"))
fixmacro<- fallmacro |>
dplyr::filter(Var %in% c("Fall Macrobenthos Biomass Index Estimate"),
EPU %in% c("MAB")) |>
dplyr::group_by(EPU) |>
dplyr::summarise(max = max(Value))
p <- fallmacro |>
dplyr::filter(Var %in% c("Fall Macrobenthos Biomass Index Estimate",
"Fall Macrobenthos Biomass Index Estimate SE"),
EPU %in% c("MAB")) |>
dplyr::group_by(EPU) |>
tidyr::separate(Var, into = c("Season", "A", "B", "C", "D", "Var")) |>
dplyr::mutate(Var = tidyr::replace_na(Var, "Mean")) |> #,
#max = as.numeric(Value)) |>
tidyr::pivot_wider(names_from = Var, values_from = Value) |>
dplyr::left_join(fixmacro) |>
dplyr::mutate(#Value = Value/resca,
Mean = as.numeric(Mean),
#max = as.numeric(Value),
Mean = Mean/max,
SE = SE/max,
Upper = Mean + SE,
Lower = Mean - SE) |>
ggplot2::ggplot(ggplot2::aes(x = Time, y = Mean, group = Season))+
#ggplot2::annotate("rect", fill = setup$shade.fill, alpha = setup$shade.alpha,
# xmin = setup$x.shade.min , xmax = setup$x.shade.max,
# ymin = -Inf, ymax = Inf) +
ggplot2::geom_ribbon(ggplot2::aes(ymin = Lower, ymax = Upper, fill = Season), alpha = 0.5)+
ggplot2::geom_point()+
ggplot2::geom_line()+
ggplot2::ggtitle("Benthic invertebrate prey index")+
ggplot2::ylab(expression("Relative macrofauna biomass"))+
ggplot2::xlab(ggplot2::element_blank())+
ggplot2::facet_wrap(.~EPU)+
ecodata::geom_gls()+
ecodata::theme_ts()+
ecodata::theme_facet()+
ecodata::theme_title()
p
```
```{r}
p <- ecodata::forage_index |>
dplyr::filter(Var %in% c("Fall Forage Fish Biomass Estimate",
"Fall Forage Fish Biomass Estimate SE"),
EPU %in% c("MAB")) |>
dplyr::group_by(EPU) |>
tidyr::separate(Var, into = c("Season", "A", "B", "C", "D", "Var")) |>
dplyr::mutate(Var = tidyr::replace_na(Var, "Mean")) |> #,
#max = as.numeric(Value)) |>
tidyr::pivot_wider(names_from = Var, values_from = Value) |>
dplyr::left_join(fixmacro) |>
dplyr::mutate(#Value = Value/resca,
Mean = as.numeric(Mean),
#max = as.numeric(Value),
Mean = Mean/max,
SE = SE/max,
Upper = Mean + SE,
Lower = Mean - SE) |>
ggplot2::ggplot(ggplot2::aes(x = Time, y = Mean, group = Season))+
#ggplot2::annotate("rect", fill = setup$shade.fill, alpha = setup$shade.alpha,
# xmin = setup$x.shade.min , xmax = setup$x.shade.max,
# ymin = -Inf, ymax = Inf) +
ggplot2::geom_ribbon(ggplot2::aes(ymin = Lower, ymax = Upper, fill = Season), alpha = 0.5)+
ggplot2::geom_point()+
ggplot2::geom_line()+
ggplot2::ggtitle("Forage fish prey index")+
ggplot2::ylab(expression("Relative forage biomass"))+
ggplot2::xlab(ggplot2::element_blank())+
ggplot2::facet_wrap(.~EPU)+
ecodata::geom_gls()+
ecodata::theme_ts()+
ecodata::theme_facet()+
ecodata::theme_title()
p
```
]
.pull-right[
```{r}
mafmc_cond <- c("Atlantic mackerel",
"Black sea bass",
"Bluefish",
"Butterfish",
"Goosefish",
"Illex", #not in condition
"Loligo", #not in condition
"Scup",
"Spiny dogfish",
"Summer flounder",
"Surf clam", #not in condition
"Ocean quahog") #not in condition
#"Clams", # Atlantic surfclam and ocean quahog not separate groups
#"Tilefish") # Blueline and golden tilefish not separate groups
AnnualRelCond2023_Fall <- readr::read_csv("https://raw.githubusercontent.com/NOAA-EDAB/foodweb-risk/main/condition/AnnualRelCond2023_Fall.csv")
survEPUcond <- AnnualRelCond2023_Fall |>
dplyr::select(Time = YEAR,
Var = Species,
EPU,
Value = MeanCond,
nCond) |>
dplyr::group_by(EPU, Var) |>
dplyr::mutate(scaleCond = scale(Value,scale =T,center=T))
xs <- quantile(survEPUcond$scaleCond, seq(0,1, length.out = 6), na.rm = TRUE)
survEPUcond <- survEPUcond |>
dplyr::mutate(category = cut(scaleCond,
breaks = xs,
labels = c( "Poor Condition",
"Below Average",
"Neutral",
"Above Average",
"Good Condition"),
include.lowest = TRUE))
condquants <- data.frame(ymin = xs[1:5],
ymax = xs[2:6],
category = sort(unique(survEPUcond$category))
)
vir <- viridis::viridis_pal()(5)
mafmcsurvEPUcond <- survEPUcond |>
dplyr::filter(Var %in% mafmc_cond[2], #BSB
EPU %in% c("MAB"))
p <- ggplot2::ggplot() +
ggplot2::theme_bw() +
ggplot2::geom_rect(data = condquants,
aes(ymin = ymin, ymax = ymax, fill = category, xmin = -Inf, xmax = Inf),
alpha = .3) +
ggplot2::scale_fill_manual(values=vir) +
ggplot2::geom_point(data= mafmcsurvEPUcond, ggplot2::aes(x=Time, y=scaleCond[,1])) +
#ggplot2::geom_hline(yintercept = xs[2:5]) +
#ggplot2::geom_line() +
ggplot2::facet_grid(Var~factor(EPU, levels = c("MAB", "GB", "GOM", "SS", "NA")), ) +
ggplot2::ylab("Scaled condition") +
ggplot2::ggtitle(paste(unique(mafmcsurvEPUcond$Var), "fall body condition")) +
ggplot2::guides(fill = ggplot2::guide_legend(reverse = TRUE))
p
```
```{r}
mafmcsurvEPUcond <- survEPUcond |>
dplyr::filter(Var %in% mafmc_cond[3], #Bluefish
EPU %in% c("MAB"))
p <- ggplot2::ggplot() +
ggplot2::theme_bw() +
ggplot2::geom_rect(data = condquants,
aes(ymin = ymin, ymax = ymax, fill = category, xmin = -Inf, xmax = Inf),
alpha = .3) +
ggplot2::scale_fill_manual(values=vir) +
ggplot2::geom_point(data= mafmcsurvEPUcond, ggplot2::aes(x=Time, y=scaleCond[,1])) +
#ggplot2::geom_hline(yintercept = xs[2:5]) +
#ggplot2::geom_line() +
ggplot2::facet_grid(Var~factor(EPU, levels = c("MAB", "GB", "GOM", "SS", "NA")), ) +
ggplot2::ylab("Scaled condition") +
ggplot2::ggtitle(paste(unique(mafmcsurvEPUcond$Var), "fall body condition")) +
ggplot2::guides(fill = ggplot2::guide_legend(reverse = TRUE))
p
```
]
???
Council and Advisory Panel members recommended new elements addressing human dimensions (recreational access equity), new elements addressing cross-sectoral impacts (offshore wind impacts on biology and ecosystem as well as fishery access and scientific sampling), and transitions from static ecosystem indicators to time series indicators (prey availability, predation pressure, and fishing community vulnerability). New ecosystem science was required to support these requests. The process included development of new indicators of prey availability based on spatio-temporal modeling using ecological datasets (stomach contents, zooplankton), and new spatial analyses of habitat, revenue, and surveys relative to wind energy development areas. Development of potential risk criteria is ongoing; thresholds between low, moderate, and high risk that are essential to operational use are developed collaboratively with Council and Advisory Panel members.
The slide shows a higher risk example (black sea bass, low recent condition correlated with recently declining prey) and a lower risk example (bluefish, despite a long term decline in forage fish prey. recent condition has been good)
`r Cite(myBib, "gaichas_assessing_2023")`
---
## Evolution of ecosystem reporting: from physical time series to specific management risks
.pull-left[
*2016-2023 Reports: Climate Section*
```{r}
ecodata::plot_bottom_temp_comp()
```
*2024 Report: Climate/Ecosystem Risks*
**Risks to Spatial Management/Allocation**
.contrib[
* Indicators and potential drivers of distribution shifts
]
**Risks to Seasonal Management/Timed Closures**
.contrib[
* Indicators and potential drivers of changing timing (phenology)
]
**Risks to Quota Management/Rebuilding**
.contrib[
* Indicators and potential drivers of changing productivity
]
]
.pull-right[
*2024 Report: Days at stressful scallop temperature*
.right[
![:img scallop stress bottom temp, 75%](https://github.com/NOAA-EDAB/ecodata/raw/dev/workshop/images/bottom_temp_threshold_17_19_Elephant_Trunk.png)
]
.footnote[
Image courtesy Joseph Caracappa, NEFSC
]
]
???
---
background-image: url("https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/SOE-MA-030424_Page_2.png")
background-size: 500px
background-position: right
# Conclusions
.pull-left-60[
* Ecosystem information is being used operationally to support decisions in multiple processes
+ Assessment, ABC setting, EAFM
+ Contextual information is valued--used--by the Councils
+ Align information with objectives
* Risk assessment frameworks are one useful basis for operational use of ecosystem information
+ Alaska assessment risk tables
+ New England developing indicator-based risk policy
* Management Strategy Evaluation is needed to identify robust operational approaches
* Collaborative iteration is recommended into the future
]
.pull-right-40[]
???
---
background-image: url("https://www.fisheries.noaa.gov/s3/styles/original/s3/2022-08/640x427-Black-Sea-Bass-NOAAFisheries.png"),url("https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images/Framework.png")
background-size: 290px, 430px
background-position: left bottom, right bottom
## THANK YOU! Assessment and Ecosystem Working Groups
.table[
![:col_row
*Black Sea Bass Assessment*<br>
Emily Liljestrand (NEFSC) - MTA lead<br>
Anna Mercer (NEFSC) - RTA chair<br>
Kiersten Curti (NEFSC) - RTA lead<br>
Julia Beaty (MAFMC)<br>
Gavin Fay (UMassD)<br>
Marissa McMahan (Manomet)<br>
Jason McNamee (RIDEM)<br>
Tim Miller (NEFSC)<br>
Sam Truesdell (MADMF/NEFSC)<br>
Ricky Tabendera (NEFSC/HCRI)<br>
Alex Hansell (NEFSC)<br>
Andy Jones (NEFSC)<br>
Jeff Brust (NJDEP)<br>
Lisa Chong (MSU)<br>
Scott Large (NEFSC)<br>
Abby Tyrell (NEFSC)<br>
Andie Painten (UMassD)<br>
Maria Cristina Perez (UMassD)<br>
Hannah Verkamp (CFRF)<br>
John Wiedenmann (Rutgers)<br>
Paula Fratantoni (NEFSC)<br>
Gary Shephard (NEFSC - retired),
*EAFM Products*<br>
Greg Ardini<br>
Fred Akers<br>
Leah Barton<br>
Kimberly Bastille<br>
Bob Beal<br>
Rick Bellavance<br>
Mark Binsted<br>
Eleanor Bochenek<br>
Bonnie Brady<br>
Jeff Brust<br>
Andrew Carr-Harris<br>
Paul Caruso<br>
Jessica Coakley<br>
Dustin Colson-Leaning<br>
Jonathan Cummings<br>
Kiley Dancy<br>
Maureen Davidson<br>
Jeff Deem<br>
Peter deFur<br>
Neil Delanoy<br>
John DePerseniaire<br>
Jonathan Deroba<br>
Greg DiDomenico<br>
Michelle Duval<br>
G. Warren Elliott<br>
Gavin Fay<br>
Jeremy Firestone<br>
Emily Gilbert<br>
Willy Goldsmith,
*EAFM Products*<br>
Zachary Greenberg<br>
Kaili Gregory<br>
Joseph Grist<br>
Pam Lyons Gromen<br>
Jeremy Hancher<br>
Jay Hermsen<br>
Peter Himchak<br>
Rich Hittinger <br>
Jorge Holzer<br>
Fiona Hogan<br>
Jeff Kaelin<br>
LCDR Matt Kahley<br>
Emily Keiley<br>
Jeff Kipp<br>
Meghan Lapp<br>
Scott Lenox<br>
Douglas Lipton<br>
Carl LoBue<br>
Sean Lucey<br>
Jason McNamee<br>
Adam Nowalsky<br>
Mike Oppegaard<br>
Robert O’Reilly<br>
Danielle Palmer<br>
Charles Perretti<br>
Michael Plaia<br>
Kirby Rootes-Murdy<br>
Scott Rubow,
*EAFM Products*<br>
Robert Ruhle<br>
Tom Schlichter<br>
Robin Scott<br>
Rich Seagraves<br>
Philip Simon<br>
Annabelle Stanley<br>
Mark Terceiro<br>
George Topping<br>
Michael Waine<br>
Judith Weis<br>
Michael Wilberg<br>
Sara Winslow<br>
Greg Wojcik<br>
Harvey Yenkinson]
]
<br>
???
<br>
*EAFM: Conceptual Model*<br>
Greg Ardini NEFSC<br>
Mark Terceiro NEFSC<br>
Michael Wilberg UMD<br>
Douglas Lipton NMFS<br>
Kiley Dancy MAFMC<br>
Jessica Coakley MAFMC<br>
Kirby Rootes-Murdy ASMFC,
*EAFM: Conceptual Model Cont'd*<br>
Jason McNamee RI DEM<br>
Jeff Brust NJ DEP<br>
Danielle Palmer GARFO<br>
Emily Gilbert GARFO<br>
Robert O’Reilly EOP & VMRC<br>
G. Warren Elliott EOP Chair<br>
Charles Perretti NEFSC<br>
Geret DePiper NEFSC<br>
Sarah Gaichas NEFSC<br>
Brandon Muffley MAFMC<br>
<br>
*EAFM: MSE Technical Group*<br>
Andrew Carr-Harris/NEFSC<br>
Dustin Colson-Leaning/ASMFC<br>
Jonathan Cummings/USFWS<br>
Kiley Dancy/MAFMC<br>
Geret DePiper/NEFSC<br>
Jon Deroba/NEFSC<br>
Gavin Fay/UMass Dartmouth<br>
Sarah Gaichas/NEFSC<br>
Kaili Gregory/Cornell<br>
Jorge Holzer/U. Maryland<br>
Emily Keiley/GARFO<br>
Jeff Kipp/ASMFC<br>
Doug Lipton/NOAA Fisheries<br>
Annabelle Stanley/Cornell<br>
Mark Terceiro/NEFSC<br>
Mike Wilberg/U. Maryland<br>
Greg Wojcik/CT DEEP,
*EAFM: MSE Stakeholder Group*<br>
Leah Barton/Shore<br>
Rick Bellavance/Charter Boat<br>
Eleanor Bochenek/Academic<br>
Neil Delanoy/Party Boat<br>
John DePersenaire/National Recreational Org.<br>
Greg DiDomenico/Commercial<br>
Paul Haertel/Private Boat<br>
Rich Hittinger/Private Boat<br>
Mike Oppegaard/Charter Boat<br>
Michael Plaia/Charter Boat<br>
Harvey Yenkinson/Private Boat<br>
Mike Waine/Rec. Secondary Market<br>
<br>
*EAFM: MSE Council Advisory Group*<br>
Adam Nowalsky<br>
Justin Davis<br>
Tony DeLernia<br>
Peter deFur<br>
<br>
*Recreational Fishery Decision Support Tool*<br>
Kim Bastille (NEFSC)<br>
Andrew Carr-Harris (NEFSC)<br>
Geret DePiper (NEFSC)<br>
Scott Steinback (NEFSC)]
]
---
background-image: url("https://github.com/NOAA-EDAB/presentations/raw/master/docs/EDAB_images//noaa-iea.png")
background-size: 350px
background-position: right bottom
## THANK YOU! Ecosystem reporting made possible by (at least) 80 contributors from 20+ institutions
.table[
![:col_row
Kimberly Bastille<br>
Aaron Beaver (Anchor QEA)<br>
Andy Beet<br>
Brandon Beltz<br>
Ruth Boettcher (Virginia Department of Game and Inland Fisheries)<br>
Mandy Bromilow (NOAA Chesapeake Bay Office)<br>
Baoshan Chen (Stony Brook University)<br>
Zhuomin Chen (U Connecticut)<br>
Joseph Caracappa<br>
Doug Christel (GARFO)<br>
Patricia Clay<br>
Lisa Colburn<br>
Jennifer Cudney (NMFS Atlantic HMS Management Division)<br>
Tobey Curtis (NMFS Atlantic HMS Management Division)<br>
Art Degaetano (Cornell U)<br>
Geret DePiper<br>
Dan Dorfman (NOAA-NOS-NCCOS)<br>
Hubert du Pontavice<br>
Emily Farr (NMFS Office of Habitat Conservation)<br>
Michael Fogarty<br>
Paula Fratantoni<br>
Kevin Friedland<br>
Marjy Friedrichs (Virginia Institute of Marine Science)<br>
Sarah Gaichas<br>
Ben Galuardi (GARFO)<br>
Avijit Gangopadhyay (School for Marine Science and Technology UMass Dartmouth)<br>
James Gartland (Virginia Institute of Marine Science)<br>
Lori Garzio (Rutgers University),
Glen Gawarkiewicz (Woods Hole Oceanographic Institution)<br>
Sean Hardison<br>
Dvora Hart<br>
Kimberly Hyde<br>
John Kocik<br>
Steve Kress (National Audubon Society’s Seabird Restoration Program)<br>
Young-Oh Kwon (Woods Hole Oceanographic Institution)<br>
Scott Large<br>
Gabe Larouche (Cornell U)<br>
Daniel Linden<br>
Andrew Lipsky<br>
Sean Lucey<br>
Don Lyons (National Audubon Society’s Seabird Restoration Program)<br>
Chris Melrose<br>
Shannon Meseck<br>
Ryan Morse<br>
Ray Mroch (SEFSC)<br>
Brandon Muffley (MAFMC)<br>
Kimberly Murray<br>
David Moe Nelson (NCCOS)<br>
Janet Nye (University of North Carolina at Chapel Hill)<br>
Chris Orphanides<br>
Richard Pace<br>
Debi Palka<br>
Tom Parham (Maryland DNR)<br>
Charles Perretti<br>
CJ Pellerin (NOAA Chesapeake Bay Office)<br>
Kristin Precoda,
Grace Roskar (NMFS Office of Habitat Conservation)<br>
Jeffrey Runge (U Maine)<br>
Grace Saba (Rutgers)<br>
Vincent Saba<br>
Sarah Salois<br>
Chris Schillaci (GARFO)<br>
Amy Schueller (SEFSC)<br>
Teresa Schwemmer (Stony Brook University)<br>
Dave Secor (CBL)<br>
Angela Silva<br>
Adrienne Silver (UMass/SMAST)<br>
Emily Slesinger (Rutgers University)<br>
Laurel Smith<br>
Talya tenBrink (GARFO)<br>
Bruce Vogt (NOAA Chesapeake Bay Office)<br>
Ron Vogel (UMD Cooperative Institute for Satellite Earth System Studies and NOAA/NESDIS Center for Satellite Applications and Research)<br>
John Walden<br>
Harvey Walsh<br>
Changhua Weng<br>
Dave Wilcox (VIMS)<br>
Timothy White (Environmental Studies Program BOEM)<br>
Sarah Wilkin (NMFS Office of Protected Resources)<br>
Mark Wuenschel<br>
Qian Zhang (U Maryland)]
]
???
---
## References
.contrib[
```{r refs, echo=FALSE, results="asis"}
PrintBibliography(myBib)
```
]
## Resources
.contrib[
* [MAFMC SSC](https://www.mafmc.org/ssc)
* [MAFMC EAFM](https://www.mafmc.org/eafm)
* [MAFMC EAFM Summer Flounder MSE](https://www.mafmc.org/actions/summer-flounder-mse)
* Slides available at https://noaa-edab.github.io/presentations
* Contact: <Sarah.Gaichas@noaa.gov>
]
---
.center[
# Extra
]
---
## How to get the OFL CV? Characterizing scientific uncertainty