Advertisement

Genetic Programming and Evolvable Machines

, Volume 2, Issue 4, pp 345–380 | Cite as

Hierarchical Processing for Evolving Recursive and Modular Programs Using Higher-Order Functions and Lambda Abstraction

Article

Abstract

We present a novel approach using higher-order functions and λ abstraction to evolve recursive and modular programs. Moreover, a new term “structure abstraction” is introduced to describe the property emerged from the higher-order function program structure. We test this technique on the general even-parity problem. The results indicate that this approach is very effective with the general even-parity problem due to the appropriate selection of the foldr higher-order function. Initially, foldr structure abstraction identify the promising area of the search space at generation zero. Once the population is within the promising area, foldr structure abstraction provides hierarchical processing for search. Consequently, solutions to the general even-parity problem are found very efficiently. We identify the limitations of this new approach and conclude that only when the appropriate higher-order function is selected that the benefits of structure abstraction show.

genetic programming hierarchical processing recursion structure abstraction higher-order functions lambda abstraction polymorphism type systems 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    P. J. Angeline and J. Pollack, “The evolutionary induction of subroutines,” The Fourteenth Annual Conference of the Cognitive Science Society, Lawrence Erlbaum: Bloomington, Indiana, 1992, pp. 236-241.Google Scholar
  2. 2.
    P. J. Angeline and J. Pollack, “Evolutionary module acquisition,” in Proc. Second Annual Conf. Evolutionary Programming, D. B. Fogel and W. Atmar (eds.), Evolutionary Programming Society: La Jolla, CA, 1993, pp. 154-163.Google Scholar
  3. 3.
    P. J. Angeline, “Genetic programming and emergent intelligence,” in Advances in Genetic Programming, K. E. Kinnear, Jr. (ed.), MIT Press: Cambridge, MA, 1994, pp. 75-98.Google Scholar
  4. 4.
    P. J. Angeline, “A historical perspective on the evolution of executable structures,” Fundamenta Informaticae, vol. 36(1-4), pp. 179-195, 1998.Google Scholar
  5. 5.
    W. Banzhaf D. Banscherus, and P. Dittrich, “Hierarchical genetic programming using local modules,” Reihe cl 56/98. SFB 531, University of Dortmund, 1998.Google Scholar
  6. 6.
    A. S. Bickel and R. W. Bickel, “Tree structured rules in genetic algorithms,” in Genetic Algorithms and Their Applications, Proc. Second Int. Conf. Genetic Algorithms, J. J. Grefenstette (ed.), Lawrence Erlbaum: Cambridge, MA, pp. 77-81, 1987.Google Scholar
  7. 7.
    S. Brave, “Evolving recursive programs for tree search,” Advances in Genetic Programming II, P. J. Angeline and K. E. Kinnear, Jr. (eds.), MIT Press: Cambridge, MA, 1996, pp. 203-219. hierarchical processing 379Google Scholar
  8. 8.
    K. Chellapilla, “Evolving computer programs without subtree crossover,” IEEE Trans. Evolutionary Comput., vol. 1(3), pp. 209-216, 1997.Google Scholar
  9. 9.
    N. L. Cramer, “Representation for the adaptive generation of simple sequential programs,” in Proc. Int. Conf. Genetic Algorithms and Their Applications, J. J. Grefenstette (ed.), Lawrence Erlbaum: Hillsdale, NJ, 1985, pp. 183-187.Google Scholar
  10. 10.
    A. Dessi A. Giani, and A. Starita, “An analysis of automatic subroutine discovery in genetic programming,” in Proc. Genetic and Evolutionary Comput. Conf., W. Banzhaf J. Daida A. Eiben M. Garzon V. Hanavar M. Jakiela, and R. Smith (eds.), Morgan Kaufmann: Los Altos, CA, 1999, pp. 996-1001.Google Scholar
  11. 11.
    Discipulus, Register Machine Learning Technologies, Inc. Littleton, CO, 1998.Google Scholar
  12. 12.
    L. J. Fogel A. J. Owens, and M. J. Walsh, Artificial Intelligence through Simulated Evolution, Wiley: New York, 1966.Google Scholar
  13. 13.
    R. M. Friedberg, “A learning machine: Part I,” IBM J. Research and Development, vol. 2(1), pp. 2-13, 1958.Google Scholar
  14. 14.
    R. M. Friedberg B. Dunham, and J. H. North, “A learning machine: Part II,” IMB J. Research and Development, vol. 3, pp. 282-287, 1959.Google Scholar
  15. 15.
    C. Fujiki, An evaluation of Holland's genetic operators applied to a program generator, Master's thesis, University of Idaho, Moscow, ID.Google Scholar
  16. 16.
    C. Fujiki and J. Dickinson, “Using the genetic algorithm to generate LISP source code to solve the prisoner's dilemma,” in Genetic Algorithms and Their Applications, Proc. Second Int. Conf. Genetic Algorithms, J. J. Grefenstette (ed.), Lawrence Erlbaum: Hillsdale, NJ, 1987, pp. 236-240.Google Scholar
  17. 17.
    C. Gathercole and P. Ross, “Tackling the boolean even n parity problem with genetic programming and limited-error fitness,” in Genetic Programming 1997, Proc. Second Ann. Conf., Stanford University, J. R. Koza K. Deb M. Dorigo D. B. Fogel M. Garzon H. Iba, and R. L. Riolo (eds.), Morgan Kaufmann: Los Altos, CA, 1997, pp. 119-127.Google Scholar
  18. 18.
    S. G. Handley, “The automatic generations of plans for a mobile robot via genetic programming with automatically defined functions,” Advances in Genetic Programming, K. E. Kinnear, Jr. (ed.), MIT Press: Cambridge, MA, 1994, pp. 391-401.Google Scholar
  19. 19.
    J. F. Hicklin, Application of the genetic algorithm to automatic program generation, Master Thesis, University of Idaho, Moscow, ID, 1986.Google Scholar
  20. 20.
    C. A. R. Hoare, “Algorithm 63, Partition, Algorithm 64, Quicksort,” Commun. ACM, vol. 4, p. 321, 1961.Google Scholar
  21. 21.
    P. Hudak, “Conception, evolution, and application of functional programming languages,” ACM Comput. Surveys, vol. 21(3), pp. 359-411, 1989.Google Scholar
  22. 22.
    K. E. Kinnear Jr., “Alternatives in automatic function definition: A comparison of performance,” Advances in Genetic Programming, K. E. Kinnear, Jr. (ed.), MIT Press: Cambridge, MA, 1994, pp. 119-141.Google Scholar
  23. 23.
    J. R. Koza D. Andre F. H. Bennett III, and M. Keane, “Use of automatically defined functions and architecture-altering operations in automated circuit synthesis using genetic programming,” in Genetic Programming 1996, Proc. First Ann. Conf., Stanford University, CA, J. R. Koza D. E. Goldberg D. B. Fogel and R. L. Riolo (eds.), MIT Press: Cambridge, 1996, MA, pp. 132-149.Google Scholar
  24. 24.
    J. R. Koza, “Hierarchical genetic algorithms operating on populations of computer programs,” in Proc. 11th Int. Conf. Artificial Intell., Detroit, MI, N. S. Sridharan (ed.), vol. I, Morgan Kaufmann: Los Altos, CA, 1989, pp. 768-774.Google Scholar
  25. 25.
    J. R. Koza, “Genetically breeding populations of computer programs to solve problems in Artificial Intelligence,” in Proc. Second Int. Conf. Tools for AI, IEEE Computer Society Press: Herndon, Virginia, 1990, pp. 819-827.Google Scholar
  26. 26.
    J. R. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection, MIT Press: Cambridge, MA, 1992.Google Scholar
  27. 27.
    J. R. Koza, Genetic Programming II: Automatic Discovery of Reusable Programs, MIT Press: Cambridge, MA, 1994.Google Scholar
  28. 28.
    J. R. Koza, “Scalable learning in genetic programming using automatic function definition,” Advances in Genetic Programming, K. E. Kinnear, Jr. (ed.), MIT Press: Cambridge, MA, 1994, pp. 99-117.Google Scholar
  29. 29.
    J. R. Koza, “Evolving the architecture of a multi-part program in genetic programming using architecture-altering operations,” in Evolutionary Programming IV, Proc. Fourth Ann. Conf. Evolutionary Programming, San Diego, CA, J. R. McDonnell R. G. Reynolds, and D. B. Fogel (eds.), MIT Press: Cambridge, MA, 1995, pp. 695-717.Google Scholar
  30. 30.
    W. B. Langdon and R. Poli, “Why 'building blocks' don't work on parity problems,” Technical report CSRP-98-17, The University of Birmingham, 1998.Google Scholar
  31. 31.
    W. B. Langdon, “Scaling of program fitness space,” Evolutionary Comput., vol. 7(4), pp. 339-421, 1999.Google Scholar
  32. 32.
    N. J. Nillson, Principles of Artificial Intelligence, Morgan Kaufmann: Los Altos, CA, 1980.Google Scholar
  33. 33.
    R. Poli J. Page, and W. B. Langdon, “Smooth uniform crossover, sub-machine code GP and demes: A recipe for solving high-order boolean parity problem,” in Proc. Genetic and Evolutionary Comput. Conf., Orlando, Florida, W. Banzhaf J. Daida A. Eiben M. Garzon V. Hanavar M. Jakiela, and R. Smith (eds.), Morgan Kaufmann: Los Altos, CA, 1999, pp. 1162-1169.Google Scholar
  34. 34.
    S. C. Robert D. Howard, and J. R. Koza, “Evolving modules in genetic programming by subtree encapsulation,” in Proc. Fourth European Conf. Genetic Programming, Lake Como, Italy, J. F. Miller M. Tomassini P. L. Lanzi C. Ryan A. G. B. Tettamanzi, and W. B. Langdon (eds.), Springer: Berlin, 2001, pp. 160-175.Google Scholar
  35. 35.
    J. P. Rosca and D. H. Ballard, “Hierarchical self-organization in genetic programming,” in Proc. Eleventh Int. Conf. Machine Learning, Morgan Kaufmann: Los Altos, CA, 1994, pp. 251-258.Google Scholar
  36. 36.
    J. P. Rosca and D. H. Ballard, “Discovery of subroutines in genetic programming,” Advances in Genetic Programming II, P. J. Angeline and K. E. Kinnear, Jr. (eds.), MIT Press: Cambridge, MA, 1996, pp. 177-201.Google Scholar
  37. 37.
    J. P. Rosca, “Genetic programming exploratory power and the discovery of functions,” in Evolutionary Programming IV, Proc. Fourth Ann. Conf. Evolutionary Programming, San Diego, CA, J. R. McDonnell R G. Reynolds and D. B. Fogel (eds.), MIT Press: Cambridge, MA, 1995, pp. 719-736.Google Scholar
  38. 38.
    J. P. Rosca, Hierarchical Learning with Procedural Abstraction Mechanisms, Ph.D. Thesis, University of Rochester, Rochester, NY.Google Scholar
  39. 39.
    L. Spector, “Simultaneous evolution of programs and their control structures,” Advances in Genetic Programming II, P. J. Angeline and K. E. Kinnear, Jr. (eds.), MIT Press: Cambridge, MA, 1996, pp. 137-154.Google Scholar
  40. 40.
    A. M. Turing, “On computable numbers, with an application to the entscheidungs problem,” in Proc. London Math. Soc., Series 2 vol. 42, 1936-1937, pp. 230-265.Google Scholar
  41. 41.
    P. A. Whigham and R. I. McKay, “Genetic approaches to learning recursive relations,” in Progress in Evolutionary Computation, Yao, X. (ed.), Springer-Verlag: Heidelberg, Germany, 1995, pp. 17-27.Google Scholar
  42. 42.
    P. A. Whigham, Grammatical Bias for Evolutionary Learning, Ph.D. Thesis, University of New South Wales, Australian Defence Force Academy, 1996.Google Scholar
  43. 43.
    D. H. Wolpert and W. G. Macready, “No free lunch theorems for optimization,” IEEE Trans. Evolut. Comput., vol. 1(1), pp. 67-82, 1997.Google Scholar
  44. 44.
    M. L. Wong and K. S. Leung, “Evolving recursive functions for the even-parity problem using genetic programming,” in Advances in Genetic Programming II, P. J. Angeline and K. E. Kinnear, Jr. (eds.), MIT Press: Cambridge, MA, 1996, pp. 222-240.Google Scholar
  45. 45.
    T. Yuand P. Bentley, “Methods to evolve legal phenotypes,” in Fifth Int. Conf. Parallel Problem Solving from Nature, A. E. Eiben T. Bäck M. Schoenauer, and H.-P. Schwefel (eds.), Springer: Amsterdam, 1998, pp. 280-291.Google Scholar
  46. 46.
    T. Yuand C. Clack, “PolyGP: a polymorphic genetic programming system in Haskell,” in Genetic Programming 1998, Proc. Third Ann. Conf., University of Wisconsin, Madison, WI, J. R. Koza W. Banzhaf K. Chellapilla K. Deb M. Dorigo D. B. Fogel M. H. Garzon D. E. Goldberg H. Iba, and R. Riolo (eds.), pp. 416-421, Morgan Kaufmann: Los Altos, CA, 1998.Google Scholar
  47. 47.
    T. Yu and J. Miller, “Neutrality and the evolvability of boolean function landscape, ” in Proc. Fourth European Conf. Genetic Programming, Lake Como, Italy, J. F. Miller M. Tomassini P. L. Lanzi C. Ryan A. G. B. Tettamanzi and W. B. Langdon (eds.), Springer: Berlin, 2001, pp. 204-217.Google Scholar
  48. 48.
    T. Yu, An Analysis of the Impact of Functional Programming Techniques on Genetic Programming, Ph.D. Thesis, University College London, London, United Kingdom, 1999.Google Scholar

Copyright information

© Kluwer Academic Publishers 2001

Authors and Affiliations

  • Tina Yu
    • 1
  1. 1.Chevron Information Technology CompanySan Ramon

Personalised recommendations