modelLotkaVolterraSystems

Predator-prey dynamics

Extends from Icons.Example (Icon for an example).

Information

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

This is the basic two species model of predation from ecology—the so called Lotka-Volterra-Model [17].

In the upper model we recognize more explicitly that both populations, rabbits and foxes, have independent processes of exponential growth (the prey population's net rate of growth) and exponential decline (the predator's net rate of negative growth when there is no prey). The predation is modeled using an an →interaction (a special kind of flow element). It introduces nonlinearity, as there is some fractional rate (beta, delta) that is multiplied with rabbits(t) ⋅ foxes(t). Predation results in an outflow from the rabbit population (increased deaths) and an inflow to the prey population (increased reproduction).

The model below shows the same model structure in a generalized, more compact fashion using the interaction flow component →LotkaVolterra .

Model Output
  • The number of rabbits and foxes.

  • The number of prey and predators.

Simulation Results
Graph.svg

Notes

  • The model is set up in years, and accordingly we can enter the reproduction rate for the prey population as 0.1 [1/yr] using the displayUnit attribute and conversion tables. All calculations in a simulation will always use SI-units for time so that rates are in unit 1/s and times in unit s.

  • Model output is made explit using an expandable connector (modelOutput) where the variables rabbits, foxes, prey, predators are explicitly declared with appropriate units.

Acknowledgments

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

See also

LotkaVolterra, NonlinearInteraction, ExponentialGrowth, ExponentialDecline

Connectors

TypeNameDefaultDescription
ModelOutputmodelOutputMain output of the model

Components

TypeNameDefaultDescription
ModelSettingsmodelSettings
Thetatheta

Contents

NameDescription
ThetaParameter definitions for the Base Case
ModelOutput

Revisions

  • Updated units, e.g., a stock named foxes does not need unit="foxes", diagram and simulation plots in v2.0.0.