Coupled Cellular Automata: Symbiotic Patterns and Synchronization

Modeling of cooperative behavior has great relevance to a wide range of scientific fields. Often trivial systems with primitive standalone behavior produce rich dynamics working in collaboration. This Demonstration allows you to couple up to four different one-dimensional elementary cellular automata (1D-eCA) and produce behaviors beyond those of single 1D-eCA. Patterns of these 1D-eCA in the standalone case are shown in four rectangles on the left. They can be compared to the two patterns of coupled evolution on the right (the rectangles labeled -output and -output). Often, simple evolution of standalone 1D-eCAs results in rich coupled dynamics of and . Such behavior is "symbiotic", since the coupled behavior of and cannot be obtained from standalone 1D-eCA. Another feature of coupled behavior is "synchronization". Namely, the pattern of is generally different from the pattern of , yet often similar "twin" sub-patterns can be noticed in and . In all images, the time of evolution goes from top to bottom. The four images on the left are just samples of standard 1D-eCA Wolfram rules. These four images are not used directly to create and patterns and are given only for comparison with and . Browse the snapshots for interesting patterns. See the "Details" section for a more technical discussion of the implemented coupling.


  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]


zoom—increase or decrease the size of the initial condition and the length of evolution
seed—randomize the initial condition
, , —change the rules of the coupled cellular automata
and buttons—choose whether the or output is fed back in the specific cellular automaton (values of , , , and in the formula below)
and —choose functions (multiplication "×" or addition "+" modulo 2) that couple evolution of and outputs ( and in the formula below)
Coupling formula description:
Two random binary vectors of the same length (labeled and ) are chosen as initial conditions (IC). They are fed into four cellular automata (, , , ) for one evolution step and the result is evaluated further, according to
Each parameter , , , can be or . and are coupling functions; each can be set to element-by-element multiplication "×" or element-by-element addition "+" modulo 2 of the vectors and . The result is interpreted again as an IC and repeatedly fed back into the same formulas. The evolution of and is shown in vertical rectangles on the right, labeled "-output" and "-output".
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.

Mathematica »
The #1 tool for creating Demonstrations
and anything technical.
Wolfram|Alpha »
Explore anything with the first
computational knowledge engine.
MathWorld »
The web's most extensive
mathematics resource.
Course Assistant Apps »
An app for every course—
right in the palm of your hand.
Wolfram Blog »
Read our views on math,
science, and technology.
Computable Document Format »
The format that makes Demonstrations
(and any information) easy to share and
interact with.
STEM Initiative »
Programs & resources for
educators, schools & students.
Computerbasedmath.org »
Join the initiative for modernizing
math education.
Step-by-Step Solutions »
Walk through homework problems one step at a time, with hints to help along the way.
Wolfram Problem Generator »
Unlimited random practice problems and answers with built-in step-by-step solutions. Practice online or make a printable study sheet.
Wolfram Language »
Knowledge-based programming for everyone.
Powered by Wolfram Mathematica © 2018 Wolfram Demonstrations Project & Contributors  |  Terms of Use  |  Privacy Policy  |  RSS Give us your feedback
Note: To run this Demonstration you need Mathematica 7+ or the free Mathematica Player 7EX
Download or upgrade to Mathematica Player 7EX
I already have Mathematica Player or Mathematica 7+