Sandpile model implementation and visualizations

24 Dec 2017 - by Paweł Mandera

I had a little bit of time to spare, so I implemented the Abelian sandpile model, a classical example of a system displaying self-organizing criticality.

You can find the code here. It’s flexible but also reasonably fast, as the main loop is implemented in Cython.

Here you can see a video of dropping about 10 million grains on the sandpile.

I find the ideas around self-organizing criticality really amazing. Self-critical systems have a critical point as an attractor and many interesting properties originate from that. If you are interested, I really recommend reading How Nature Works: The Science of Self-Organized Criticality by Per Bak.