We tried to solve this with a genetic algorithm. We got, well, solutions . Just not very good solutions. The GA needs quite a bit more tweaking before it could be very useful. It makes really stupid mistakes at this points.
Genetic algorithms are definately more of a art than a science.
It outputs files ready for use by Gnuplot. I don't know if the code is very useful. Or very clear. I think the code for finding the minimal spanning tree is fairly good, at least. By Ian Bicking .