LotkaVolterraEquationsRevisited

Predator-prey dynamics with an additional predator

Diagram

Information

This information is part of the Business Simulation Library (BSL). Please support this work and ► donate.

This model extends the two species model given in the example →LotkaVolterraSystems by introducing a third species: wolves. Wolves predate on both, rabbits and foxes.

We can immediately extend the model for two species by introducing another material stock for wolves. As predators wolves will also be connected to a process of exponential decline (e.g., starvation in absence of prey). Since wolves predate on rabbits and foxes, there will be two nonlinear interactions between the stock of wolves and the other stocks. As before, the predator side (portB) of the NonlinearInteraction flow will be connected to the inflow port for wolves, while the prey side (portA) will be connected to the outflow port of rabbits and foxes.

Model Output
  • The number of foxes, rabbits, and wolves.

Simulation Results
TimePlot.svg

Notes

  • Setting init = InitializationOptions.SteadyState in the Advanced tab for modelSettings allows us to find the equilibrium levels for the three populations.

  • Instead of putting all parameters directly in the global model scope, we have used a dedicated model to collect global parameters: theta. Doing so is quite convenient for more complex models (where we will often choose to additionally assign the inner prefix), as we can set up the model as a component of its own and then simply modify an instance of it to arrive at a scenario run.

  • Selecting the icon for theta in the diagram we can then set all parameters in the General or in the Parameters tab in SystemModeler.

Acknowledgments

The model presented here comes from Michael Tiller's excellent introduction "Modelica by Example" (see Object-Oriented Modeling>Components>Examples>Lotka-Volterra Equations Revisited), which ships with SystemModeler and can also be found online.

See also

LotkaVolterraSystems, Tutorial.UnitsInBusinessSimulations

Connectors (1)

modelOutput

Type: ModelOutput

Description: Main output for the model

Components (11)

modelSettings

Type: ModelSettings

Description: Setting important global variables within a model

theta

Type: Theta

Description: Parameter definitions for the Base Case

rabbits

Type: MaterialStock

Description: Population of rabbits

foxes

Type: MaterialStock

Description: Population of foxes

wolves

Type: MaterialStock

Description: Population of wolves

reproduction

Type: ExponentialGrowth

Description: Population growth for rabbit population

foxesStarving

Type: ExponentialDecline

Description: Mortality for foxes

fox_rabbit_predation

Type: NonlinearInteraction

Description: Foxes predating on rabbits

wolf_rabbit_predation

Type: NonlinearInteraction

Description: Wolves predating on rabbits

wolf_fox_predation

Type: NonlinearInteraction

Description: Wolves predating on foxes

wolvesStarving

Type: ExponentialDecline

Description: Mortality for foxes

Revisions

  • Slight modification for units, diagram, and simulation plots in v2.0.0.