Adam Campbell's Website
just another genetic art program





Preface:
  • This program allows you to evolve your own art. You can do this by simply clicking on your favorite image. Once you select that image, a new generation of individuals will be born with your selected image as the parent. It usually takes between five and ten seconds for the new images to show up, so just be patient.
  • Each one of the 25 pictures is drawn using a Compositional Pattern Producing Network (CPPN.) CPPNs are similar to artifical neural networks (ANNs), but where ANNs are usually used as controllers or classifiers, CPPNs are used to model developmental processes. I'll leave out the details, but you can learn more about CPPNs here. The evolution of new images is done using the NEAT methodology, where both the weights and structure of the CPPN are evolved.
  • Four different types of mutations are used to create the new generation of images. The image in the upper left hand corner will be the image you selected from the previous generation (unless you're at generation zero.) The other nine images on the first two rows each contain exactly one weight mutation. This is why the images on the first two rows are most like the image you selected. On the third row, exactly one of the activation functions in one of the neurons is changed. Right now there are only two activation functions, sine and Gaussian. In the future I hope to add more. The forth row contains mutants containing one more connection than their parent. If you see a real fuzzy image in this row, it's most likely due to a recurrent link on the output node. Finally, the last row has individuals with a new node inserted into the network. To insert a node, NEW_NODE, between nodes NODE_ONE and NODE_TWO, the connection to NODE_ONE and NODE_TWO is disabled. Next, a connection from NODE_ONE to NEW_NODE is created, and finally a connection from NEW_NODE to NODE_TWO is made. In most NEAT based genetic art programs, the mutations are spread randomly throughout the grid of images. This makes it difficult to tell what's going on in the networks. I did the mutations in this ordered fashion to alleviate this problem.
Instructions:
  • The images are broken up into five rows and five columns. Click on the image you like most, and a new generation will be created from your selected image. This process takes about five to ten seconds, so just be patient after you click on the image.
  • To zoom in on an image, click the square next to "Zoom mode". Once you do this, the square should becomed marked with an X. Once in zoom mode, click on the image that you want to zoom in to. After about five seconds, a zoomed in version of your image should appear. To zoom out, simply click the square next to "Zoom out".
  • To change the two colors used, simply click the colored squares in the two columns.
  • After you've selected a couple of images, you'll notice the image in the bottom right hand corner changing. This is the history of images you selected, which allows you to see the evolution of your current image.
Links to other genetic art programs:
  • DelphiNEAT --> link
  • SharpNEAT --> link
  • Google search --> link
Additional Information: