The first section explained what evolutionary computation is. We saw that they are used as problem solvers, but computers were solving problems long before the apparition of EAs, and a method that looks for solutions more or less at random does not seem so efficient compared to other computing methods...
The main reason why evolutionary computation models appeared
is the lack of adequation between traditional computing methods and many
of the problems that currently need to be solved.
These problems are very complex (they involve a huge number of parameters),
and deal with "real-world" phenomenons which are either described
by a complicated model (non-linear, non-continuous...) or not modelized
at all (usually because the phenomenons are not fully understood).
To try and solve these problems, we have the "traditional"
computing methods. They usually require a lot of restrictive hypothesis
to be respected, among which linearity and continuity are proeminent.
In cases when hypothesis are not too restrictive, then calculation becomes
very complex, and needs a huge amount of raw computer power to execute
in a reasonable amount of time.
Even worse, the computational costs for traditional methods have a bad
tendency to grow exponentially with the number of parameters of the problem.
Evolutionary computation introduce an alternative to traditional methods for very complex problems. It does not guaranty the exact solution to a given problem, but provides a good approximation in a finite time and within practical computational costs.
However, EAs are weak methods for solving problems. Some
of their blind spots are exposed in the following examples.
If an EA finds a local maximum (of the fitness function) in the space of
potential solutions, surrounded by an area where all the individuals have
a very low fitness, the perturbations introduced by the reproduction operators
may not be enough for a new individual to reach the real maximum and pull
the population toward this new attractor. The situation is even worse if
the maximum is also a very steep peak in a rather "flat" area
of low fitness.
Another problem appears when more than one solution exists. If these solutions
are far away, and (once again) are separated by areas of low fitness, the
EA may settle around one solution and never discover the other ones.
Despite their weaknesses, EAs provide a good alternative to traditional methods when these are too costly (either in time or computer power) or impossible to use (cases when there is no comprehensive model for the problem).