An Analysis of Semantic Aware Crossover

  • Nguyen Quang Uy
  • Nguyen Xuan Hoai
  • Michael O’Neill
  • Bob McKay
  • Edgar Galván-López
Part of the Communications in Computer and Information Science book series (CCIS, volume 51)


It is well-known that the crossover operator plays an important role in Genetic Programming (GP). In Standard Crossover (SC), semantics are not used to guide the selection of the crossover points, which are generated randomly. This lack of semantic information is the main cause of destructive effects from SC (e.g., children having lower fitness than their parents). Recently, we proposed a new semantic based crossover known GP called Semantic Aware Crossover (SAC) [25]. We show that SAC outperforms SC in solving a class of real-value symbolic regression problems. We clarify the effect of SAC on GP search in increasing the semantic diversity of the population, thus helping to reduce the destructive effects of crossover in GP.


Semantic Aware Crossover Semantic Constructive Effect Bloat 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Beadle, L., Johnson, C.: Semantically driven crossover in genetic programming. In: Proc. IEEE WCCI 2008, pp. 111–116. IEEE Press, Los Alamitos (2008)Google Scholar
  2. 2.
    Burke, E.K., Gustafson, S., Kendall, G.: Diversity in genetic programming: An analysis of measures and correlation with fitness. IEEE Transactions on Evolutionary Computation 8(1), 47–62 (2004)CrossRefGoogle Scholar
  3. 3.
    Cleary, R., O’Neill, M.: An attribute grammar decoder for the 01 multi-constrained knapsack problem. In: Raidl, G.R., Gottlieb, J. (eds.) EvoCOP 2005. LNCS, vol. 3448, pp. 34–45. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    de la Cruz Echeand’a, M., de la Puente, A.O., Alfonseca, M.: Attribute grammar evolution. In: Mira, J., Álvarez, J.R. (eds.) IWINAC 2005. LNCS, vol. 3562, pp. 182–191. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  5. 5.
    Ghodrat, M.A., Givargis, T., Nicolau, A.: Equivalence checking of arithmetic expressions using fast evaluation. In: Proc. of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems – CASES 2005. ACM, New York (2005)Google Scholar
  6. 6.
    Hengpraprohm, S., Chongstitvatana, P.: Selective crossover in genetic programming. In: Proc. of ISCIT International Symposium on Communications and Information Technologies, November 2001, pp. 14–16 (2001)Google Scholar
  7. 7.
    Hien, N.T., Hoai, N.X.: A brief overview of population diversity measures in genetic programming. In: Proc. of 11th Asia-Pacific Workshop on Intelligent and Evolutionary Systems, October 2006, pp. 128–139. Vietnamese Military Technical Academy (2006)Google Scholar
  8. 8.
    Hoai, N.X., McKay, R., Essam, D.: Solving the symbolic regression problem with tree-adjunct grammar guided genetic programming: The comparative results. In: Proc. of CEC 2002, pp. 1326–1331. IEEE Press, Los Alamitos (2002)Google Scholar
  9. 9.
    Ito, T., Iba, H., Sato, S.: Depth-dependent crossover for genetic programming. In: Proc. of IEEE WCCI 1998, pp. 775–780. IEEE Press, Los Alamitos (1998)Google Scholar
  10. 10.
    Johnson, C.: Deriving genetic programming fitness properties by static analysis. In: Foster, J.A., Lutton, E., Miller, J., Ryan, C., Tettamanzi, A.G.B. (eds.) EuroGP 2002. LNCS, vol. 2278, pp. 298–308. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  11. 11.
    Johnson, C.: What can automatic programming learn from theoretical computer science. In: Proc. of the UK Workshop on Computational Intelligence. University of Birmingham (2002)Google Scholar
  12. 12.
    Johnson, C.: Genetic programming with fitness based on model checking. In: Ebner, M., O’Neill, M., Ekárt, A., Vanneschi, L., Esparcia-Alcázar, A.I. (eds.) EuroGP 2007. LNCS, vol. 4445, pp. 114–124. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Katz, G., Peled, D.: Genetic programming and model checking: Synthesizing new mutual exclusion algorithms. In: Cha, S(S.), Choi, J.-Y., Kim, M., Lee, I., Viswanathan, M. (eds.) ATVA 2008. LNCS, vol. 5311, pp. 33–47. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  14. 14.
    Katz, G., Peled, D.: Model checking-based genetic programming with an application to mutual exclusion. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 141–156. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  15. 15.
    Keijzer, M.: Alternatives in subtree caching for genetic programming. In: Keijzer, M., O’Reilly, U.-M., Lucas, S., Costa, E., Soule, T. (eds.) EuroGP 2004. LNCS, vol. 3003, pp. 328–337. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  16. 16.
    Koza, J.: Genetic Programming: On the Programming of Computers by Natural Selection. MIT Press, MA (1992)zbMATHGoogle Scholar
  17. 17.
    Majeed, H., Ryan, C.: A less destructive, context-aware crossover operator for GP. In: Collet, P., Tomassini, M., Ebner, M., Gustafson, S., Ekárt, A. (eds.) EuroGP 2006. LNCS, vol. 3905, pp. 36–48. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  18. 18.
    Majeed, H., Ryan, C.: On the constructiveness of context-aware crossover. In: Proc. of GECCO 2007, pp. 1659–1666. ACM Press, New York (2007)CrossRefGoogle Scholar
  19. 19.
    McPhee, N., Ohs, B., Hutchison, T.: Semantic building blocks in genetic programming. In: O’Neill, M., Vanneschi, L., Gustafson, S., Esparcia Alcázar, A.I., De Falco, I., Della Cioppa, A., Tarantino, E. (eds.) EuroGP 2008. LNCS, vol. 4971, pp. 134–145. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  20. 20.
    Mori, N.: A novel diversity measure of genetic programming. In: Proc. of Randomness and Computation: Joint Workshop “New Horizons in Computing” and “Statistical Mechanical Approach to Probabilistic Information, July 2005, pp. 18–21 (2005)Google Scholar
  21. 21.
    Mori, N., McKay, R., Hoai, N.X., Essam, D.: Equivalent decision simplification: A new method for simplifying algebraic expressions in genetic programming. In: Proc. of 11th Asia-Pacific Workshop on Intelligent and Evolutionary Systems (2007)Google Scholar
  22. 22.
    O’Reilly, U.M.: Using a distance metric on genetic programs to understand genetic operators. In: Proc. of IEEE International Conference on Systems, Man, and Cybernetics, Computational Cybernetics and Simulation, pp. 4092–4097. IEEE, Los Alamitos (1997)CrossRefGoogle Scholar
  23. 23.
    Poli, R., Langdon, W., McPhee, N.: A Field Guide to Genetic Programming (2008),
  24. 24.
    Poli, R., Langdon, W.B.: Genetic programming with one-point crossover. In: Proc. of Soft Computing in Engineering Design and Manufacturing Conference, pp. 180–189. Springer, Heidelberg (1997)Google Scholar
  25. 25.
    Uy, N.Q., Hoai, N.X., O’Neill, M.: Semantic aware crossover for genetic programming: the case for real-valued function regression. In: Vanneschi, L., et al. (eds.) EuroGP 2009. LNCS, vol. 5481, pp. 25–36. Springer, Heidelberg (2009)Google Scholar
  26. 26.
    Wong, M.L., Leung, K.S.: An induction system that learns programs in different programming languages using genetic programming and logic grammars. In: Proc.  of the 7th IEEE International Conference on Tools with Artificial Intelligence (1995)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Nguyen Quang Uy
    • 1
  • Nguyen Xuan Hoai
    • 2
  • Michael O’Neill
    • 1
  • Bob McKay
    • 2
  • Edgar Galván-López
    • 1
  1. 1.Natural Computing Research & Applications GroupUniversity College DublinIreland
  2. 2.School of Computer Science and EngineeringSeoul National UniversityKorea

Personalised recommendations