HN Theater @HNTheaterMonth

The best talks and videos of Hacker News.

Hacker News Comments on
Cellular Automata: Rule 30 + Conway’s Game of Life

Elliot Waite · Youtube · 141 HN points · 1 HN comments
HN Theater has aggregated all Hacker News stories and comments that mention Elliot Waite's video "Cellular Automata: Rule 30 + Conway’s Game of Life".
Youtube Summary
A 1D cellular automaton, Rule 30 (bottom), being fed as input to a 2D cellular automaton, Conway’s Game of Life (top).

How It Works:

The colors represent a gird of cells (pixels) that are alive (are white pixels) or are dead (non-white pixels, where the color represents how long it's been since that cell has been alive, so when it dies it fades through several colors and then eventually fades to black). The rules for deciding which cells are alive and dead are as follow.

The grid starts off with a single alive cell in the middle of the bottom row with all other cells dead. This bottom row is shifted up and the row below it is created using the following rule: each cell looks at the three cells above it (up and to the left, directly above, and up and to the right) and is set to alive or dead based on the following rules (□ = an alive cell, ■ = a dead cell):
□□□ → ■
□□■ → ■
□■□ → ■
□■■ → □
■□□ → □
■□■ → □
■■□ → □
■■■ → ■

So we can see that if only 1 of the 3 cells above it are alive, the cell is set to alive, or if only the right 2 are alive and the left is dead, it is also set to alive. In all other cases, the cell is set to dead. This set of rules is called Rule 30. The reason for the name 30 is that when these patterns were being studied by Stephen Wolfram, he gave each rule a number based on the sequence of the resulting states for that rule (the states to the right of the arrows as listed above), which in our case is ■■■□□□□■ (the resulting states from top to bottom), which if translated into 1s and 0s is 00011110, which is the binary number for 30. To see what the other possible rules look like, check out: https://mathworld.wolfram.com/ElementaryCellularAutomaton.html

The rows produced by Rule 30 keep getting shifted up until they are copied into the bottom row of the top half of the screen. The rules that the cells follow once they are in the top half of the screen are called Conway's Game of Life (invented by John Conway). The rules are as follows, each cell looks at all 8 of its neighbors (above, below, left, right, and the 4 diagonals) and counts how many of those cells are alive. It then updates its state based on the following:
• If 3 of its neighbors are alive → the cell will be alive in the next step.
• If 2 of its neighbors are alive and the current cell is alive → it will be alive in the next step.
• In all other cases → it will be dead in the next step.

These rules are then applied over and over at each time step.

The code that generated this video:
💻https://github.com/elliotwaite/rule-30-and-game-of-life

Another similar video, "Rule 110 fed into Conway's Game of Life":
📼https://www.youtube.com/watch?v=P2uhhAXd7PI

Join our Discord community:
💬 https://discord.gg/cdQhRgw

Connect with me:
🐦 Twitter - https://twitter.com/elliotwaite
📷 Instagram - https://www.instagram.com/elliotwaite
👱 Facebook - https://www.facebook.com/elliotwaite
💼 LinkedIn - https://www.linkedin.com/in/elliotwaite

🎵 kokoro - i miss you
→ https://soundcloud.com/beatsbykokoro
→ https://www.youtube.com/channel/UCLbuCBun8B_qQYF6_Bboi9A
→ https://open.spotify.com/artist/1uJZwuCV2hXbQDSdJvj198
HN Theater Rankings

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this video.
Mar 29, 2020 · 141 points, 31 comments · submitted by torotonnato
brtkdotse
Neat! In a similar vein, here's Game of Life implemented in Game of Life:

https://www.youtube.com/watch?v=xP5-iIeKXE8

dmos62
Now I've seen everything.
JKCalhoun
I wonder if there is a smaller (in terms of cell size) way to implement this.
andyjohnson0
According to Wikipedia, a cellular automaton running the game of life rules is Turing complete. So it can compute anything that a Universal Turing Machine can compute [1] - In other words, anything that a conventional computer can compute.

[1] https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life

wizzwizz4
Including Tetris. https://codegolf.stackexchange.com/q/11880/43394
ajnin
Same account posted a similar video for rule 110 : https://www.youtube.com/watch?v=P2uhhAXd7PI

Pretty interesting !

brtkdotse
Fun fact is that rule 110 is Turing complete, which for me is mind blowing
mkl
The Wikipedia article on Rule 30 is interesting: https://en.wikipedia.org/wiki/Rule_30
tomlockwood
I've been playing around with Cellular Automata recently too!!! Wish my viz looked as good as this one, though :D

https://lockwood.dev/automata/2020/03/28/bruteforcing-beauti...

rasalas
Watching this video caused some noticeable motion aftereffects for me.
enchiridion
Can you elaborate?
urxvtcd
The bottom part "goes down" when you stop the video.
hanoz
Slightly unnerving to see it fall victim to a kind of Kessler Syndrome, preventing gliders from escaping eventually.
jpalomaki
I have been watching some videos about quantum field theory[1]. Now that I saw this, just got the random idea if there could be some relation between those and cellular automaton.

Particles would be the "cells". Them being live or dead would be result of the interactions of the underlying fields.

[1] https://en.wikipedia.org/wiki/Quantum_field_theory

pieterk
Would it be possible to advance the POV up as the game goes on?

Should be cool to see other planets etc etc.

xwdv
There are no other planets. They are entirely alone in their universe, and will simply fly out to eternity in a futile search for other life.
leeno
There's one glider that comes back: https://youtu.be/IK7nBOLYzdE?t=112
mkl
I think it must have been made by a glider colliding with something created out there by the collision of two other gliders earlier.
xwdv
Those didn’t come back from deep space they simply made a U-turn in low orbit and returned to the surface.

In theory two gliders taking off at the same time at the right distance on a long enough axis could collide in deep space and create something new, which would then return to the planet surface like some kind of invasion, but I doubt it.

pieterk
Hahaha life is so funny. Let’s zoom out though and see the tiny deaths!
DonHopkins
I've heard tales of a giant PacMan who lives in the sky, eating the Icarus gliders who fly too high.
zuminator
The top half reminds me a bit of the old arcade game "Missile Command."
DonHopkins
This is a beautiful combination, and reminiscent of Rudy Rucker's hybrid cellular automata rule "EcoLiBra", that combined Life and Brian's Brain by switching between them on a per-pixel basis, based on another cellular automata rule, Anneal, running in a parallel plane.

Anneal decides whether each cell is land or water, and clumps cells into oceans and continents that look like cow spots, with smoothly eroded shorelines and long beaches. Life runs on land, and brain runs in water, and they interact and stimulate each other along the beaches where land and water meet.

Actually EcoLiBra uses "AntiLife" (aka "Death") on land, the ones-complement of life, because that makes the empty space "1" for AntiLife stimulate Brain, and the empty space "0" for brain stimulate Life, so the beach is a fertile breeding ground that never dies out, and there's much more cross-species stimulation and humping and birthing along the shores, then the children disperse by swimming down into the deep ocean, or climbing up into the inland hills.

http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#EcoL...

>ECOLIBRA

>The JC EcoLiBra rule, a cross between Life and Brain.

>This rule is a cross between Life and Brain. The basic idea is that the cells are divided between dark "sea" cells and light "land" cells. We run Brain in the sea, and on land we run not Life but AntiLife. All the land cells are normally firing cells, and the presence of an active AntiLife cell is signaled by having a land cell which is not firing. Full details on EcoLiBra are in §

>The name EcoLiBra suggests 1) an ecology of Life and Brain, 2) a balanced situation (equilibrium), and 3) the human intestinal bacteria Escherichia coli, known as E. coli for short. The third connection is perhaps a bit unsavory, but remember that E. coli cells are in fact the favorite "guinea pigs" for present day genesplicing experiments. As one of the goals of CelLab is to promote the development of artificial life, the designer gene connection is entirely appropriate. I've given EcoLiBra a nice, symmetric start pattern, but it also does fine if you press R to randomize the screen. You can make a randomized screen a little more interesting by using the screen editor to drill a big black hole in the center. This can be done by using the following keystrokes

