The Emergence of Environmental Homeostasis in Complex Ecosystems

The Earth, with its core-driven magnetic field, convective mantle, mobile lid tectonics, oceans of liquid water, dynamic climate and abundant life is arguably the most complex system in the known universe. This system has exhibited stability in the sense of, bar a number of notable exceptions, surface temperature remaining within the bounds required for liquid water and so a significant biosphere. Explanations for this range from anthropic principles in which the Earth was essentially lucky, to homeostatic Gaia in which the abiotic and biotic components of the Earth system self-organise into homeostatic states that are robust to a wide range of external perturbations. Here we present results from a conceptual model that demonstrates the emergence of homeostasis as a consequence of the feedback loop operating between life and its environment. Formulating the model in terms of Gaussian processes allows the development of novel computational methods in order to provide solutions. We find that the stability of this system will typically increase then remain constant with an increase in biological diversity and that the number of attractors within the phase space exponentially increases with the number of environmental variables while the probability of the system being in an attractor that lies within prescribed boundaries decreases approximately linearly. We argue that the cybernetic concept of rein control provides insights into how this model system, and potentially any system that is comprised of biological to environmental feedback loops, self-organises into homeostatic states.

See my related blog post for details.

The model is very simple, but requires arrays, so you’ll need Vensim Pro, DSS, or the free Model Reader.

bioticFbk1.vpm (published model for the Reader)

bioticFbk1.mdl (text .mdl format)

Some things to try:

- Perturb the system with small and large values, using the Synthesim slider on
*Perturbation P* - Try a time-varying disturbance – overriding the
*Perturbation P*with a ramp in Synthesim is a good approach. - Override
*Environmental State E*with a ramp from 0 to 100 to make the net*Biotic Forces F*or*Change in State*visible (that’s how I generated the 1D vector field plot in my blog post).- At the same time, vary the
*Characteristic Width sigma*, or other parameters, to see how the niches change.

- At the same time, vary the
- Try a pulse perturbation with a large width (essentially a step up, then down) to replicate the hysteresis in Fig. 9 right of the paper.
- Increase the dimensionality of the system to 2 or more, by increasing the size of the
*EnvironVar*subscript range.

The model’s simple, but computationally big due to the large biotic component subscript range. If it’s slow on your system, you can either shrink the array, or check the “Suppress Synthesim during slider moves” box under Model>Settings>Sketch.

]]>Here’s an excerpt from my 1998 critique of this model:

… The need for the upper/lower bound on natural capital highlights what I think is the problem with the model. The idea that the environment cannot be damaged if it’s initially pristine (NK=1) doesn’t really make sense. The upper and lower bounds to NK solve the problem computationally, but they don’t seem to have any real-world justification. I think it would be better to separate the damage process (from pollution) and the regeneration process. To do this, I think the concept of natural capital in the model needs to be clarified.

The logistic expression for equation 3 (natural capital change rate) suggests that natural capital means biomass of some sort. For real biomass, regeneration is logistic but damage is not, so the contributions of damage and regrowth should be additive, not multiplicative.

If, on the other hand, natural capital is meant to represent pollution, then an explicit pollution stock would be clearer. In this case, the emissions and uptake processes would still be additive, and uptake would be nonlinear but probably not logistic.

If you want both stock pollutants and biomass dynamics, then it seems that the environment in the model needs to be 2nd order.

On a related note, it seems to me that if natural capital = 0, output per capita ought to be zero, rather than contracting at a constant rate. Again, this depends on the meaning of natural capital. A formulation with an explicit capital stock and capital-labor-natural capital production function would be clearer, though more complex. This might also help to clarify the processes of pollution output vs. abatement.

Overall, I found the analysis of the model very interesting. Some of the fixes/clarifications/critiques I’ve listed above would make the slow-fast dynamics go away (mainly by changing the logistic behavior of natural capital, eliminating the attracting manifolds at NK = 0 and NK = 1). I’d like to see a model that fixes some of the problems I see, but preserves the interesting dynamics, esp. the 3 scenario trajectories.

This copy of the Wonderland model works only with Vensim DSS/Pro or the free Model Reader, as I created several macros to simplify the appearance of the S-shaped exponential functions and to prevent over/underflows. The model incorporates a modification of a fix suggested by the author that prevents Natural Capital from reaching exactly 0 or 1 due to roundoff error (see use of SINTEG in Natural Capital). The double-precision version of Vensim should work without the fix, though I have found that the model still tends to wander into the unrealistic trap of NK~=1.0. I can replicate the dream and nightmare scenarios from the source article (subject to the upper/lower bound parameter choice), though I can’t get an escape behavior without changing another parameter.

Wikipedia has a good article on the model and subsequent extensions.

This version includes an upgraded interface and slight technical improvements.

Wonderland3.vpm (published for Reader)

or

wonderland3.zip (mdl + cin files)

]]>Catastrophic Collapse Can Occur without Early Warning: Examples of Silent Catastrophes in Structured Ecological Models (PLOS ONE – open access)

