Real-World Uses For Genetic Algorithms
Real-World Uses For Genetic Algorithms
1. Introduction
2. Definitions
Genetic algorithms follow the natural process of evolution, and are described as
follows:
Now let’s look at the steps in a basic genetic algorithm.
3.1. Algorithm
The first step is to initialize the population. In the case of problem-solving, a set
of solutions to the problem at hand is the initial population. Secondly, we
evaluate the optimality of the population using a fitness function. The fitness
function is an objective function f(x) that evaluates the quality of the solutions.
The ultimate goal is to find the maxima or minima of this function f(x). Take, for
instance, a fitness function that assigns a score to the solutions in the population.
Then, our goal here is to reach a global maximum for the function, f(x).
If the solutions from the population are satisfactory, we usually stop the algorithm
and crown these as the best individuals. Now, if the solutions are not satisfactory,
we perform the process of selection and pick the fittest individuals to
reproduce and generate new solutions. This is done iteratively.
Next, after selection, the fittest individuals reproduce through crossover, to
generate offspring. The word offspring here refers to a new generation of
solutions. During crossover, values are exchanged to generate new individuals.
Then, certain offspring produced will undergo mutation. This is a process of
randomly changing the values or characteristics in the offspring to introduce
diversity. Specifically, an iterative application of the mutation operation will allow
the algorithm to get out of a local minimum during the search.
It is important to note that crossover and mutation are the two main methods
used to generate offspring in genetic algorithms. Lastly, if the solutions or
offsprings are satisfactory and there are no better offsprings to produce, the
algorithm terminates and presents the best individuals as the optimal solutions.
4. Applications
5. Conclusions
In this article, we first defined evolution, then genetic algorithms. We’ve discussed
the basic components and how they work. Lastly, we reviewed some real-life
applications of these algorithms.