Here is an earlier somewhat simpler cellular automata rule that Rudy Rucker made when he first started playing with the CAM-6 in 1987.

http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#Brai...

>BRAILIFE

>The JC BraiLife rule after 213 generations. A hauler is about to hit a butterfly just above and to the right of the center of the diamond shape.

>When I first started hacking cellular automata on the CAM-6 in 1987, I couldn't quite see how to think of a completely new rule. So I decided a good way to start might be to try combining some of the old rules, particularly the rules Life and Brain.

>Life is very interesting, but it tends to die out. Brain, on the other hand, is extremely hard to kill off; if anything, Brain is too persistent. So I thought I might try running Life and Brain in parallel, using Brain to stimulate Life, and using Life to dampen Brain.

>At first I had every firing Brain cell turn on a Life cell, and had every firing Life cell turn off a Brain cell, but, run fullscreen, this reaction quickly wipes Brain out. You can see the fullscreen reaction by loading BraiLife, clearing all the screens, setting plane 4 to 1, and randomizing plane 2. The keystrokes are as follows. Note that you do not press Enter after answering the "Initialize planes" prompts called up by pressing I:

Rudy referrs to Anneal as "Vote" (with a twist of chaos is a tie-breaker):

http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#Vote

>VOTE

>The JC Vote rule, a few generations after a random start. Vote is a one-bit rule where each cell calculates the NineSum of itself and its eight neighbors, and then determines its new state on the basis of the NineSum. We can regard this as EveryCell conducting a little election between 0 and 1 among the nine cells in its neighborhood. If either 0 or 1 wins by a clear majority of 6 votes or more out of the nine votes, then that is the state which EveryCell will take on. But if either 0 or 1 wins by a scant, sneaky majority of 5 votes out of the nine, then the election is overturned, and EveryCell takes on the color of the "losing" state. Vote is discussed in more detail in the Theory chapter.