Catastrophic and sudden collapses of ecosystems are sometimes preceded by early warning signals that potentially could be used to predict and prevent a forthcoming catastrophe. Universality of these early warning signals has been proposed, but no formal proof has been provided. Here, we show that in relatively simple ecological models the most commonly used early warning signals for a catastrophic collapse can be silent. We underpin the mathematical reason for this phenomenon, which involves the direction of the eigenvectors of the system. Our results demonstrate that claims on the universality of early warning signals are not correct, and that catastrophic collapses can occur without prior warning. In order to correctly predict a collapse and determine whether early warning signals precede the collapse, detailed knowledge of the mathematical structure of the approaching bifurcation is necessary. Unfortunately, such knowledge is often only obtained after the collapse has already occurred.

This is a third-order ecological model with juvenile and adult prey and a predator:

See my related blog post on the topic, in which I also mention a generic model of critical slowing down.

The model, with changes files (.cin) implementing some of the experiments: CatastropheWarning.zip

]]>The self-immolation of Mohamed Bouazizi on December 17, 2011 in the small Tunisian city of Sidi Bouzid, set off a sequence of events culminating in the revolutions of the Arab Spring. It is widely believed that the Internet and social media played a critical role in the growth and success of protests that led to the downfall of the regimes in Egypt and Tunisia. However, the precise mechanisms by which these new media affected the course of events remain unclear. We introduce a simple compartmental model for the dynamics of a revolution in a dictatorial regime such as Tunisia or Egypt which takes into account the role of the Internet and social media. An elementary mathematical analysis of the model identifies four main parameter regions: stable police state, meta-stable police state, unstable police state, and failed state. We illustrate how these regions capture, at least qualitatively, a wide range of scenarios observed in the context of revolutionary movements by considering the revolutions in Tunisia and Egypt, as well as the situation in Iran, China, and Somalia, as case studies. We pose four questions about the dynamics of the Arab Spring revolutions and formulate answers informed by the model. We conclude with some possible directions for future work.

The model has two levels, but since *non revolutionaries* = 1 – *revolutionaries*, they’re not independent, so it’s effectively first order. This permits thorough analytical exploration of the dynamics.

This model differs from typical SD practice in that the formulations for *visibility *and *policing *use simple discrete logic – policing either works or it doesn’t, for example. There are also no explicit perception processes or delays. This keeps things simple for analysis, but also makes the behavior somewhat bang-bang. An interesting extension of this model would be to explore more operational, behavioral decision rules.

The model can be used as is to replicate the experiments in Figs. 8 & 9. Further experiments in the paper – including parameter changes that reflect social media – should also be replicable, but would take a little extra structure or Synthesim overrides.

This model runs with any recent Vensim version.

I’d especially welcome comments on the model and analysis from people who know the history of events better than I do.

]]>Some of the most pivotal moments in intellectual history occur when a new ideology sweeps through a society, supplanting an established system of beliefs in a rapid revolution of thought. Yet in many cases the new ideology is as extreme as the old. Why is it then that moderate positions so rarely prevail? Here, in the context of a simple model of opinion spreading, we test seven plausible strategies for deradicalizing a society and find that only one of them significantly expands the moderate subpopulation without risking its extinction in the process.

This is a very simple and stylized model, but in the best tradition of model-based theorizing, it yields provocative counter-intuitive results and raises lots of interesting questions. Technology Review’s Arxiv Blog has a nice qualitative take on the work.

See also: Dynamics of Scientific Revolutions, Bifurcations & Filter Bubbles

The model runs in discrete time, but I’ve added implicit rate constants for dimensional consistency in continuous time.

commitment2.mdl & commitment2.vpm

These should be runnable with any Vensim version.

If you add the asymmetric generalizations in the paper’s Supplemental Material, add your name to the model diagram, forward a copy back to me, and I’ll post the update.

]]>http://blog.metasd.com/2012/05/bathtub-dynamics/

http://blog.metasd.com/2012/05/bathtub-statistics/

The model uses macros for pink noise generation and second-order trend smoothing, so it requires Vensim Pro or DSS or the free Model Reader.

]]>Peter Cauwels, Didier Sornette

We present a novel methodology to determine the fundamental value of firms in the social-networking sector based on two ingredients: (i) revenues and profits are inherently linked to its user basis through a direct channel that has no equivalent in other sectors; (ii) the growth of the number of users can be calibrated with standard logistic growth models and allows for reliable extrapolations of the size of the business at long time horizons. We illustrate the methodology with a detailed analysis of facebook, one of the biggest of the social-media giants. There is a clear signature of a change of regime that occurred in 2010 on the growth of the number of users, from a pure exponential behavior (a paradigm for unlimited growth) to a logistic function with asymptotic plateau (a paradigm for growth in competition). We consider three different scenarios, a base case, a high growth and an extreme growth scenario. Using a discount factor of 5%, a profit margin of 29% and 3.5 USD of revenues per user per year yields a value of facebook of 15.3 billion USD in the base case scenario, 20.2 billion USD in the high growth scenario and 32.9 billion USD in the extreme growth scenario. According to our methodology, this would imply that facebook would need to increase its profit per user before the IPO by a factor of 3 to 6 in the base case scenario, 2.5 to 5 in the high growth scenario and 1.5 to 3 in the extreme growth scenario in order to meet the current, widespread, high expectations. …

