Combining bioeconomic modeling and valuation (2): Introducing harvesting

This is the second of a series of blog posts focusing on bioeconomic modelling and how to combine it with environmental valuation. In the first post, I introduced the topic and started developing my own bioeconomic model from scratch.

For this post, I will continue using the tutorial in [1], as it nicely explains the basics of coding a bioeconomic model in R. I highly recommend checking it out.

Last time, I showed how to determine stock size for a fishery without harvesting. We needed to define the growth rate of the resource (in other words, how fast do fishes reproduce compared with the death rate), the initial stock (the initial amount of fishes available in the ecosystem) and the carrying capacity (the maximum amount possible for the fisheries to grow given the available resources). We also plotted the stock size over a period of 50 years and we observed that the stock would keep increasing over time, but it would not reach its carrying capacity. The numbers we used are “made up”, just for the sake of running this simulation.

Today I want to add fishing (i.e. harvesting) into the model. Every time a fisherman decides to fish, (s)he decreases the amount of fish available at that ecosystem. If the fisherman takes a single fish, it is unlikely to have any impact in the stock availability over time. But if the harvest is rather high, then the fisherman might endanger the survivability of the species.

Let us change the Gordon-Schaefer growth function from last time by adding fishing effort, which is represented by Y:

X_t = X_{t-1} + r*X_{t-1}(1-\frac{X_{t-1}}{m}) - Y_{t-1}

Let us also assume for now that harvesting amounts to 1 ton per period t. I will define a vector called Y which represents the amount of fish harvested at each period in time.

Y <- c(rep(1, times = numberOfYears))

I can also type the new function with harvesting in R (again as a loop): (Note that I added the max function in order for the stock size not to be negative, which would not make any sense...)

 for(t in 2: numberOfYears){
   X[t] <- max(0,X[t-1]+rX[t-1](1-X[t-1]/m)-Y[t-1])

And finally I plot the resulting stock over time in a graph:

We can see that the stock decreases over time, in contrast with the previous graph where it grew over time. The stock eventually depletes after 14 years. This seems to be because the amount of stock harvested is too large to allow for the fishery to recover, given that the growth rate is only 5%.

We could play around with different harvest numbers to see if the stock does not get depleted. For example, let us imagine different harvesting rules for fisheries: 0 tons (i.e. no harvesting allowed), 0.4 tons and 1 ton per period.

X_1 <- c(rep(10, times = numberOfYears))
X_2 <- c(rep(10, times = numberOfYears))
X_3 <- c(rep(10, times = numberOfYears))
for(t in 2:numberOfYears){
   X_1[t] <- max(0,X_1[t-1]+rX_1[t-1](1-X_1[t-1]/m)-0.4)
   X_2[t] <- max(0,X_2[t-1]+rX_2[t-1](1-X_2[t-1]/m)-0)
   X_3[t] <- max(0,X_3[t-1]+rX_3[t-1](1-X_3[t-1]/m)-1)

plot(X_1, ylim=c(0,50), col="blue")
points(X_2, col="red")
points(X_3, col="green")

The stock size plot would look like this (where the blue is the stock with 0.4 tons of harvesting allowed, red is the stock with no harvesting allowed, and green is the stock with 1 ton of harvesting allowed):

We can see that with 1 ton of harvesting allowed (green dots) the stock would deplete, but fishing may be allowed at a low enough level (such as 0.4 tons per period). That is the importance of avoiding overfishing for fishing stocks that have either low initial stocks or low growth rates.

Of course, the picture is not yet complete. The quantity of fish that fishermen harvest depends on many factors as well. For example, the larger the fish stock (X), the easier it should be to harvest fish. In other words, maybe fishermen do not have to travel as much or spend as much time on the sea to catch the same amount of fish if there is a lot of fish at sea.

The harvest should also depend on the amount of effort fishermen put into the activity. One indicator of effort could be number of hours spent on sea, for example. Hence, the harvest can be expressed as:

$latex Y_t = qE_tX_t

where q is the catchability parameter, E denotes effort at different points in time and X is the fish stock. The catchability parameter serves to represent the efficiency of a particular fishery (Arreguín-Sánchez, 1996).

I can rewrite the growth function of the stock as a function of effort and catchability parameter, instead of harvest:

q <- 0.1
E <- c(rep(1, times = numberOfYears))

for(t in 2: numberOfYears){
   X[t] <- max(0,X[t-1]+r*X[t-1]*(1-X[t-1]/m)-q*E[t-1]*X[t-1])

And the harvest vector Y is a function of the stock and effort:

for(t in 1: numberOfYears){
   Y[t] <- max(0,qE[t]X[t])

I can plot the evolution of the stock over time to see whether it will deplete or not, by typing plot(x):

We can see that this level of effort will lead the stock to deplete after 50 years.

If we change the amount of effort to 0.1 or 0.3, then we can see how the stock changes. If the effort is lower than 0.4, the fishery is not depleted. The graph below shows the stock path for an effort of 1 (in blue), 0.3 (in red) and 0.1 (in green).

For now, let us assume again that the effort level is 1. We can introduce more economics variables, by considering that what matters for fisherman is not necessarily the effort they put in, but rather the profit they get from the activity. For example, the higher the price per ton of fish, the higher the profit for the fishermen. Price per ton of fish is denoted by p. Moreover, the higher the cost per unit of effort, the lower the profit for fishermen. Cost per unit of effort is denoted by c.

Let us set initial parameters for the unitary price and cost.

p <- 5
c <- 10

We can write the profit function (Profit) as:

Profit <- 0
 for(t in 1: numberOfYears){
   Profit[t] <- p*Y[t]-c*E[t]
    [1] -5.000000 -5.285714 -5.553178 -5.803768 -6.038734 -6.259214 -6.466244 -6.660771 -6.843662 -7.015711
   [11] -7.177648 -7.330145 -7.473821 -7.609246 -7.736949 -7.857418 -7.971105 -8.078431 -8.179784 -8.275528
   [21] -8.366000 -8.451514 -8.532364 -8.608823 -8.681146 -8.749574 -8.814329 -8.875621 -8.933646 -8.988588
   [31] -9.040620 -9.089904 -9.136592 -9.180827 -9.222744 -9.262470 -9.300124 -9.335817 -9.369657 -9.401742
   [41] -9.432166 -9.461018 -9.488382 -9.514337 -9.538957 -9.562313 -9.584471 -9.605494 -9.625442 -9.644370 

It turns out that profit is quite negative given these parameters across all years. Not only would the stock deplete, fishermen would not be able to make any profit.



Arreguín-Sánchez, F. (1996). Catchability: a key parameter for fish stock assessment. Reviews in fish biology and fisheries6(2), 221-242.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s