Genetic programming (GP) is an evolutionary approach that extends genetic algorithms to allow the exploration of the space of computer programs. Like other evolutionary algorithms, GP works by defining a goal in the form of a quality criterion (or fitness) and then using this criterion to evolve a set (or population) of candidate solutions (individuals) by mimicking the basic principles of Darwinian evolution. GP breeds the solutions to problems using an iterative process involving the probabilistic selection of the fittest solutions and their variation by means of a set of genetic operators, usually crossover and mutation. GP has been successfully applied to a number of challenging real-world problem domains. Its operations and behavior are now reasonably well understood thanks to a variety of powerful theoretical results. In this chapter, we introduce the main definitions and features of GP and describe its typical operations. We then survey some of its applications. We also review some important theoretical results in this field, including some very recent ones, and discuss some of the most challenging open issues and directions for future research.
CITATION STYLE
Vanneschi, L., & Poli, R. (2012). Genetic programming - introduction, applications, theory and open issues. In Handbook of Natural Computing (Vol. 2–4, pp. 709–739). Springer Berlin Heidelberg. https://doi.org/10.1007/978-3-540-92910-9_24
Mendeley helps you to discover research relevant for your work.