Microscale and macroscale models

[2][3] Microscale and macroscale models can be used together to understand different aspects of the same problem.

[11] Models of neural networks may include individual neurons but may run in continuous time and thereby lack precise discrete events.

Two themes emerged in the work of two founders of modern computation around the middle of the 20th century.

First, pioneer Alan Turing used simplified macroscale models to understand the chemical basis of morphogenesis, but then proposed and used computational microscale models to understand the nonlinearities and other conditions that would arise in actual biological systems.

[13] Second, pioneer John von Neumann created a cellular automaton to understand the possibilities for self-replication of arbitrarily complex entities,[14] which had a microscale representation in the cellular automaton but no simplified macroscale form.

This second theme is taken to be part of agent-based models, where the entities ultimately can be artificially intelligent agents operating autonomously.

By the last quarter of the 20th century, computational capacity had grown so far[15][16] that up to tens of thousands of individuals or more could be included in microscale models, and that sparse arrays could be applied to also achieve high performance.

The term "microscale model" arose later in the 20th century and now appears in the literature of many branches of physical and biological science.

[5][7][8][9][18] Figure 1 represents a fundamental macroscale model: population growth in an unlimited environment.

Its equation is relevant elsewhere, such as compounding growth of capital in economics or exponential decay in physics.

On the first approximation listed above—that birth and death rates are constant—the macroscale model of Figure 1 is exactly the mean of a large number of stochastic trials with the growth rate fluctuating randomly in each instance of time.

The microscale model does not explicitly incorporate the differential equation, though for large populations it simulates it closely.

This drift is tracked in the data structures named beta and delta of the microscale algorithm of Figure 2.

The algorithm of Figure 2 is a simplified microscale model using the Euler method.

Versions of the algorithm in practical use include efficiencies such as removing individuals from consideration once they die (to reduce memory requirements and increase speed) and scheduling stochastic events into the future (to provide a continuous time scale and to further improve speed).

Since bugs occur in computer software and cannot completely be removed by standard methods such as testing,[22] and since complex models often are neither published in detail nor peer-reviewed, their validity has been called into question.

Computing capacity is reaching levels where populations of entire countries or even the entire world are within the reach of microscale models, and improvements in the census and travel data allow further improvements in parameterizing such models.

Potential applications range from predicting and reducing the spread of disease to helping understand the dynamics of the earth.

One of the simplest of macroscale models: an ordinary differential equation describing continuous exponential growth.

Almost all macroscale models are more complex than this example, in that they have multiple dimensions, lack explicit solutions in terms of standard mathematical functions, and must be understood from their differential forms.

A basic algorithm applying the Euler method to an individual-based model.

, which uses the data structures to carry out the simulation according to the numbered steps described at the right.

, which returns its parameter perturbed by a random number drawn from a uniform distribution with standard deviation defined by the variable

(The square root of 12 appears because the standard deviation of a uniform distribution includes that factor.)

in the algorithm is assumed to return a uniformly distributed random number

Graphical comparison of the dynamics of macroscale and microscale simulations of Figures 1 and 2, respectively.

Microscale and related macroscale models of coexistence in Phalaris arundinacea, a globally distributed grass. Each color represents the spatial extent of a distinct genotype in a microscale model using stochastic cellular automata. Each curve on the graph represents the population level of a corresponding genotype in a macroscale differential equation model. [ 1 ]
Figure 1. Macroscale equations
Figure 2. Microscale algorithm corresponding to equations of Figure 1.
Figure 3. Dynamics