Giter Club home page Giter Club logo

genetic-crossing's Introduction

Genetic Crossings

Ben Turner (@Xeus)

Nature of Code Final Project, Spring 2012, Prof. Daniel Shiffman

Project for my NYU ITP Introduction to Computational Media/Nature of Code classes.

Description

Intended to create the building blocks for a system of people with randomly generated characteristics who age, breed, pass along genetic information to offspring, and interact with their environments, religious traits, and governments/cultures.

Coded in Processing. Also uses a node.js express server.

Repo includes back sketches as well as a Wolfram CA sketch and the node.js express JSON server which are also used for this sketch.

Most recent code uses these directories: genetic_crossing_noc_final, WolframCA_test, and galapagus_json.

Credits

  • Prof. Dan Shiffman for all his documentation and code from Nature of Code, particularly his chapters on forces, genetic algorithms, ToxicLibs, and cellular automata
  • Prof. John Schimmel for his Processing-Nodejs code

Installation

Quick Way

Download these files (if you didn't just git clone [email protected]:Xeus/Genetic-Crossing.git the whole directory and run them on your system; they're already built as applications.

MacOSX:

Windows:

Native Way

Download the latest version of Processing.

Clone my git repo. Open your Terminal and go to the directory parent you want to install to. Then type git clone [email protected]:Xeus/Genetic-Crossing.git.

Navigate to the ./Genetic-Crossing directory. Type ./galapagus_json to change directories so you can do node.js stuff.

See package.json for dependencies. Type npm install to install them. Uses MongoDB and the Heroku toolbelt.

Set up your .env file to include your MONGOLAB_URI variable, which has your user/pass to connect to MongoDB.

It should look like this:

MONGOLAB_URI=mongodb://username:[email protected]:27017/json

Finally, type foreman start to start up the node.js express server.

From your file explorer or finder, open the genetic_crossing_noc_final.pde file in the genetic_crossing_noc_final directory so that it opens in Processing, where you can run it. You'll also want to open WolframCA_test.pde from the WolframCA_test directory AFTER the node.js express server and the other sketch are running.

You'll end up having two Processing sketches running, plus a node.js express instance.

Then, experiment! Right-click on the screen to move God. Type u to pause physics, space bar to freeze the sketch completely, f to toggle funerals (hide dead people from the view).

Links

Also upped to OpenProcessing.org: http://www.openprocessing.org/visuals/?visualID=47390

Metadata

Last update 02 May 12: Demo'd in class and upped to Github.

Search for "TODO:" to find things requiring more work/fixes.

genetic-crossing's People

Contributors

xeus avatar

Stargazers

 avatar

Watchers

 avatar James Cloos 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.