Alex's notes

Neighborhood of a cell

A cell’s neighborhood consists of those cells adjacent to it. If you lived inside a two dimensional grid, your neighborhood would be those cells that you could see around you.

neighborhood

In a Cellular automaton, your state in the next generation of the simulation depends on the state of your neighborhood. This is kind of like how you might put up Christmas lights because you notice that your neighbors’ houses are covered in lights. Or, maybe you’re the type of person who purposefully keeps your home dark during the holiday season, just to be contrary to your neighbors (those jerks)1. In either case, your state depends on the state of your neighborhood, just like the state of a cell in a cellular automaton depends on the state of its neighborhood.

Depending on the cellular automaton, the neighborhood can vary in size and shape. The neighborhood shape determines your view out onto the lovely world of the grid.

neighborhood types

In addition, the neighborhood shape defines a local network of influence. You can imagine that each cell in your neighborhood is connected by a wire to you, and that wire represents the cell’s influence on you.

network of influence
Different neighborhood shapes imply different influence networks. In this picture, the influence network is made explicit by drawing a wire from each of the cells in your neighborhood to you, almost as if you are "listening in" on each of the cells in your neighborhood via telephone wire.

Thinking about a neighborhood in this way can be useful if you want to understand the 2D grid as a graph with nodes and edges. (Idea: What if a neighborhood varied over time and space?)

Notice that we haven’t yet described how your state might depend on your neighborhood’s state — that’s up to the rules of whatever cellular automaton you might be running. See Conway’s Game of Life for a classic example of how the concept of a neighborhood is used with specific rules.

In Feedback Crystal Studio, the rules of the neighborhood can be rapidly swapped for other rules to create variations over time. In this context, the rules are defined by a Kernel, which is the same terminology used for Convolutions


  1. Or, maybe like me, you don’t own a home at all. But let’s fantasize that we are home owners for the sake of the analogy. ↩︎

?
| | \| | . | \ | \ | \ \| / \| - --- |--- |/| / . \|/|/ | | - \ | | . \|/ \|/| /|/| | . | |/ | |/ | \ / \| \| | /\|/ \---| - | || |/ | \ \|/| -| ||\| | - | |/ |\|| | / \ \|/| |/| \| / - | \ | |- |/ \ . | ./\|/ \| @ | --- \ | - /| /| / / \ \|/|/ |\-- | /|/ \ / | | / - \|/ | -- \|/| - \ | / . \ |\|/ |\|/|./ \ | | - | | |/ - \ | | |\|\|\| - \|/- \|/|\| | | | \ | \|| | |/ / \| @ - | |/\ \| / | \ \| | - |/ / \ | / \| --- . - - | - |/ | - \ |/ \|/ | \|/ \| | | | |/ | | | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^