Project 1: Edge of Chaos in 1D Cellular Automata

Similar documents
CS 420/594: Complex Systems & Self-Organization Project 1: Edge of Chaos in 1D Cellular Automata Due: Sept. 20

II. Cellular Automata 8/27/03 1

II. Spatial Systems. A. Cellular Automata. Structure. Cellular Automata (CAs) Example: Conway s Game of Life. State Transition Rule

II. Spatial Systems A. Cellular Automata 8/24/08 1

Cellular Automata CS 591 Complex Adaptive Systems Spring Professor: Melanie Moses 2/02/09

Cellular automata are idealized models of complex systems Large network of simple components Limited communication among components No central

1. A poset P has no chain on five elements and no antichain on five elements. Determine, with proof, the largest possible number of elements in P.

Learning Packet. Lesson 5b Solving Quadratic Equations THIS BOX FOR INSTRUCTOR GRADING USE ONLY

biologically-inspired computing lecture 12 Informatics luis rocha 2015 INDIANA UNIVERSITY biologically Inspired computing

Math 31 Lesson Plan. Day 2: Sets; Binary Operations. Elizabeth Gillaspy. September 23, 2011

through any three given points if and only if these points are not collinear.

Student Instruction Sheet: Unit 3, Lesson 3. Solving Quadratic Relations

Discrete Tranformation of Output in Cellular Automata

Exponential Functions

Modelling with cellular automata

Star Cluster Photometry and the H-R Diagram

Math Lab 10: Differential Equations and Direction Fields Complete before class Wed. Feb. 28; Due noon Thu. Mar. 1 in class

A GUI FOR EVOLVE ZAMS

Algebra Exam. Solutions and Grading Guide

Representations of Motion in One Dimension: Speeding up and slowing down with constant acceleration

GRE Workshop Quantitative Reasoning. February 13 and 20, 2018

Please bring the task to your first physics lesson and hand it to the teacher.

Problem Set 3 September 25, 2009

Lesson 5b Solving Quadratic Equations

Discrete Mathematics and Probability Theory Summer 2014 James Cook Final Exam

CS103 Handout 08 Spring 2012 April 20, 2012 Problem Set 3

Lab 11 Simple Harmonic Motion A study of the kind of motion that results from the force applied to an object by a spring

Homework 9: Protein Folding & Simulated Annealing : Programming for Scientists Due: Thursday, April 14, 2016 at 11:59 PM

Name(s): Date: Course/Section: Mass of the Earth

II. Unit Speed Curves

Course Project. Physics I with Lab

Teacher Name: John Borud District: Montello Class / Subject / Grade:

Continuous Spatial Automata

Shannon Information (very briefly!) Lecture 4. Maximum and Minimum Entropy. Entropy. Entropy of Transition Rules. Entropy Examples

Basics of Proofs. 1 The Basics. 2 Proof Strategies. 2.1 Understand What s Going On

3.2 Forces and Motion

Richter Scale and Logarithms

ASTRONOMY 25 SUMMER 2017 PROJECT 2: THE HEIGHT OF THE SUN

OBSERVING PROJECT PARTNER ELECTION

Name Student ID # Instructor Lab Period Date Due. Lab 1 Polynomials

Modeling the Motion of a Projectile in Air

Law of Trichotomy and Boundary Equations

Students will explore Stellarium, an open-source planetarium and astronomical visualization software.

Motivation. Evolution has rediscovered several times multicellularity as a way to build complex living systems

INSPIRE GK12 Lesson Plan. DOK 3 - Hypothesize, Investigate, Compare, Draw Conclusions DOK Application

Introduction to Scientific Modeling CS 365, Fall 2011 Cellular Automata

Cottonwood Classical Preparatory School CCPS Pre-Calculus with Statistics Summer Packet

UNST 232 Mentor Section Assignment 5 Historical Climate Data

Stephen F Austin. Exponents and Logarithms. chapter 3

CS103 Handout 22 Fall 2012 November 30, 2012 Problem Set 9

Project IV Fourier Series

Safety: BE SURE TO KEEP YOUR SMART CART UPSIDE-DOWN WHEN YOU RE NOT ACTIVELY USING IT TO RECORD DATA.

