Main Page

From formulasearchengine
Revision as of 18:05, 14 August 2014 by CortneyPumphrey (talk | contribs)
Jump to navigation Jump to search

In computer science, differential evolution (DE) is a method that optimizes a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality. Such methods are commonly known as metaheuristics as they make few or no assumptions about the problem being optimized and can search very large spaces of candidate solutions. However, metaheuristics such as DE do not guarantee an optimal solution is ever found.

DE is used for multidimensional real-valued functions but does not use the gradient of the problem being optimized, which means DE does not require for the optimization problem to be differentiable as is required by classic optimization methods such as gradient descent and quasi-newton methods. DE can therefore also be used on optimization problems that are not even continuous, are noisy, change over time, etc.[1]

DE optimizes a problem by maintaining a population of candidate solutions and creating new candidate solutions by combining existing ones according to its simple formulae, and then keeping whichever candidate solution has the best score or fitness on the optimization problem at hand. In this way the optimization problem is treated as a black box that merely provides a measure of quality given a candidate solution and the gradient is therefore not needed.

DE is originally due to Storn and Price.[2][3] Books have been published on theoretical and practical aspects of using DE in parallel computing, multiobjective optimization, constrained optimization, and the books also contain surveys of application areas.[4][5][6]

Algorithm

A basic variant of the DE algorithm works by having a population of candidate solutions (called agents). These agents are moved around in the search-space by using simple mathematical formulae to combine the positions of existing agents from the population. If the new position of an agent is an improvement it is accepted and forms part of the population, otherwise the new position is simply discarded. The process is repeated and by doing so it is hoped, but not guaranteed, that a satisfactory solution will eventually be discovered.

Formally, let be the cost function which must be minimized or fitness function which must be maximized. The function takes a candidate solution as argument in the form of a vector of real numbers and produces a real number as output which indicates the fitness of the given candidate solution. The gradient of is not known. The goal is to find a solution for which for all in the search-space, which would mean is the global minimum. Maximization can be performed by considering the function instead.

Let designate a candidate solution (agent) in the population. The basic DE algorithm can then be described as follows:

Note that is called the differential weight and is called the crossover probability, both these parameters are selectable by the practitioner along with the population size see below.

Parameter selection

Performance landscape showing how the basic DE performs in aggregate on the Sphere and Rosenbrock benchmark problems when varying the two DE parameters and , and keeping fixed =0.9.

The choice of DE parameters and can have a large impact on optimization performance. Selecting the DE parameters that yield good performance has therefore been the subject of much research. Rules of thumb for parameter selection were devised by Storn et al.[3][4] and Liu and Lampinen.[7] Mathematical convergence analysis regarding parameter selection was done by Zaharie.[8] Meta-optimization of the DE parameters was done by Pedersen [9][10] and Zhang et al.[11]

Variants

Variants of the DE algorithm are continually being developed in an effort to improve optimization performance. Many different schemes for performing crossover and mutation of agents are possible in the basic algorithm given above, see e.g.[3] More advanced DE variants are also being developed with a popular research trend being to perturb or adapt the DE parameters during optimization, see e.g. Price et al.,[4] Liu and Lampinen,[12] Qin and Suganthan,[13] Civicioglu [14] and Brest et al.[15]

See also

References

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

External links

  • Storn's Homepage on DE featuring source-code for several programming languages.
  • Fast DE Algorithm A Fast Differential Evolution Algorithm using k-Nearest Neighbour Predictor.
  • MODE Application Parameter Estimation of a Pressure Swing Adsorption Model for Air Separation Using Multi-objective Optimisation and Support Vector Regression Model.

Template:Major subfields of optimization

  1. Cite error: Invalid <ref> tag; no text was provided for refs named elediadereview
  2. Cite error: Invalid <ref> tag; no text was provided for refs named storn97differential
  3. 3.0 3.1 3.2 Cite error: Invalid <ref> tag; no text was provided for refs named storn96usage
  4. 4.0 4.1 4.2 Cite error: Invalid <ref> tag; no text was provided for refs named price05differential
  5. Cite error: Invalid <ref> tag; no text was provided for refs named feoktistov06differential
  6. Cite error: Invalid <ref> tag; no text was provided for refs named chakraborty08advances
  7. Cite error: Invalid <ref> tag; no text was provided for refs named liu02setting
  8. Cite error: Invalid <ref> tag; no text was provided for refs named zaharie02critical
  9. Cite error: Invalid <ref> tag; no text was provided for refs named pedersen08thesis
  10. Cite error: Invalid <ref> tag; no text was provided for refs named pedersen10good-de
  11. Cite error: Invalid <ref> tag; no text was provided for refs named zhang11fitting
  12. Cite error: Invalid <ref> tag; no text was provided for refs named liu05fuzzy
  13. Cite error: Invalid <ref> tag; no text was provided for refs named qin05selfadaptive
  14. 14.0 14.1 Cite error: Invalid <ref> tag; no text was provided for refs named civici
  15. Cite error: Invalid <ref> tag; no text was provided for refs named brest06selfadapting