Evolutionary Computation Engine

Evolutionary computation is a subtitle of AI (Artificial Intelligence) inspired by biological evolution. It is a group of algorithms for global optimization and soft computing studying, technically, they are a family of population-based trial and error problem solvers with a meta-heuristic or stochastic optimization character. During an evolutionary computation, an initial set of candidate solutions is generated and iteratively update, each new generation is produced by stochastically removing less desired solutions, and introducing small random changes. Therefore, these techniques can produce highly optimized solutions in a wide range of problem settings, making them widely accepted in computer science.
The figure above shows a perfect example of how evolutionary algorithms can be used to find local maxima. The black lines are seen converging to points where the algorithm guesses are local maxima indicated by blue dots.

The first use of the evolutionary principle is for automated problems solving in the 1950s. Evolutionary programming was introduced with the genetic algorithm (GA).  With the development of evolutionary strategies and programming, evolutionary computing was brought up as a unified concept of different representatives until the early 1990s.

The evolution of GAs begins with initialization of the population. Afterward, GAs embark on the process of reproduction. First, the selection operator picks two chromosomes from the population to serve as parents. Next, GAs perform crossover on these two parents to reproduce their offspring. The predetermined probability, crossover rate, defines the probability to perform crossover. Analogously, the mutation is performed with a probability, mutation rate, on the offspring reproduced by crossover to slightly alter some genes. This process of reproduction repeats until the set of offspring, called the subpopulation, is filled. Acting on "Survival of the Fittest", the survivor operator draws the fittest chromosomes out of the subpopulation with (or without) the primitive population; the chosen chromosomes will constitute the population for the next generation. Following this procedure, GAs evolve until a predetermined termination criterion is met.


AI-Powered Applications