NetLogo banner

 Contact Us

 Modeling Commons

 User Manuals:


NetLogo User Community Models

(back to the NetLogo User Community Models)


by Carlos Pedro Gonçalves (Submitted: 02/14/2003)

[screen shot]

Download Logistic
If clicking does not initiate a download, try right clicking or control clicking and choosing "Save" or "Download".

(You can also run this model in your browser, but we don't recommend it; details here.)


This is a model of a 2-D cellular automaton where each cell's state can take a real value between 0 and 1 and the state-updating rule consists of a coupled chaotic map (in this case the logistic map). Each cell 'reads' its own state and the state of each of its four neighbours and updates its state accordingly. The result is an ever-changing aperiodic spatio-temporal pattern with large clusters of cells with states near each other; moreover, the global pattern emerges from a random initial condition, showing a more organized structure.


Each cell starts by being in a random state between 0 and 1, and it updates its state at each time step by applying the following rules:

- "Read your current state (si(t));
- Read your North, South, East and West nearest neighbours states (sj(t)) and take the arithmetic average of their states (which we denote by sa(t));
- Set your new state according to the rule given below."

si(t+1) = A [wi si(t) + (1 - wi) sa(t)] [1 - (wi si(t) + (1 - wi) sa(t))]

where, wi is a coefficient between 0 and 1, and represents the weight that a cell gives to its own current state when determining its new state (and 1 - wi is the weight each cell gives to its neighbours). In the current model we set wi to be equal to 0.5.

If we take A = 4 we get the well known logistic map's chaotic dynamics, for A < 4 we get different types of dynamics, from fixed points to periodic dynamics.


There are two items on the interface tab, one is a slider rule for the A parameter, you can set it to different values than 4 and see what type of dynamic you get from there, the other is a 'turn-on neighbours/shut-off neighbours button', it allows you to see the results in the dynamics without any neighbour interaction and the dynamics with neighbour interaction. If you start with the neighbours button in the off position and turn it on latter you can see the effects of the coupling on the pattern. You can also see the graph of the series of the states of a patch previously chosen, to get the feeling of how the global network of cells affects a given local cell.


Start the model with neighbour coupling on, and notice how an organized pattern emerges from a previously disorganized one.

Notice also the differences in the local dynamics and in the global pattern from the uncoupled to the coupled case.


Do try:

- Different values for the parameter A, to see the different dynamics, and try to start with very low values increasing the parameter progressively to higher values to see the bifurcation structure;
- Start the model without neighbour interaction, and watch it run for a while taking into your attention not only the absence of general structure but also the trajectory of patch (1,5), then switch on the neighbours and see how a different pattern emerges and a different type of trajectory for patch (1,5).

Notice also that each cell has a state defined by real numbers between 0 and 1, and the grey colours you see are the result of multiplying the cells' state by 10, if you multiply by 100, for instance, you get a multicoloured pattern. Try to change the code and multiply the cell's state by 100 or even 1000, and try to identify the patterns in these different colour schemes (note that if you multiply the cells' state by 100 or 1000 you are actually enhancing what might be called the "resolution" with which you observe the system, and, thus you are really seeing more and more details and more and more differences).


You could try to change the weights that a given cell attributes to itself and its neighbours, different neighbourhood structure, different non-linear maps.

One thing that might be interesting to try would be to set the following colour scheme: if the patch state is above a given state (for instance 0.5) set the colour blue, else, set the colour green, you can proceed in this manner with more and more fine partitions of the unit interval to see how the different cells visit the different subintervals of a given partition of the unit interval.


Some references on deterministic chaos and spatio-temporal complexity:

Blanc-Talon, Jacques and Deniau, Laurent., PCA and CA: a statistical approach for deterministic machines, Complexity International, Vol. 2, 1995

Blanc-Talon, Jacques, Effective Computation of 2D Coupled Map Lattices, Complexity International, Vol.6, 1998

Deane, Deane, J.H.B. and Jefferies, D.J., The Behaviour of Coupled Map Chains, Complexity International, Vol.3, 1996

Cvitanovic, P., Universality in Chaos, 2nd Edition, Bristol: Institute of Physics Publishing, 1993

Gottlieb, H.P.W., Properties of Some Generalised Logistic Maps with Fractional Exponents, Complexity International, Vol. 2, 1995

Gulick, Denny, Encounters With Chaos, McGraw-Hill, 1992

Kaplan, Daniel, Glass, Leon, Understanding Nonlinear Dynamics, Springer-Verlag, New York, 1995

Shibata, Tatsuo, Chawanya, Tsuyoshi, Kaneko, Kunihiko, Noiseless Collective Motion out of Noisy Chaos, obtained from website

Stogratz, Steven H., Nonlinear Dynamics and Chaos, Perseus Books, 1994

Web site for Complexity International:

(back to the NetLogo User Community Models)