Simulates the basic process of evolution ("survival of the fittest")
In the beginning there is a population (array) of 300 DNAs (images), each generated with random genes (colors).
The more similar a DNA is to the target image, the "fitter" it is.
In one step (new generation) the most similar DNAs "survive" and generate child DNAs (again 300).
The child DNAs consist of genes of both of its parents and also mutate a little (random colors).
After a very very long time there should be a "perfect" DNA which is equal to the target image. But after about
100 generations you can already see a similarity.