Invasives Sdp

library(knitr)
opts_chunk$set(dev='svg', fig.width=4, fig.height=4, results='hide', fig.show='hold')
library(pdgControl)
library(ggplot2)

We propose a state model consistent with 10.2139/ssrn.421007; in this case a simple Beverton-Holt model. Note that in defining \(f\) we have assumed the harvesting take place before the population recruits.

f <- function(x, h, p){ 
  x <- x - h 
  p[[1]] * x / {1 + p[[2]] * x}  
}
p <- c(a = 6, b = 0.05)

This meets Olson’s three assumptions. We must also define our cost/reward function to meet assumptions 4 & 5:

damage <- 1
profit <- function(x, h) sapply(x, function(x)  -damage * x - h / (x - h) ) # vectorized for x
x_grid <- seq(1, 150, length = 50)
h_grid <- seq(0, 150, length = 50)
delta <- 0.05
OptTime <- 1000
xT <- 0 # not used
sigma_g <- 0.1
z_g <- function() 1 + rlnorm(1, 0, sigma_g)
pdfn <- function(P, s) dlnorm(P, 0, s)
SDP_Mat <- determine_SDP_matrix(f, p, x_grid, h_grid, sigma_g, pdfn)
opt <- value_iteration(SDP_Mat, x_grid, h_grid, OptTime, xT, profit, delta)
qplot(x_grid, h_grid[opt$D]) + xlab("Invasive population size") + ylab("Control effort")