Evolutionary Computing is a broad term to encompass a number of variants with various names like Genetic Algorithms, Evolution Strategies, Genetic Programming, Evolutionary Programming etc. which have developed historically differently. So basically Genetic Programing is a part of Evolutionary Computing. Evolutionary Computing is technically or rather by hierarchy falls inside Artificial Intelligence. In this article we will discuss mainly Evolutionary Computing, touching Genetic Programing marginally. There are reasons, Evolutionary Computing needs to be discussed first.
Basic Concept of Evolutionary Computing
Evolutionary Computing encompass a class of stochastic procedures which are the basic principles of biological evolution. At the beginning evolutionary algorithm was used to find possible solutions needed to be solved. Evolutionary algorithms right now has been a subset of evolutionary computing. Evolutionary algorithm is actually the God Father of Evolutionary Computing.
As on Internet, several self proclaimed pseudo experts of other fields exists, Evolutionary Computing has been wrongly discussed on many places.
In addition, the concept of Evolutionary Computing has been established on methods based on swarm intelligence. The aspects and prospects of Evolutionary Computing is not only the development of Digital organism, Artificial Immune System, Cellular Automation, Mind Uploading but also a bigger field – Surgical Robotics.
During evolution changes in the genetic material adapted to highly complex life forms. There is thus a very difficult optimization problem with varying targets. The amazing thing is the relative simplicity of the control mechanisms. In a simple model of the process can be traced back only three biological principles that are iteratively run through again and again: mutation, recombination and selection. Evolutionary algorithm approach tried to mimic those principles to solve complex optimization problems similar to an efficient manner for solving problems related to applied technical field, Evolutionary Computing took birth to change it to the right direction, to solve the problems of human diseases or to enhance the life somehow. Artificial Immune System, Cellular Automation are such examples.
Evolutionary Computing and Genetic Programing
Genetic Programming is now a part of Evolutionary Computing, can work as mathematical function with numbers, variables and operations as nodes. The objective function is called symbolic regression.
Fundamental work on Genetic Programming was done by John Koza. As individual, he used program in simple programming language LISP. Other approaches are based on linear programs.
Why these are part of Evolutionary Computing and what Evolutionary Computing has to do more, we will reveal gradually in details on parts of Evolutionary Computing. Genetic Programing falls inside Evolutionary Computing as in your DNA there are old data, that are not used now by your body but was used 20 thousands years ago (or more) by some of your Great Grand Father.
Prof.Dr. A.E. Eiben is the practical God Father of all aspects of Evolutionary Computing, Wikipedia copied everything he provided for free, but forgot to create a page about him.