GithubHelp home page GithubHelp logo

stefanmajoor / fermi_paradox_sim Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sarkarsaurabh/fermi_paradox_sim

0.0 1.0 0.0 10.52 MB

Simulation of Great filer concept in Fermi Paradox using RL, GA and Tensorflow.js

JavaScript 99.98% HTML 0.02%

fermi_paradox_sim's Introduction

This is simulation of Great filter in Fermi Paradox.

Artificial creatures are trying to learn how to move from left side of the screen to right. They start with an artifical brain made of simple 3 layer neural network and random weights. The walls represent a filter to screen out creatures which master jumping over walls with increasing height.

screenshot

Live Demo: https://sarkarsaurabh.github.io/fermi_paradox_sim/

Project Structure

Environments : Various Environment Models Creatures : Various Creature Models NeuroEvolution : Neural Network and Genetic Algorithm library Lib : p5.js, Matter.js and Tensorflow.js

Neural Network

The creatures have a simple neural network of 5-20-5

with 5 inputs:

Horizontal velocity Vertical Velocity Torque Height above the ground level Distance from the nearest obstracle infront of it

5 outputs: muscles length controlling 5 muscle groups

Genetic Algorithm

  1. Score: Distance from the left of the screen.
  2. Selection: the likelyhood of seletion of creature to be selected for breeding is based of the score from each run.
  3. Crossover: generate a new child by combining the genes of two parents. The portion of parent gene / neural weights to be keep is child is porpotional to each parent score.
  4. Random mutations to create new neural weights.

screenshot

screenshot

Large parts of the project are inspired by an interesting project https://github.com/adityathebe/evolutionSimulator

fermi_paradox_sim's People

Contributors

sarkarsaurabh 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.