A Genetic Algorithm is a method of solving optimisation problems based on a natural selection process, mimicking biological evolution. The biology-inspired method of the Genetic Algorithm relies on a variety of operators such as mutation, crossover and selection to approach the optimisation problem. The selection is dependent on a fitness score which dictates the right of each chromosome to contribute towards future generations.
Mutation v Crossover
‘Mutation’ refers to systematically changing a part of the chromosome (shown in figure 1), whilst ‘crossover’ combines parts of two existing selected chromosomes, to create two new ones using a crossover point (shown below in figure 2).
From Apes to Scientists
The hope is that through this evolution new chromosome will have a higher fitness score than that of the parents which, ultimately, leads to evolution!
If this change does not occur in the first generation, then after a number of iterations at least. This is how we’ve managed to become data scientists when we used to be apes!
An inspiring application of a genetic algorithm is represented in a study portrayed in this video where both the muscle routing and control parameters are optimised:
Genetic Algorithm can be used in data science for feature selection. It will optimally search through different combinations of features to find the best subset. A victorious application of this has been used to increase performance on a recent model by up to 10%. This increase is a comparison to using all features without a selective process. Success!