Principia Cybernetica Web

Applied Evolutionary Modeling

Biological evolution was able “to invent” the very complex, but very harmonious and efficient, living organisms. Could we imitate such invention ability in some artificial process in order to use it for our human practical needs? Implying such kind of ideas, several scientists attempted to design evolutionary computer algorithms, which could be “clever” enough to find the solutions of complex problems.

In 1966 L.J. Fogel, A.J. Owens, M.J. Walsh proposed and investigated the evolution of simple automata, which were intended to predict the symbols in digital sequences [1]. In 1975 J.H. Holland, in his seminal book “Adaptation in Artificial and Natural Systems”, proposed the scheme of the genetic algorithm [2]. Approximately at the same time, I. Rechenberg and H.-P. Schwefel developed the evolutionary strategies [3,4]. These works grounded the main directions of the developments of evolutionary algorithms.

Generally, an evolutionary algorithm (EA) is an optimization technique, which involves an evolving population of “individuals”. During the evolution, the individuals with high fitness are searched by means of selection, mutations and recombinations of individual genomes. Fitness is a multidimensional function of individual genes that must be optimized.

The main EAs are as follows:

  • genetic algorithms, which are intended to optimize discrete structures with a special attention to structure recombinations,
  • evolutionary programming, which focuses on optimizing continuous functions without recombination,
  • evolutionary strategies, which focus on optimizing continuous functions with recombination,
  • genetic programming, which uses the evolutionary technique to optimize computer programs [5].

As compared to usual optimization methods, the EAs have the following specific particularities: parallel search, random variations, and recombinations of already found solutions. EAs are well suited for the optimization of multidimensional, bad-defined functions. In particular, the genetic algorithm is often used as a heuristic method to solve complex combinatorial problems.

Numerous Internet links, as well as a comprehensive bibliography, concerning EAs, can be found in Hitch-Hiker’s Guide to Evolutionary Computation by J. Heitkoetter and D. Beasley.

Conclusion. Applied evolutionary modeling includes a family of EAs. The background of EAs is a general understanding of Darwinian evolution features. EAs are rather simple heuristic optimization techniques, which are well suited for the optimization of a wide variety of multidimensional, ill-defined functions.


1. Fogel, L.J., Owens, A.J. & Walsh, M.J. (1966) “Artificial Intelligence through Simulated Evolution”, New York: Wiley.

2. Holland, J.H. (1975) “Adaptation in Natural and Artificial systems”, Ann Arbor, MI: The University of Michigan Press. 2nd edn. (1992) Boston, MA: MIT Press.

3. Rechenberg, I. (1973, 1993 2nd edn) “Evolutionstrategie: Optimierung technischer Systeme nach Prinzipien der biologischen Evolution”, Stuttgart: Fromman-Holzboog.

4. Schwefel, H.-P. (1977) “Numerische Optimierung von Computer-Modellen mittels der Evolutionsstrategie”, Basel: Birkhaeuser.

5. Koza, J.R. (1992), “Genetic Programming: On the Programming of Computers by means of Natural Selection”, Cambridge, MA: MIT Press.

Copyright© 1999 Principia Cybernetica - Referencing this page

V.G. Red'ko

Feb 17, 1999


Metasystem Transition Theory

Evolutionary Theory

Mathematical Modeling of Evolution

Prev. Next

Genetic Algorithms


Add comment...