EvolveJS

An evolution simulator

Each living "cell" can divide. Once it does, its range of abilities have a chance to mutate. It takes energy to move, and you can click to kill cells. Only the cells most fit for the environment will end up reproducing. Have fun evolving!   Read more details...

The goal of a cell is to divide as much possible. To do this cells must gain a certain amount of food before they divide. They compete for a limited amount of food that is given out at a regular rate. The more cells there are on the screen, the less food each is able to gain. It also costs cells energy to move. They have limited time to reproduce as the older they get, the more likely they are to die.

An easy experiment

If you're wondering how to evolve the cells, one fun thing to try is to make the cells either flee from your mouse, or ignore your mouse. If you chase the cells around with your cursor they will expend energy to flee. The cells that flee slower will eventually out-compete the cells that flee. Eventually the cells will have evolved to completely ignore your mouse. One tip to make this happen faster is to increase the cost to move in the environment controls.

What's even more fun is to try and breed the fastest cells possible. The way to do this is to click and kill cells. The cells that can most efficiently move out of the way will be those most likely to survive. Eventually you'll get to a point where you physically cannot kill all of the cells on the screen. While clicking it can help to wait a second for some cells to get out of the way before killing the slower cells.

Currently it's a little easier in 2d mode to run experiments.

Please choose your simulation type.

Designed and developed by Greg Tatum. Why not tweet @ me? Fork this on GitHub.