Cellular Automata FRES 1010 Eileen Kraemer Fall 2005.

Slides:



Advertisements
Similar presentations
Restricted Machines Presented by Muhannad Harrim.
Advertisements

CS2303-THEORY OF COMPUTATION
Lists and the Collection Interface Chapter 4. Chapter Objectives To become familiar with the List interface To understand how to write an array-based.
RAPTOR Syntax and Semantics By Lt Col Schorsch
C O N T E X T - F R E E LANGUAGES ( use a grammar to describe a language) 1.
Efficient access to TIN Regular square grid TIN Efficient access to TIN Let q := (x, y) be a point. We want to estimate an elevation at a point q: 1. should.
1 Chapter 2 The Digital World. 2 Digital Data Representation.
Excel Using Formulas and Functions Microsoft Office 2010 Fundamentals 1.
1 Review: Counters and Registers CS 231 Review October 26, 2007 By Joshua Smith Please note the NOTES in the PPT file for help with the examples.
Graphs Graphs are the most general data structures we will study in this course. A graph is a more general version of connected nodes than the tree. Both.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Variants.
CITS4403 Computational Modelling Game of Life. One of the first cellular automata to be studied, and probably the most popular of all time, is a 2-D CA.
Simulating a modern computer by a Turing machine and vice versa CS 6800 Instructor: Dr. Elise de Doncker By Shweta Gowda Saikiran Ponnam.
Cellular Automata (Reading: Chapter 10, Complexity: A Guided Tour)
CS320n –Visual Programming LabVIEW Foundations. Visual ProgrammingLabVIEW Foundations2 What We Will Do Today Hand back and review the midterm Look at.
CELLULAR AUTOMATON Presented by Rajini Singh.
Data Manipulation Computer System consists of the following parts:
Pattern Matching in Computer Go Ling Zhao University of Alberta August 7, 2002.
Chapter 2: Algorithm Discovery and Design
1 GEM2505M Frederick H. Willeboordse Taming Chaos.
A New Kind of Science in a Nutshell David Sehnal QIPL at FI MU.
A New Kind of Science Chapter 3 Matthew Ziegler CS 851 – Bio-Inspired Computing.
Chapter 3 - The World of Simple Programs Wolfram, Stephen. A New Kind of Science. Wolfram Media, Inc
Two Dimensions and Beyond From: “ A New Kind of Science” by Stephen Wolfram Presented By: Hridesh Rajan.
Nawaf M Albadia Introduction. Components. Behavior & Characteristics. Classes & Rules. Grid Dimensions. Evolving Cellular Automata using Genetic.
11 Chapter 4 LOOPS AND FILES. 22 THE INCREMENT AND DECREMENT OPERATORS To increment a variable means to increase its value by one. To decrement a variable.
Presented by Ravi Teja Pampana
Generating Random Numbers in Hardware. Two types of random numbers used in computing: --”true” random numbers: ++generated from a physical source (e.g.,
XP 1 Microsoft Office Excel 2003 Tutorial 3 – Working With Excel Lists.
Illuminating Computer Science CCIT 4-6Sep
Discovery of Cellular Automata Rules Using Cases Ken-ichi Maeda Chiaki Sakama Wakayama University Discovery Science 2003, Oct.17.
by Chris Brown under Prof. Susan Rodger Duke University June 2012
The Role of Artificial Life, Cellular Automata and Emergence in the study of Artificial Intelligence Ognen Spiroski CITY Liberal Studies 2005.
Governor’s School for the Sciences Mathematics Day 13.
XP Agenda Video Last Class Excel Tutorial 5: Working with Excel Lists Agenda for Next Class 1 New Perspectives on Microsoft Office Excel 2003 Tutorial.
Memory Layout and SLC500™ System Addresses. Processor Memory Division An SLC 500 processor's memory is divided into two storage areas. Like two drawers.
Designing a Web Page with Tables. A text table: contains only text, evenly spaced on the Web page in rows and columns uses only standard word processing.
Distributed Computing with Turing Machine. Turing machine  Turing machines are an abstract model of computation. They provide a precise, formal definition.
(Stream Editor) By: Ross Mills.  Sed is an acronym for stream editor  Instead of altering the original file, sed is used to scan the input file line.
Introduction to Lattice Simulations. Cellular Automata What are Cellular Automata or CA? A cellular automata is a discrete model used to study a range.
Cellular Automata Martijn van den Heuvel Models of Computation June 21st, 2011.
© 2006 Pearson Education 1 More Operators  To round out our knowledge of Java operators, let's examine a few more  In particular, we will examine the.
Chapter 2 Data Manipulation Yonsei University 1 st Semester, 2015 Sanghyun Park.
Fibonacci Numbers, Vector Programs and a new kind of science.
A New Kind of Science by Stephen Wolfram Principle of Computational Equivalence - Ting Yan,
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
Cellular Automata Introduction  Cellular Automata originally devised in the late 1940s by Stan Ulam (a mathematician) and John von Neumann.  Originally.
Cellular Automata Martijn van den Heuvel Models of Computation June 21st, 2011.
CS851 – Biological Computing February 6, 2003 Nathanael Paul Randomness in Cellular Automata.
1 Computational Vision CSCI 363, Fall 2012 Lecture 6 Edge Detection.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Fundamentals of Informatics Lecture 3 Turing Machines Bas Luttik.
1 Cellular Automata What could be the simplest systems capable of wide-ranging or even universal computation? Could it be simpler than a simple cell?
Conway’s Game of Life Jess Barak Game Theory. History Invented by John Conway in 1970 Wanted to simplify problem from 1940s presented by John von Neumann.
Positioning Objects with CSS and Tables
Simple ALU How to perform this C language integer operation in the computer C=A+B; ? The arithmetic/logic unit (ALU) of a processor performs integer arithmetic.
Arrays in MIPS Assembly Computer Organization and Assembly Language: Module 6.
LECTURE 4 Logic Design. LOGIC DESIGN We already know that the language of the machine is binary – that is, sequences of 1’s and 0’s. But why is this?
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
Spatio-Temporal Information for Society Münster, 2014
Tutorial 3 Creating Animations.
Context-Free Grammars: an overview
Copyright © Cengage Learning. All rights reserved.
Illustrations of Simple Cellular Automata
Mean Shift Segmentation
While Loops BIS1523 – Lecture 12.
Finite State Machines.
Alexei Fedorov January, 2011
CHAPTER 2 Context-Free Languages
Cellular Automata What could be the simplest systems capable of wide-ranging or even universal computation? Could it be simpler than a simple cell?
Presentation transcript:

Cellular Automata FRES 1010 Eileen Kraemer Fall 2005

What is a cellular automaton? a collection of "colored" cells on a grid of specified shape that evolves through a number of discrete time steps according to a set of rules based on the states of neighboring cells.

Why do we care about CA? Can be used to model simple individual behaviors Complex group behaviors can emerge from these simple individual behaviors

Elementary Cellular Automaton The simplest cellular automaton Consists of only black and white squares Each column represents a possible state of one square and its left and right neighbors. Let 1 = Black and 0=White = 250

Rules… There are 256 ‘elementary’ rules that range from complete white (rules 0 and 128) and complete black (rule 255)

Rule 250 Start with single black square in center of white row; repeat for 100 steps

Totalistic Cellular Automaton Three colors: black, white and grey Rule is to take the average color of neighboring cells

Mobile Automata Differ from cellular automata in that instead of updating all cells in parallel at each step, they have just a single “active cell” that gets updated at each step, and then moves to a new cell. Black dot indicates location of active cell.

Mobile Automata

Generalized Mobile Automata Allow more than one cell to be active at a time

Turing Machines Consist of: a line of cells (“the tape”) A single active cell (“the head”), which can have several possible states Rule can depend on state of the head and on the color of the cell at the position of the head, but not on the colors of any neighboring cells

Turing machines Direction of arrows indicates state of head

Execution of a Turing machine

Turing machine

Substitution Systems For CA, MA, TMs – a fixed array of cells In substitution systems the number of elements can change

Substitution Systems

In a substitution system the number of elements can grow very rapidly To keep the visualization within boundaries, may split elements into parts rather than increasing number of elements Most systems depend only on a single element Complexity can be introduce by including neighboring cells as influence for the change of the patterns

Substitution Systems

Can also model this as a branching tree

SS – additional complexity if neighbors affect outcome

Substitution Systems

Now if you add the ability to add and destroy elements based on the rules, you have the ability to destroy the pattern completely But some rules will find a balance

Sequential Substitution Systems Works on strings of elements rather than a single element Previous substitution system discussed replaced each element with a new sequence of elements Sequential substitution systems perform replacements for multiple elements based on the patterns defined in the rule set Similar to the functionality of a search-and- replace function in a text editor

Sequential substitution system

Sequential Substitution Systems

Tag Systems A sequence of elements of two colors:black and white. The rule is : a fixed number of elements are removed from the beginning depending on the colors of the removed elements, a particular block of elements is attached at the end

Tag Systems

Turns out that if only one element is chosen for removal and addition, the behavior of the system is similar to the neighbor-independent substitution system producing repetitive or nested forms If two elements are removed then the behavior exhibits complexity

Cyclic Tag Systems Has phases (cycles) At each phase, only a certain block can be added

Cyclic Tag Systems

Register Machines very simplified versions of present-day computers Simplest form of consists of two registers each storing a number of any size and just two kinds of instructions: “increments” and “decrement-jumps”

Register Machine Instructions Increment instructions increase by one the number stored in a particular register Decrement-jump instructions do two things: decrease by one the number in a particular register jump to some specified other point in the program and begin execution from there BUT – if register is zero, don’t jump or decrement, just go on to the next instruction

Register Machines

Symbolic Systems Apply transformations to symbolic expressions Example, find expressions of the form e[x_][y_] Replace with x[x[y]] Scan once from left to right, apply rule wherever possible without overlapping

Symbolic Systems

Wolfram’s conclusions.. Cellular automata have many special features and exhibit complex behavior from simple rules. He removed special features to show that they were not necessary to produce complex behavior. In most systems, a “complexity threshhold” exists; that threshold may be simpler than previously thought. Making the rules more complex than the threshold may not increase the chance for complexity.