1
$\begingroup$

As we known, the genetic algorithm is a random procedure, and its results are related to the initial random seed.

From a paper(Lucas. et al., 2015 ), it says "A genetic algorithm can therefore derive a diverse set of Pareto optimal solutions in a single optimization run, which is a great advantage over other methods that require multiple runs to characterize the multiple objective space"

A similar work I have done is also obtained from a single optimization run. And I want to set an repeated experiment to test the robustness of the GA performance.

How to measure the robustness of the genetic algorithm. I have set different seeds and done several repeated experiments.

$\endgroup$
2
$\begingroup$

I don't agree with the first sentence. Genetic algorithms are stochastic global methods and if the result changes significantly with different random seeds, it simply means that the algorithm converges to local optima and therefore is not working right. In that case, you'd need to reparametrise the genetic operators and probably also the size of chromosomes and population. GA can be extremely efficient only when the space–time tradeoff is wisely accounted for.

Things you can do in order to evaluate GA performance:

  • Make sure every time you train the algorithm it converges to the same optimal neighborhood independently of the random seed used.
  • Make sure the detected optimal neighborhood is as close as possible to the global optimum.
  • Make sure that, no matter what you try, the output of the cost function cannot be significantly improved (e.g. by applying a local method such as stochastic gradient descent or hill climbing on the GA's optimal solution).
  • Make sure you reach the optimal solution without wasting time and space resources.

These are the steps I would suggest, but whether or not you'll see dramatic improvement depends highly on the complexity of your search space and the availability of your resources.

$\endgroup$
  • 1
    $\begingroup$ Eh, in my opinion, if you can get a GA to converge to the same solution in every run, you probably should be using something simpler than a GA, because it's likely your objective function isn't that hard. $\endgroup$ – deong Jul 28 '17 at 13:48
  • $\begingroup$ @deong - That's a valid and great point. And that's precisely why I didn't use the word "solution" but the word "optimum", though maybe it's still misleading so I'll change it to "optimal neighborhood". Solutions between successive runs may not be exactly the same, but the regions must be (the size of a region here being relative to the complexity of the search space). $\endgroup$ – Digio Jul 28 '17 at 13:51
  • $\begingroup$ @deong - In addition, if every run does not converge to the same optimal neighborhood then the GA is no better than a simple random search. $\endgroup$ – Digio Jul 28 '17 at 14:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.