1

Since we expect feasible solution from Genetic Algorithm, So will genetic algorithm provides different output every time with same input set?

4

2 回答 2

3

It depends.

  1. GAs will take different routes through the solution space; and
  2. GAs are not guaranteed to converge

GAs are typically used on complex problems with large solutions spaces with convoluted payoffs and local minima. In such problems you would not expect identical outputs at the end of a GA run.

On the other hand, GAs may be applied to large problems that have a single correct answer. In such situations, the population may converge.

于 2016-04-12T19:44:40.497 回答
1

A good GA implementation will support reproducible results. This applies to all metaheuristics (not just GA's). Reproducible means that the same run will yield the same order of the same set of new best solution events are found. Depending on the actual CPU time given to the process, the number of iterations might differ and therefore they might not end with the same best solution.

Internally, reproducible results implies that:

  • everything uses 1 seeded Random instance.
  • even parallel implementations yield reproducible results (=> no work stealing)
  • ...

During development, reproducibility is worth its weight in gold to find, diagnose, debug and fix bugs.

In production, a few companies turn it off (to take advantage of performance gains such as work stealing), but most enterprises still like to leave it on.

于 2016-04-13T08:10:15.447 回答