Automatic Creation of Taxonomies of Genetic Programming Systems

  • Mario Graff
  • Riccardo Poli
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5481)


A few attempts to create taxonomies in evolutionary computation have been made. These either group algorithms or group problems on the basis of their similarities. Similarity is typically evaluated by manually analysing algorithms/problems to identify key characteristics that are then used as a basis to form the groups of a taxonomy. This task is not only very tedious but it is also rather subjective. As a consequence the resulting taxonomies lack universality and are sometimes even questionable. In this paper we present a new and powerful approach to the construction of taxonomies and we apply it to Genetic Programming (GP). Only one manually constructed taxonomy of problems has been proposed in GP before, while no GP algorithm taxonomy has ever been suggested. Our approach is entirely automated and objective. We apply it to the problem of grouping GP systems with their associated parameter settings. We do this on the basis of performance signatures which represent the behaviour of each system across a class of problems. These signatures are obtained thorough a process which involves the instantiation of models of GP’s performance. We test the method on a large class of Boolean induction problems.


Genetic Programming Boolean Function Evolutionary Computation Tournament Selection Parallel Genetic Algorithm 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ashlock, D., Bryden, K., Corns, S.: On taxonomy of evolutionary computation problems. In: Proceedings of the 2004 IEEE Congress on Evolutionary Computation, Portland, Oregon, pp. 1713–1719. IEEE Press, Los Alamitos (2004)Google Scholar
  2. 2.
    Ashlock, D.A., Bryden, K.M., Corns, S., Schonfeld, J.: An updated taxonomy of evolutionary computation problems using graph-based evolutionary algorithms. In: Yen, G.G., Wang, L., Bonissone, P., Lucas, S.M. (eds.) Proceedings of the 2006 IEEE Congress on Evolutionary Computation, pp. 403–410. IEEE Press, Los Alamitos (2006)Google Scholar
  3. 3.
    Back, T., Fogel, D.B., Whitley, D., Angeline, P.J.: Mutation operators. In: Baeck, T., Fogel, D.B., Michalewicz, Z. (eds.) Evolutionary Computation 1 Basic Algorithms and Operators, ch. 32, pp. 237–255. Institute of Physics Publishing, Bristol (2000)CrossRefGoogle Scholar
  4. 4.
    Calégari, P., Coray, G., Hertz, A., Kobler, D., Kuonen, P.: A taxonomy of evolutionary algorithms in combinatorial optimization. J. Heuristics 5(2), 145–158 (1999)CrossRefzbMATHGoogle Scholar
  5. 5.
    Efron, B., Hastie, T., Johnstone, I., Tibshirani, R.: Least angle regression. Annals of Statistics (2004)Google Scholar
  6. 6.
    Graff, M., Poli, R.: Practical model of genetic programming’s performance on rational symbolic regression problems. In: O’Neill, M., Vanneschi, L., Gustafson, S., Esparcia-Alcázar, A., Falco, I.D., Cioppa, A.D., Tarantino, E. (eds.) EuroGP 2008. LNCS, vol. 4971, pp. 122–133. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  7. 7.
    Herrera, F., Lozano, M., Sánchez, A.M.: A taxonomy for the crossover operator for real-coded genetic algorithms: An experimental study. Int. J. Intell. Syst. 18(3), 309–338 (2003)CrossRefzbMATHGoogle Scholar
  8. 8.
    Jansen, T., Wegener, I.: The analysis of evolutionary algorithms - a proof that crossover really can help. Algorithmica 34(1), 47–66 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Johnson, S.: Hierarchical clustering schemes. Psychometrika 32(3), 241–254 (1967)CrossRefGoogle Scholar
  10. 10.
    Koza, J.R.: Genetic Programming. The MIT Press, Cambridge (1992)zbMATHGoogle Scholar
  11. 11.
    Langdon, W.B., Poli, R.: Foundations of Genetic Programming. Springer, Heidelberg (2002)CrossRefzbMATHGoogle Scholar
  12. 12.
    Martin, P.: Building a taxonomy of genetic programming. In: Spector, L., Goodman, E.D., Wu, A., Langdon, W.B., Voigt, H.-M., Gen, M., Sen, S., Dorigo, M., Pezeshk, S., Garzon, M.H., Burke, E. (eds.) Proceedings of the Genetic and Evolutionary Computation Conference (GECCO 2001), p. 182. Morgan Kaufmann, San Francisco (2001)Google Scholar
  13. 13.
    Nowostawski, M., Poli, R.: Parallel genetic algorithm taxonomy. In: Jain, L.C. (ed.) Proceedings of the Third International conference on knowledge-based intelligent information engineering systems (KES 1999), pp. 88–92. IEEE, Los Alamitos (1999)Google Scholar
  14. 14.
    Poli, R., Langdon, W.B., McPhee, N.F.: A field guide to genetic programming (2008), (With contributions by Koza, J.R)
  15. 15.
    Poli, R., Logan, B.: The evolutionary computation cookbook: Recipes for designing new algorithms. In: Proceedings of the Second Online Workshop on Evolutionary Computation, Nagoya, Japan (March 1996)Google Scholar
  16. 16.
    Vose, M.D.: The simple genetic algorithm: Foundations and theory. MIT Press, Cambridge (1999)zbMATHGoogle Scholar
  17. 17.
    Wolpert, D.H., Macready, W.G.: No free lunch theorems for optimization. IEEE Transactions on Evolutionary Computation 1(1), 67–82 (1997)CrossRefGoogle Scholar
  18. 18.
    Zhang, B.-T.: A taxonomy of control schemes for genetic code growth. In: The Workshop on Evolutionary Computation with Variable Size Representation at ICGA 1997, July 20 (1997)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Mario Graff
    • 1
  • Riccardo Poli
    • 1
  1. 1.School of Computer Science and Electronic EngineeringUniversity of EssexUK

Personalised recommendations