System analysis: Competition

David Kneis (firstname.lastname @ tu-dresden.de)

Intro

  • Competition is common in all kinds of (eco)systems.

  • Competition requires limited essential resources like nutrients, light, or space.

  • Species coexistence and thus biodiversity are necessarily linked to competition.

  • Models can gain insights into the nature of competition and the conditions for coexistence.

  • Compared to experiments, we can perfectly disentangle / control all involved mechanisms.

About the example

  • We consider a pair of two planktonic algae species in shallow lake (i.e. a continuous flow stirred tank reactor).

  • We assume competition for the essential nutrients P and N but ignore light as another factor.

  • We do not account for mortality but consider flushing (i.e. outflow from the lake) as the only loss process.

Load the model

  • The model is part of the rodeoEasy package. You may open the respective workbook on your local computer.
rm(list=ls())                                      # initial clean-up

#remotes::install_github("dkneis/rodeoEasy")       # if not installed yet
library("rodeoEasy")

workbook <- system.file("models/coexistence.xlsx", # contains the model
  package="rodeoEasy")

m <- build(workbook)                               # build model object

State variables

name unit description default
A mg C / L Biomass of algae spec. A 1.00
B mg C / L Biomass of algae spec. B 1.00
P mg P / L Dissolved bioavailable phosphorus 0.06
N mg N / L Dissolved bioavailable nitrogen 1.20

Model equations

name unit description rate P N A B
gr_A mg C / L / h growth of A muA * min(P / (P+hP_A), N / (N+hN_A)) * A -1/cp -1/(cp/np) 1 0
gr_B mg C / L / h growth of B muB * min(P / (P+hP_B), N / (N+hN_B)) * B -1/cp -1/(cp/np) 0 1
tr_P mg P / L / h im-/export 1/tau * (Pin - P) 1 0 0 0
tr_N mg N / L / h im-/export 1/tau * (Pin * N2Pin(time, minN2P, maxN2P, intN2P) - N) 0 1 0 0
tr_A mg C / L / h im-/export 1/tau * (Ain - A) 0 0 1 0
tr_B mg C / L / h im-/export 1/tau * (Bin - B) 0 0 0 1

Parameters, part 1

name unit description default
muA 1 / day Growth rate constant of spec. A 3.000000
muB 1 / day Growth rate constant of spec. B 3.000000
np g / g N:P mass ratio (for 16:1 mol/mol) 7.225807
cp g / g C:P mass ratio (for 106:1 mol/mol) 41.032258
hP_A mg / L Half. sat. constant for P, spec. A 0.010000
hP_B mg / L Half. sat. constant for P, spec. B 0.010000
hN_A mg / L Half. sat. constant for N, spec. A 0.100000
hN_B mg / L Half. sat. constant for N, spec. B 0.100000
tau days Residence time 14.000000

Parameters, part 2

name unit description default
Ain mg / L Abundance of species A in inflow 0.000000
Bin mg / L Abundance of species A in inflow 0.000000
Pin mg / L P concentration in inflow 0.060000
minN2P g / g Lowest N:P mass ratio in inflow 7.225807
maxN2P g / g Highest N:P mass ratio in inflow 7.225807
intN2P days Cycle duration of N:P variation 10.000000

Functions

name code
min # intrinsic function
N2Pin # N:P mass ratio in the inflow in units of g N / g P
N2Pin # The function can return constant values or a cyclic dynamics
N2Pin # depending on the choice of arguments.
N2Pin # time: will be set by the integration routine internally
N2Pin # mini: the lowest possible value
N2Pin # maxi: the largest possible value
N2Pin # interval: duration of a full cycle (e.g. from maxi to maxi)
N2Pin N2Pin <- function(time, mini, maxi, interval) {
N2Pin mini + 0.5(sin(time/interval 2 * 3.1415) + 1) * (maxi - mini)
N2Pin }

Functions in detail

  • N2Pin represent the N:P ratio in the reactor’s input.

  • Ratio is constant if mini and maxi argument are equal.

  • Set mini < maxi to create regular temporal variation.

times <- 0:96
plot(range(times), c(0,2), type="n", xlab="time", ylab="N:P")
lines(times, N2Pin(times, mini=1, maxi=1, interval=24), col="black")
lines(times, N2Pin(times, mini=0, maxi=2, interval=24), col="steelblue")
lines(times, N2Pin(times, mini=0, maxi=2, interval=48), col="darkorange")

Functions in detail

