Part two in a series of CA and SO descriptions. This time it’s Two-Dimensional CA, looking specifically at Conway’s Game of Life.
The Cell:
Like the cell in one-dimensional CA, The Cell in two-dimensional CA is a binary organism, having only two states:on and off/alive and dead.
These states can be represented though ones and zeros or visually through dark and light dots.

The Petri Dish
Two-dimensional CA live in a grid that extends to the left and right as well a as up and down, like a chessboard. In Two-dimensional CA, a cell can have a maximum of eight neighbours, the cell directly to the left, the cell directly to the right, the cell directly above, the cell directly below and the four cells on each angle.

The Rules
- If a cell has fewer than two living neighbours, it dies.
- If a live cell has more than three living neighbours, it dies
- If a dead cell has three or more live neighbours it comes to life.
- If a cell has only two living neighbours, its state remains unchanged.
For the most part Conway’s game of life is very unstable, cells and structures disappear with alarming frequency. Eventually the the petri dish achieves an endpoint, usually an empty grid, or a series of smaller permanent stable or repeating patterns.
Here’s a really old Flash example I built a couple of years ago.
Technorati Tags:
I’m going to start posting the rules of a several cellular automata systems as I understand them. I’ll break each type of CA into three sections; The Cell, The Petri Dish and The Rules. The Cell will cover the organisms basic states, the Petri Dish will outline the world that the cell inhabits, and The Rules will be just that how the cell interactes with other cells in the Petri Dish.
First up, One-Dimensional CA.
The Cell
The Cell in one-dimensional CA is a binary organism, having only two states:on and off/alive and dead.
These states can be represented though ones and zeros or visually through dark and light dots.

The Petri Dish
One-dimesional CA live in a linear grid that extends from left to right. A cell can have a maximum of two nieghbours, the cell directly to the left and the cell directly to the right.
The Rules
- Like all forms of CA, time(t) is the key factor of change in one-dimesional CA.
- The next interval of time(t+1) is represented by a new linear grid under the the current interval.
- The state of a Cell(c) in the next interval is determined by the state the cell directly to the left(c-1) and the cell directly to the right(c+1).
- If a Cell is off, it remains off only if both of it’s neighbours are off. Otherwise it turns on.
- If a Cell is on, it remains on unless both of it’s nieghbours are also on, in which case it turns off.
Possible States of a Cell in One-Dimesional CA
| c-1 (t) |
c (t) |
c+1 (t) |
c (t+1) |
| 0 |
0 |
0 |
0 |
| 0 |
0 |
1 |
1 |
| 0 |
1 |
0 |
1 |
| 0 |
1 |
1 |
1 |
| 1 |
0 |
0 |
1 |
| 1 |
0 |
1 |
1 |
| 1 |
1 |
0 |
1 |
| 1 |
1 |
1 |
0 |
Here’s a visual representation of the same rules. The top row represents t, and the bottom row represents t+1

Here’s a basic Flash animation that shows the life cycle of one-dimesional CA.
Technorati Tags:
via Headshift. Alistair Davidson proposed a standardised syntax for multi-tag queries
in Web 2.0 applications, as an essential step towards the Semantic Web.
Have to get this stuff down as it comes out. There is a new category, Rules, that will list examples of solutions and sites developers are coming up with to add structure and/or meaning to the process of tagging. Alot of smart people are innovating with tags these days and even keeping up with the state of the art will prove challenging For instance I have not even tried the tag
“unions” that Del.icio.us supports via the + operator yet.
Alistair calls tags “free-text Post-Its“, I love it. He notes the growing issues for programmers using the tag java (poor guys), and how its meaning is diluted depending on the context of the resource being tagged. del.icio.us, technorati, flickr
What he comes up with is far more technically focussed than ur direction. But I tik these are some important rules to take into account. The machines rules. How often are all the advanced search operators used on google?
What is needed, therefore, is a generalised boolean syntax for tag URLs. A Tag Query Language, if you like. It must have certain properties :
Properties
- It should be able to be used in a URL - so no “/” characters, no “.” characters, etc.
- It should be human-interpretable - a person should be able to look at a TQL query string and work out what was intended without too much effort.
- It should be simple - Web 2.0 is showing us that the simple solution is usually the best, and something which requires too much time to implement is just not going to be widely adopted.
- It should be easily translatable into standard SQL
- It must not expose the implementing website to potential SQL Injection attacks
headshift
Technorati Tags: headshift syntax tag syntax tagging
Comments Off