Chapter 21 Determining Feasible and Available Management Procedures

Although all management procedures can be tested in the simulation, it is often the case that not all MPs can actually be applied in a fishery. This can happen for two reasons:

  1. Insufficient data exists to use an MP, for example, a MP may use catch-at-age data which does not exist for the fishery
  2. Management constraints such as issues with enforcement or legal requirements may mean some management options are not possible.

Management procedures which can be applied given the current fishery data are referred to as Available.

Management procedures that return management recommendations that are, at least in theory, applicable to the fishery are referred to as Feasible.

DLMtool has functions to identify MPs that are Available and Feasible, and also provides information for what additional data are required to allow Not Available MPs to be used.

21.1 Feasible MPs

The Fease function can be used to determine which MPs are Feasible.

For example, if only TAC management is feasible in a fishery, the feasible MPs are:

Fease(TAC=TRUE, TAE=FALSE, SL=FALSE, Spatial=FALSE)
## Feasible management:
## TAC - total allowable catch
## No Data object provided. Returning feasible MPs
##  [1] "AvC"         "avgMP"       "BK"          "BK_CC"       "BK_ML"       "CC1"         "CC2"         "CC3"        
##  [9] "CC4"         "CC5"         "CompSRA"     "CompSRA4010" "CurC"        "DAAC"        "DBSRA"       "DBSRA_40"   
## [17] "DBSRA4010"   "DCAC"        "DCAC_40"     "DCAC_ML"     "DCAC4010"    "DCACs"       "DD"          "DD4010"     
## [25] "DepF"        "DynF"        "Fadapt"      "Fdem"        "Fdem_CC"     "Fdem_ML"     "FMSYref"     "FMSYref50"  
## [33] "FMSYref75"   "Fratio"      "Fratio_CC"   "Fratio_ML"   "Fratio4010"  "GB_CC"       "GB_slope"    "GB_target"  
## [41] "Gcontrol"    "HDAAC"       "ICI"         "ICI2"        "Iratio"      "Islope1"     "Islope2"     "Islope3"    
## [49] "Islope4"     "IT10"        "IT5"         "Itarget1"    "Itarget2"    "Itarget3"    "Itarget4"    "ITM"        
## [57] "L95target"   "Lratio_BHI"  "Lratio_BHI2" "Lratio_BHI3" "LstepCC1"    "LstepCC2"    "LstepCC3"    "LstepCC4"   
## [65] "Ltarget1"    "Ltarget2"    "Ltarget3"    "Ltarget4"    "MCD"         "MCD4010"     "NFref"       "Rcontrol"   
## [73] "Rcontrol2"   "SBT1"        "SBT2"        "SPmod"       "SPMSY"       "SPslope"     "SPSRA"       "SPSRA_ML"   
## [81] "TCPUE"

We can confirm that all of these MPs are output controls (return a TAC) by using the MPtype function:

