EcoSim analysis

The following text is quoted verbatim from the MSc thesis (pdf) by Laura Althauser, 2003, entitled

"AN ECOPATH/ECOSIM ANALYSIS OF AN ESTUARINE FOOD WEB: SEASONAL ENERGY FLOW AND RESPONSE TO RIVER-FLOW RELATED PERTURBATIONS"

with some minor alterations to equations to make them internally consistent (e.g. adding subscripts where they had originally been omitted).

Ecosim allows for time-dynamic simulations and is comprised of a series of coupled differential equations:

dBi/dt = f(Bi) − MoiBi − FiBi − ∑ cji(Bi,Bj) Eq 4

where

dBi/dt = growth rate in biomass of group i,

f(Bi) = the production rate of group i,

Moi = natural mortality rate of group i,

Fi = fishing mortality rate of group i, and

cij is a function that predicts the consumption rate of group i at any given time from Bi and Bj (Walters et al. 1997).

The system of equations are solved on a monthly time step for up to one hundred years. In my application to Weeks Bay, biomass is in units of gdw m-2, f(Bi) and consumption rate have units of gdw m-2 quarter-1, and Mo and F have units of quarter-1. In practice, an Ecopath model is used to set initial conditions for Ecosim simulations, and used to provide estimates of some of the consumption-related and production-related parameters of the Ecosim model.

I used a simple functional form for consumption. Consumption is based on the Lotka-Volterra or ‘mass action’ assumption as

cij(Bi,Bj) = aijBiABj

where

aij is the instantaneous mortality rate on prey i caused by one unit of predator j biomass.

Each of the aij values are obtained from the Ecopath model as

aij = Qij/(BiBj)

or

cij(Bi,Bj) = Qij.

More complicated functional forms for consumption are available that involve specifying vulnerabilities of each prey group to each predator group. I used the simple product of biomasses for the consumption function in all Weeks Bay model simulations.

For primary producers, production, f(Bi), is a simple saturating production rate defined as

f(Bi) = riBi / (1 + Bihi) Eq 5

where

ri = maximum P/B of group i when Bi is low, and

ri/hi = maximum net primary production

rate of group i when biomass does not limit production. The ratio of maximum to initial P/B

specified in the initial Ecopath model is used to calculate ri, and then hi is calculated from the

relationship [(ri/(P/B)) - 1]/Bi. For consumers, production, f(Bi), represents the consumption of

group i prey by group j predators through the equation

f(Bi) = gi ∑ cji(Bi,Bj) Eq. 6

where

gi is the net growth efficiency of group i defined by its production to consumption (P/Q)i

ratio, and

cji is the function that predicts consumption from Bi and Bj (i.e., cji(Bi,Bj) = ajiBjBi).

Forcing functions can either be drawn by hand, or values from a spreadsheet can be used to shape them. The forcing functions can be applied to the production of primary producer groups or to the Q/B of each consumer group.

Analysis

From the description given here, it is straightforward to re-implement this model in System Dynamics. Each state variable (in this case, each of the Bi) is represented as a stock (Simile: compartment). Each of the terms which contribute to the rate-of-change expression (Eq. 4) is an inflow or outflow for the stock. The subsidiary equations (Eq 5 and 6) are subsidiary variables in the model.

Still to be determined:

How representative of EcoSim models is this particular instance? As a wild guess, Eq 4 is the standard equation for all EcoSim models, which differ only in terms of their subsidiary equations. If that's the case, there is no problem: any EcoSim can be directly re-implemented as a System Dynamics model. Even if things are not quite as straightforward, it should be still quite feasible to do the re-implementation, if the EcoSim model is based on a set of n differential equations and if these equations are explicitly stated:

- in the EcoSim model itself when opened in the EcoSim software;

- in the saved-file format of the model; or

- in the published paper describing the model.

Of course, it is tedious to represent in standard System Dynamics a model with, say, 10 groups (i.e. 10 Bi), since there will be 10-squared - 10 interactions, hence lots of interflows between stocks. There are methods to avoid all this repetition in Simile and other software packages, but that requires more advanced knowledge of these tools. In the short term, we will content ourselves with 'flat' System Dynamics models, so the people undertaking the re-implementation will just need to grit their teeth and provide lots of flows, parameters, etc.