Saturday, January 3, 2015

Genetic Algorithms

Genetic algorithms are a major topic in evolutionary computing. It is based on the evolutionary process of the nature.
Basically a genetic algorithms is a search function where its objective is to find a good solution; technically a very fit chromosome. A chromosome is usually a set of bits or a complex data structure that represents a state of a system.
A set of chromosomes can be referred as a population where a generation in genetics algorithms in one reproductive cycle of replacing existing chromosome with new chromosomes generated by genetic crossover operations and mutation.
The advantage of genetic algorithms in search functions is that search result won't stuck in a local minimum. Because genetic crossover process produces radically different chromosomes in each generation and occasional mutations causes small changes within population.
Genetic algorithm's search can perform in very large and multidimensional search spaces. If there are N dimensions, N parameters should be encoded in each chromosome. 
For example, maximum value of the function F with one dependent variable x in execution.


F(x) = sin(x) * sin(0.4 * x) * sin(0.3 * x)

Lets find a good value for x where F(x) has its nearly possible maximum value.
References:
  •  Russel, S. J., 2009. Artificial Intelligence: A Modern Approach. 3rd ed. Uncertain Knowledge and Reasoning: Printice Hall.

No comments:

Post a Comment