Last edited 23may03 by Bryan Petrus
Find this document at www.ncsa.uiuc.edu/Classes/MATH198/petrus

Bryan Petrus

illiCell

Cellular Automata

Project Narrative

One Dimension

The first program I completed was "wolf1D". I began my project in one dimension, using the same set-up as described on the previous page. I allowed the user to choose a rule and then used the binary expansion of the number they supplied to chose as the rule itself. The program only displays 1's and 0's as it was meant to be the starting point for the full version.


Two Dimensions

The next program, "wolf2D" is what forms the basis of my actual project. It iterates a two-dimensional CA according to rules similar to Wolfram's one-dimensional CAs. The rule is chosen randomly and stored in an array. (Rules would otherwise have to be 512 bit integers.) This program, like the one before, was only meant as a stepping stone. It does however, form the basis of the next program.


Three Dimensions: Part One, Wolfram

The program "wolf3D" uses the "wolf2D" and "illiSkel" programs as their framework. It first iterates a two-dimensional CA according to the rules in "wolf2D". It stores the iterations in a seperate data type. I then modified the skel's display function to display cubes where 1's existed in the iterated CA.


Three Dimensions: Part Two, Conway

The last program was only pseudo-three-dimensional. That is, the third dimension wasn't an actual dimension of the CA, but used to show a progression through time (or in this case, iteration). True Wolfram rules for CA's, as explained earlier, would be too complicated to do in three dimensions. However, the Game of Life provided an easy basis for a simple three-dimensional CA. "life3D" takes the Game of Life's rules and applies them to a three-dimensional grid of cells.

Back to the main page.