Name. University of Maryland Department of Physics

Lab: Vectors. You are required to finish this section before coming to the lab. It will be checked by one of the lab instructors when the lab begins.

Think about systems of linear equations, their solutions, and how they might be represented with matrices.

C if U can. Algebra. Name

Physics 2080 Extra Credit Due March 15, 2011

Assignment 5 Bounding Complexities KEY

Foundations for Functions

Introduction to Uncertainty and Treatment of Data

Assignment 1 Physics/ECE 176

Lesson 3-2: Solving Linear Systems Algebraically

Definition: A "system" of equations is a set or collection of equations that you deal with all together at once.

DOC SOLVING SYSTEMS OF EQUATIONS BY SUBSTITUTION CALCULATOR

Big doings with small g a p s

Unit 7. Atomic Structure

OF ALL THE CHEMISTRY RELATED SOFTWARE

Mathematics: Year 12 Transition Work

Algebra & Trig Review

Activity P10: Atwood's Machine (Photogate/Pulley System)

Lab Slide Rules and Log Scales

SUMMER MATH PACKET. Geometry A COURSE 227

Experiment 0 ~ Introduction to Statistics and Excel Tutorial. Introduction to Statistics, Error and Measurement

HW#9: Energy Conversion and Conservation of Energy

Checkpoint Questions Due Monday, October 1 at 2:15 PM Remaining Questions Due Friday, October 5 at 2:15 PM

Solving Equations by Factoring. Solve the quadratic equation x 2 16 by factoring. We write the equation in standard form: x

Descriptive Statistics Methods of organizing and summarizing any data/information.

Topic: Solving systems of equations with linear and quadratic inequalities

Any student who registers as a new attendee of Teaneck High School after August 15 th will have an extra week to complete the summer assignment.

The Chemistry of Respiration and Photosynthesis

LAB 2 - ONE DIMENSIONAL MOTION

MODULAR ARITHMETIC KEITH CONRAD

Determination of Density 1

The 2004 Superbowl of High School Calculus Page 1 of W. Michael Kelley

Contact Information. CS 420/594 (Advanced Topics in Machine Intelligence) Biologically-Inspired Computation. Grading. CS 420 vs. CS 594.

2014 Summer Review for Students Entering Geometry

Vectors Part 1: Two Dimensions

Pre-Algebra Unit 2. Rational & Irrational Numbers. Name

Learning Packet Grading Form

Coalescing Cellular Automata

LAB PHYSICS MIDTERM EXAMINATION STUDY GUIDE

Structural Induction

Lecture notes on Turing machines

Finite Automata Part One

Finite Automata Part One

Fall 2017 Math 108 Week Week 1 Task List

Student Instruction Sheet: Unit 2, Lesson 2. Equations of Lines, Part 2

LECTURE 10: REVIEW OF POWER SERIES. 1. Motivation

Entropy-based data organization tricks for browsing logs and packet captures

Lesson 4b More on LOGARITHMS

Transcription:

CS 420/527: Biologically-Inspired Computation Project 1: Edge of Chaos in 1D Cellular Automata Due: Friday, Feb. 3, Midnight Introduction In this project you will explore Edge of Chaos phenomena (Wolfram class IV behavior) in 1D cellular automata. You will do this by systematically modifying randomly generated transition tables and observing the lambda and entropy values associated with phase changes in the behavior of the automata. Experimental Setup Simulators You can use an off the shelf simulator for this project. One is the NetLogo version on the class website: <http://web.eecs.utk.edu/~mclennan/classes/420/netlogo/ca 1D General Totalistic.html>. See the instructions on that page about running the simulator on your own computer. Alternately, you can use the ca simulator provided with Flake s Computational Beauty of Nature. There are several different versions that you can use; see <http://mitpress.mit.edu/books/flaoh/cbnhtml>. Perhaps the best solution is to use the java program hosted on Kristy Van Hornweder s website: <http://web.eecs.utk.edu/~kvanhorn/cs594_bio/project1/ca.html>. This page also contains submission instructions, additional tips, and classification examples and images. Make sure to look at it carefully before starting on your project! Finally, if you want, you can implement your own CA simulator; it s not very hard. Since programming the simulator is not part of the assignment, feel free to work together to implement a simulator, or share code or ideas. As I said, it s up to you which you use. You will probably be doing some cutting and pasting of rule strings between the simulator and your λ-h calculator (see below), so you will have to find a way of doing the experiments that is not too tedious. You might want to write a shell script to automate some of the procedure. The program on Kristy s website automates almost everything. -1-

