How to Grow a Painting With Generative Art

Evolvotron

What if you could plant a “seed”, and grow a painting? Surely that would save the artist a lot of trouble learning pesky things like how to draw.

As it turns out, such a thing is possible. Computer generated artwork is nothing new. Who could forget Dire Straits’ Money for Nothing?

And, of course, my own blog gallery is full of digital artwork.

But with digital painting and drawing, the computer is simply another tool, like a paintbrush or charcoal stick, used to create an image.

I’m proposing we step away from that, and let the computer take the creative reins.

It’s an application of genetic programming.

If you’ve never heard of genetic algorithms and evolutionary programming, the idea is to apply the concepts of evolution and “survival of the fittest” to solve problems in mathematics and computer science.

To solve a problem, you consider potential solutions to be “organisms.” As organisms, solutions mate and produce offspring. “Organisms” which represent better solutions are given a higher chance of mating. After several generations, you should have a fairly good set of solutions.

A classic example of an application would be the traveling librarian problem.

Suppose your local librarian had to deliver books to all five of her branches. In which order should she visit the cities so that she travels the fewest miles?

[iframe width=”425″ height=”350″ frameborder=”0″ scrolling=”no” marginheight=”0″ marginwidth=”0″ src=”https://maps.google.com/maps?f=d&source=s_d&saddr=Kenansville,+NC&daddr=warsaw+library,+warsaw+nc+to:Faison+Library,+Park+Circle,+Faison,+NC+to:Phillip+Leff+Memorial+Library,+Phillip+Leff+Memorial+Library,+807+E+Broad+St,+Beulaville,+NC+28518+to:Rose+Hill+Community+Library,+Rose+Hill+Community+Library,+113+S+Walnut+St,+Rose+Hill,+NC+28458+to:Magnolia+Florence+Gallier,+Magnolia+Florence+Gallier,+104+W+Main+St,+Magnolia,+NC+28453&hl=en&geocode=FdR7FQIdIWRa-ynZ7fq90d-riTFtuJB7JssBxw%3BFaEKFgId0WdY-yFvJx4dp4AiVik1-E8T6ueriTFvJx4dp4AiVg%3BFb_bFwIdYrBX-yHmR_hSKjzyhClB6TpToe-riTHmR_hSKjzyhA%3BFbfaFAIdXmRd-ykV2RVUwGepiTEN_JI5aqu77w%3BFelmEwIdEn5Z-ynxNa4UJ9qriTERXAJmmhnHQQ%3BFaR5FAIdYfZY-ylf62HwetyriTEk35vlsXboSQ&aq=&sll=34.925349,-78.043442&sspn=0.441376,0.619354&gl=us&mra=pd&ie=UTF8&t=m&ll=34.957995,-77.97821&spn=0.393929,0.583649&z=10&output=embed”][/iframe]
View Larger Map

In this example, the solution is represented as the permutation of five towns

Solution 1 “gene” = { Warsaw, Faison, Beulaville, Rose Hill, Magnolia}

and represents a total journey of 76.3 miles.

The permutation below represents a total journey of 90.0 miles.

Solution 2 “gene” = { Faison, Rose Hill, Beulaville, Magnolia, Warsaw }

Let’s suppose these two “organisms” are selected to mate. Just like human children inherit their parents’ eyes, hair, etc. These “children” can inherit their own parents’ properties.

To produce the children, we can apply a “reorder crossover” on the last three towns.

Solution 1 has Beulaville, Rose Hill, Magnolia as the last three towns. In solution 2, they appear in the order: Rose Hill, Beulaville, Magnolia.

To produce the first child, we take solution 1 and reorder these last three towns so that they appear in the order the mate, solution 2, has them in. The first child is:

Child 1 “gene” = { Warsaw, Faison, Rose Hill, Beulaville, Magnolia}

Solution 2 has Beulaville, Magnolia, and Warsaw as the last three towns. In solution 1, they appear in the order: Warsaw, Beulaville, Magnolia. The second child is:

Child 2 “gene” = { Faison, Rose Hill, Warsaw, Beulaville, Magnolia}

Child 1 ends up representing a distance of 82.9 miles. Child 2 ends up representing a distance of 90.2 miles.

[iframe width=”425″ height=”350″ frameborder=”0″ scrolling=”no” marginheight=”0″ marginwidth=”0″ src=”https://maps.google.com/maps?f=d&source=s_d&saddr=Kenansville,+NC&daddr=Faison+Library,+Park+Circle,+Faison,+NC+to:Rose+Hill+Community+Library,+Rose+Hill+Community+Library,+113+S+Walnut+St,+Rose+Hill,+NC+28458+to:warsaw+library,+warsaw+nc+to:Phillip+Leff+Memorial+Library,+Phillip+Leff+Memorial+Library,+807+E+Broad+St,+Beulaville,+NC+28518+to:Magnolia+Florence+Gallier,+Magnolia+Florence+Gallier,+104+W+Main+St,+Magnolia,+NC+28453&hl=en&geocode=FdR7FQIdIWRa-ynZ7fq90d-riTFtuJB7JssBxw%3BFb_bFwIdYrBX-yHmR_hSKjzyhClB6TpToe-riTHmR_hSKjzyhA%3BFelmEwIdEn5Z-ynxNa4UJ9qriTERXAJmmhnHQQ%3BFaEKFgId0WdY-yFvJx4dp4AiVik1-E8T6ueriTFvJx4dp4AiVg%3BFbfaFAIdXmRd-ykV2RVUwGepiTEN_JI5aqu77w%3BFaR5FAIdYfZY-ylf62HwetyriTEk35vlsXboSQ&aq=&sll=34.937171,-77.952805&sspn=0.441312,0.619354&gl=us&mra=ps&ie=UTF8&t=m&z=10&output=embed”][/iframe]
View Larger Map
Child 2 never lived up to its parents’ expectations.
They wanted him to be a doctor. He went into ventriloquism.

Panic is something one wants to take off and throw away, so to buy cialis australia speak. Separation anxiety maybe triggered in the child even if he never experienced it before by moving cialis generic tadalafil regencygrandenursing.com to a new neighborhood or town or if you have recently been through a divorce. Gupta, who is a well-known Sexologist In Delhi.There are different causes of infertility in males, which includes: Heavy smoking & Tobacco Alcohol and drug consumption Severe stress & depression Hormone problems Low sperm count Premature Ejaculation Obesity Infection & tumors in testes Medication side effect Mobile phones kept generic viagra online in pockets Excess use of laptops on your lap can less your sperm count and sperm motility naturally. People run around with the problem saying that they feel uncomfortable free cialis without prescription wearing a rubber.

Neither children were as successful as their parents. In the next generation, they’ll be less likely to mate.

This is due to what is called the fitness function. The job of the fitness function is to assign to each solution a chance of mating. A simple one for the traveling librarian problem would be to divide 100 by the distance traveled, so that shorter trips have a higher chance of surviving to the next generation.

The idea is to identify traits that yield good results, and try to create solutions that take on those traits.

In our problem, Magnolia and Rose Hill are near each other. Solutions that place these towns next to one another are more likely survive to the next generation, just like real organisms develop traits that aid in their survival in the wild.

So what about art? A popular way to create art on a computer is to apply transformations, functions which alter the image. As a quick example, consider this drawing of Agreeable Andy:

Agreeable Andy

“I don’t want to be an example!”

And three functions: “Rotate by 90 degrees”, “Flip horizontally”, and “Color the left half red.”

Depending on the order we apply them to Andy, we get a different result:

Andy

“Get me off this thing!”

Look familiar? Each drawing is the product of a permutation of functions. Each permutation can be an “organism.”

The organisms are:

S1 = { Horizontal flip, Rotate 90 degrees, Left half red }

S2 = { Left half red, Rotate 90 degrees, Horizontal flip }

Now all we need is a fitness function, something to determine which qualities are desirable.

Oh, it turns out computers aren’t all that great at having these kinds of preferences.

But you are! All you need is a program that presents you with art. You select which ones you like, and the program will eventually identify which qualities you like. You get to play nature, selecting which “creatures” are most likely to survive.

Such a program exists, too. If you want something to play with, go download Evolvotron. It produced the image at the top of this post.

"<a

The screenshot above shows the program at launch. The images are fairly simple, but if you keep at it long enough, you can generate some intricate and complex ones.

I don’t see why generative art needs to live entirely in the realm of the abstract. If it’s not out there don’t think it’ll be too long before someone thinks of combining Evolvotron with, say, Makehuman.

“Evolved art” raises an interesting question, though. Who is the artist? See the image at the top of the post? I didn’t really do anything to make it. I didn’t do the work involved in painting the image. I didn’t even write the program.

On the other hand, the image wouldn’t exist if it weren’t for me.

Am I the artist merely because I have an eye for a particular result? What do you think?