Cellular Automaton Planter - Fully parametric

Fully customisable cellular automaton planter/vase, using a 1D cellular automaton and one of 256 rules
7
15
0
129
updated November 28, 2024

Description

PDF

Cellular Automaton Planter

This planter or vase is a 1D cellular automaton, fully parametric and intended for 3D printing. I've included a few models that I thought were interesting, two are pictured, printed at 75% scale, but the full size models are 120mm diameter and 100mm high. These models include:

  • Rule 110, capable of universal computation
  • Rule 30, which shows chaotic and aperiodic behaviour

Feel free to ask for any others you may want if you don't want to generate them yourself. Would also love to hear suggestions for variations or similar models.

Printing info

  • I printed the models at 0.2mm layer height with a 0.4mm nozzle, and it looks great in bicolour silk PLA. Took me ~ 5 hrs to print on my ancient CR-10, I imagine you could go much faster on a newer printer
  • I used OrcaSlicer's Quality > Make overhangs printable setting, however I haven't yet tested without this setting. I don't think it should be necessary as the overhangs are quite small
  • Otherwise settings were largely standard; no support needed
  • Please upload your makes, I would love to see them!

Models

Models are included as step files, and are named as ca-planter-{timestamp}-D{outer_diameter}H{height}-C{cells}-R{rule_number}-S{rng_seed}.step.

Script

The FreeCAD script is available here. See the README there for instructions on model generation.

The elementary cellular automaton and 256 rules

Each ring on the vase represents a generation of the automaton, with time progressing upwards.  Each cell can be active or inactive, and the state at the next generation is determined by the states of a given cell and its two neighbours and the transition rule that you decide. These 3 cells can therefore be in one of 8 (2^3) states.

Representing inactive as 0, and active as 1, the states are: 000, 001, 010, 011, 100, 101, 110 and 111.

For each state of 3 cells, you can decide on a rule to apply to determine the subsequent state of the given cell - e.g. state 110 produces state 0 or 1.

For example, consider the following transition behaviours:

input state -> output state
111 -> 0
110 -> 0
101 -> 0
100 -> 1
011 -> 1
010 -> 1
001 -> 1 
000 -> 0

This means you can encode the rules for each state as a binary string of length 8, e.g. 00011110, which is 30 in base 10, so we consider this Rule 30.

Given there are 8 states, and 2 possible transition rules for each cell, there are 256 (2^8) different rules. You can explore these further at my demo here.

You can think of the cellular automaton like a toy world with a law of physics which acts simply and locally, but produces complex behaviours at a large scale as the system evolves over time. Note that the rule applies globally, or you can consider it as the same law of physics applies throughout the world.

In different rules we can find:

  • chaotic behaviour, i.e. a small deviation in the initial state produces rapid divergence in later states
  • aperiodic behaviour, i.e. the pattern observed never repeats
  • oscillations
  • steady states

Ideas for further development

  • the model is generated by first computing the cellular automaton on a plane, and then wrapping it onto a cylinder. You could try to map the CA onto other geometries
  • see if you can generate the model for a vase mode print

Tags



Model origin

The author marked this model as their own original creation.

License