feaseMPs <- Fease(TAC=TRUE, TAE=FALSE, SL=FALSE, Spatial=FALSE)
## Feasible management:
## TAC - total allowable catch
## No Data object provided. Returning feasible MPs
MPtype(feaseMPs)
##             MP      Type Recs
## 1          AvC    Output  TAC
## 2        avgMP    Output  TAC
## 3           BK    Output  TAC
## 4        BK_CC    Output  TAC
## 5        BK_ML    Output  TAC
## 6          CC1    Output  TAC
## 7          CC2    Output  TAC
## 8          CC3    Output  TAC
## 9          CC4    Output  TAC
## 10         CC5    Output  TAC
## 11     CompSRA    Output  TAC
## 12 CompSRA4010    Output  TAC
## 13        CurC    Output  TAC
## 14        DAAC    Output  TAC
## 15       DBSRA    Output  TAC
## 16    DBSRA_40    Output  TAC
## 17   DBSRA4010    Output  TAC
## 18        DCAC    Output  TAC
## 19     DCAC_40    Output  TAC
## 20     DCAC_ML    Output  TAC
## 21    DCAC4010    Output  TAC
## 22       DCACs    Output  TAC
## 23          DD    Output  TAC
## 24      DD4010    Output  TAC
## 25        DepF    Output  TAC
## 26        DynF    Output  TAC
## 27      Fadapt    Output  TAC
## 28        Fdem    Output  TAC
## 29     Fdem_CC    Output  TAC
## 30     Fdem_ML    Output  TAC
## 31      Fratio    Output  TAC
## 32   Fratio_CC    Output  TAC
## 33   Fratio_ML    Output  TAC
## 34  Fratio4010    Output  TAC
## 35       GB_CC    Output  TAC
## 36    GB_slope    Output  TAC
## 37   GB_target    Output  TAC
## 38    Gcontrol    Output  TAC
## 39       HDAAC    Output  TAC
## 40         ICI    Output  TAC
## 41        ICI2    Output  TAC
## 42      Iratio    Output  TAC
## 43     Islope1    Output  TAC
## 44     Islope2    Output  TAC
## 45     Islope3    Output  TAC
## 46     Islope4    Output  TAC
## 47        IT10    Output  TAC
## 48         IT5    Output  TAC
## 49    Itarget1    Output  TAC
## 50    Itarget2    Output  TAC
## 51    Itarget3    Output  TAC
## 52    Itarget4    Output  TAC
## 53         ITM    Output  TAC
## 54   L95target    Output  TAC
## 55  Lratio_BHI    Output  TAC
## 56 Lratio_BHI2    Output  TAC
## 57 Lratio_BHI3    Output  TAC
## 58    LstepCC1    Output  TAC
## 59    LstepCC2    Output  TAC
## 60    LstepCC3    Output  TAC
## 61    LstepCC4    Output  TAC
## 62    Ltarget1    Output  TAC
## 63    Ltarget2    Output  TAC
## 64    Ltarget3    Output  TAC
## 65    Ltarget4    Output  TAC
## 66         MCD    Output  TAC
## 67     MCD4010    Output  TAC
## 68    Rcontrol    Output  TAC
## 69   Rcontrol2    Output  TAC
## 70        SBT1    Output  TAC
## 71        SBT2    Output  TAC
## 72       SPmod    Output  TAC
## 73       SPMSY    Output  TAC
## 74     SPslope    Output  TAC
## 75       SPSRA    Output  TAC
## 76    SPSRA_ML    Output  TAC
## 77       TCPUE    Output  TAC
## 78     FMSYref Reference  TAC
## 79   FMSYref50 Reference  TAC
## 80   FMSYref75 Reference  TAC
## 81       NFref Reference  TAC

If a Data object is provided to Fease, the function will return the names of MPs that are both feasible in terms of management methods, and available in terms of the fishery data:

feaseMPs <- Fease(Atlantic_mackerel, TAC=FALSE, TAE=TRUE, SL=TRUE, Spatial=FALSE)
## Feasible management:
## TAE - total allowable effort
## SL - size selectivity
## Data object provided. Returning feasible and available MPs
## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced
MPtype(feaseMPs)
##             MP  Type Recs
## 1         curE Input  TAE
## 2       curE75 Input  TAE
## 3          DDe Input  TAE
## 4        DDe75 Input  TAE
## 5         DDes Input  TAE
## 6        DTe40 Input  TAE
## 7        DTe50 Input  TAE
## 8    ItargetE1 Input  TAE
## 9    ItargetE2 Input  TAE
## 10   ItargetE3 Input  TAE
## 11   ItargetE4 Input  TAE
## 12   matlenlim Input   SL
## 13  matlenlim2 Input   SL
## 14 minlenLopt1 Input   SL
## 15     slotlim Input   SL
## 16     TCPUE_e Input  TAE

21.2 Available MPs

The Can function generates a list of the MPs that are available to be applied to the Data object:

Can(Atlantic_mackerel)
## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced
##  [1] "AvC"          "AvC_MLL"      "BK"           "CC1"          "CC2"          "CC3"          "CC4"         
##  [8] "CC5"          "CurC"         "curE"         "curE75"       "DAAC"         "DBSRA"        "DBSRA_40"    
## [15] "DBSRA4010"    "DCAC"         "DCAC_40"      "DCAC4010"     "DCACs"        "DD"           "DD4010"      
## [22] "DDe"          "DDe75"        "DDes"         "DepF"         "DTe40"        "DTe50"        "DynF"        
## [29] "Fadapt"       "Fdem"         "Fratio"       "Fratio4010"   "GB_slope"     "Gcontrol"     "HDAAC"       
## [36] "ICI"          "ICI2"         "Iratio"       "Islope1"      "Islope2"      "Islope3"      "Islope4"     
## [43] "Itarget1"     "Itarget1_MPA" "Itarget2"     "Itarget3"     "Itarget4"     "ItargetE1"    "ItargetE2"   
## [50] "ItargetE3"    "ItargetE4"    "matlenlim"    "matlenlim2"   "MCD"          "MCD4010"      "minlenLopt1" 
## [57] "MRnoreal"     "MRreal"       "NFref"        "Rcontrol"     "Rcontrol2"    "SBT1"         "slotlim"     
## [64] "SPmod"        "SPMSY"        "SPslope"      "SPSRA"        "YPR"          "avgMP"        "TCPUE_e"     
## [71] "THC"

