Conway’s Game of Life Andrew Williams

Slides:



Advertisements
Similar presentations
Ecology 2 The end is near. What role does a female play in the population????
Advertisements

Programming project #2 1 CS502 Spring 2006 Programming Project #2 CS-502 Operating Systems Spring 2006.
Game of Life in 21 st Century ECE817 Presentation By Kyusik Chung
Conway Sequence Mary Beth Helms Jennifer Turner. John Horton Conway Born in Liverpool, England on Dec. 26, 1937 Born in Liverpool, England on Dec. 26,
Game of Life Rules and Games Linh Tran ECE 573. What is Life? Life is just one example of a cellular automaton, which is any system in which rules are.
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd ed., by B. Wilkinson & M
1 The Game of Life Supplement 2. 2 Background The Game of Life was devised by the British mathematician John Horton Conway in More sophisticated.
1 Chapter 13 Artificial Life: Learning through Emergent Behavior.
CELLULAR AUTOMATON Presented by Rajini Singh.
CELLULAR AUTOMATA Derek Karssenberg, Utrecht University, the Netherlands LIFE (Conway)
Turing machine simulations. Why study so many examples? –Get an intuition for what goes on inside computers without learning all the details of a programming.
Game of Life Changhyo Yu Game of Life2 Introduction Conway’s Game of Life  Rule Dies if # of alive neighbor cells =< 2 (loneliness) Dies.
CS305j Introduction to Computing Two Dimensional Arrays 1 Topic 22 Two Dimensional Arrays "Computer Science is a science of abstraction -creating the right.
Project 1CS-4513, D-Term Programming Project #1 Concurrent Game of Life Due Friday, March 20.
04/25/13 Halting Problem Discrete Structures (CS 173) Derek Hoiem, University of Illinois 1
Cellular Automata This is week 7 of Biologically Inspired Computing Various credits for these slides, which have in part been adapted from slides by:
Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.
Variations of Conway’s Game of Life Eswar Kondapavuluri.
Parallelization: Conway’s Game of Life. Cellular automata: Important for science Biology – Mapping brain tumor growth Ecology – Interactions of species.
Introduction Computational Challenges Serial Solutions Distributed Memory Solution Shared Memory Solution Parallel Analysis Conclusion Introduction: 
1 Some Patterns of Novice Programs Author : Eugene Wallingford ; Dan Steinberg ; Robert Duvall ; Ralph Johnson Source : PLoP 2004 Advisor : Ku-Yaw Chang.
Chapter 12: Simulation and Modeling
Lecture 8 – Stencil Pattern Stencil Pattern Parallel Computing CIS 410/510 Department of Computer and Information Science.
Investigation #1 (cont.)
More Accurate Rate Estimation CS 170: Computing for the Sciences and Mathematics.
CS 484 – Artificial Intelligence1 Announcements Lab 4 due today, November 8 Homework 8 due Tuesday, November 13 ½ to 1 page description of final project.
Course material – G. Tempesti Course material will generally be available the day before the lecture Includes.
Introduction  Per the project description: “Conway's Game of Life is a cellular automaton operating on a grid of rectangles, infinite in both directions.”
1 Cellular Automata and Applications Ajith Abraham Telephone Number: (918) WWW:
1 Chapter 13 Artificial Life: Learning through Emergent Behavior.
The Game of Life A simulation of "life". From simple rules, complex behavior arises Rules –A cell that is alive and has fewer than two live neighbors dies.
LANGUAGE AND TOOLS GURU S UHAN CANARAN PROJECT MANAGER A NDREAS NILSSON SYSTEM ARCHITECT A KSHAT SIKARWAR SYSTEM INTEGRATOR E RIC SCHMIDT TESTER AND VALIDATOR.
Activity 2-1: The Game of Life
Introduction to Lattice Simulations. Cellular Automata What are Cellular Automata or CA? A cellular automata is a discrete model used to study a range.
Topic 26 Two Dimensional Arrays "Computer Science is a science of abstraction -creating the right model for a problem and devising the appropriate mechanizable.
Cellular Automata. The Game The Game of Life is not your typical computer game. It is a 'cellular automation', and was invented by the Cambridge mathematician.
Playing God: The Engineering of Functional Designs in the Game of Life Liban Mohamed Computer Systems Research Lab
Fractals. In colloquial usage, a fractal is "a rough or fragmented geometric shape that can be subdivided in parts, each of which is (at least approximately)
Cellular Automata Spatio-Temporal Information for Society Münster, 2014.
EECS 110: Lec 12: Mutable Data Aleksandar Kuzmanovic Northwestern University
CELLULAR AUTOMATA A Presentation By CSC. OUTLINE History One Dimension CA Two Dimension CA Totalistic CA & Conway’s Game of Life Classification of CA.
Parallel Programming 0024 Spring Semester 2010 May 6, 2010.
Research Into the Time Reversal of Cellular Automata Team rm -rf / Daniel Kaplun, Dominic Labanowski, Alex Lesman.
1 Data Structures CSCI 132, Spring 2014 Lecture 4 Implementing Life.
The Game of Life Erik Amelia Amy. What is the “Game of Life?” The “Game of Life” (often referred to as Life) is not your typical game. There are no actual.
Model Iteration Iteration means to repeat a process and is sometimes referred to as looping. In ModelBuilder, you can use iteration to cause the entire.
Review Recursion Call Stack. Two-dimensional Arrays Visualized as a grid int[][] grays = {{0, 20, 40}, {60, 80, 100}, {120, 140, 160}, {180, 200, 220}};
Rich French 3/2/13 Advisor: Kristina Striegnitz.  A cell is “born” if it is surrounded by 2 neighbors  A cell “survives” if it is surrounded by 2 or.
Investigation #1 (cont.) Products and Multiples. 1.3 The Product Game.
gence.jpg al.php.htm.
A Variation on Conway’s Game of Life Winston Lee EPS 109.
Clicker questions 11/14/13 CSE 1102 Fall A. Composite B. Holder C. Proxy D. Factory E. Impossible to tell from diagram In this example, we want.
The Northern Lights: Demonstrations. Programmability Overview A major aspect of our project is programmability- it is an interactive display medium, the.
Section 6.1 Images Viewing a Gallery of Fractals. Look for patterns.
Cellular Automata Introduction  Cellular Automata originally devised in the late 1940s by Stan Ulam (a mathematician) and John von Neumann.  Originally.
Robot Intelligence Technology Lab. Generalized game of life YongDuk Kim.
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.
CMSC 202 Lesson 15 Debugging. Warmup  What is the bug in the following code? int* foo(int a) { return &a; }
The Shape of Math R09 VOL.3 The Life Game 09.08.0 4 Masashi SANAE.
EECS 110: Lec 12: Mutable Data Aleksandar Kuzmanovic Northwestern University
Practical Session 9 Computer Architecture and Assembly Language.
Chaotic Behavior - Cellular automata
Illustrations of Simple Cellular Automata
Excursions into Logic Based Computation using Conway’s Game of Life
Modeling Pattern Formation in Skin Diseases by a Cellular Automaton
Activity 2-1: The Game of Life
Online Pogo Game Customer Service
Pogo Game Customer Care Helpline Number

Call Pogo Contact Phone Number and Enjoy Pogo Game
Presentation transcript:

Conway’s Game of Life Andrew Williams

Conway’s Game of Life ► Conceptualized in late 1960s ► Popularised in a Scientific American article about John Horton Conway  (URL constructed on 10/10/2007) ► Conway is a mathematician from Liverpool  Currently (2007) Professor of Mathematics at Princeton University

Conway’s Game of Life ► Really a simulation game  A thought-experiment in mathematical terms ► Is it possible to create “life” using a very simple mathematical model? ► What sort of things might this life do?

Game of Life “Rules” ► The game is played on a grid of squares  In principal, this grid extends infinitely in all directions ► Each cell is either alive (X) or dead ( ) ► There are five living cells in this grid XX XX X

Game of Life “Rules” ► Game is played over several generations ► The rules govern how the current population survives to the next generation ► Each cell (living and dead) is considered  We look at the eight surrounding cells to determine its fate XX XX X

Game of Life “Rules” ► Live cells:  If a live cell has 0 or 1 neighbours it dies  If it has 2 or 3 neighbours it survives  If it has > 3 neighbours it dies ► Dead cells:  If a dead cell has exactly three neighbours, they breed and it becomes alive XX XX X

Game of Life “Rules” ► Live cells:  If a live cell has 0 or 1 neighbours it dies  If it has 2 or 3 neighbours it survives  If it has > 3 neighbours it dies ► Dead cells:  If a dead cell has exactly three neighbours, they breed and it becomes alive XX XX X So, what will happen here?

Game of Life “Rules” ► Live cells:  If a live cell has 0 or 1 neighbours it dies  If it has 2 or 3 neighbours it survives  If it has > 3 neighbours it dies ► Dead cells:  If a dead cell has exactly three neighbours, they breed and it becomes alive XX X XX

Game of Life “Rules” ► Live cells:  If a live cell has 0 or 1 neighbours it dies  If it has 2 or 3 neighbours it survives  If it has > 3 neighbours it dies ► Dead cells:  If a dead cell has exactly three neighbours, they breed and it becomes alive XX X XX What about the next generation?

Termination ► The game continues until:  the population stabilizes or;  they all die or;  they get into oscillations. XXX X X X An oscillator with period 2

Game of Life - Example ► The project called ConwayLife is an implementation of Conway’s Game of Life  The simulation happens in LifeBoard.cpp ► The game loop is in lifemain.cpp ► You can load up different starting patterns from lifemain.cpp  Pattern files end in.life

Game of Life - Tasks 1. Have a play with the system and look at the various patterns provided 2. Use OpenMP to speed up run_one_generation() in LifeBoard.cpp  What is the best speed you can achieve?