Memory with Memory in Tree-Based Genetic Programming

  • Riccardo Poli
  • Nicholas F. McPhee
  • Luca Citi
  • Ellery Crane
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5481)


In recent work on linear register-based genetic programming (GP) we introduced the notion of Memory-with-Memory (MwM), where the results of operations are stored in registers using a form of soft assignment which blends a result into the current content of a register rather than entirely replace it. The MwM system yielded very promising results on a set of symbolic regression problems. In this paper, we propose a way of introducing MwM style behaviour in tree-based GP systems. The technique requires only very minor modifications to existing code, and, therefore, is easy to apply. Experiments on a variety of synthetic and real-world problems show that MwM is very beneficial in tree-based GP, too.


Genetic Programming Prediction Problem Symbolic Regression Program Size Linear Genetic Programming 
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.
    Angeline, P.J.: An alternative to indexed memory for evolving programs with explicit state representations. In: Koza, J.R., Deb, K., Dorigo, M., Fogel, D.B., Garzon, M., Iba, H., Riolo, R.L. (eds.) Genetic Programming 1997: Proceedings of the Second Annual Conference, Stanford University, CA, USA, July 13-16, pp. 423–430. Morgan Kaufmann, San Francisco (1997)Google Scholar
  2. 2.
    Banzhaf, W., Nordin, P., Keller, R.E., Francone, F.D.: Genetic Programming – An Introduction; On the Automatic Evolution of Computer Programs and its Applications. Morgan Kaufmann, San Francisco (1998)zbMATHGoogle Scholar
  3. 3.
    Brave, S.: Evolving recursive programs for tree search. In: Angeline, P.J., Kinnear Jr., K.E. (eds.) Advances in Genetic Programming 2, ch. 10, pp. 203–220. MIT Press, Cambridge (1996)Google Scholar
  4. 4.
    Bruce, W.S.: Automatic generation of object-oriented programs using genetic programming. In: Koza, J.R., Goldberg, D.E., Fogel, D.B., Riolo, R.L. (eds.) Genetic Programming 1996: Proceedings of the First Annual Conference, Stanford University, CA, USA, July 28–31, pp. 267–272. MIT Press, Cambridge (1996)Google Scholar
  5. 5.
    Langdon, W.B.: Genetic Programming and Data Structures: Genetic Programming + Data Structures = Automatic Programming! Genetic Programming, vol. 1. Kluwer, Boston (1998)CrossRefzbMATHGoogle Scholar
  6. 6.
    Luck, S.J.: An Introduction to the Event-Related Potential Technique. MIT Press, Cambridge (2005)Google Scholar
  7. 7.
    McPhee, N.F., Poli, R.: Memory with memory: Soft assignment in genetic programming. In: Keijzer, M., Antoniol, G., Congdon, C.B., Deb, K., Doerr, B., Hansen, N., Holmes, J.H., Hornby, G.S., Howard, D., Kennedy, J., Kumar, S., Lobo, F.G., Miller, J.F., Moore, J., Neumann, F., Pelikan, M., Pollack, J., Sastry, K., Stanley, K., Stoica, A., Talbi, E.-G., Wegener, I. (eds.) GECCO 2008: Proceedings of the 10th annual conference on Genetic and evolutionary computation, Atlanta, GA, USA, pp. 1235–1242. ACM, New York (2008)Google Scholar
  8. 8.
    Poli, R., Langdon, W.B., McPhee, N.F.: A field guide to genetic programming. Published via (2008) (With contributions by Koza, J.R.),,
  9. 9.
    Spector, L., Klein, J., Keijzer, M.: The push3 execution stack and the evolution of control. In: Beyer, H.-G., O’Reilly, U.-M., Arnold, D.V., Banzhaf, W., Blum, C., Bonabeau, E.W., Cantu-Paz, E., Dasgupta, D., Deb, K., Foster, J.A., de Jong, E.D., Lipson, H., Llora, X., Mancoridis, S., Pelikan, M., Raidl, G.R., Soule, T., Tyrrell, A.M., Watson, J.-P., Zitzler, E. (eds.) GECCO 2005: Proceedings of the 2005 conference on Genetic and evolutionary computation, Washington DC, USA, vol. 2, pp. 1689–1696. ACM Press, New York (2005)Google Scholar
  10. 10.
    Spector, L., Robinson, A.: Genetic programming and autoconstructive evolution with the push programming language. Genetic Programming and Evolvable Machines 3(1), 7–40 (2002)CrossRefzbMATHGoogle Scholar
  11. 11.
    Teller, A.: The evolution of mental models. In: Kinnear Jr., K.E. (ed.) Advances in Genetic Programming, ch. 9, pp. 199–219. MIT Press, Cambridge (1994)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Riccardo Poli
    • 1
  • Nicholas F. McPhee
    • 2
  • Luca Citi
    • 1
  • Ellery Crane
    • 2
  1. 1.School of Computer Science and Electronic EngineeringUniversity of EssexUK
  2. 2.Division of Science and MathematicsUniversity of MinnesotaMorrisUSA

Personalised recommendations