Skip to main content

Advertisement

Log in

An improved representation for evolving programs

  • Original Paper
  • Published:
Genetic Programming and Evolvable Machines Aims and scope Submit manuscript

Abstract

A representation has been developed that addresses some of the issues with other Genetic Program representations while maintaining their advantages. This combines the easy reproduction of the linear representation with the inheritable characteristics of the tree representation by using fixed-length blocks of genes representing single program statements. This means that each block of genes will always map to the same statement in the parent and child unless it is mutated, irrespective of changes to the surrounding blocks. This method is compared to the variable length gene blocks used by other representations with a clear improvement in the similarity between parent and child. In addition, a set of list evaluation and manipulation functions was evolved as an application of the new Genetic Program components. These functions have the common feature that they all need to be 100% correct to be useful. Traditional Genetic Programming problems have mainly been optimization or approximation problems. The list results are good but do highlight the problem of scalability in that more complex functions lead to a dramatic increase in the required evolution time.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

References

  1. P.J. Angeline, J.B. Pollack, in The Evolutionary Induction of Subroutines, ed. by J. Kruschke. Proceedings of the Fourteenth Annual Conference of the Cognitive Science Society (Lawrence Erlbaum, Hillsdale, NJ, USA, 1992)

    Google Scholar 

  2. W. Banzhaf, in Genetic Programming for Pedestrians, ed. by S. Forrest. Proceedings of the 5th International Conference on Genetic Algorithms, ICGA-93 (Morgan Kaufmann, University of Illinois at Urbana-Champaign, 1993), p. 628

    Google Scholar 

  3. W. Banzhaf, P. Nordin, R. Keller, F. Francone, Genetic Programming—An Introduction; On the Automatic Evolution of Computer Programs and its Applications (Morgan Kaufmann, 1998)

  4. D. Cooke, Constructing Correct Software: The Basics (Springer-Verlag, London, UK, 1998)

    MATH  Google Scholar 

  5. J. Cooper, C. Hinde, in Improving Genetic Algorithms’ Efficiency Using Intelligent Fitness Functions, ed. by P. Chung, C. Hinde, M. Ali. 16th International Conference on Industrial and Engineering Applications of Artificial Intelligence and Expert Systems, IEA/AIE’03, Loughborough, UK, June 23–26, 2003, Proceedings (Springer, Berlin, 2003), pp. 636–644

  6. N. Cramer, in A Representation for the Adaptive Generation of Simple Sequential Programs, ed. by J. Grefenstette. Proceedings of the First International Conference on Genetic Algorithms (Lawrence Erlbaum Associates Inc., Mahwah, NJ, USA, 1985), pp. 183–187

    Google Scholar 

  7. D. Fogel, The Fossil Record (IEEE Press, 1998)

  8. L. Fogel, A. Owens, M. Walsh, Artificial Intelligence Through Simulated Evolution (John Wiley & Sons, Inc., 1966)

  9. J.J. Freeman, in A Linear Representation for GP Using Context Free Grammars, ed. by J. Koza, W. Banzhaf, K. Chellapilla, K. Deb, D. Fogel, M. Garzon, D. Goldberg, H. Iba, R. Riolo. Genetic Programming 1998: Proceedings of the Third Annual Conference (Morgan Kaufmann, San Francisco, CA, 1998), pp. 72–77

    Google Scholar 

  10. R. Friedberg, A Learning Machine: Part I. IBM J. Res. Dev. 2(1), 2–13 (1958)

    Article  MathSciNet  Google Scholar 

  11. R.D.B. Friedberg, T. North, A Learning Machine: Part II. IBM J. Res. Dev. 3(3), 282–287 (1959)

    MathSciNet  Google Scholar 

  12. C. Fujiki, An Evaluation of Holland’s Genetic Operators Applied to a Program Generator, Master’s thesis, University of Idaho, Moscow, ID, 1986

  13. C. Fujiki, J. Dickinson, in Using the Genetic Algorithm to Generate LISP Source Code to Solve the Prisoner’s Dilemma, ed. by J. Grefenstette. Genetic Algorithms and their Applications: Proc. of the 2nd Intern. Conf. on Genetic Algorithms (Lawrence Erlbaum, 1987), pp. 236–240

  14. R. Gross, K. Albrecht, W. Kantschik, W. Banzhaf. in Evolving Chess Playing Programs, ed. by W.B. Langdon, E. Cantú-Paz, K. Mathias, R. Roy, D. Davis, R. Poli, K. Balakrishnan, V. Honavar, G. Rudolph, J. Wegener, L. Bull, M.A. Potter, A.C. Schultz, J.F. Miller, E. Burke, N. Jonoska. GECCO 2002: Proceedings of the Genetic and Evolutionary Computation Conference (Morgan Kaufmann, 2002), pp. 740–747

  15. M. Harrison, Introduction to Formal Language Theory (Addison Wesley, London, UK, 1978)

    MATH  Google Scholar 

  16. M. Hemberg, U.M. O’Reilly, P. Nordin, in GENR8: A Design Tool for Surface Generation, ed. by H. Beyer, E. Cantu-Paz, D. Goldberg, S. Parmee, D. Whitley. Late Breaking Papers, GECCO 2001 (Morgan Kaufmann, 2001)

  17. J. Hinklin, Application of the Genetic Algorithm to Automatic Program Generation, Master’s thesis, University of Idaho, Moscow, ID, 1986

  18. J. Holland, Adaption in Natural and Artificial Systems (The University of Michigan Press, 1975)

  19. S. Jones, C. Hinde, in Preservation of Schemata Using Introns, ed. by G.M. Coghill. Proceedings of the 2007 Workshop on Computational Intelligence (University of Aberdeen, London, England, 2007)

    Google Scholar 

  20. W. Kantschik, W. Banzhaf, in Linear-Tree GP and its comparison with other GP structures, ed. by J.F. Miller, M. Tomassini, P.L. Lanzi, C. Ryan, A.G.B. Tettamanzi, W.B. Langdon. Genetic Programming, Proceedings of EuroGP’2001, vol. 2038 of LNCS (Springer-Verlag, Berlin, 2001), pp. 302–312

  21. W. Kantschik, W. Banzhaf, in Linear-Graph GP-A New GP Structure, ed. by J.F. Miller, M. Tomassini, P.L. Lanzi, C. Ryan, A.G.B. Tettamanzi, W.B. Langdon. Genetic Programming, Proceedings of EuroGP’2002, vol. 2278 of LNCS (Springer-Verlag, Berlin, 2002), pp. 83–92

  22. M. Keijzer, M. Cattolico, in An Example of the Use of Context-Sensitive Constraints in the ALP System. Grammatical Evolution Workshop, GECCO 2002 (Morgan Kaufmann, San Francisco, CA, USA, 2002)

  23. R.E. Keller, W. Banzhaf, in Genetic Programming using Genotype-Phenotype Mapping from Linear Genomes into Linear Phenotypes. Genetic Programming (The MIT Press, Cambridge, MA, 1996)

  24. J. Koza, in Hierarchical Genetic Algorithms Operating on Populations of Computer Programs, ed. by N. Srindharan. Proc. of the 11th Intern. Joint Conf. on Artificial Intelligence (Morgan Kaufmann, San Francisco, CA, USA, 1989), pp. 768–774

  25. J. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection (MIT Press, 1992)

  26. J. Koza, Genetic Programming II: Automatic Discovery of Reusable Programs (MIT Press, 1994)

  27. J. Koza, D. Andre, F. Bennett, M. Keane, Genetic Programming 3: Darwinian Invention and Problem Solving (Morgan Kaufmann, San Francisco, CA, USA, 1999)

  28. D. Montana, Strongly typed genetic programming. Evol. Comput. 3(2), 199–230 (1995)

    Article  Google Scholar 

  29. J. Niehaus, W. Banzhaf, in Adaption of Operator Probabilities in Genetic Programming, ed. by J.F. Miller, M. Tomassini, P.L. Lanzi, C. Ryan, A.G.B. Tettamanzi, W.B. Langdon. Genetic Programming, Proceedings of EuroGP’2001, vol. 2038 of LNCS (Springer-Verlag, Berlin, 2001), pp. 325–336

  30. J.P. Nordin, in A Compiling Genetic Programming System that Directly Manipulates the Machine Code, ed. by J.K. Kinnear. Proceedings of the Sixth International Conference of Genetic Algorithms (MIT Press, Cambridge, 1995)

    Google Scholar 

  31. M. O’Neill, C. Ryan, in Evolving Multi-line Compilable C Programs, ed. by R. Poli, P. Nordin, W.B. Langdon, Fogarty T.C. Genetic Programming, Proceedings of EuroGP’99, vol. 1598 of LNCS (Springer-Verlag, Berlin, 1999), pp. 83–92

  32. M. O’Neill, T. Brabazon, C. Ryan, J.J. Collins, in Developing a Market Timing System using Grammatical Evolution, ed. by H. Beyer, E. Cantu-Paz, D. Goldberg, S. Parmee, D. Whitley. Proceedings of GECCO 2001 (Morgan Kaufmann, San Francisco, CA, USA, 2001)

  33. N. Paterson, M. Livesey, in Distinguishing Genotype and Phenotype in Genetic Programming, ed. by J. Koza, D. Goldberg, D. Fogel, R. Riolo. Late-breaking Papers, Genetic Programming 1996: Proceedings of the First Annual Conference (MIT Press, Cambridge, MA, 1996)

    Google Scholar 

  34. N. Paterson, M. Livesey, in Evolving Caching Algorithms in C by Genetic Programming, ed. by Genetic Programming 1997 (Morgan Kaufmann, San Francisco, CA, USA, 1997), pp. 262–267

  35. T. Perkis, in Stack-based Genetic Programming. IEEE World Congress on Computational Intelligence (IEEE Press, 1994), pp. 148–153

  36. B. Ross, Logic-based Genetic Programming with Definite Clause Translation Grammars’. Technical Report CS-99-92 (Brock University, 1999)

  37. C. Ryan, J. Collins, M. O’Neill, in Grammatical Evolution: Evolving Programs for an Arbitrary Language, ed. by W. Banzhaf, R. Poli, M. Schoenauer, T. Fogarty. EuroGP’98 (Springer, Berlin, 1998), pp. 83–95

    Google Scholar 

  38. C. Ryan, J. Collins, M. O’Neill, in Grammatical Evolution: Solving Trigonometric Identities. Proceedings of Mendel’98: 4th International Conference on Genetic Algorithms, Optimization Problems, Fuzzy Logic, Neural Networks and Rough Sets (Technical University of Brno, Brno, Czech Republic, 1998), pp. 111–119

  39. S. Smith, in Flexible Learning of Problem Solving Heuristics Through Adaptive Search, ed. by A. Bundy. IJCAI (William Kaufmann, Los Altos, CA, 1983), pp. 422–425

    Google Scholar 

  40. G. Syswerda, in Uniform Crossover in Genetic Algorithms, ed. by J. Schaffer. Proceedings of Third International Conference on Genetic Algorithms (Morgan Kaufmann, San Francisco, CA, USA, 1989), pp. 2–9

    Google Scholar 

  41. A. Teller, M. Veloso, PADO: Learning Tree Structured Algorithms for Orchestration into an Object Recognition System’. Technical Report CMU-CS-95 (Department of Computer Science, Carnegie Mellon University, Pittsburgh, PA, 1995)

  42. L. Wall, T. Christiansen, R. Schwartz, Programming Perl, 2nd edn. (O’Reilly & Associates Inc., 1996)

  43. P. Whigham, in Grammatically-based Genetic Programming, ed. by J. Rosca. Proceedings of the Workshop on Genetic Programming: From Theory to Real-World Applications (National Resource Laboratory for the Study of Brain and Behavior, 1995), pp. 33–41

  44. M. Wineberg, F. Oppacher, in A Representation Scheme to Perform Program Induction in a Canonical Genetic Algorithm, ed. by Y. Davidor, H.-P. Schwefel, M. Schwefel. Parallel Problem Solving from Nature III, vol. 866 of Lecture Notes in Computer Science (Springer, Berlin, 1994), pp. 86–96

  45. M. Wineberg, F. Oppacher, in The Benefits of Computing with Introns, ed. by J. Koza, D. Goldberg, D. Fogel, R. Riolo. Genetic Programming 1996: Proceedings of the First Annual Conference (The MIT Press, Cambridge, MA, 1996), pp. 410–415

    Google Scholar 

  46. M. Withall, C. Hinde, R. Stone, in Evolving the User Interface, ed. by M. Withall, C. Hinde. Proceedings of the 2004 UK Workshop on Computational Intelligence (Loughborough University, Loughborough, 2004), pp. 86–96

    Google Scholar 

  47. T. Yu, in Polymorphism and Genetic Programming, ed. by J.F. Miller, M. Tomassini, P.L. Lanzi, C. Ryan, A.G.B. Tettamanzi, W.B. Langdon. Genetic Programming, Proceedings of EuroGP’2001, vol. 2038 (Springer-Verlag, Berlin, 2001), pp. 218–233

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to C. J. Hinde.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Withall, M.S., Hinde, C.J. & Stone, R.G. An improved representation for evolving programs. Genet Program Evolvable Mach 10, 37–70 (2009). https://doi.org/10.1007/s10710-008-9069-7

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10710-008-9069-7

Keywords

Navigation