Can anyone explain to me the benefits of the genetic algorithm compared to other traditional search and optimization methods?
The main reasons to use a genetic algorithm are:
- there are multiple local optima
- the objective function is not smooth (so derivative methods can not be applied)
- the number of parameters is very large
- the objective function is noisy or stochastic
A large number of parameters can be a problem for derivative based methods when you don’t have the definition of the gradient. In this type of situation, you can find a not-terrible solution via GA and then improve on that with the derivative based method. The definition of “large” is growing all the time.