Procedural Block Painter. Experiments in procedural art generation. This program procedurally recreates an image by testing randomly sized, randomly colored rectangles plotted at random coordinates on the destination canvas to determine if their placement would make the current best effort better resemble the original source image.
This experiment was inspired by Roger Alsing's Simulated Annealing experiments in genetic programming. This program technically does not use genetic programming, since it doesn't save an image DNA string. It is not simulated annealing since the algorithm doesn't have any sort of temperature tracking. However it does share characteristics with both types of algorithm.
Feel free to make any modifications to the program, and definitely feel free to improve upon the concept, or add this to your own apps. If you include any source or draw inspiration from this application please credit me. Also email me, I would love to hear from anyone who enjoys this.
I am especially open to suggestions for optimisations to the program! If you can see where any improvements could be made I would love to hear from you!
Feel free to contact me at the email listed on my Github profile.
Online Javascript implementation available at http://ajxs.github.io/pbp/