RABBIT: Cellular automata

RABBIT + Cellular Automata

Contents

Cellular Automata

Intro: Cellular automata

A Cellular automaton is a special kind of universe: space is divided into a finite number of cells, while time advances in time ‘hops’(t=0,1,2,3,…)
Each cell has a state ( for ex.: ‘Dead’, ‘Alive’, ‘True’, ‘False’, ‘Red’, ‘Blue’). A cell represents a Finite State Machine.
The cells are connected together. A group of connected cells is called a neighborhood/cluster. The state of the cell is affected by the states of it’s neighbors.
In the common scenario when time changes(for ex. t=1) each cell changes it’s current state in parallel to the other cells in the automaton.
A cellular automaton could exist in multiple dimensions: 1-D, 2-D, 3-D, …
One could think of a cellular automaton as a multi-agent system. Each cell represents an agent. Global emerging behavior could be observed in result of local interactions between cells.

More about Cellular automata:
http://en.wikipedia.org/wiki/Cellular_automaton
http://mathworld.wolfram.com/CellularAutomaton.html

Cellular Automata

Intro: Life-like Cellular automata

Life-like cellular automata are composed of “living” cells. A living cell has two possible states: Dead or Alive.
By default a cell dies except in these cases:

  • A cell survives if surrounded by N living neighbors
  • A cell comes to life if surrounded by K living neighbors

where N and K are integers (for ex. N=2, K=3)

Interesting facts:
Life-like automata are able to produce self-replicating patterns.
Life-like cellular automata display emerging behavior – global behavior resulting from local interactions

more info:

RABBIT by MORPHOCODE

RABBIT: Cellular Automata Features

  • creating and evolving life cellular automata – Flexible cellular automata model based on a grid of cells. Evolution based on the rules and a global time. You can control the time manually or automatically using the GH timer
  • custom initial configuration of the cellular grid – User can explore the pre-defined patterns or can define his own by simply adding some points on the grid
  • custom evolution rules – You can explore the rules in the definitions or specify your own evolution rules inside GH. RABBIT can produce multiple Life CA variations such as: 2X2, 34 Life, Amoeba, Assimilation, Coagulations, Conway’s Life(ghx included), Coral, Day&Night, Diamoeba, Flakes, Gnarl, HighLife, InverseLife, Long life, Maze, Mazectric, Move, Pseudo life, Replicator, Seeds (2), Stains, WalledCities…. For more info have a look at Mirek Wójtowicz’s classification

Cellular Automata Components

RABBIT provides a generic framework for creating Cellular Automata models:

CELLULAR AUTOMATA COMPONENTS
COMPONENT INPUT OUTPUT
Time t: optional time(manual control) t: time
CellularGrid C: Cell Prototype, being populated on the grid
P: Grid of points
SC: Initial State Configuration
S: Grid of cells
Cellular Automaton Component S: cellular space(grid/network of cells) CA: The Cellular Automaton object
CA Evolver CA: Cellular Automaton
t: time
C: the last state configuration
M: Memory, containing all state configurations
CA: Cellular Automaton
Cells Component C: state configuration(s)
CA: cellular automaton
F: optional State param, which acts as a filter
P: Points, associated with each cell
CS: States of the listed cells
t: The time associated with each state
Custom State Configuration P: selected points/cells
S: custom state
SC: State Configuration
Random State Configuration S: Set of states SC: Random State Configuration

RABBIT can create Life-like cellular automata:

LIFE-LIKE CA COMPONENTS
COMPONENT INPUT OUTPUT
Living Cell R: Evolution Rules LC: Living cell prototype
Born Rule Component N: Number of Neighbors R: Evolution Rule which defines that a Cell is getting born if surrounded by N living neighbors
surviverulecomponent N: Number of Neighbors R: Evolution Rule which defines that a living Cell survives if surrounded by N living neighbors

RABBIT: Cellular Automata Tutorials

A set of tutorials ( GH Definitions+explanation notes) is included in the Distribution File:

  • Conway’s game of life – 2D, Phase Transitions in 3D
  • Replicator
  • Walled cities

3 Responses

  1. yougop 6:08 pm on March 16th, 2010

    …thanks a lot. awesome work you have done!!! a suggestion would be some kind of gallery or forum, to exchange stuff and to see what people archive with RABBIT…

  2. morphocode 4:24 pm on March 18th, 2010

    thanks for your suggestion @yougop – it would be really nice to have an exchange forum in the future…

    Best regards!

  3. yangsupdating 3:37 am on March 26th, 2010

    waiting for the great interaction in the exchange forum,and for the other algorithms into RABBIT

Leave a Reply