This paper describes the recently developed genetic programming paradigm which genetically breeds populations of computer programs to solve problems. In genetic programming, the individuals in the population are hierarchical compositions of functions and arguments. Each of these individual computer programs is evaluated for its fitness in handling the problem environment. The size and shape of the computer program needed to solve the problem is not predetermined by the user, but instead emerges from the simulated evolutionary process driven by fitness. In this paper, the operation of the genetic programming paradigm is illustrated with the problem of learning the Boolean 11-multiplexer function.
John R. Koza