HeatonCA - Jeff Heaton's Cellular Automata

HeatonCA is an application that allows you to experiment with the cellular automata described in the paper Evolving continuous cellular automata for aesthetic objectives. The algorithm defines these cellular automata by rules, represented by a hexadecimal encoding, such as E542-5F79-9341-F31E-6C6B-7F08-8773-7068, representing an update rule. The three patterns that you see above are three different MergeLife update rules. Other than a random starting grid, these update rules are entirely deterministic.

The HeatonCA application discovers these rules using a Genetic Algorithm. You can think of MergeLife as a utility to create an entirely new Cellular Automata similar to Conway's Game of Life.

When you first start HeatonCA the title page is displayed.

HeatonCA Gallary

If you select the Gallary option, you will see many rules the genetic algorithm has already discovered. If you choose a rule you can watch it run in the simulator tab.

HeatonCA Title Screen

The rule simulator lets you view the rule as it updates the grid. Options are available to pause and step through each update. If you click the "rule" button, you can see the details of how the rule as decoded.

HeatonCA Title Screen

Refer to the academic paper for the meanings behind the settings that drive each of the rules. What you see on this page is entirely represented in the hexadecimal string that makes up the rule.

HeatonCA Title Screen

The evolve option allows you to evolve new rules. It might take several hours to find new rules. The program will prompt you for an output directory to write the rules to. The output from this program are individual PNG files that offer a preview of each rule found. The filenames of the PNG files are the actual rules.

HeatonCA Title Screen Citation information for MergeLife:

Heaton, J. March (2018). Evolving continuous cellular automata for aesthetic objectives. Genetic Programming Evolvable Machines. https://doi.org/10.1007/s10710-018-9336-1