>The version of Vote shown here uses bit #1 as an "echo" of bit #0. This means that cells will take on different colors if they have changed state in the last generation. You can keep rerandomizing Vote by pressing R. It's a bit startling to see what organic-looking shapes can arise from such a simple rule acting on a rectangular grid.

amelius
How much computational resources does this take? Is it ever growing, or can you cut it off outside a certain window without it affecting the visible part?
wizzwizz4
I can answer the second bit: no. However, cutting it off at a certain point won't affect anything, so long as you keep shrinking the cut off bit by one each turn. Eventually you'll have nothing generating any more, but everything you do generate will be accurate.
soheil
Pretty random. I wonder if there is a way of thinking about this perceived complexity with a higher dimension similar to the way imaginary numbers are used.
tartoran
Amazing. Looks like a warzone.
brobot182
How about rule 34
DonHopkins
I love the colorful persistent phosphor effect.

It reminds me of running Life and Munching Squares on a PDP-7 340 Vector Graphics Display, with its beautiful P7 phosphor:

https://www.youtube.com/watch?v=hB78NXH77s4

Conway's Game of LIFE in a DEC PDP-7 w/ Type 340 Display

Here is an implementation of John Conway's Game of Life on an 18 bit DEC PDP-7 with a DEC Type 340 X/Y point display. Patterns are stored on and can be called from our new JK09 PDP-7 storage device which is what we use for UNIX V0. We have set a few starter patterns including Bill Gosper's Glider Gun.

The sounds you hear are from the Type 347 display controller. They were received using a Yaesu FT1XD radio in AM mode.

The world supports 1296 points (36 x 36). We are attempting to increase this to 72 x 72 or 5184 points.

https://www.youtube.com/watch?v=V4oRHv-Svwc

DEC PDP-7 w/ Type 340 display running Munching Squares and Spirograph

Two display hacks run on PDP-7 serial number 129 with the Type 340 XY display option. The 340 has a P7 phosphor has a slow decay which gives Munching Squares an eerie afterglow. Both programs read the left switches to modify patterns. A small AM radio was used to pick up RFI from the Type 347 controller. For the MIT AI lab hackers the Munching Squares "music" was referred to as Munching Tunes.

tartoran
Yes, that has some mystical effect on me. I think I saw it when you shares it the other day. How does the AM capture the sound? What exactly generates the sound waves?
DonHopkins
It's electromagnetic interference from the electronics. A hulking powerful "big iron" PDP-7 makes a much better RFI broadcast antenna than an iPhone, but it broadcasts at much lower frequencies, that an AM radio can pick up.

You can hear a little bit of interference on an FM radio, but it sounds much stronger and more interesting on the AM dial.

PDP-7's were actually relatively sleek fast inexpensive computers for the time, and were only 18 bits compared to the PDP-6's and PDP-10's 36 bits. ("If you're not working with 36 bits, you're not working with a full DEC!" -DIGEX) But physically they still have a lot of "big iron" parts and use lots of power like mainframes.

https://en.wikipedia.org/wiki/Mainframe_computer

https://en.wikipedia.org/wiki/PDP-7

The other sibling post by nitrogen referred to "tempest", which is a (no longer) secret NSA codename for "Telecommunications Electronics Materials Protected from Emanating Spurious Transmissions", a certification for shielding equipment from spying on it via electromagnetic radiation.

https://en.wikipedia.org/wiki/Tempest_(codename)

The slower the computer, the more "details" you can hear of the computation. Modern computers are so fast and have so much going on and are so much better shielded (they need to be, since they have their own radios they don't want their own RFI to interfere with), that they aren't nearly as interesting to listen to on AM radio. I loved to listen to my Apple ][ on AM radio, especially compiling my FORTH system and applications (it's satisfying to listen to your own code you wrote compiling and running)!

tartoran
Thank you, this is a very interesting topic to me. I remember ,when I was a kid in the 90s and had the Sound Blaster card, 1.0 or something quite cheap and in certain situations I would hear very similar but quiet interference on the headphones when there was no sound playing.
nitrogen
Wow, the sounds made by munching squares aren't that different from music I would actually listen to.

Does anyone know if there was any inspiration to/from this for other deliberate uses of "tempest" from displays to create sound on purpose? E.g. http://www.erikyyy.de/tempest/

HN Theater is an independent project and is not operated by Y Combinator or any of the video hosting platforms linked to on this site.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.