And a lot of times even the first local maximums are impressive.
To see how powerful these things can be just compare using brute force random solutions to genetic algorithms you get results that are better by quite a few orders of magnitude.
Or in short don't knock it till you've tried it. It isn't a universal solution for every problem and it can take quite a lot of work to correctly tweak with the fitness score and with all the variables but it is a very useful tool and can produce some very cool results.
Of course, there are conditions on that. The quality of your RNG, the probabilities of mutation/crossover, etc..
Mutation, especially burst mutation with population stagnation, is what stops you getting stuck in local maxima.
I'm not sure I understand what you mean by 'a solution'? You know you've not arrived at an acceptable solution when your fitness is below your required level.
Granted, you never know there is a configuration with a fitness greater than your required fitness but this is generally considered when constructing the fitness function.
I've seen some interesting work on the latter case that produces upper and lower bounds for time to an acceptable solution but so far it seems to be limited in it's application to real world tasks.
Missing the global max less of an issue, an acceptable level of fitness is generally all that's required for most applications. Though I guess there are several tasks for which a global max would be useful.
What is the liscence policy on the pixcavator SDK? If I wanted to incorporate some of your binaries into a product, what would be the cost?
That is why all iterative algorithms suffer from local maximum problems.