If all management methods are feasible, the list of MPs returned by the Can function will be the same as those returned by the Fease function when the Data object is provided.

21.3 Unavailable MPs

The Cant function displays a list of the MPs that cannot be applied to the Data object together with the reason why:

Cant(Atlantic_mackerel)
## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced

## Warning in rlnorm(reps, mconv(mu, mu * cv), sdconv(mu, mu * cv)): NAs produced
##       [,1]          [,2]                                                         
##  [1,] "BK_CC"       "Missing data: CAA"                                          
##  [2,] "BK_ML"       "Missing data: Lc, Lbar, CAL"                                
##  [3,] "CompSRA"     "Missing data: CAA"                                          
##  [4,] "CompSRA4010" "Missing data: CAA"                                          
##  [5,] "DCAC_ML"     "Missing data: Lc, Lbar, CAL"                                
##  [6,] "EtargetLopt" "Missing data: ML"                                           
##  [7,] "Fdem_CC"     "Missing data: CAA"                                          
##  [8,] "Fdem_ML"     "Missing data: Lc, Lbar, CAL"                                
##  [9,] "FMSYref"     "MP returned an error. Check MP function and/or Data object."
## [10,] "FMSYref50"   "MP returned an error. Check MP function and/or Data object."
## [11,] "FMSYref75"   "MP returned an error. Check MP function and/or Data object."
## [12,] "Fratio_CC"   "Missing data: CAA"                                          
## [13,] "Fratio_ML"   "Missing data: Lc, Lbar, CAL"                                
## [14,] "GB_CC"       "Missing data: Cref"                                         
## [15,] "GB_target"   "Missing data: Cref, Iref"                                   
## [16,] "IT10"        "Missing data: MPrec, Iref"                                  
## [17,] "IT5"         "Missing data: MPrec, Iref"                                  
## [18,] "ITe10"       "Missing data: Iref"                                         
## [19,] "ITe5"        "Missing data: Iref"                                         
## [20,] "ITM"         "Missing data: MPrec, Iref"                                  
## [21,] "L95target"   "Missing data: ML"                                           
## [22,] "LBSPR"       "Missing data: CAL"                                          
## [23,] "LBSPR_MLL"   "Missing data: CAL"                                          
## [24,] "Lratio_BHI"  "Missing data: CAL"                                          
## [25,] "Lratio_BHI2" "Missing data: CAL"                                          
## [26,] "Lratio_BHI3" "Missing data: CAL"                                          
## [27,] "LstepCC1"    "Missing data: ML"                                           
## [28,] "LstepCC2"    "Missing data: ML"                                           
## [29,] "LstepCC3"    "Missing data: ML"                                           
## [30,] "LstepCC4"    "Missing data: ML"                                           
## [31,] "LstepCE1"    "Missing data: ML"                                           
## [32,] "LstepCE2"    "Missing data: ML"                                           
## [33,] "Ltarget1"    "Missing data: ML"                                           
## [34,] "Ltarget2"    "Missing data: ML"                                           
## [35,] "Ltarget3"    "Missing data: ML"                                           
## [36,] "Ltarget4"    "Missing data: ML"                                           
## [37,] "LtargetE1"   "Missing data: ML"                                           
## [38,] "LtargetE4"   "Missing data: ML"                                           
## [39,] "SBT2"        "Missing data: Rec, Cref"                                    
## [40,] "SPSRA_ML"    "Missing data: Lc, Lbar, CAL"                                
## [41,] "YPR_CC"      "Missing data: CAA"                                          
## [42,] "YPR_ML"      "Missing data: Lc, Lbar, CAL"                                
## [43,] "TCPUE"       "Missing data: MPrec"