| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
This is the final project for our Mobile Web Graphics course (Fall 2014). It serves as an investigation of genetic algorithms and very, very simple neural networks.
We "evolve" a car-like creature with a scorpion-like tail on the basis of the amount of force it can apply to a wall over a given time period (by default 20 seconds in the most up-to-date demo). The intent is to produce creatures that are better at attacking the wall. Each creature has a body (represented by Box2D fixtures) and a mind (constructed as a very small neural network) to control different body parts. The mind is not a conventional neural network in that it is never trained, but it does co-evolve with the body generation-to-generation. In this way the operation of the mind can improve.
Torso:
Wheels:
Wheel Joints:
Tail:
Mind:
The code is in the "www" folder.
Open "FullScreenEvolution.html" for the most up to date demo. You need to press the "Play" button to start the simulation. The "Evolve" button can be used to trigger evolution prematurely and the third button can be used to toggle time acceleration.
Most documentation is inline with code, but some of it might be just a tiny bit out of date since we haven't gone through with a fine-tooth comb and updated it after our mad rush the night before our demo day. The demo code is messy. Don your hazmat suit before entering.
Look in www/js/app/Body to see how creature body parts are designed, in www/js/app/Creature to see how creatures are designed, in www/js/app/Mind to see how the neural networks that control the creatures are designed.
The aspect ratio of your viewport might effect how the creatures evolve, because this affects the aspect ratio of the environment.
We use Box2dWeb.js for physics simulation.
We use PIXI.js for rendering.
This is an Apache Cordova project, which makes it easy to build for mobile deployment.
| Back | FazBrowse Home | New Git URL |