Skip to main content

Exploiting Reflection in Object Oriented Genetic Programming

  • Conference paper

Part of the Lecture Notes in Computer Science book series (LNCS,volume 3003)

Abstract

Most programs currently written by humans are object-oriented ones. Two of the greatest benefits of object oriented programming are the separation of interface from implementation, and the notion that an object may have state. This paper describes a simple system that enables object-oriented programs to be evolved. The system exploits reflection to automatically discover features about the environment (the existing classes and objects) in which it is to operate. This enables us to evolve object-oriented programs for the given problem domain with the minimum of effort. Currently, we are only evolving method implementations. Future work will explore how we can also evolve interfaces and classes, which should be beneficial to the automatic generation of structured solutions to complex problems. We demonstrate the system with the aid of an evolutionary art example.

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-540-24650-3_35
  • Chapter length: 10 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   89.00
Price excludes VAT (USA)
  • ISBN: 978-3-540-24650-3
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   119.00
Price excludes VAT (USA)

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Lynn, N.: A representation for the adaptive generation of simple sequential programs. In: Grefenstette, J.J. (ed.) Proceedings of an International Conference on Genetic Algorithms and the Applications, Carnegie-Mellon University, Pittsburgh, PA, USA, July 24-26, pp. 183–187 (1985)

    Google Scholar 

  2. Koza, J.R.: Genetic Programming: on the programming of computers by means of natural selection. MIT Press, Cambridge (1992)

    MATH  Google Scholar 

  3. Koza, J.R.: Genetic ProgrammingII: automatic discovery of reusable programs. MIT Press, Cambridge (1994)

    MATH  Google Scholar 

  4. Teller, A.: Turing completeness in the language of genetic programming with indexed memory. In: Proceedings of the 1994 IEEE World Congress on Computational Intelligence, Orlando, Florida, USA, June 27-29, vol. 1, pp. 136–141. IEEE Press, Los Alamitos (1994)

    CrossRef  Google Scholar 

  5. Montana, D.J.: Strongly typed genetic programming. Evolutionary Computation 3, 199–230 (1995)

    CrossRef  Google Scholar 

  6. Brameier, M., Banzhaf, W.: Effective linear genetic programming. Interner Bericht des Sonderforschungsbereichs 531 Computational Intelligence CI– 108/01, Universität Dortmund (April 2001)

    Google Scholar 

  7. Brameier, M., Banzhaf, W.: A comparison of linear genetic programming and neural networks in medical data mining. IEEE Transactions on Evolutionary Computation 5(1), 17–26 (2001)

    CrossRef  Google Scholar 

  8. Miller, J.F., Thomson, P.: Cartesian genetic programming. In: Poli, R., Banzhaf, W., Langdon, W.B., Miller, J., Nordin, P., Fogarty, T.C. (eds.) EuroGP 2000. LNCS, vol. 1802, pp. 121–132. Springer, Heidelberg (2000)

    CrossRef  Google Scholar 

  9. Poli, R.: Evolution of graph-like programs with parallel distributed genetic programming. In: Back, T. (ed.) Genetic Algorithms: Proceedings of the Seventh International Conference, Michigan State University, East Lansing, MI, USA, 19-23, pp. 346–353. Morgan Kaufmann, San Francisco (1997)

    Google Scholar 

  10. Kantschik, W., Banzhaf, W.: Linear-graph GP – A new GP structure. In: Foster, J.A., Lutton, E., Miller, J., Ryan, C., Tettamanzi, A.G.B. (eds.) EuroGP 2002. LNCS, vol. 2278, pp. 83–92. Springer, Heidelberg (2002)

    CrossRef  Google Scholar 

  11. O’Neill, M., Ryan, C.: Grammatical evolution. IEEE Transactions on Evolutionary Computation 5, 349–358 (2001)

    CrossRef  Google Scholar 

  12. Bruce, W.S.: The Application of Genetic Programming to the Automatic Generation of Object-Oriented Programs, PhD thesis, School of Computer and Information Sciences, Nova Southeastern University, 3100 SW 9th Avenue, Fort Lauderdale, Florida 33315, USA (December 1995)

    Google Scholar 

  13. 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, pp. 267–272. MIT Press, Cambridge (1996)

    Google Scholar 

  14. Langdon, W.B.: Evolving data structures with genetic programming. In: Eshelman, L.J. (ed.) Proc. of the Sixth Int. Conf. on Genetic Algorithms, San Francisco, CA, pp. 295–302. Morgan Kaufmann, San Francisco (1995)

    Google Scholar 

  15. Abbott, R.: Object-oriented genetic programming: An initial implementation. In: International Conference on Machine Learning: Models, Technologies and Applications, pp. 24–27 (2003)

    Google Scholar 

  16. Koza, J.R.: Genetic Programming IV: Routine Human-Competitive Machine Intelligence. Kluwer Academic Publishers, Dordrecht (2003)

    MATH  Google Scholar 

  17. Lorenz, M., Kidd, J.: Object-Oriented Software Metrics. Prentice-Hall, Englewood Cliffs (1994)

    Google Scholar 

  18. Luke, S.: A Java-based Evolutionary Computation and Genetic Programming Research System, http://www.cs.umd.edu/projects/plus/ec/ecj/

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lucas, S.M. (2004). Exploiting Reflection in Object Oriented Genetic Programming. In: Keijzer, M., O’Reilly, UM., Lucas, S., Costa, E., Soule, T. (eds) Genetic Programming. EuroGP 2004. Lecture Notes in Computer Science, vol 3003. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24650-3_35

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-24650-3_35

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-21346-8

  • Online ISBN: 978-3-540-24650-3

  • eBook Packages: Springer Book Archive