Genetic Algorithm Particle Swarm

One book in the library of machine learning is the Genetic Algorithm. If the Neural Network models complex behaviours of complex creatures, and PSOs model the emergent collective behaviour of simple organisms, then the Genetic Algorithm is somewhere in between. Genetic Algorithms are so called because they attempt to model the way in which, on an abstract level, biological cells mutate and develop.

Components of a Cell

In a Genetic Algorithm, you would have cells which are objects whose properties are mutatable and represent candidate solutions to a given problem. Our particles are therefore cells by this definition.

The Mechanics

A Genetic Algorithm or GA, makes use of a number of particular behaviours to mutate individual cells, borrowing material from ideally good cells and combining them into new cells who are then mutated. The first process is called Crossover and consists of elements of some particles being chosen to form new cells. The second process, Mutation, is where some randomness mutates the properties of the cell. These are important processes for two reasons. Crossover preserves good material of earlier generations and mutation allows new material to be introduced and thereby explore the search domain. These processes are mediated by a Selection Operator, Tournament Selection in our case, which only chooses the best particles to crossover with to form new particles.

Each solution is made by taking 2 high quality parent solutions to make one child, and some random mutations are added to the child. Some solutions are better, some are worse, but only the fittest shall survive in the end. In this way, while each particle largely searches the space on its own, with the best results informing future searches

Avatar
SwarmVis - DragonBrain