NetLogo Models Library:
Note: If you download the NetLogo application, every model in the Models Library is included.
This model illustrates a phenomenon known as self-organized criticality. The world is filled with sand organized in columns. Falling sand stacks on top of the sand that is already there. Eventually a column will fall over because it gets too high, and the sand will spill into the surrounding area. This is called a cascade. When a falling column causes other columns to fall, the series of cascades is called an avalanche. The size of an avalanche is the number of cascades that occur from one grain of sand falling.
Initially the world is either empty or full, at each step of the model a grain of sand drops from the top of the world. The sand continues to fall until it hits another grain of sand; at that point it rests where it is and checks to see if it is the fourth grain of sand in the current pile. If it is it causes a cascade, which distributes the four grains of sand in the current pile in the four cardinal directions. These grains of sand then in turn check to see if they make their new sandpile taller than three grains, if they do then they cascade as well. If a particle of sand goes over the edge of the world then it disappears forever.
SETUP EMPTY initializes the model with no sand in it. SETUP FULL initializes the model with all the piles at random heights but below the threshold of four. GO ONCE will add one particle of sand to the world. GO will continue adding particles of sand at random locations.
The graph illustrates the relationship between the logarithm of the size of cascades and the logarithm of the frequency of their occurrence. Per Bak and others pointed out that in this model this graph would eventually become a straight line. A straight line on a log-log graph is indicative of a power law, which means that the relationship between the x and y axes is of the form y = A^Bx. The fact that this power law occurs regardless of the starting circumstances and despite the fact that the process is random is what Per Bak called self-organized criticality.
Slow down the model using the speed slider to watch the avalanches occur. Try using SETUP EMPTY and SETUP FULL; is the resultant pattern any different? Can you explain why the graph is not a perfectly straight line?
The particles are currently colored by their depth in the sandpile. What if you colored them based on whether or not they were involved in an avalanche recently? What if you make the limit on high the sandpiles can go larger than four? How about eight or twelve?
This model makes use of the fact that you can set the origin of a 3D model anywhere you want. It also creates its own logarithmic graph.
There is a 2D version of this model in the Community Models called Sandpile.
Self organized criticality was originally investigated by Per Bak and collaborators. The basis for this model is in Per Bak's book "How Nature Works".
If you mention this model or the NetLogo software in a publication, we ask that you include the citations below.
For the model itself:
Please cite the NetLogo software as:
Copyright 2006 Uri Wilensky.
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Commercial licenses are also available. To inquire about commercial licenses, please contact Uri Wilensky at firstname.lastname@example.org.