Showing posts with label cellular automaton. Show all posts
Showing posts with label cellular automaton. Show all posts

Thursday, April 18, 2013

Tur-mites and the XOR Gate

   I have just returned from a long vacation where I did not have Internet access for two weeks. Thanks for checking this blog in the interim.
    The type of programming Scratchers do reflects their personal interests. That’s why the Scratch community, as an educational community, is so large. I get excited about certain math topics and I tend to focus on those topics until I’m enticed away by a new interest.  Brian Hayes calls this inquisitive programming.
   Lately, I’ve been exploring cellular automatons. My Langton’s Ant Scratch project is an example of a cellular automaton. Langton’s ant moves on a square grid according to a simple rule and is a two-dimensional, two-color, cellular automaton (CA).
    A. K. Dewdney is a computer science professor that wrote the Computer Recreations column in Scientific American magazine and has authored several books about the joys of computer programming.
In his column, Two-dimensional Turing machines and tur-mites make tracks on a plane, found in the September 1989 issue of Scientific American, he discusses a multi-colored tur-mite I call Dewdney’s tur-mite.
   To view my scratch project that codes Dewdney’s tur-mite, click on this link.

   I am also working on a Scratch project that implements Wolfram’s (of Mathematica fame) rule L90, one-dimensional cellular automaton. When the one-dimensional iterations of rule L90 are successively stacked, the Sierpinski triangle pattern is produced. The single operator in the code is an XOR logic gate. Scratch has AND, OR, and NOT logic operators but not an XOR operator. The XOR operator eXcludes the case when the two inputs to the OR operator are 1 (true). In other words, XOR (1,1) = 0.

   I’ve gotten as far on this project as creating the XOR operator in Scratch. To view the XOR gate, click on this link.

   I will soon have a PDF file that describes the math and programming techniques for both Langton’s Ant and Dewdney’s Tur-mite ready for distribution upon request.
   I will post the complete rule L90 project when it has been completed.

Tuesday, March 12, 2013

Langton's Ant Trapped In a Circle, Triangle, or Near a Line Segment

  This Scratch project is a series of experiments using Langton’s Ant as the ‘lab rat’. 
  Langton’s ant is a cellular automaton invented by researcher Chris Langton in the early 1980s. The ant, once set in motion, crates an iconic picture of order emerging from chaos and is often a student’s first exposure to the study of deterministic chaos and nonlinear dynamics (chaos theory).
   When we observe complex behavior we tend to believe its behavior is the result of a complex set of rules. In the picture above, the path of a single Langton ant is shown. The ant started in the center of the screen and has worked its way to near the lower right corner of the screen. Out of the mess seen in the center, after over 10,000 applications of the rules governing its behavior, the ant starts building the diagonal ‘highway’! 
  I purposely stopped the ant before it built the highway to the boundary. What happen after the ant hits the side? Even though the rules that actually governs the behavior (movement) of the ant are quite simple, there is no way to predict what happens when the ant strikes the side of the rectangle. The actual path created by the ant has to be computed, step by step, in order to be seen. 
  Here are the rules:
   The ant is sitting on an infinitely large checkerboard made up of only white squares. The ant moves one square forward and, if the square is white, it paints it black, turns left 90º and moves one square forward. If the square is black, the ant paints it white, turns right 90º and moves one square forward. In either case, after painting the square white or black, the ant applies the same rule again. That’s it!. That simple rule creates the ant’s complex behavior.
   The following screen shot displays the ant wandering around the center of the screen and then building the highway.

   If you would like to find out what happen when Langton’s ant is placed inside a circle, square, or triangle go to the following link, download the project, and find out!
   The line segment at the bottom of the screen can also be picked up and placed closer to the ant's starting point. Below is a screen shot showing the ant building a highway after interacting with the line segment.

   Remember, there is no known method for predicting the behavior of the ant. Have fun experimenting with Langton's Ant!