An example (run for 5K generations):
Code: Select all
x = 7, y = 9, rule = B2cn3acekq4air5-acn7e/S12k3-jkn4airtw5acjnq6-ce78
3bo$bob4o$5obo$6o$4o2bo$7o$b5o$bobob2o$3bob2o!
My explanation is a stochastic fire theory. Imagine that each fire state (1) that can either 1. remain fire state 2. become stable state, and copy itself to 8 neighbors, converting all Moore neighbors 0->1 (fire). Lets say fire becoming a stable state with probability 0.1. The claim is that this is what happens to circular rules as well.
To test the theory two tests were conducted:
1. The test with rule = B2cn3acekq4air5-acn7e/S12k3-jkn4airtw5acjnq6-ce78
1.1. Generating an average histogram of fire expansion 100 times from initial random [11, 11] square. Expecting to see a circular pattern:
Example of single histogram (generated by roberband.txt python script): Averaging such 100 (statistical_raberband.txt): 1.2. Same as 1.1 but initial is two squares: one [11, 11] and another random moved by 200. Expecting to see two merging circular patterns: 2. The same can be seen with stochastic fire simulation (robersimulation.txt):
Single circle stochastic: Averaging single circle stochastic: Two circles stochastic: -------------------------
The rule was found by radial_search.txt. About 0.1%-0.2% of random isometric rules (with P_flag = 0.6) generating a circle.
Some more examples:
Code: Select all
x = 10, y = 10, rule = B2-a3ejqr4aeknt5aeiq6cek8/S2-an3aeijn4-iknqt5air6-cn7c
2b2obob3o$obo4b2o$2bob2obo$2obo2b4o$3obo4bo$bob2o4bo$ob2obobo$2bo2b2ob
o$4ob2obo$bo2bobob2o!
Code: Select all
x = 10, y = 10, rule = B2cek3-einq4-kqrt5-ijkn6an/S2e3-aqr4cekrt5ajknr6ei7
bo2bobo2bo$2b7o$bobo2bobo$3bobo2b2o$ob3o2bobo$b2obob2obo$3o2bobo$obo3b
ob2o$2obo3bo$2b4o3bo!
Code: Select all
x = 10, y = 10, rule = B2ek3-jkqy4acikrty5-aijq6-ik8/S12k3-acjr4qz5cjk6aei
bob5obo$o6b3o$bo4bo$bo3bo2b2o$2o2b2o3bo$6o2b2o$obo2b2obo$b2o2b3obo$6ob
obo$2bobobob2o!