Genetic programming typically uses an evolutionary algorithm as its main search engine. However, this is not the only option. The use of simulated annealing and hill climbing to search the space of computer programs was mentioned in Section 5.4 . This chapter considers recent work where the exploration is performed by population-based search algorithms which adapt and sample probability distributions instead of using traditional genetic operators.
Sampling from a probability distribution means generating random values whose statistical properties match those of the given distribution. For example, if one sampled a univariate Gaussian distribution, one would expect the resulting values to tend to have mean and standard deviation similar to the mean and standard deviation of the Gaussian. The notion of sampling can be extended to much more complex distributions involving multiple variables. Furthermore, discrete as well as continuous variables are possible.