This is not an exact replication of the model (though you can plug in the parameters from C&S’ paper to replicate their results). I used slightly different estimation methods, a generalization of the logistic (for saturation exponent <> 1), and variable revenues and interest rates in the projections (also optional).

This is a good illustration of how calibration payoffs work. The payoff in this model is actually a policy payoff, because the weighted sum-squared-error is calculated explicitly in the model. That makes it possible to generate Monte Carlo samples and filter them by SSE, and also makes it easier to estimate the scale and variation in the standard error of user base reports.

The model is connected to input data in a spreadsheet. Most is drawn from the paper, but I updated users and revenues with the latest estimates I could find.

A command script replicates optimization runs that fit the model to data for various values of the user *carrying capacity K*.

Note that there are two views, one for users, and one for financial projections.

See my accompanying blog post for some reflections on the outcome.

This model requires Vensim DSS, Pro, or the Model Reader. facebook 3.vpm or facebook3.zip (The .zip is probably easier if you have DSS or Pro and want to work with the supplementary control files.)

Update: I’ve added another set of models for Groupon: ~~groupon 1.vpm, groupon 2.vpm and groupon.zip~~ groupon3.zip

See my latest blog post for details.

]]>

Global Resilience of Tropical Forest and Savanna to Critical Transitions

Marina Hirota, Milena Holmgren, Egbert H. Van Nes, Marten Scheffer

It has been suggested that tropical forest and savanna could represent alternative stable states, implying critical transitions at tipping points in response to altered climate or other drivers. So far, evidence for this idea has remained elusive, and integrated climate models assume smooth vegetation responses. We analyzed data on the distribution of tree cover in Africa, Australia, and South America to reveal strong evidence for the existence of three distinct attractors: forest, savanna, and a treeless state. Empirical reconstruction of the basins of attraction indicates that the resilience of the states varies in a universal way with precipitation. These results allow the identification of regions where forest or savanna may most easily tip into an alternative state, and they pave the way to a new generation of coupled climate models.

The paper is worth a read. It doesn’t present an explicit simulation model, but it does describe the concept nicely. I built the following toy model as a loose interpretation of the dynamics.

Use a Synthesim override to replace *Forest Cover* with a ramp from 0 to 1 to see potentials and vector fields (rates of change), then vary the precipitation index to see how the stability of the forest, savanna and treeless states changes:

Start the system at different levels of forest cover (varying *init forest cover*), with default precipitation, to see the three stable attractors at zero trees, savanna (20% tree cover) and forest (90% tree cover):

Start with a stable forest, and a bit of noise (*noise sd* = .2 to .3), then gradually reduce precipitation (override the *precipitation index* with a ramp from 1 to 0) to see abrupt transitions in state:

There’s a more detailed discussion on my blog.

forest savanna treeless 1f.mdl (requires an advanced version of Vensim, or the free Model Reader)

forest savanna treeless 1f.vpm (ditto; includes a sensitivity file for varying the initial forest cover)

]]>Units balance, but after updating this model I’ve decided that there may be a conceptual issue, related to the interpretation of units in parameters of the Brownian process variants. This arises due to the fact that the parameter sigma represents the standard deviation *at unit time*, and that some of the derivations gloss over units associated with substitutions of *dz=epsilon*SQRT(dt)*. I don’t think these are of practical importance, but will revisit the question in the future. This is what happens when you let economists get hold of engineers’ math.

These structures would be handy if made into :MACRO:s for reuse.

stochastic processes 3.mdl (requires an advanced version of Vensim)

stochastic processes 3.vpm (published package; includes a sensitivity setup for varying NOISE SEED)

stochastic processes 3 PLE.mdl (Runs in PLE, omits only one equation of low importance)

]]>It’s incredibly simple to use. Just unzip the archive, fire up the .exe, and point it at a model (.mdl format; it’ll also read some information out of an accompanying published .vpm, if there is one, but that’s not needed):

It creates a set of html documentation in your model’s directory, with nifty features like the following:

*A master table of results*

*A list of overly-complex equations*

*A table of variable usage in model views (very useful for finding hidden structure)*

*A hyperlinked equation listing, with various ordering options*

~~You can download it here. SDM-Doc-4_3_5.zip Be aware that this is unsupported beta software, so use at your own risk (I don’t think there is any, but I think I need to say that).~~

~~Update: a new version: SDM-Doc-4_3_17.zip Even newer: SDM-Doc 4_3_21.zip (note: having a bit of trouble with it, so you might want to stick with the v17 link for the moment)~~

~~Latest and greatest: SDM-Doc-4_6_01.zip~~

**This is now hosted as an open source project at systemdynamics.org; see http://tools.systemdynamics.org/sdm-doc/ for the latest.**