Are Cell Machine and its descendants cellular automata?

A forum for topics that don't fit elsewhere. Introduce yourselves to other members of the forums, discuss how your name evolves when written out in the Game of Life, or just tell us how you found it. Forum rules still apply.
Post Reply
User avatar
aadenboy
Posts: 4
Joined: October 1st, 2025, 3:22 pm
Contact:

Are Cell Machine and its descendants cellular automata?

Post by aadenboy »

Hello! I'm not sure if this should go in here or over at "Other cellular automata"; I'm putting it here to be safe.

To those uninitiated, Cell Machine is a game developed by Sam Hogan for the Game Maker's Toolkit's 2020 game jam. Its premise was inspired by Conway's Game of Life, with it being a "zero-player game" and cells acting on their own terms, like one cell moving forwards and another rotating those around it. It's had many offshoots since then—the GIFs in this post are from a descendant called CelLua Machine—but the idea remains the same.

Recently, someone posted a video making a new "cellular automaton" inspired by Hogan's Cell Machine, but was noted by the audience that it isn't a cellular automaton, which struck me as very odd. The reasoning goes that cellular automata are supposed to be local, where cells aren't able to have an effect that travels an arbitrary distance instantaneously, and Cell Machine is notorious for having information passed at speeds faster than one cell per tick. The GIF below is an example of this, where the Mover (the blue cell) begins pushing the row of Pushables (the yellow cells), and instantaneously destroys the Enemy (the red cell) at the end of it in a single tick as a result of the push, violating locality.

Image

In terms of ticks, this appears to be a non-local effect. However, it's better to look into what happens at smaller subdivisions. When the Mover exerts a pushing force, the force propagates forward one cell at a time, with the new force checking the cell it's on for pushability. This takes multiple steps to calculate, and it can't be done any faster as every cell must be checked. Once there are no more cells to push or any cell fails to push, the propagation is complete. This is all local, and there's a maximum speed at which propagation can be done: one cell per "microtick". I coined this kind of automaton to be a "force automaton".

Image

Now, I would've stopped there and concluded that Cell Machine is a cellular automaton. But, with the two polls that I ran, the majority had voted that they were similar but not equal. Giving it a little more thought (and chatting with someone else), I realized that what I'm really trying to get at is that cellular automata and force automata are under the same family of "automata", but aren't equivalent, and it's best compared through what "rules" are and how cells operate.

In a cellular automaton, cells are independent of those around it and cannot directly influence the state of other cells, instead in charge of observing its neighbors and determining its own state. The "rules" govern how each cell chooses to update based on its neighborhood, and this makes the locality the neighborhood respective of each cell. For a force automaton, cells aren't independent of other cells and can directly influence what happens to the things around it in terms of forces, where the "rules" are how those forces act upon cells and propagate (if they do at all). Locality is gained by the forces in respect to the cells that invoked them (and unlike CAs, FAs require a set order).

I think I'm heading in the correct direction with this, but I don't actually study automata theory and all of this is just my own assumptions based on what I know about the two (honestly, I know more about FAs than CAs; I write a wiki about one!) I'm posting here to get input from those who have more insight into this kind of work. Honestly, I'd love to formalize "force automata".
originally came to the forum to request an account and then I did nothing o_o"
User avatar
pifricted
Posts: 1119
Joined: May 25th, 2024, 10:26 am
Location: Click here to set your location

Re: Are Cell Machine and its descendants cellular automata?

Post by pifricted »

I think the progress in a CA should like this:

Code: Select all

 x = 9, y = 15, rule = B/S012345678Super
I.6ED2$.I6ED2$2.IQ4ED2$2.IEQ3ED2$2.I2EQ2ED2$2.I3EQED2$2.I4EQD2$2.I6E!
Besides, what’s “force automaton”?
...is enjoying his teenage time.
User avatar
aadenboy
Posts: 4
Joined: October 1st, 2025, 3:22 pm
Contact:

Re: Are Cell Machine and its descendants cellular automata?

Post by aadenboy »

pifricted wrote: June 14th, 2026, 4:07 am Besides, what’s “force automaton”?
I made the term up to refer to the "style" of automata that Cell Machine and its descendants are: they operate on "forces" that cause changes directly to other cells, like how "cellular" in "cellular automaton" refers to the cells and their individual neighborhoods
originally came to the forum to request an account and then I did nothing o_o"
User avatar
I6_I6
Posts: 1012
Joined: July 26th, 2025, 8:44 pm
Location: Here, there, somewhere, anywhere, everywhere.
Contact:

Re: Are Cell Machine and its descendants cellular automata?

Post by I6_I6 »

aadenboy wrote: June 14th, 2026, 12:30 am Recently, someone posted a video making a new "cellular automaton" inspired by Hogan's Cell Machine, but was noted by the audience that it isn't a cellular automaton, which struck me as very odd. The reasoning goes that cellular automata are supposed to be local, where cells aren't able to have an effect that travels an arbitrary distance instantaneously, and Cell Machine is notorious for having information passed at speeds faster than one cell per tick.
I think you're referring to this video, which I happened to watch less than an hour before reading your post:
https://www.youtube.com/watch?v=gIQ7HOcvuso
And this follow-up video:
https://www.youtube.com/watch?v=fycWBS6Nkrs

EDIT:
When cells are propagating force information one cell per "microtick" (as you described), eventually, the force of every cell in the universe would be determined, and the cells would update state in a full tick. I might be wrong, but I don't think there's a way of knowing how many microticks should be in a full tick at any given time while still remaining local. For example, imagine a universe where there are two regions with different populations. When one region is done with all of its microticks, another region might still be going. The first region would complete a full tick before the other region, which makes everything off-sync.

Code: Select all

#C [[ THEME Golly ]]
x = 27, y = 15, rule = LifeHistory
8.A$A6.A.A$3A4.BA2B.B2D$3.A4.2B.2B2DB$2.2A2.3B.6B2.3B$2.20B$4.19B$4.2B
C10BD4B$4.2B2C10BD4B$4.B2C11B2D3B$4.13B2D4B$5.12BD3B.B2A$6.13B3.BA.A$
6.3B.B3.B10.A$25.2A!
RuleEdit: A .rule file editing tool
User avatar
aadenboy
Posts: 4
Joined: October 1st, 2025, 3:22 pm
Contact:

Re: Are Cell Machine and its descendants cellular automata?

Post by aadenboy »

I6_I6 wrote: June 14th, 2026, 9:12 am I think you're referring to this video, which I happened to watch less than an hour before reading your post:
https://www.youtube.com/watch?v=gIQ7HOcvuso
And this follow-up video:
https://www.youtube.com/watch?v=fycWBS6Nkrs
yep, that's the one!
I6_I6 wrote: June 14th, 2026, 9:12 am I might be wrong, but I don't think there's a way of knowing how many microticks should be in a full tick at any given time while still remaining local.
mm I see what you're getting at... cells are updated in a hierarchy, where it's by type, then position, then forces, but there wouldn't be a local way to determine when the forces are done so that the next cell can start
originally came to the forum to request an account and then I did nothing o_o"
User avatar
tommyaweosme
Posts: 1581
Joined: January 15th, 2024, 9:37 am

Re: Are Cell Machine and its descendants cellular automata?

Post by tommyaweosme »

I6_I6 wrote: June 14th, 2026, 9:12 am -snip-
When cells are propagating force information one cell per "microtick" (as you described), eventually, the force of every cell in the universe would be determined, and the cells would update state in a full tick. I might be wrong, but I don't think there's a way of knowing how many microticks should be in a full tick at any given time while still remaining local. For example, imagine a universe where there are two regions with different populations. When one region is done with all of its microticks, another region might still be going. The first region would complete a full tick before the other region, which makes everything off-sync.
i have a proposed solution to this: make there exactly N microticks before the next tick. if a block is N+1 cells away from the mover, tough luck, it gets destroyed and replaced with the block behind it. we use states to "count down" until the next tick, like with generations rules. assuming a state maximum of 256 and there being 5 base states (mover_N,mover_E,mover_S,mover_W,box), that would mean that the maximum limit of N is 51. if we use a state limit of 65536, the maximum limit of N is 13107. there isn't really a need for N to be any more than 1000 (5000 states) for practical usecases, though.

EDIT: with the state limit of 65536 and N as 1000, at most there can be 65 base states. this should be more than enough for even lightly modded versions of cell machine.

EDIT 2: here are some equations
S = state limit
B = base states
N = (maximum) microtick limit

N = S / B
B = S / N
S = (B * N) ± 5
here's the gosper glider gun

Code: Select all

#R life
24bo$22bobo$12b2o6b2o12b2o$11bo3bo4b2o12b2o$2o8bo5bo3b2o$2o8bo3bob2o4b
obo$10bo5bo7bo$11bo3bo$12b2o!
Post Reply