Inspiration

Ever since I got into programming at the age of 13, cellular automata such as Conway's Game of Life have always excited me. They show how complex and unpredictable behavior can emerge from the simplest of rules. However, Game of Life has a set of predetermined rules, and I have always wondered how automata would have behaved if those rules were changed.

What it does

With this application, you can create your own cellular automata, specifying fields such as

  • The type of neighborhoods the cells will look at
  • The size of the neighborhoods
  • Unlimited states other than the simple "dead" and "alive"
  • Unlimited rules that can switch any state from any other state

With the editor you are able to create various seeds and watch them simulate in real time, and tweak it as it goes, allowing you to quickly test various rulesets for different cellular automata.

How we built it

The entirety of the project is built in C++, and the rendering is done using SFML and the GUI aspect is done with dear imgui.

Challenges we ran into

Had some trouble finding and crushing bugs, but other than that it was smooth sailing.

What's next for Cellular Automata Simulator

More options and configurable settings, as well as creating an editor that has more tools.

Try it out

Since it is written in C++, you will have to download the executable from the github page to run it. It has only been compiled for windows, so it will only run there. Also windows may warn you that it is a suspicious file, and it does that because you are downloading a random exe file, but I assure you it is safe to run.

Built With

Share this project:

Updates