Skip to content

aharbick/conway

Repository files navigation

Conway's Game of Life art project

3D-Printed / Arduino Project

Fully assembled and working project

The code in the root of the project powers the arduino.

The hardware:

The 3D printed part designs can be found here:

Here an in-progress video:

https://www.youtube.com/watch?v=tJrgmwz3HJU

find-optimal

Conway's Game of Life is a simulation that follows some simple rules to manipulate a grid of pixels that are either alive or dead through successive generations until either everything dies OR there is an oscillation where repetition happens perpetually.

In an 8x8 grid such as the art project most random patterns die out or repeat infinitely within less than 200 generations. An 8x8 grid has 2^64 possible states so I wanted to know if it was possible to answer the question:

What 8x8 grid pattern produces the most generations for the default rules of Conway's Game of Life but doesn't become an oscillation?

In other words... I wanted to know a pattern that would evolve and ultimately die or become stable but would've lived longer than all other patterns.

The code contained in find-optimal has the code to generate patterns, evolve them according to the default rules, and search for a solution. The code in the project is highly optimized CUDA code that can process BILLIONS of patterns per second. But even with a reduced search space on advanced (expensive) hardware it looks to take years to complete an exhaustive search.

Building and running the program

Change into the find-optimal directory and run make. Depending on your platform you may have to install dependencies (the Makefile isn't smart enough to use autoconf or something)

Run ./build/find-optimal --help to see the arguments.

About

Conway's Game of Life art project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors