GithubHelp home page GithubHelp logo

art_using_cellularatomaton's Introduction

Art using Cellular Atomaton

This project uses a brach of maths Cyclic Cellular Atomaton to create patterns.

Description

In this Cyclic Cellular Atomaton, each cell remains unchanged until some neighboring cell has a modular value exactly one unit larger than that of the cell itself. It is a subset of Cellular Atomaton developed by David Griffeath and some others. In this project I mainly used Codd's Cellular Automaton.

Rules

As with any cellular automaton, the cyclic cellular automaton consists of a regular grid of cells in one or more dimensions

  • The cells can take on any of n states, ranging from 0 to n โˆ’ 1.
  • The first generation starts out with random states in each of the cells.
  • In each subsequent generation, if a cell has a neighboring cell whose value is the successor of the cell's value, the cell is "consumed" and takes on the succeeding value. (Note that 0 is the successor of n-1; see also modular arithmetic.) More general forms of this type of rule also include a threshold parameter, and only allow a cell to be consumed when the number of neighbors with the successor value exceeds this threshold.

Demo

Image

References

Codd's Cellular Automaton Wikipedia : https://en.wikipedia.org/wiki/Codd's_cellular_automaton Cyclic Cellular Automaton Wikipedia : https://en.wikipedia.org/wiki/Cyclic_cellular_automaton

Run Locally

Clone the project

  git clone https://github.com/Sarath191181208/Art_using_cellularAtomaton.git

Go to the project directory

  cd Art_using_cellularAtomaton

Install dependencies

  pip install -r requirements.txt

Run the project Locally

  python main.py

Requirements

  • python make sure to add to path
  • pygame pip install pygame
  • numpy pip install numpy
  • numba pip install numba

art_using_cellularatomaton's People

Contributors

sarath191181208 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.