Case 1: Identical competitors

  • Default parameters were chosen such that species A and B are identical.
x <- run.scenarios(m, times=0:100)

Case 1: Identical competitors

Case 1: Identical competitors

  • Species A and B coexist in the reactor.

  • This is true for arbitrary non-zero initial values.

  • No surprise, because A and B are indistinguishable.

Case 2: Superiority of one species

  • We grant an advantage to species A with regard to one resource (here: Phosphorus).

  • The advantage is reflected by the lower half-saturation constant (hP_A < hP_B).

  • We let A and B compete under two scenarios: P limitation and N limitation.

common <- c(hP_A=0.005, hP_B=0.01)                # hP_A < hP_B
sc <- list(
  P.limitation=c(common, minN2P=10, maxN2P=10),   # excess of N 
  N.limitation=c(common, minN2P=3, maxN2P=3)      # excess of P
)
x <- run.scenarios(m, times=0:100, scenarios=sc)

Case 2: Superiority of one species

Case 2: Superiority of one species

  • If P is the limiting resource, the superior competitor (species A) dominates the system while species B goes extinct. The winner takes it all.

  • If N is the limiting resource, we still experience coexistence (because hN_A = hN_B).

  • Hence, superiority regarding the uptake of a resource only pays out if that resource is actually limiting. No advantage from unnecessary skills.

Case 3: Contrasting advantages

  • In classical theory, coexistence requires niches (i.e. each species is adapted to the specific conditions in a sub-habitat or capable of exploiting an exclusive resource).

  • But here, species A and B exploit identical resources (P, N) and in a fully homogeneous environment (mixed tank).

  • However, if suitable habitats for two distinct species do not exist in the spatial domain they can still exist in the time domain.

Case 3: Contrasting advantages

  • We equip A and B with contrasting advantages (hP_A < hP_B but hN_A > hN_B).

  • Depending on N and P supply, either A or B is the better competitor.

  • We study different scenarios of nutrient supply, including a periodical switch between P and N limitation.

common <- c(tau=5, hP_A=0.01, hP_B=0.02, hN_A=0.2, hN_B=0.1)
sc <- list(
  low.N2P=  c(common, minN2P=5,   maxN2P=5),
  high.N2P= c(common, minN2P=9.5, maxN2P=9.5),
  var.N2P=  c(common, minN2P=5,   maxN2P=9.5, intN2P=20)
)
x <- run.scenarios(m, times=0:300, scenarios=sc)

Case 3: Contrasting advantages

Case 3: Contrasting advantages

  • In a constant environment, there is no coexistence.

  • Temporal variability in forcings can lead to coexistence.

  • Amplitude and frequency must be in a suitable range to actually serve both competitors with a sufficient niche.

  • The maintenance of species diversity through temporal variation has many facets.

  • You may want to read about the intermediate disturbance hypothesis (IDH). In that context “disturbance” is used in a broad sense and includes, e.g., the reset of successions.

Multiple mechanisms control diversity (1)

Mechanism Explanation
Diversity of resources Supports the coexistence of specialists, each of them expoiting a unique resource.
Temporal variability Causes switches between superiority and inferiority of competitors (recall the example and the IDH).
Spatial structures Allow for different habitate conditions, possibly on very small spatial scales. Exchange between habitats (e.g. partial mixing) results in apparent coexistence.

Multiple mechanisms control diversity (2)

Mechanism Explanation
Continuous immigration Rivers receive input (e.g. bacteria) from soil and groundwater. Lakes and seas are inoculated with river-borne organisms. Invaders may persist for long times.
Dormant states Microorganisms survive long periods of unsuitable conditions in a metabolic inactive state. This avoids or delays extinction of inferior competitors. In suitable conditions, populations recover.

Multiple mechanisms control diversity (3)

Mechanism Explanation
Top-down control In some circumstances, predation may promote coexistence, because prey species can differ with respect to grazing resistence and defense (kind of niches).
Mutual dependence Even competitors may depend on each other. E.g., bacterium A mobilizes a resource co-exploited by species B. At the same time, B produces an exoenzyme protecting A from antibiotics.

Multiple mechanisms control diversity (4)

  • Consider this review paper to learn more about the mechanisms of (bacterial) competition.

  • In real-word ecosystems, it is often difficult to disentangle the reasons of apparent coexistence.

  • In aquatic systems, you will often find a combination of both co-existence (niches) and mere co-presence (import from external habitats through hydrological connections).