Table-walk-through Procedure As explained in class, we cannot simply allow the simulator to pick a random rule string with a certain λ value, since there is too much variability between unrelated rule strings. Therefore we will use Chris Langton s table-walk-through method, which involves generating a series of rule strings differing only in the number of quiescent entries. The following describes an operational procedure. Pick a random seed and record it. See the last page of this handout for a form that you can use for recording your experiments (or invent your own spreadsheet); for your convenience, a blank form is available online: <http://web.eecs.utk.edu/~mclennan/classes/420/handouts/experiment-record-1.doc>. Each experiment is conducted on a random rule string. The easiest way to get this is to have your simulator generate one (use the button in the NetLogo simulator, or set lambda=1.0 in the ca simulator). (You can also generate one yourself by picking 12 random integers in the range 1 to 4, since we exclude the quiescent state; the first number is always 0, giving 13 all together.) Make sure to record your random rule string. You will now decimate your rule string by zeroing one non-zero entry at a time. For your original rule string and for each of the decimated rule strings you will compute a λ λ T H and H T value. Whether you compute them as you go along or do them all at the end is up to you; which is easier will probably depend on the cutting-and-pasting or other experimental procedure that you have selected. Note that the NetLogo simulator computes them for you. You will also observe and record the behavior (I, II, III, or IV) of the original string and each of its decimations. For each decimation, randomly select one of the non-zero entries in the rule string and set it to zero. Observe the behavior of the resulting CA and record it. Note: if you are using the Java version of the ca simulator, make sure you set lambda=-1 (or any negative value) before you enter your decimated string, or it will ignore your string and regenerate the undecimated string! If you are using the NetLogo simulator, just press the Decimate button. I think you should do at least 20 table walk-throughs to have meaningful statistics. However, you can do more, and better investigations will earn higher grades. -2-

Lambda and Entropy Calculations You will be investigating lambda and entropy values computed in two different ways. (The NetLogo simulator computes these for you, but you still need to understand what they mean.) The simplest way gives the totalistic parameters λ T and H T, which are based on how frequently each state appears in the totalistic rule table (that is, the rule string that you have recorded). The minimum sum of the neighborhood states is 0 and the maximum is N K 1, where K is the number of states and N =2r 1 is the size of the neighborhood for radius r. Therefore the size of the totalistic table is S= N K 1 1. In your case r = 1 and K = 5, so S = 13. Let R be the rule table so that R k gives the new state for the sum k of the neighborhood states. We are interested in the distribution of new-state values, so let m s R k R k s, that is, m s is the number of table entries that map into new state s. The totalistic lambda value λ T is simply the fraction of totalistic rule table entries that do not map into the quiescent state s = 0: λ T = S m 0 =1 m 0 S S The entropy of the totalistic rule table is a function of its probability distribution. Therefore let p s =m s /S so that the entropy H T of the totalistic transition table is defined: H T = p s lg p s, s where lg x is the logarithm of x to the base 2. (Note that 0 lg 0=0, which you will have to handle as a special case since lg 0=.) To facilitate comparison with non-totalistic CAs, the λ and H values are usually defined over the complete (non-totalistic) transition table, which has T = K N entries. However, we have an abbreviated rule table, of length N K 1 1, which gives the new state R k for a sum k; in most cases there are multiple configurations having the same sum. Therefore, let C k be the number of neighborhood configurations having the sum k. For K = 5 and r = 1, C k is given by the following table: k 0 1 2 3 4 5 6 7 8 9 10 11 12 C k 1 3 6 10 15 18 19 18 15 10 6 3 1 Define n s to be the number of configurations leading to state s: n s = C k. { k R k = s } That is, n s is the total number of configurations that are mapped into state s by the corresponding non-totalistic rule table. The probability of a new state in the complete transition table is given by p s =n s /T. (Note: these p s are different from the p s -3-

R H defined above for H T!) Then Langton s λ is defined: λ= T n 0 =1 n T 0T =1 p. 0 The entropy H of the complete transition table is defined: H = p s lg p s. s Since you will be computing the λ λ T H and H T values for each rule table, you will have to use a program to do it. This is not an important part of the project, so you can do it in any way convenient. You can implement your own program, or several (or all) of you can get together and share a program. Also, some versions of the ca program will compute λ (but not λ T H and H T ) for you. Additional Work for CS 527 Students If you are taking this course for graduate credit (CS 527), in addition to the foregoing four parameters, you will need to compute a fifth parameter for the rules you test. But you get to pick or design the parameter. So think about what property of the transition tables might be correlated with the behavior class of a CA and figure out a way to compute it. Your writeup (see below) should include a short (one paragraph) motivation for your parameter (i.e., what makes you think that it might be correlated with behavior) and a description of its computation. Your parameter might not turn out to be very good, but that doesn t matter; the point is to make a reasonable conjecture and to test it. In your writeup, evaluate your new parameter in the same ways you do the others (λ λ T H H T ). Students taking this course for undergraduate credit (CS 420) can also do this part, which will earn you extra credit. Writeup Calculations Compute the average and standard deviation of the λ λ T H and H T values for all simulation instances that exhibit class IV behavior. Which (λ λ T H or H T ) seems to be a more reliable indicator of class IV behavior? Graphs Make four graphs of behavior vs. λ λ T H and H T. That is, use λ λ T H and H T for the abscissas (x-axes) of the four graphs. (CS 527 students should, in addition, make graphs of their fifth parameter.) For the ordinates (y-axes) of the graphs, use the following numerical values to indicate qualitative behavior: 0 for classes I and II, 1 for class IV, and 2 for class III. Each of your graphs should show all of your experiments as separate curves; try to use colors or other ways of making the curves distinguishable. -4-

