Kristian Kraljić You may compare programming with poetry,
a harmonic script is a piece of creativity which will last forever.
- Kristian Kraljić

Cellular Automata Suite / Collection for Java

by Kristian Kraljic, February 17, 2013

Time flies by so quickly and again half a year has passed since my last contribution. I don’t want to search for any explanation right now, but based on Einstein’s laws of special relativity, I just travelled to quickly (a cheer to the warp drive propulsion system)! If you have no clue what I am talking about, I highly recommend watching this great video about Einstein’s Twin Paradoxon. Anyways, quality goes before quantity and therfore I hope you like this post nevertheless.

Talking a little about computability theory and mathematics, cellular automaton is a very interesting field of interest in my opinion. A cellular automation constist of a regular grid of cells, each in one of a finite number of states. As time progresses, each cell changes state, based on a defined set of rules and involving a neighborhood definition of cells. Already by using a very simplistic set of rules, in an either one- or two-dimensional space, very complex automations with stunning visualizations are achieved! Wolfram’s Universe and Conway’s Game of Life are two very well known examples for cellular automata.

Due to a recent workshop in university targeting cellular automation, I decided to build up a little “Cellular Automata Suite”, covering some cellular automations to play with. It’s a Java WebStart application, so feel free to try it right away:

If you are intersted in details and the implementation, download the source code which was released under the Apache License. Currently the following cellular automations are included:

  • Animal World
  • Wolfram Universe
  • Game of Life
  • Mandelbrot Set (I couldn’t resist putting it in)

Have fun playing around with the different cellular automations and feel free to post any suggestion into the comments below.