Image Evolution is a very interesting Javascript tool based on Roger Johansson’s Evo-Lisa idea. It uses a genetic algorithm to represent images as a collection of overlapping polygons.
We start from [a set of random] polygons that are invisible. In each optimization step we randomly modify one parameter (like color components or polygon vertices) and check whether such new variant looks more like the original image. If it is, we keep it, and continue to mutate this one instead.
Just feed it an image and hit start, and a random collection of coloured polygons will gradually evolve into a cool abstract rendition of your picture.