Evolutionary Algorithms

Click here to edit subtitle

Generate images using evolutionary algorithms by accepting and rejecting random images

Placeholder for image.

Number of generations

Id in generation

Survivors from this generation

Placeholder for image.

How to use this game: Click "Reject" to start. An image will appear. If it looks like your desired images (eg, a circle) then click "accept." Accept at least 10 images or so, click "regenerate," and those 10 images will form the next thousand images. Then, go through those images and find the ones that are closer to your desired image. Continue until the image fits your requirements.


After 3 generations, results for the desired image of a circle:

The GIF below shows that the general image of a circle is what these 4 images have in common. This is the effect of the evolutionary algorithm--it approximates what the user desires.

The YouTube video below shows a little demo of using the program.

This simple JavaScript game allows you to evolve a small image simply by accepting or rejecting random images, allowing them to "reproduce" into a new generation, and then winnowing down that generation to the "fittest" (ie, closest to your desired outcome) individuals. In other words, without drawing, you can--simply by accepting and rejecting images--create an image that you imagine.


If this were implemented in a different way, using fMRI, one could do the same thing, but for a higher-resolution image, and the decision to accept or reject an image would be based on what areas of the brain lit up on the fMRI. In this way, one could find out what images make what parts of the brain "light up." In the end, this would allow one to find out what images are stored where on the brain.


I hope someone else, someone with more time and resources, can set up an implementation like this. In the mean time, enjoy this little test program. Please feel free to post your results in the forum!