Difference between revisions of "Evolutionary algorithm"

From Conservapedia
Jump to: navigation, search
m (Popularity and usage: grammar)
m (Fix link)
 
(10 intermediate revisions by 7 users not shown)
Line 1: Line 1:
An '''Evolutionary algorithm''' (EA) is a stochastic numerical analysis that takes its inspiration from the [[theory of evolution]], particularly the optimization power of [[natural selection]]. The main thing that sets an evolutionary algorithm apart from other stochastic methods is the use of a [[fitness function]] to select for optimal solutions. New solutions are a created by allowing existing ones to breed with each other. Also many algorithms use random alterations in the coded solution similar to the biological principle of [[mutation]]. The fitness program selects solutions that better solve the problem and increases the frequency of that solution and its descendants in the over all population of solutions.  
+
An '''Evolutionary algorithm''' (EA) is a stochastic numerical analysis that takes its inspiration from the [[theory of evolution]], particularly the optimization power of [[natural selection]]. The main thing that sets an evolutionary algorithm apart from other stochastic methods is the use of a [[fitness function]] to select for optimal solutions. New solutions are a created by allowing existing ones to breed with each other. Also many [[Algorithm|algorithms]] use random alterations in the coded solution similar to the biological principle of [[mutation]]. The fitness program selects solutions that better solve the problem and increases the frequency of that solution and its descendants in the over all population of solutions.  
  
 
==Types of Evolutionary algorithms==
 
==Types of Evolutionary algorithms==
Line 12: Line 12:
 
Evolutionary algorithms are general purpose optimizers because they do not require any assumptions about the landscape of the fitness function. They are used in a wide range of problems in diverse fields and have proven to be a highly effective numerical analysis method.  
 
Evolutionary algorithms are general purpose optimizers because they do not require any assumptions about the landscape of the fitness function. They are used in a wide range of problems in diverse fields and have proven to be a highly effective numerical analysis method.  
  
The EA can often discover optimal solutions that human being's have never thought of. The Evolvable Systems Group at NASA recently used a genetic algorithm to find an antenna design far superior to any previously created.<ref>http://ic.arc.nasa.gov/projects/esg/research/antenna.htm</ref> This ability of the EA to produce solutions that human beings have never even thought of is often used to attest to the power of evolutionary mechanism to produce novel and efficient solutions to problem sets. <ref>http://www.stewdean.com/alife/evolution.html</ref>
+
However, in the last decade, research on evolutionary algorithms has fallen off sharply{{Citation needed|date=May 2010}}, and they have not lived up to their initial promise. Although they are a reasonable search technique in a wide variety of problems, they are not the best search technique in almost any field. Algorithms such as [[simulated annealing]], and fast [[integer programming]] solvers have largely superseded evolutionary algorithms in modern use. Evolutionary algorithms can be seen as an experimental test of Darwin's theory of evolution, and their eventual failure can be seen as a refutation of that theory{{Citation needed|date=May 2010}}.
  
==See Also==
+
==See also==
 
[[Monte Carlo method]]
 
[[Monte Carlo method]]
  
Line 23: Line 23:
 
==References==
 
==References==
 
<references />
 
<references />
[[category:mathematics]]
+
[[Category:Mathematics]]
 
[[Category:Computer Science]]
 
[[Category:Computer Science]]

Latest revision as of 01:12, July 25, 2020

An Evolutionary algorithm (EA) is a stochastic numerical analysis that takes its inspiration from the theory of evolution, particularly the optimization power of natural selection. The main thing that sets an evolutionary algorithm apart from other stochastic methods is the use of a fitness function to select for optimal solutions. New solutions are a created by allowing existing ones to breed with each other. Also many algorithms use random alterations in the coded solution similar to the biological principle of mutation. The fitness program selects solutions that better solve the problem and increases the frequency of that solution and its descendants in the over all population of solutions.

Types of Evolutionary algorithms

There are several different approaches to evolutionary computation the most frequently used fall into a few general categories:

  • Genetic algorithm - This is the most popular type of EA, it involves using strings of numbers as your solution set. It uses recombination, mutation, and selection to find optimal solution sets.
  • Genetic programming - Instead of strings of numbers, genetic programming uses whole programs and the fitness function is based on their ability to quickly and accurately solve the problem.
  • Evolutionary programming - Similar to genetic programming, but the logical structure of the programs do not change, rather the numerical constructs do.
  • Evolution strategy - Uses numerical vectors as a solution.

Popularity and usage

Evolutionary algorithms are general purpose optimizers because they do not require any assumptions about the landscape of the fitness function. They are used in a wide range of problems in diverse fields and have proven to be a highly effective numerical analysis method.

However, in the last decade, research on evolutionary algorithms has fallen off sharply[Citation Needed], and they have not lived up to their initial promise. Although they are a reasonable search technique in a wide variety of problems, they are not the best search technique in almost any field. Algorithms such as simulated annealing, and fast integer programming solvers have largely superseded evolutionary algorithms in modern use. Evolutionary algorithms can be seen as an experimental test of Darwin's theory of evolution, and their eventual failure can be seen as a refutation of that theory[Citation Needed].

See also

Monte Carlo method

Neural networks

Genetic algorithm

References