Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
-
ContinuousAutomaton
- Posts: 6
- Joined: October 22nd, 2019, 12:44 am
Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
Has anyone looked into cellular automaton on fractals, such as the Sierpinski triangle?
It would be interesting to investigate this branch of types of cellular automaton.
On a side note, the sierpinski triangle is an interesting example in of itself as each cell only has itself and three neighbours connected via its vertices, therefore there are only 65536 "elementary" rules (smallest possible neighborhood, cells can only be on or off.)
It would be interesting to investigate this branch of types of cellular automaton.
On a side note, the sierpinski triangle is an interesting example in of itself as each cell only has itself and three neighbours connected via its vertices, therefore there are only 65536 "elementary" rules (smallest possible neighborhood, cells can only be on or off.)
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
That sounds interesting. Implementations, anyone? (It looks unclear)
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
The main difficulty I see with this is defining what a cell would be. In a Sierpinski triangle, each triangle-cell indeed only has three numbers, but how do you "isolate" a triangle to simulate it as a cell in a CA? Every sub-triangle of a Sierpinski triangle is divided into more triangles without bottom, so it seems to me if you tried to run a CA on that you'd end up with something with infinite complexity which could thus not be simulated.
I suppose the closest you could get to a CA on a Sierpinski triangle would be to define an arbitrary "bottom" level of smallest triangle-cells, and then have the "starting point" of the grid be at a corner of the overall triangle-grid at this smallest level, with the rest of the triangles then getting arbitrarily larger instead of smaller. As long as you have the starting live cells in a finite area close to the corner of the grid, I think this would give something with finite complexity which could thus be simulated.
I suppose the closest you could get to a CA on a Sierpinski triangle would be to define an arbitrary "bottom" level of smallest triangle-cells, and then have the "starting point" of the grid be at a corner of the overall triangle-grid at this smallest level, with the rest of the triangles then getting arbitrarily larger instead of smaller. As long as you have the starting live cells in a finite area close to the corner of the grid, I think this would give something with finite complexity which could thus be simulated.
-
ContinuousAutomaton
- Posts: 6
- Joined: October 22nd, 2019, 12:44 am
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
This problem exists for any self-similar grid, including the standard 2-dimensional grid that most cellular automata use. (How do you know when to stop dividing squares into subsquares?) As you said, there is always an arbitrary bottom level of smallest cells.77topaz wrote: January 31st, 2020, 4:35 am The main difficulty I see with this is defining what a cell would be. In a Sierpinski triangle, each triangle-cell indeed only has three numbers, but how do you "isolate" a triangle to simulate it as a cell in a CA? Every sub-triangle of a Sierpinski triangle is divided into more triangles without bottom, so it seems to me if you tried to run a CA on that you'd end up with something with infinite complexity which could thus not be simulated.
I suppose the closest you could get to a CA on a Sierpinski triangle would be to define an arbitrary "bottom" level of smallest triangle-cells, and then have the "starting point" of the grid be at a corner of the overall triangle-grid at this smallest level, with the rest of the triangles then getting arbitrarily larger instead of smaller. As long as you have the starting live cells in a finite area close to the corner of the grid, I think this would give something with finite complexity which could thus be simulated.
-
ContinuousAutomaton
- Posts: 6
- Joined: October 22nd, 2019, 12:44 am
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
It's nearly five years late, but I managed to get this idea running in Golly.Hunting wrote: January 20th, 2020, 1:02 pm That sounds interesting. Implementations, anyone? (It looks unclear)
You can see a demonstration of it below in confocaloid's post. (Or, watch https://www.youtube.com/watch?v=0USVznP6Id8 though it's blurry.)
You can get the rule and the pattern as well as a script for generating other rules here: https://github.com/GeethanPfeifer/sierp ... main/golly
The grid consists of the red/yellow cells -- red being off, and yellow on. I generated the grid using Wolfram 60.
The rule I chose for the demo (49980) constantly updates each cell to the XOR sum of its (three) neighbours--analogous to Wolfram 150. The neighbourhood here is defined differently than say the Moore or von Neumann neighbourhood--I'll try to write a coherent explanation of it soon.
The bottom left, bottom right, and top left cells have been fixed to be constantly on.
Last edited by ContinuousAutomaton on January 9th, 2025, 1:20 am, edited 1 time in total.
- confocaloid
- Posts: 6697
- Joined: February 8th, 2022, 3:15 pm
- Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
It is possible to post the pattern on the forums, as follows:ContinuousAutomaton wrote: January 9th, 2025, 12:56 am It's nearly five years late, but I managed to get this idea running in Golly.
Here's a video demo of it: https://www.youtube.com/watch?v=0USVznP6Id8
You can get the rule and the pattern as well as a script for generating other rules here: https://github.com/GeethanPfeifer/sierp ... main/golly
Code: Select all
#C Source: https://github.com/GeethanPfeifer/sierpinski
x = 256, y = 256, rule = Sierpinski49980:P256,256
B$2A$A.A$4A$A3.A$2A2.2A$A.A.A.A$8A$A7.A$2A6.2A$A.A5.A.A$4A4.4A$A3.A3.
A3.A$2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A$16A$A15.A$2A14.2A$A.A13.A.A$4A12.
4A$A3.A11.A3.A$2A2.2A10.2A2.2A$A.A.A.A9.A.A.A.A$8A8.8A$A7.A7.A7.A$2A
6.2A6.2A6.2A$A.A5.A.A5.A.A5.A.A$4A4.4A4.4A4.4A$A3.A3.A3.A3.A3.A3.A3.A
$2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A$32A$A
31.A$2A30.2A$A.A29.A.A$4A28.4A$A3.A27.A3.A$2A2.2A26.2A2.2A$A.A.A.A25.
A.A.A.A$8A24.8A$A7.A23.A7.A$2A6.2A22.2A6.2A$A.A5.A.A21.A.A5.A.A$4A4.
4A20.4A4.4A$A3.A3.A3.A19.A3.A3.A3.A$2A2.2A2.2A2.2A18.2A2.2A2.2A2.2A$A
.A.A.A.A.A.A.A17.A.A.A.A.A.A.A.A$16A16.16A$A15.A15.A15.A$2A14.2A14.2A
14.2A$A.A13.A.A13.A.A13.A.A$4A12.4A12.4A12.4A$A3.A11.A3.A11.A3.A11.A
3.A$2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A$A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.
A.A$8A8.8A8.8A8.8A$A7.A7.A7.A7.A7.A7.A7.A$2A6.2A6.2A6.2A6.2A6.2A6.2A
6.2A$A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A$4A4.4A4.4A4.4A4.4A4.4A4.
4A4.4A$A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A$2A2.2A2.2A2.2A
2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A.A.A.
A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A$64A$A63.A$2A62.2A$A.A61.A
.A$4A60.4A$A3.A59.A3.A$2A2.2A58.2A2.2A$A.A.A.A57.A.A.A.A$8A56.8A$A7.A
55.A7.A$2A6.2A54.2A6.2A$A.A5.A.A53.A.A5.A.A$4A4.4A52.4A4.4A$A3.A3.A3.
A51.A3.A3.A3.A$2A2.2A2.2A2.2A50.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A49.A.A.
A.A.A.A.A.A$16A48.16A$A15.A47.A15.A$2A14.2A46.2A14.2A$A.A13.A.A45.A.A
13.A.A$4A12.4A44.4A12.4A$A3.A11.A3.A43.A3.A11.A3.A$2A2.2A10.2A2.2A42.
2A2.2A10.2A2.2A$A.A.A.A9.A.A.A.A41.A.A.A.A9.A.A.A.A$8A8.8A40.8A8.8A$A
7.A7.A7.A39.A7.A7.A7.A$2A6.2A6.2A6.2A38.2A6.2A6.2A6.2A$A.A5.A.A5.A.A
5.A.A37.A.A5.A.A5.A.A5.A.A$4A4.4A4.4A4.4A36.4A4.4A4.4A4.4A$A3.A3.A3.A
3.A3.A3.A3.A35.A3.A3.A3.A3.A3.A3.A3.A$2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A
34.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A33.A
.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A$32A32.32A$A31.A31.A31.A$2A30.2A30.2A
30.2A$A.A29.A.A29.A.A29.A.A$4A28.4A28.4A28.4A$A3.A27.A3.A27.A3.A27.A
3.A$2A2.2A26.2A2.2A26.2A2.2A26.2A2.2A$A.A.A.A25.A.A.A.A25.A.A.A.A25.A
.A.A.A$8A24.8A24.8A24.8A$A7.A23.A7.A23.A7.A23.A7.A$2A6.2A22.2A6.2A22.
2A6.2A22.2A6.2A$A.A5.A.A21.A.A5.A.A21.A.A5.A.A21.A.A5.A.A$4A4.4A20.4A
4.4A20.4A4.4A20.4A4.4A$A3.A3.A3.A19.A3.A3.A3.A19.A3.A3.A3.A19.A3.A3.A
3.A$2A2.2A2.2A2.2A18.2A2.2A2.2A2.2A18.2A2.2A2.2A2.2A18.2A2.2A2.2A2.2A
$A.A.A.A.A.A.A.A17.A.A.A.A.A.A.A.A17.A.A.A.A.A.A.A.A17.A.A.A.A.A.A.A.
A$16A16.16A16.16A16.16A$A15.A15.A15.A15.A15.A15.A15.A$2A14.2A14.2A14.
2A14.2A14.2A14.2A14.2A$A.A13.A.A13.A.A13.A.A13.A.A13.A.A13.A.A13.A.A$
4A12.4A12.4A12.4A12.4A12.4A12.4A12.4A$A3.A11.A3.A11.A3.A11.A3.A11.A3.
A11.A3.A11.A3.A11.A3.A$2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A10.
2A2.2A10.2A2.2A10.2A2.2A$A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A
9.A.A.A.A9.A.A.A.A9.A.A.A.A$8A8.8A8.8A8.8A8.8A8.8A8.8A8.8A$A7.A7.A7.A
7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A$2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.
2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A$A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A
5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A$4A4.4A4.4A4.4A4.4A4.4A4.4A4.
4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A$A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A
3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A$2A2.2A2.
2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.
2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A.A.
A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A
.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A$128A$A127.A$2A126.2A$A.A125.
A.A$4A124.4A$A3.A123.A3.A$2A2.2A122.2A2.2A$A.A.A.A121.A.A.A.A$8A120.
8A$A7.A119.A7.A$2A6.2A118.2A6.2A$A.A5.A.A117.A.A5.A.A$4A4.4A116.4A4.
4A$A3.A3.A3.A115.A3.A3.A3.A$2A2.2A2.2A2.2A114.2A2.2A2.2A2.2A$A.A.A.A.
A.A.A.A113.A.A.A.A.A.A.A.A$16A112.16A$A15.A111.A15.A$2A14.2A110.2A14.
2A$A.A13.A.A109.A.A13.A.A$4A12.4A108.4A12.4A$A3.A11.A3.A107.A3.A11.A
3.A$2A2.2A10.2A2.2A106.2A2.2A10.2A2.2A$A.A.A.A9.A.A.A.A105.A.A.A.A9.A
.A.A.A$8A8.8A104.8A8.8A$A7.A7.A7.A103.A7.A7.A7.A$2A6.2A6.2A6.2A102.2A
6.2A6.2A6.2A$A.A5.A.A5.A.A5.A.A101.A.A5.A.A5.A.A5.A.A$4A4.4A4.4A4.4A
100.4A4.4A4.4A4.4A$A3.A3.A3.A3.A3.A3.A3.A99.A3.A3.A3.A3.A3.A3.A3.A$2A
2.2A2.2A2.2A2.2A2.2A2.2A2.2A98.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A$A.A.A.A
.A.A.A.A.A.A.A.A.A.A.A.A97.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A$32A96.32A$
A31.A95.A31.A$2A30.2A94.2A30.2A$A.A29.A.A93.A.A29.A.A$4A28.4A92.4A28.
4A$A3.A27.A3.A91.A3.A27.A3.A$2A2.2A26.2A2.2A90.2A2.2A26.2A2.2A$A.A.A.
A25.A.A.A.A89.A.A.A.A25.A.A.A.A$8A24.8A88.8A24.8A$A7.A23.A7.A87.A7.A
23.A7.A$2A6.2A22.2A6.2A86.2A6.2A22.2A6.2A$A.A5.A.A21.A.A5.A.A85.A.A5.
A.A21.A.A5.A.A$4A4.4A20.4A4.4A84.4A4.4A20.4A4.4A$A3.A3.A3.A19.A3.A3.A
3.A83.A3.A3.A3.A19.A3.A3.A3.A$2A2.2A2.2A2.2A18.2A2.2A2.2A2.2A82.2A2.
2A2.2A2.2A18.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A17.A.A.A.A.A.A.A.A81.A.A.A
.A.A.A.A.A17.A.A.A.A.A.A.A.A$16A16.16A80.16A16.16A$A15.A15.A15.A79.A
15.A15.A15.A$2A14.2A14.2A14.2A78.2A14.2A14.2A14.2A$A.A13.A.A13.A.A13.
A.A77.A.A13.A.A13.A.A13.A.A$4A12.4A12.4A12.4A76.4A12.4A12.4A12.4A$A3.
A11.A3.A11.A3.A11.A3.A75.A3.A11.A3.A11.A3.A11.A3.A$2A2.2A10.2A2.2A10.
2A2.2A10.2A2.2A74.2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A$A.A.A.A9.A.A.A.A
9.A.A.A.A9.A.A.A.A73.A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A$8A8.8A8.8A8.
8A72.8A8.8A8.8A8.8A$A7.A7.A7.A7.A7.A7.A7.A71.A7.A7.A7.A7.A7.A7.A7.A$
2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A70.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A$A.A5.
A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A69.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A
5.A.A$4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A68.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A
$A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A67.A3.A3.A3.A3.A3.A3.A
3.A3.A3.A3.A3.A3.A3.A3.A3.A$2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.
2A2.2A2.2A2.2A2.2A2.2A66.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.
2A2.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.
A.A.A.A.A.A.A65.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A
.A.A.A.A.A$64A64.64A$A63.A63.A63.A$2A62.2A62.2A62.2A$A.A61.A.A61.A.A
61.A.A$4A60.4A60.4A60.4A$A3.A59.A3.A59.A3.A59.A3.A$2A2.2A58.2A2.2A58.
2A2.2A58.2A2.2A$A.A.A.A57.A.A.A.A57.A.A.A.A57.A.A.A.A$8A56.8A56.8A56.
8A$A7.A55.A7.A55.A7.A55.A7.A$2A6.2A54.2A6.2A54.2A6.2A54.2A6.2A$A.A5.A
.A53.A.A5.A.A53.A.A5.A.A53.A.A5.A.A$4A4.4A52.4A4.4A52.4A4.4A52.4A4.4A
$A3.A3.A3.A51.A3.A3.A3.A51.A3.A3.A3.A51.A3.A3.A3.A$2A2.2A2.2A2.2A50.
2A2.2A2.2A2.2A50.2A2.2A2.2A2.2A50.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A49.A.
A.A.A.A.A.A.A49.A.A.A.A.A.A.A.A49.A.A.A.A.A.A.A.A$16A48.16A48.16A48.
16A$A15.A47.A15.A47.A15.A47.A15.A$2A14.2A46.2A14.2A46.2A14.2A46.2A14.
2A$A.A13.A.A45.A.A13.A.A45.A.A13.A.A45.A.A13.A.A$4A12.4A44.4A12.4A44.
4A12.4A44.4A12.4A$A3.A11.A3.A43.A3.A11.A3.A43.A3.A11.A3.A43.A3.A11.A
3.A$2A2.2A10.2A2.2A42.2A2.2A10.2A2.2A42.2A2.2A10.2A2.2A42.2A2.2A10.2A
2.2A$A.A.A.A9.A.A.A.A41.A.A.A.A9.A.A.A.A41.A.A.A.A9.A.A.A.A41.A.A.A.A
9.A.A.A.A$8A8.8A40.8A8.8A40.8A8.8A40.8A8.8A$A7.A7.A7.A39.A7.A7.A7.A
39.A7.A7.A7.A39.A7.A7.A7.A$2A6.2A6.2A6.2A38.2A6.2A6.2A6.2A38.2A6.2A6.
2A6.2A38.2A6.2A6.2A6.2A$A.A5.A.A5.A.A5.A.A37.A.A5.A.A5.A.A5.A.A37.A.A
5.A.A5.A.A5.A.A37.A.A5.A.A5.A.A5.A.A$4A4.4A4.4A4.4A36.4A4.4A4.4A4.4A
36.4A4.4A4.4A4.4A36.4A4.4A4.4A4.4A$A3.A3.A3.A3.A3.A3.A3.A35.A3.A3.A3.
A3.A3.A3.A3.A35.A3.A3.A3.A3.A3.A3.A3.A35.A3.A3.A3.A3.A3.A3.A3.A$2A2.
2A2.2A2.2A2.2A2.2A2.2A2.2A34.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A34.2A2.2A
2.2A2.2A2.2A2.2A2.2A2.2A34.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A$A.A.A.A.A.A
.A.A.A.A.A.A.A.A.A.A33.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A33.A.A.A.A.A.A.
A.A.A.A.A.A.A.A.A.A33.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A$32A32.32A32.32A
32.32A$A31.A31.A31.A31.A31.A31.A31.A$2A30.2A30.2A30.2A30.2A30.2A30.2A
30.2A$A.A29.A.A29.A.A29.A.A29.A.A29.A.A29.A.A29.A.A$4A28.4A28.4A28.4A
28.4A28.4A28.4A28.4A$A3.A27.A3.A27.A3.A27.A3.A27.A3.A27.A3.A27.A3.A
27.A3.A$2A2.2A26.2A2.2A26.2A2.2A26.2A2.2A26.2A2.2A26.2A2.2A26.2A2.2A
26.2A2.2A$A.A.A.A25.A.A.A.A25.A.A.A.A25.A.A.A.A25.A.A.A.A25.A.A.A.A
25.A.A.A.A25.A.A.A.A$8A24.8A24.8A24.8A24.8A24.8A24.8A24.8A$A7.A23.A7.
A23.A7.A23.A7.A23.A7.A23.A7.A23.A7.A23.A7.A$2A6.2A22.2A6.2A22.2A6.2A
22.2A6.2A22.2A6.2A22.2A6.2A22.2A6.2A22.2A6.2A$A.A5.A.A21.A.A5.A.A21.A
.A5.A.A21.A.A5.A.A21.A.A5.A.A21.A.A5.A.A21.A.A5.A.A21.A.A5.A.A$4A4.4A
20.4A4.4A20.4A4.4A20.4A4.4A20.4A4.4A20.4A4.4A20.4A4.4A20.4A4.4A$A3.A
3.A3.A19.A3.A3.A3.A19.A3.A3.A3.A19.A3.A3.A3.A19.A3.A3.A3.A19.A3.A3.A
3.A19.A3.A3.A3.A19.A3.A3.A3.A$2A2.2A2.2A2.2A18.2A2.2A2.2A2.2A18.2A2.
2A2.2A2.2A18.2A2.2A2.2A2.2A18.2A2.2A2.2A2.2A18.2A2.2A2.2A2.2A18.2A2.
2A2.2A2.2A18.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A17.A.A.A.A.A.A.A.A17.A.A.A
.A.A.A.A.A17.A.A.A.A.A.A.A.A17.A.A.A.A.A.A.A.A17.A.A.A.A.A.A.A.A17.A.
A.A.A.A.A.A.A17.A.A.A.A.A.A.A.A$16A16.16A16.16A16.16A16.16A16.16A16.
16A16.16A$A15.A15.A15.A15.A15.A15.A15.A15.A15.A15.A15.A15.A15.A15.A
15.A$2A14.2A14.2A14.2A14.2A14.2A14.2A14.2A14.2A14.2A14.2A14.2A14.2A
14.2A14.2A14.2A$A.A13.A.A13.A.A13.A.A13.A.A13.A.A13.A.A13.A.A13.A.A
13.A.A13.A.A13.A.A13.A.A13.A.A13.A.A13.A.A$4A12.4A12.4A12.4A12.4A12.
4A12.4A12.4A12.4A12.4A12.4A12.4A12.4A12.4A12.4A12.4A$A3.A11.A3.A11.A
3.A11.A3.A11.A3.A11.A3.A11.A3.A11.A3.A11.A3.A11.A3.A11.A3.A11.A3.A11.
A3.A11.A3.A11.A3.A11.A3.A$2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A
10.2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A10.2A2.2A10.2A
2.2A10.2A2.2A10.2A2.2A10.2A2.2A$A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A9.A
.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A
9.A.A.A.A9.A.A.A.A9.A.A.A.A9.A.A.A.A$8A8.8A8.8A8.8A8.8A8.8A8.8A8.8A8.
8A8.8A8.8A8.8A8.8A8.8A8.8A8.8A$A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A
7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A7.A$2A6.2A6.2A
6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A
6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A6.2A$A.A5.A.A5.A.A5.A.A5.
A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A
5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.A5.A.
A$4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A
4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A4.4A$A3.A3.A
3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A
3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A
3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A3.A$2A2.2A2.2A2.2A2.2A2.2A
2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A
2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A
2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A2.2A
2.2A2.2A2.2A2.2A2.2A2.2A2.2A$A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.
A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A
.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.
A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A
.A.A.A.A$B254AB!
@RULE Sierpinski49980
Source: https://github.com/GeethanPfeifer/sierpinski
This file was generated automatically by sierpinskirulegen
@TABLE
n_states:3
neighborhood:Moore
symmetries:none
var f1 = {0,1,2}
var f2 = {0,1,2}
var f3 = {0,1,2}
var f4 = {0,1,2}
1,1,f1,f2,1,1,f3,f4,0,1
2,1,f1,f2,1,1,f3,f4,0,1
1,2,f1,f2,1,1,f3,f4,0,2
2,2,f1,f2,1,1,f3,f4,0,2
1,1,f1,f2,2,1,f3,f4,0,2
2,1,f1,f2,2,1,f3,f4,0,2
1,2,f1,f2,2,1,f3,f4,0,1
2,2,f1,f2,2,1,f3,f4,0,1
1,1,f1,f2,1,2,f3,f4,0,2
2,1,f1,f2,1,2,f3,f4,0,2
1,2,f1,f2,1,2,f3,f4,0,1
2,2,f1,f2,1,2,f3,f4,0,1
1,1,f1,f2,2,2,f3,f4,0,1
2,1,f1,f2,2,2,f3,f4,0,1
1,2,f1,f2,2,2,f3,f4,0,2
2,2,f1,f2,2,2,f3,f4,0,2
1,0,f1,f2,1,1,f3,f4,1,1
2,0,f1,f2,1,1,f3,f4,1,1
1,0,f1,f2,1,1,f3,f4,2,2
2,0,f1,f2,1,1,f3,f4,2,2
1,0,f1,f2,2,1,f3,f4,1,2
2,0,f1,f2,2,1,f3,f4,1,2
1,0,f1,f2,2,1,f3,f4,2,1
2,0,f1,f2,2,1,f3,f4,2,1
1,0,f1,f2,1,2,f3,f4,1,2
2,0,f1,f2,1,2,f3,f4,1,2
1,0,f1,f2,1,2,f3,f4,2,1
2,0,f1,f2,1,2,f3,f4,2,1
1,0,f1,f2,2,2,f3,f4,1,1
2,0,f1,f2,2,2,f3,f4,1,1
1,0,f1,f2,2,2,f3,f4,2,2
2,0,f1,f2,2,2,f3,f4,2,2
1,1,f1,1,f2,1,f3,0,f4,1
2,1,f1,1,f2,1,f3,0,f4,1
1,1,f1,1,f2,2,f3,0,f4,2
2,1,f1,1,f2,2,f3,0,f4,2
1,2,f1,1,f2,1,f3,0,f4,2
2,2,f1,1,f2,1,f3,0,f4,2
1,2,f1,1,f2,2,f3,0,f4,1
2,2,f1,1,f2,2,f3,0,f4,1
1,1,f1,2,f2,1,f3,0,f4,2
2,1,f1,2,f2,1,f3,0,f4,2
1,1,f1,2,f2,2,f3,0,f4,1
2,1,f1,2,f2,2,f3,0,f4,1
1,2,f1,2,f2,1,f3,0,f4,1
2,2,f1,2,f2,1,f3,0,f4,1
1,2,f1,2,f2,2,f3,0,f4,2
2,2,f1,2,f2,2,f3,0,f4,2
1,1,f1,1,f2,0,f3,1,f4,1
2,1,f1,1,f2,0,f3,1,f4,1
1,1,f1,1,f2,0,f3,2,f4,2
2,1,f1,1,f2,0,f3,2,f4,2
1,2,f1,1,f2,0,f3,1,f4,2
2,2,f1,1,f2,0,f3,1,f4,2
1,2,f1,1,f2,0,f3,2,f4,1
2,2,f1,1,f2,0,f3,2,f4,1
1,1,f1,2,f2,0,f3,1,f4,2
2,1,f1,2,f2,0,f3,1,f4,2
1,1,f1,2,f2,0,f3,2,f4,1
2,1,f1,2,f2,0,f3,2,f4,1
1,2,f1,2,f2,0,f3,1,f4,1
2,2,f1,2,f2,0,f3,1,f4,1
1,2,f1,2,f2,0,f3,2,f4,2
2,2,f1,2,f2,0,f3,2,f4,2
1,f1,f2,1,0,f3,f4,1,1,1
2,f1,f2,1,0,f3,f4,1,1,1
1,f1,f2,2,0,f3,f4,1,1,2
2,f1,f2,2,0,f3,f4,1,1,2
1,f1,f2,1,0,f3,f4,2,1,2
2,f1,f2,1,0,f3,f4,2,1,2
1,f1,f2,2,0,f3,f4,2,1,1
2,f1,f2,2,0,f3,f4,2,1,1
1,f1,f2,1,0,f3,f4,1,2,2
2,f1,f2,1,0,f3,f4,1,2,2
1,f1,f2,2,0,f3,f4,1,2,1
2,f1,f2,2,0,f3,f4,1,2,1
1,f1,f2,1,0,f3,f4,2,2,1
2,f1,f2,1,0,f3,f4,2,2,1
1,f1,f2,2,0,f3,f4,2,2,2
2,f1,f2,2,0,f3,f4,2,2,2
1,f1,f2,0,1,f3,f4,1,1,1
2,f1,f2,0,1,f3,f4,1,1,1
1,f1,f2,0,2,f3,f4,1,1,2
2,f1,f2,0,2,f3,f4,1,1,2
1,f1,f2,0,1,f3,f4,2,1,2
2,f1,f2,0,1,f3,f4,2,1,2
1,f1,f2,0,2,f3,f4,2,1,1
2,f1,f2,0,2,f3,f4,2,1,1
1,f1,f2,0,1,f3,f4,1,2,2
2,f1,f2,0,1,f3,f4,1,2,2
1,f1,f2,0,2,f3,f4,1,2,1
2,f1,f2,0,2,f3,f4,1,2,1
1,f1,f2,0,1,f3,f4,2,2,1
2,f1,f2,0,1,f3,f4,2,2,1
1,f1,f2,0,2,f3,f4,2,2,2
2,f1,f2,0,2,f3,f4,2,2,2
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
-
ContinuousAutomaton
- Posts: 6
- Joined: October 22nd, 2019, 12:44 am
-
ContinuousAutomaton
- Posts: 6
- Joined: October 22nd, 2019, 12:44 am
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
I wrote an explanation of what I did here: https://github.com/GeethanPfeifer/sierp ... /caohg.pdf
- confocaloid
- Posts: 6697
- Joined: February 8th, 2022, 3:15 pm
- Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
I'm not sure whether the idea of a spaceship can be made to work on such graphs (at least if the ruleset only cares about the multiset of states of cells N1(u) and N2(u) but not on the ordered pair of cellstates).
Suppose there is some compact configuration with only finitely many "alive" cells that moves through the graph, and never returns back to where it was before. Any such configuration must at some time "go through the bottleneck" in the point where two big triangles meet each other (i.e. through the adjacency between some cell u and the neighbour P(u)). (Eventually the size of those triangles becomes enough so that the configuration will be too small to "go through two bottlenecks at once".) After the "bottleneck", it seems impossible for the configuration to "decide where to go next", due to local symmetry.
There might be some sort of moving configuration, but probably it would be too complicated/too different to call it a "spaceship", and hence would need a different description.
Earlier post by 77topaz hints at some difficulties with comparing this to CA on the usual square tiling. I
Golly is indeed limited, both in what it can do and in what it can display on the screen (and is not and will never be "the single tool to solve all problems"). However, people did use Golly to implement many kinds of interesting CA. RuleLoader (ruletables, ruletrees) can be used for CA on the hexagonal tiling, triangular tiling, non-regular uniform tilings, more complicated graphs/networks along the lines of this topic. (That is not counting CA families that are supported with a notation without needing a separate file.) The displayed grid remains composed of squares, but one can use/write scripts such as hexgrid.lua and 3D.lua for a different display.
Suppose there is some compact configuration with only finitely many "alive" cells that moves through the graph, and never returns back to where it was before. Any such configuration must at some time "go through the bottleneck" in the point where two big triangles meet each other (i.e. through the adjacency between some cell u and the neighbour P(u)). (Eventually the size of those triangles becomes enough so that the configuration will be too small to "go through two bottlenecks at once".) After the "bottleneck", it seems impossible for the configuration to "decide where to go next", due to local symmetry.
There might be some sort of moving configuration, but probably it would be too complicated/too different to call it a "spaceship", and hence would need a different description.
Earlier post by 77topaz hints at some difficulties with comparing this to CA on the usual square tiling. I
Golly is indeed limited, both in what it can do and in what it can display on the screen (and is not and will never be "the single tool to solve all problems"). However, people did use Golly to implement many kinds of interesting CA. RuleLoader (ruletables, ruletrees) can be used for CA on the hexagonal tiling, triangular tiling, non-regular uniform tilings, more complicated graphs/networks along the lines of this topic. (That is not counting CA families that are supported with a notation without needing a separate file.) The displayed grid remains composed of squares, but one can use/write scripts such as hexgrid.lua and 3D.lua for a different display.
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
azertite055 did a quick showcase of running Life on a binary tiling where each row's cells are half the size of the row above (thus the tiling is inherently anisotropic). Not much has been done with it yet but it's a fractal I guess...
-
ContinuousAutomaton
- Posts: 6
- Joined: October 22nd, 2019, 12:44 am
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
Yeah, that was sort of my hunch as well.confocaloid wrote: January 9th, 2025, 11:46 pm I'm not sure whether the idea of a spaceship can be made to work on such graphs (at least if the ruleset only cares about the multiset of states of cells N1(u) and N2(u) but not on the ordered pair of cellstates).
Suppose there is some compact configuration with only finitely many "alive" cells that moves through the graph, and never returns back to where it was before. Any such configuration must at some time "go through the bottleneck" in the point where two big triangles meet each other (i.e. through the adjacency between some cell u and the neighbour P(u)). (Eventually the size of those triangles becomes enough so that the configuration will be too small to "go through two bottlenecks at once".) After the "bottleneck", it seems impossible for the configuration to "decide where to go next", due to local symmetry.
There might be some sort of moving configuration, but probably it would be too complicated/too different to call it a "spaceship", and hence would need a different description.
Earlier post by 77topaz hints at some difficulties with comparing this to CA on the usual square tiling. I
My main gripe with Golly right now is that it doesn't support Moore neighbourhoods with radius > 1 (at least according to https://github.com/GollyGang/ruletabler ... ki/RoadMap, I haven't actually tested it myself.) Or ideally, rectangular neighbourhoods. My initial idea was to use Wolfram 154 to generate the grid: a 5x3 rectangle centered around each node would only contain the neighbours of the node.Golly is indeed limited, both in what it can do and in what it can display on the screen (and is not and will never be "the single tool to solve all problems"). However, people did use Golly to implement many kinds of interesting CA. RuleLoader (ruletables, ruletrees) can be used for CA on the hexagonal tiling, triangular tiling, non-regular uniform tilings, more complicated graphs/networks along the lines of this topic. (That is not counting CA families that are supported with a notation without needing a separate file.) The displayed grid remains composed of squares, but one can use/write scripts such as hexgrid.lua and 3D.lua for a different display.
I did think about that too, great to see someone's already done it!wirehead wrote: January 10th, 2025, 12:05 am azertite055 did a quick showcase of running Life on a binary tiling where each row's cells are half the size of the row above (thus the tiling is inherently anisotropic). Not much has been done with it yet but it's a fractal I guess...
- confocaloid
- Posts: 6697
- Joined: February 8th, 2022, 3:15 pm
- Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
Actually, Golly does support higher-range neighbourhoods. See in particular weighted neighbourhoods (NW) and custom neighbourhoods (N@):ContinuousAutomaton wrote: January 10th, 2025, 12:10 am [...] My main gripe with Golly right now is that it doesn't support Moore neighbourhoods with radius > 1 (at least according to https://github.com/GollyGang/ruletabler ... ki/RoadMap, I haven't actually tested it myself.) Or ideally, rectangular neighbourhoods. [...]
https://golly.sourceforge.io/Help/Algor ... _Life.html
RuleLoader (the algorithm used to load CA definitions from external .rule files) is indeed limited to range 1, though.
There are also extensions to support higher ranges (for example, lifelib supports ruletables with higher-range user-defined neighbourhoods and symmetry groups).
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
- Redstoneboi
- Posts: 467
- Joined: May 14th, 2018, 3:57 am
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
Prior exploration on this topic:
TodePond's Cells in Cells video (fractal generation rules)
My old Fractory simulation from 2 years ago that I never released and was planning on developing as a fully customizable game with custom rulesets, custom fractals, and custom sprites. Never finished, but it's there.
It works like Minecraft where every tile is a crafting table. 4 triangles don't just "make" one bigger triangle, 4 triangles are one bigger triangle. The only things that triangles can do, when activated, are:
- move other triangles from one place to another (conservation of mass)
- activate other triangles
Think of them like redstone pistons and repeaters pushing around fractal crafting tables. They need to be activated first, then they push stuff around and activate other tiles.
Triangles are able to do multiple actions. They can see and move themselves, triangles from an arbitrary distance away, and see subtriangles to any depth, but not supertriangles bigger than themselves. They are only able to see the subtriangles of equal size within the supertriangles.
When a triangle is being moved by multiple other triangles at the same time, it does not move.
Their actions are bound by the triangles' symmetries. A triangle with reflection symmetry that activates a tile on its left side must also activate a tile on its right side.
See the link above for the github repository. The README.md has demo videos. One day. Maybe I'll come back to y'all with results. But right now, it's under a long long hibernation for lack of a good UI.
This was as far as I got.
TodePond's Cells in Cells video (fractal generation rules)
My old Fractory simulation from 2 years ago that I never released and was planning on developing as a fully customizable game with custom rulesets, custom fractals, and custom sprites. Never finished, but it's there.
It works like Minecraft where every tile is a crafting table. 4 triangles don't just "make" one bigger triangle, 4 triangles are one bigger triangle. The only things that triangles can do, when activated, are:
- move other triangles from one place to another (conservation of mass)
- activate other triangles
Think of them like redstone pistons and repeaters pushing around fractal crafting tables. They need to be activated first, then they push stuff around and activate other tiles.
Triangles are able to do multiple actions. They can see and move themselves, triangles from an arbitrary distance away, and see subtriangles to any depth, but not supertriangles bigger than themselves. They are only able to see the subtriangles of equal size within the supertriangles.
When a triangle is being moved by multiple other triangles at the same time, it does not move.
Their actions are bound by the triangles' symmetries. A triangle with reflection symmetry that activates a tile on its left side must also activate a tile on its right side.
See the link above for the github repository. The README.md has demo videos. One day. Maybe I'll come back to y'all with results. But right now, it's under a long long hibernation for lack of a good UI.
This was as far as I got.
c(>^w^<c)~*
This is 「Fluffy」
「Fluffy」is my sutando.
「Fluffy」has the ability to engineer r e p l i c a t o r s.
「Fluffy」likes to watch spaceship guns in Golly.
「Fluffy」knows Natsuki best girl.
This is 「Fluffy」
「Fluffy」is my sutando.
「Fluffy」has the ability to engineer r e p l i c a t o r s.
「Fluffy」likes to watch spaceship guns in Golly.
「Fluffy」knows Natsuki best girl.
- confocaloid
- Posts: 6697
- Joined: February 8th, 2022, 3:15 pm
- Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms
Re: Cellular automaton on fractals (i.e. cellular automaton on grids with fractional dimensions)
It may be possible to define a cellular automaton that doesn't merely change the states of cells (values of vertices of the graph), but also can modify the structure of the graph itself.77topaz wrote: January 31st, 2020, 4:35 amThe main difficulty I see with this is defining what a cell would be. [...]
For example, start with the infinite square tiling. At every tick, every square cell can (depending on its current condition) either
- undergo a "classic" state-to-state transition, or
- "split" into four independent square sub-cells (each with its own state, with states of the newly created sub-cells also prescribed by the rules in some way), or
- "merge" with three other square cells of the same size around a single vertex, forming a larger square cell (with the state of the newly created cell also prescribed by the rules in some way).
Did anyone already investigate this? What is known about such "self-modifying" cellular automata?
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.