H Discussion Draw some conclusions about the range of values of λ λ T H and H T that lead to class IV behavior. Note any anomalies. Did you ever observe class I or II behavior at high λ λ T H or H T values? Did you ever observe complex (IV) or chaotic (III) behavior at λ λ T H and H T values that were otherwise in the simple (I, II) region? How do you explain these anomalies? Extra Credit The table above for the number of configurations is given by C k =D k,3, where D k,n is the number of states, each in the range 0 to K 1, arranged in a neighborhood of size N, so that the states add up to k. (In other words, the number of N solutions to i=1 X i =k, where 0 X i K 1.) It can be computed by the following equations: For n 1 : D k,1 ={ 1, k K 0, k K D k, n = n k 1 k, k K. K 1 D k, n = D k j, n 1, k K. j=0 I will give extra credit to anyone who can find a significantly simpler formula for D and prove it is correct., -5-

Experiment Record: 1D CA Edge of Chaos Your Name: Bruce MacLennan. simulator: [ ] NetLogo, NetLogo applet, CBN: java, unix, mac, windows, other: K (states) = 5. r (radius) = 1 wrap: [ ] quiescence: [ ] random seed = 1234567. Experiment Number: 1. Random Rule Table: 0 2 1 2 1 4 2 4 1 1 1 1 1 0 1 2 3 4 5 6 7 8 9 10 11 12 Table Walk-through: Step Entry Zeroed Class λ λ T H H T Observations 0 III 0.992 0.923 1.595 1.669 Complex pattern, near IV 1 1 III 0.968 0.846 1.684 1.727 Same 2 4 IV 0.848 0.769 1.947 1.834 near III 3 8 I 0.728 0.692 1.988 1.884 Very long IV transient 4 9 I 0.648 0.615 1.916 1.884 ditto 5 3 I 0.568 0.538 1.833 1.738 6 5 I 0.424 0.462 1.654 1.573 7 10 I 0.376 0.385 1.532 1.489 8 2 I 0.328 0.308 1.360 1.352 dies very quickly from here on down 9 11 I 0.304 0.231 1.235 1.145 10 6 I 0.152 0.154 0.660 0.773 11 12 I 0.144 0.077 0.595 0.391 12 7 I 0 0 0 0-6-